🎩 You're Invited:Meet the Socket team at Black Hat in Las Vegas, August 3-6.RSVP
Sign In

pi-autotalk

Package Overview
Dependencies
Maintainers
1
Versions
3
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

pi-autotalk

A Pi extension for timed AutoTalk brainstorming from the editor input.

latest
Source
npmnpm
Version
0.1.4
Version published
Maintainers
1
Created
Source

Pi AutoTalk

CI Auto Release Publish npm version npm downloads License: MIT Pi package Trusted Publishing

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

CommandPurpose
/autotalk:onStart timed sending. Does not immediately send existing editor text.
/autotalk:offStop timed sending and clear AutoTalk footer status.
/autotalk:modeSelect busy-agent delivery mode: followUp or steer.
/autotalk:settingsConfigure interval seconds and delivery mode.

Behavior details

Sending interval

  • Default: 10 seconds.
  • Allowed range: 5 to 120 seconds.
  • 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]
The editor is empty. From the conversation so far, ask one question to think about next.

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:

  • followUp queues the thought memo after the current work finishes.
  • steer sends 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]
This is an automatically sent user thought memo.
Expand the ideas, organize the key points, and ask one follow-up question.
Unless explicitly requested, do not edit files, run commands, or send external messages.

--- Thought memo ---
{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

PathPurpose
extensions/index.tsPi extension entrypoint and command/timer wiring.
lib/autotalk.tsSettings validation, persistence, and message formatting helpers.
tests/Node test suite for package metadata, formatting, settings, and registration.
docs/Release and publishing docs.

Development

npm install
npm run ci

npm run ci runs:

  • tsc --noEmit
  • node --test tests/*.test.mjs
  • npm 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 uses npm Trusted Publishing (OIDC). No NPM_TOKEN is required.

On merge to main with a package.json version bump, .github/workflows/auto-release.yml creates the v* tag and GitHub release, then dispatches .github/workflows/publish.yml to publish to npm.

Maintainer flow:

npm version patch   # or minor/major — updates package.json, package-lock.json (if present), creates a git commit and tag by default
git push origin main

You can also bump version in package.json in a PR; after merge, auto-release handles tagging and publish.

After merge, run the post-release verification checklist in docs/release.md to confirm the GitHub tag/release, Publish Package workflow, and npm latest all match the new version. A green auto-release run alone is not proof npm received the package.

See docs/release.md for setup, recovery, and verification details.

License

MIT

Keywords

pi-package

FAQs

Package last updated on 04 Jul 2026

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts