@saifymatteo/pi-root-guard
Blocks selected write/edit and simple bash writes into Pi and Claude configuration roots.
Package details
Install @saifymatteo/pi-root-guard from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:@saifymatteo/pi-root-guard- Package
@saifymatteo/pi-root-guard- Version
0.1.3- Published
- Nov 5, 2026
- Downloads
- 407/mo · 407/wk
- Author
- saifymatteo
- License
- AGPL-3.0-only
- Types
- extension
- Size
- 45.1 KB
- Dependencies
- 0 dependencies · 0 peers
Pi manifest JSON
{
"image": "https://raw.githubusercontent.com/saifymatteo/pi-extensions/main/packages/pi-root-guard/screenshot.png",
"extensions": [
"./src/index.ts"
]
}Security note
Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.
README
Agent configuration root guard

Stock pi lets the agent rewrite its own config. With the guard, writes into the Pi and Claude config roots are blocked, and the agent is told why.
Blocks selected write/edit and simple bash writes into Pi and Claude configuration roots.
Try locally
From the repository root:
pi -e ./packages/pi-root-guard
This uses your normal personal resources unless you isolate the agent home. Follow the root README to avoid loading an existing copy of the extension. Nothing is installed globally.
Configuration and requirements
Uses PI_CODING_AGENT_DIR, CLAUDE_CONFIG_DIR, and optional PI_GUARDRAIL_TEMP. Allows managed Pi subdirectories (agents, extensions, skills, npm, git, temp) and selected Claude working directories.
Compatibility and safety
A guardrail, NOT a filesystem sandbox. Shell parsing is heuristic; arbitrary subprocess writes, aliases/symlinks, and unhandled tools may bypass it. The preserved source also has false positives: echo "not a redirection > settings.json" inside a guarded root is treated as a possible write, despite the quoted >. Existing error handling is preserved. Use OS permissions/sandboxing for a security boundary.
Imported host APIs are declared as peer dependencies and supplied by the Pi host. A * peer range describes host resolution, not a guarantee of compatibility with every release. See root verification notes for what was actually exercised.
Status
Part of the pi-extensions collection. No personal settings or credentials are included; see NOTICE.md for licensing and provenance.
