@anton-kochev/echo
Echo: a read-only side-channel question asker for pi sessions and project code.
Package details
Install @anton-kochev/echo from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:@anton-kochev/echo- Package
@anton-kochev/echo- Version
0.4.1- Published
- May 29, 2026
- Downloads
- 359/mo · 10/wk
- Author
- anton-kochev
- License
- MIT
- Types
- extension
- Size
- 27.3 KB
- Dependencies
- 1 dependency · 3 peers
Pi manifest JSON
{
"extensions": [
"./extensions"
]
}Security note
Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.
README
echo
A read-only side-channel question asker for pi sessions and project code.
Echo adds a /ask command that spawns an isolated pi side-process with only read-only tools enabled. Answers are shown to you and stored in extension history, but they are not injected into the main agent context — so you can probe the session and project without polluting the conversation that's doing real work.
Install
pi install npm:@anton-kochev/echo
Pin to a version:
pi install npm:@anton-kochev/echo@<version>
For local development from a checkout of pi-extensions:
pi install ./echo
Project-local install:
pi install ./echo -l
Temporary test run:
pi -e ./echo
Pithos .pithos config
pi:
extensions:
"@anton-kochev/echo": "npm:0.1.0"
Commands
Inside pi:
/ask [--model <provider/model>] [--] <question>
/asked
/ask-clear
/ask— ask Echo a question./asked— browse previous Echo answers interactively with ↑/↓ and open one with Enter./ask-clear— clears any stale Echo widget left by older versions.
What Echo can access
Echo launches an isolated Pi side process with only read-only tools enabled:
readgrepfindls
It does not receive bash, edit, or write. Echo runs from the current project directory, so it can inspect source code and project files read-only.
Session context strategy
Echo uses progressive disclosure to keep token usage low:
- A small recent-session excerpt is included in the side-agent prompt.
- The full current-session transcript is written to a temporary markdown file.
- The side agent is instructed to inspect that transcript only when needed, preferably with targeted
grep/readcalls. - The temporary transcript is deleted after the side process exits.
Examples
/ask what is this session about?
/ask what files define the extension loading behavior?
/ask --model anthropic/claude-haiku-4-5 summarize the recent decisions
/asked
Notes
This package imports pi runtime packages as peer dependencies:
@earendil-works/pi-coding-agent@earendil-works/pi-tuitypebox
Do not bundle those dependencies; pi provides them at runtime.
extensions/index.ts is a thin jiti trampoline that disables jiti's module cache for src/echo.ts, so editing the implementation and running /reload always evaluates the newest code.