pi-autotalk
A Pi extension for timed AutoTalk brainstorming from the editor input.
Package details
Install pi-autotalk from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:pi-autotalk- Package
pi-autotalk- Version
0.1.0- Published
- May 31, 2026
- Downloads
- not available
- Author
- eiei114
- License
- MIT
- Types
- extension
- Size
- 26.1 KB
- Dependencies
- 0 dependencies · 1 peer
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
# Pi AutoTalk
Timed AutoTalk for Pi: periodically send your editor thoughts to the agent for brainstorming.
Pi AutoTalk turns Pi's interactive editor into a lightweight thinking buffer. Turn it on, type rough notes or mutterings into the editor, and Pi periodically sends them back to the agent as an AutoTalk thought memo.
Status: MVP implemented and locally dogfooded. AutoTalk is always off by default and only runs after /autotalk:on.
Why
Sometimes you do not want to craft a polished prompt. You want to think out loud, let the agent react, and keep moving. AutoTalk is for that mode:
- brainstorming while typing fragments
- talking through an idea before it becomes a task
- keeping momentum without repeatedly pressing submit
- asking Pi to reflect on your current train of thought
What it does
When enabled, AutoTalk:
- watches the interactive editor buffer;
- waits until you have stopped typing for a short moment;
- sends the full buffer on an interval;
- wraps it in an
[AutoTalk]thought-memo prefix; - clears the editor only if the text has not changed since it was read.
It is deliberately conservative. Slash commands are protected, enabled state is not persisted, and AutoTalk messages tell the agent not to edit files, run commands, or send external requests unless explicitly asked.
Commands
| Command | Purpose |
|---|---|
/autotalk:on |
Start timed sending. Does not immediately send existing editor text. |
/autotalk:off |
Stop timed sending and clear AutoTalk footer status. |
/autotalk:mode |
Select busy-agent delivery mode: followUp or steer. |
/autotalk:settings |
Configure interval seconds and delivery mode. |
Behavior details
Sending interval
- Default:
10seconds. - Allowed range:
5to120seconds. - Settings UI rejects non-integers and out-of-range values.
Typing guard
AutoTalk skips a tick if the editor changed within the last 2 seconds. This avoids sending half-typed fragments at the exact moment you are still writing.
Slash-command guard
If the editor starts with /, AutoTalk pauses for that tick and does not clear the editor. This prevents commands like /autotalk:off, /reload, or /model from being auto-sent as thought memos.
Safe clearing
After sending a non-empty buffer, AutoTalk clears the editor only if the editor still exactly matches the text that was sent. If you type more while a send is happening, the new text is preserved.
Empty prompt
If the editor is empty, AutoTalk sends a one-shot continuation prompt:
[AutoTalk]
入力欄が空です。ここまでの流れから、次に考える問いを1つ出してください。
That empty prompt is sent only once. It resets after a real non-empty thought memo is sent.
Busy-agent delivery modes
When the agent is already responding:
followUpqueues the thought memo after the current work finishes.steersends it as steering input for the current stream.
Use followUp for orderly logs. Use steer for live brainstorming and course correction.
AutoTalk message format
Non-empty editor text is sent like this:
[AutoTalk]
これは自動送信されたユーザーの思考メモです。
アイデアを広げ、論点を整理し、次の問いを1つ出してください。
明示依頼でない限り、ファイル編集・コマンド実行・外部送信はしないでください。
--- 思考メモ ---
{editor text}
Settings persistence
AutoTalk persists interval and delivery mode globally at:
~/.pi/agent/extensions/autotalk/settings.json
Example:
{
"intervalSec": 10,
"deliveryMode": "followUp"
}
The enabled/disabled state is never persisted. Every Pi session starts with AutoTalk off.
Install
From npm
pi install npm:pi-autotalk
From GitHub
pi install git:github.com/eiei114/pi-autotalk
Local development install
Clone or keep the repo under:
C:/Users/Keisu/Projects/OSS/pi-autotalk
Then add it to a project .pi/settings.json:
{
"packages": [
"..\\..\\..\\OSS\\pi-autotalk"
]
}
After editing settings, reload Pi:
/reload
Quick start
/autotalk:on
Type a thought into the editor and stop typing. After the configured interval, Pi will receive it as an AutoTalk thought memo.
Useful commands:
/autotalk:settings
/autotalk:mode
/autotalk:off
Package contents
| Path | Purpose |
|---|---|
extensions/index.ts |
Pi extension entrypoint and command/timer wiring. |
lib/autotalk.ts |
Settings validation, persistence, and message formatting helpers. |
tests/ |
Node test suite for package metadata, formatting, settings, and registration. |
docs/ |
Release and template maintenance docs. |
Development
npm install
npm run ci
npm run ci runs:
tsc --noEmitnode --test tests/*.test.mjsnpm pack --dry-run
Security and privacy
AutoTalk intentionally sends editor contents to the active Pi agent. Treat it like an auto-submit feature.
Safety choices in the MVP:
- starts disabled on every launch;
- requires explicit
/autotalk:on; - never persists enabled state;
- pauses while the editor begins with
/; - does not clear the editor if new text appeared during send;
- frames messages as thought memos, not direct execution requests;
- asks the agent not to edit files, run commands, or send external requests unless explicitly requested.
Pi packages can execute code with your local permissions. Review extensions before installing third-party packages.
For vulnerability reporting, see SECURITY.md.
Release
This package is set up for npm Trusted Publishing, so no NPM_TOKEN is required.
npm version patch
git push --follow-tags
See docs/release.md for setup details.
Links
- npm: https://www.npmjs.com/package/pi-autotalk
- GitHub: https://github.com/eiei114/pi-autotalk
- Issues: https://github.com/eiei114/pi-autotalk/issues
License
MIT