@huseynsnmz/pi-suite
One Pi package for all of it: modes and permissions, a framed screen, an agent board, memory, web tools with a separate page reader, and a model router. Turn off what you don't want with /suite.
Package details
Install @huseynsnmz/pi-suite from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:@huseynsnmz/pi-suite- Package
@huseynsnmz/pi-suite- Version
0.2.9- Published
- Nov 9, 2026
- Downloads
- 2,004/mo · 2,004/wk
- Author
- huseynsnmz
- License
- MIT
- Types
- extension
- Size
- 2.2 MB
- Dependencies
- 6 dependencies · 4 peers
Pi manifest JSON
{
"extensions": [
"./src/index.ts"
]
}Security note
Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.
README
pi-suite
One package that makes Pi safer and easier to run all day: permission modes, a model router, web tools, memory, a better screen and a board for background sessions.
Install
Requires Pi 1.5 or newer.
pi install npm:@huseynsnmz/pi-suite@0.2.9
Then restart Pi. Everything except subscription is on, and nothing else needs setting up.
If you use any of these, do this too:
@gotgenes/pi-permission-systemorpi-sandbox: move pi-suite to the top ofpackagesin~/.pi/agent/settings.json, aspi installadds it last.- An older separate part, or a package with the same tools: remove it, as Pi won't start if two packages add a tool with the same name. That means
pi-board,pi-frame,pi-memory,pi-modes,pi-webandpi-subagents. If you can't remove one, turn off the matching part in~/.pi/agent/suite.json.
What's in it
| Part | What it gives you |
|---|---|
modes |
normal, auto, plan, read-only and yolo, switched with Shift+Tab |
router |
router/auto: a strong model to plan and a cheaper one to build |
web |
web_fetch and web_search, with pages read by a separate model that has no tools |
memory |
Memory across sessions, and /mastermind, which writes rules for weaker models |
subagent |
The agent tool: hand a task to a fresh agent and get its answer back |
frame |
A start card, framed editor, tool boxes, footer and todo list |
board |
A board for starting, watching and attaching to background sessions |
commands |
/clear and /security-review |
claude-context |
Your ~/.claude/CLAUDE.md and rules on requests to Claude |
artifact |
Summaries and reports as pages in your browser, when you ask, with /artifact |
style |
Short, outcome-first answers, formatted for what Pi's terminal can draw |
subscription |
Off by default. Claude models on your Claude login |
Settings
Run /suite to turn parts on or off and change their settings. /suite list shows what's on, and /suite off board or /suite on board changes one part. Changes apply after a reload, which /suite offers.
Settings live in ~/.pi/agent/suite.json, which you can also edit:
{ "off": ["board", "web"] }
A part that's off isn't loaded at all. Parts work alone and use each other when they're on.
There are no per-project settings, so a repository can't choose where your code goes. The one exception is the frame's look, once you trust the project.
Good to know
modesis protected. Turning it off asks first, every session says it's off, and if it fails to load, Pi stops rather than run without it.- All parts share one version. A fix to one part means a new version of the package.
boardon Linux is untested. Itsnode-ptydependency needs its install script there.- None of this is a sandbox. Use a container for repositories you don't trust. Each part's README lists its limits.
Development
npm install --ignore-scripts
npm run check
npm test # seconds: logic only
npm run test:all # adds board's tests that start real processes
npm run test:e2e # real Pi in a real terminal with a fake model
frame needs bun for its unit tests. To run some end-to-end suites, name them: python3 test/e2e/all.py router web. Run test:all and test:e2e before a release.
Issues are welcome, and pull requests are turned off.
Credits
frame started as a fork of @adeildo/pi-look by adeildo, board as a fork of @zhuxixi/pi-agent-board, and subscription is based on pi-claude-subscription by Jarno Keskikangas. Their licenses are in each folder.