@casualjim/pi-pstack
Pi-native fork of pstack skills, Poteto Mode, and bundled agents. Delegates through pi-herdr-agents instead of its own subagent tool.
Package details
Install @casualjim/pi-pstack from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:@casualjim/pi-pstack- Package
@casualjim/pi-pstack- Version
0.1.3- Published
- Sep 19, 2026
- Downloads
- 288/mo · 181/wk
- Author
- casualjim
- License
- MIT
- Types
- extension, skill
- Size
- 34.9 MB
- Dependencies
- 0 dependencies · 3 peers
Pi manifest JSON
{
"skills": [
"./skills"
],
"extensions": [
"./extensions/pstack"
]
}Security note
Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.
README
pi-pstack
A pi-mimir fork of pstack. It keeps all 44 upstream skills, the sticky Poteto Mode, and the bundled poteto-agent and comment-sicko agents — but it delegates through pi-herdr-agents instead of shipping its own subagent tool.
Why this fork exists
Upstream pi-pstack registers a tool named subagent. pi-herdr-agents registers a tool with the same name. Loading both made one shadow the other. This fork drops the subagent tool registration entirely so pi-herdr-agents' subagent is the only one, and pstack's bundled agents become inputs to it.
How delegation works here
pi-herdr-agents resolves roles from bundled, role-pack, global, and project definitions. This extension publishes its bundled agents/ directory as a role pack, registering it on the pi-herdr-subagents:roles:discover:v1 event when the extension loads. The host reads and validates the definitions in place, so nothing is copied into ~/.pi/agent/agents.
After install, check the roles with subagents_list and delegate the pi-herdr-agents way:
subagent({ name: "Fix retry regression", agent: "poteto-agent", task: "investigate and fix the retry regression, then verify it" })
poteto-agent self-instructs to read the bundled poteto-mode skill in full before working, so the behavior upstream got via prompt injection is preserved without this fork injecting anything.
What's included
- 44 skills under
skills/, unchanged from upstream. poteto-agentandcomment-sickoagent definitions underagents/, published to pi-herdr-agents as a role pack.- Commands:
/poteto-mode(sticky Poteto Mode for the session) and/setup-pstack(map pstack roles to models; if noverify-*skill or test harness is found, it offers to generate one via/skill:create-verification-skill). - Tools:
pstack_todo,pstack_sessions,pstack_config.
What's removed vs upstream
- The
subagenttool and its child-Pi process runner. Use pi-herdr-agents'subagentinstead. /setup-pstackandpstack_configwrite a role-to-model map to~/.pi/agent/pstack/models.json. The workflow skills (how, why, reflect, swarm, arena, interrogate, architect) consult this map to pick the per-callmodelthey pass to pi-herdr-agents'subagent. pstack uses one agent (poteto-agent) with role-varying models, and panel roles are lists (one subagent per entry), so per-role config (one model per agent name) can't express it. Panel roles are configured as arrays by editing the JSON directly;/setup-pstacksets single-model roles interactively.
Safety
The extension requests confirmation for recognizable shell commands that push, alter pull requests, merge, deploy, mutate infrastructure, or recursively delete files. In non-interactive mode it blocks these commands. This is a guardrail, not a complete shell-security sandbox.
License and provenance
Derived from Cursor's pstack, licensed under MIT. See LICENSE.