@ilya-lesikov/pi-pi
Pi-Pi: a persistent, general-purpose Pi agent with adaptive tools, workers, skills, and memory
Package details
Install @ilya-lesikov/pi-pi from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:@ilya-lesikov/pi-pi- Package
@ilya-lesikov/pi-pi- Version
1.3.0- Published
- Sep 11, 2026
- Downloads
- 597/mo · 317/wk
- Author
- ilya-lesikov
- License
- Apache-2.0
- Types
- extension
- Size
- 1.5 MB
- Dependencies
- 10 dependencies · 4 peers
Pi manifest JSON
{
"extensions": [
"./extensions/orchestrator",
"./3p/pi-subagents/src/index.ts",
"./3p/pi-tasks/src/index.ts",
"./3p/pi-lsp/extensions/lsp",
"./3p/pi-ask-user"
]
}Security note
Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.
README
pi-pi
A persistent, general-purpose agent configuration for Pi.
Install
pi install npm:@ilya-lesikov/pi-pi
Recommended optional extension:
pi install npm:pi-mcp-adapter
Start Pi and talk to it normally. The initial Pi session owns all work; pi-pi does not create a second task context or impose research, planning, implementation, or review phases. It continues interrupted work autonomously, recovers stalled turns, and asks for user input only when unavailable information or preference controls a consequential decision. A turn that ends in prose after real work is checked out of band — the turn is replayed to its own model with a yes/no question — and resumed through a hidden message only when that model says work is left, so nothing is added to the conversation on a false alarm.
/pp
/pp remains the control panel for:
- session and context status;
- bounded background workers;
- reloadable skills;
- prompt size and recall;
- main and worker model routing;
- provider configuration.
Memory
The prompt is kept inside the model's window by folding old tool traffic out of the copy on its way to the provider: arguments are capped per value, results become a [omitted: <size>B; <call_id>] notice, and what the user and the model said is never touched. Folding is oldest-first and never reversed, so the prompt's prefix stays stable between requests and the provider's cache survives.
The session itself is never cut. recall_tool_output and recall_tool_args hand back a folded call by its id, and vcc_recall searches durable session history — messages, tool calls, and tool results. Native Pi session restoration remains authoritative; pi-pi does not duplicate conversation state in task files.
Skills
The main prompt contains a compact catalog. Full skill guidance is loaded through load_skill and appears as a tagged tool result, so it remains searchable and can be loaded again when no longer salient.
Skill precedence is:
<project>/.pi/skills~/.pi/skills- bundled pi-pi skills
A skill may be <name>/SKILL.md or a Markdown file directly inside a skills directory. It needs frontmatter with name and description.
Bundled guidance covers software engineering, repository work, research and design, and skill authoring. The agent decides when to load it; /pp only shows the catalog and source settings.
Workers
The main session owns long-running and interactive work. Functional workers are optional and bounded:
explorefor local retrieval and mapping;librarianfor external sources;advisor_*for independent judgment;deep-debugger_*for difficult diagnosis;reviewer_*for fresh read-only review;taskfor a self-contained parallel slice.
Workers receive no duplicated task artifact bundle. They can search the owning session with vcc_recall when prior decisions or tool results matter. Worker execution has no turn or stale-time limit by default. Users can set maxTurns per simple worker or pool entry and performance.internals.subagentStale in scoped .pp/config.json; 0 means unlimited.
ACP clients
The pi-acp fork can expose /pp, usage, workers, elicitation, and session status in clients such as Zed. pi-pi no longer publishes a phase pipeline because there is none.
Flant
Flant model discovery and provider routing remain available through scoped .pp/config.json configuration.