@pithos-kit/echo0.6.0
Echo: a read-only side-channel question asker for Pi sessions and project code.
Untested on omp
This is a pi package. No one has reported whether it works on omp yet. If you try it, add your result below.
Reports 0
No reports yet.
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
Requires Pi 1.0.0 or later.
pi install npm:@pithos-kit/echo
Pin to a version:
pi install npm:@pithos-kit/echo@<version>
For local development from a checkout of pithos-kit:
pi install ./pithos.echo
Project-local install:
pi install ./pithos.echo -l
Temporary test run:
pi -e ./pithos.echo
Pithos .pithos config
pi:
extensions:
"@pithos-kit/echo": "npm:0.6.0"
Commands
Inside pi:
/ask [--model <provider/model>] [--] <question>
/ask --help
/asked [--help]
/ask-clear [--help]
-h is also accepted by every Echo command.
/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.