mngr-pi-coding
Plugin that registers the pi-coding agent type for mngr.
Pi is a minimal terminal coding harness (published on npm as @earendil-works/pi-coding-agent). This plugin runs it as a fully-featured mngr agent: lifecycle-aware (RUNNING vs WAITING), transcript-capturing, and resumable across restarts.
Usage
mngr create my-agent pi-coding
Pass arguments to the pi command with -- (e.g. to pick a provider/model):
mngr create my-agent pi-coding -- --provider anthropic --model claude-haiku-4-5
Pi needs a provider credential. The simplest path is to set an API key in your
environment and pass it through, e.g. mngr create my-agent pi-coding --pass-env ANTHROPIC_API_KEY,
or run pi once and use /login to populate ~/.pi/agent/auth.json (which the
plugin shares into each agent).
Tool permissions. pi runs tools -- including shell commands -- without a confirmation gate: it has no built-in approval prompts, and mngr adds none. To restrict an agent, use pi's own
--tools <allowlist>viacli_args, or run untrusted work in a sandbox.
What you get
- Per-agent isolation. Each agent gets its own pi config dir via
PI_CODING_AGENT_DIR($MNGR_AGENT_STATE_DIR/plugin/pi_coding/), so settings, sessions, and state never collide. Your~/.pi/agent/auth.json,settings.json, and resource dirs (skills,prompts,extensions,themes,agents) are shared in (symlinked locally, copied to remote hosts).auth.jsonis symlinked, so a/loginor token refresh in any agent propagates to the rest. (agentscarries subagent definitions, so an installed subagent extension works under mngr -- pi ships no built-in subagents.) - RUNNING vs WAITING.
mngr listshows whether the agent is mid-turn or idle, and stays correct when the agent runs a nestedpivia its bash tool. - Transcripts.
mngr transcript my-agentrenders the conversation. A raw pi message stream is also captured under the agent state dir. - Resume.
mngr stopthenmngr startcontinues the same pi session with full context.
These are powered by a small mngr-owned pi extension that the plugin provisions and
loads with pi -e; pi has no shell-hook surface, so its TypeScript extension API is
the lever for lifecycle, readiness, and transcript signalling.
Configuration
Define a custom variant in your mngr config (mngr config edit):
[agent_types.my_pi]
parent_type = "pi-coding"
cli_args = "--provider anthropic --model claude-haiku-4-5"
Then create agents with your custom type:
mngr create my-agent my_pi
Tunables on the pi-coding agent type:
| Setting | Default | Description |
|---|---|---|
command |
pi |
The pi command to run. |
sync_auth |
true |
Share ~/.pi/agent/auth.json into the per-agent dir. |
sync_home_settings |
true |
Share settings.json and resource dirs into the per-agent dir. |
check_installation |
true |
Verify pi is installed (and install on remote hosts when allowed). |
resume_session |
true |
Resume this agent's pi session on start, so stop/start keeps context. |
emit_common_transcript |
true |
Emit the transcript mngr transcript reads. |
emit_raw_transcript |
true |
Capture the raw pi message stream. |
auto_dismiss_dialogs |
false |
Trust the workspace without prompting (suppress pi's "Trust project folder?" dialog). Also implied by mngr create --yes. |
See the mngr agent types documentation for more details.
Metadata
Release files for imbue-mngr-pi-coding 0.1.14
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| imbue_mngr_pi_coding-0.1.14.tar.gz | 52.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| imbue_mngr_pi_coding-0.1.14-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 79.4 kB
Release files / imbue_mngr_pi_coding-0.1.14.tar.gz
| Download URL | imbue_mngr_pi_coding-0.1.14.tar.gz |
|---|---|
| Size | 52.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
98fb09ed313bae67aed70f80ebfe652bae8b8f3a7e9d16243734de8bbf67b9c1
|
|
BLAKE2b-256 checksum How to use checksums |
6776dfb5ca07be5d90cba87b145519c1007c9fe3c3ae8975d1eff360a82dc3ac
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jun 18, 2026.
Transparency logRelease files / imbue_mngr_pi_coding-0.1.14-py3-none-any.whl
| Download URL | imbue_mngr_pi_coding-0.1.14-py3-none-any.whl |
|---|---|
| Size | 26.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
739fea156fe3a258b7ceafaa2310a38a21f733b8d3ee6397f506bdfaaaa33266
|
|
BLAKE2b-256 checksum How to use checksums |
9e021abbe038304fb86cae9bba9584f94dce0b19ec4253dd499b5306274b66bf
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jun 18, 2026.
Transparency log