@zilchfp/pi-agent-stack
v0.1.4
Published
Public-safe base Pi agent stack: pinned package settings, bootstrap helpers, and environment checks.
Maintainers
Readme
pi-agent-stack-zilchfp
Public-safe base Pi agent stack for keeping Pi consistent across devboxes.
Default mode is global. It writes:
~/.pi/agent/settings.jsonUse project mode only when a specific repo needs its own .pi/settings.json override.
Quick start
After package is published to npm:
npm install -g --ignore-scripts @zilchfp/[email protected] && pi-stack-bootstrap --installThen authenticate Copilot once per devbox:
pi
/login -> GitHub CopilotDone. Now pi in any repo uses the pinned global stack.
One-shot without installing stack CLI globally
After publish, this also works:
npx -y @zilchfp/[email protected] --installThis bootstraps global Pi settings, but does not leave pi-stack-check / piz commands installed globally. Prefer the Quick start command for normal devboxes.
What bootstrap does
pi-stack-bootstrap --install:
- writes
~/.pi/agent/settings.json, - pins the stack package:
npm:@zilchfp/[email protected], - pins extra public Pi packages from
stack/packages.json, - installs missing helper binaries
fdandripgrepso Pi does not try GitHub downloads on first startup, - installs
rtkvia Cargo when Cargo is available, sopi-rtk-optimizercan rewrite commands, - installs/upgrades Pi CLI to
stack/versions.json, - runs
pi update --extensions, - keeps Copilot auth local; no token copied.
Skip helper binary install if you want to manage tools yourself:
pi-stack-bootstrap --install --skip-toolsSkip only rtk:
pi-stack-bootstrap --install --skip-rtkDaily commands
Check global Pi stack:
pi-stack-checkInstall/check helper binaries separately:
pi-stack-ensure-toolsStart Pi with gate:
pizUpdate global settings after a new stack release:
pi-stack-bootstrap --stack-package npm:@zilchfp/[email protected] --installOptional project mode
Only use this when a repo should commit its own Pi config:
pi-stack-bootstrap --project Q:/path/to/repo --installProject mode writes:
<repo>/.pi/settings.json
<repo>/.gitignoreProject settings override global settings when Pi runs inside that repo.
Before npm publish
If the npm package is not published yet, install from git source instead:
npm install -g --ignore-scripts git+ssh://[email protected]/zilchfp/pi-agent-stack-zilchfp.git#<commit-or-tag> && pi-stack-bootstrap --stack-package git:[email protected]:zilchfp/pi-agent-stack-zilchfp.git@<commit-or-tag> --installUse HTTPS instead of SSH if preferred:
npm install -g --ignore-scripts git+https://github.com/zilchfp/pi-agent-stack-zilchfp.git#<commit-or-tag> && pi-stack-bootstrap --stack-package https://github.com/zilchfp/pi-agent-stack-zilchfp@<commit-or-tag> --installPublic base vs private overlay
This package is public-safe. Do not put business-private prompts, URLs, MCP config, model config, or internal extensions here.
Private/business behavior belongs in a separate private overlay package, e.g. target/global settings can include:
{
"packages": [
"npm:@zilchfp/[email protected]",
"npm:@org/[email protected]"
]
}Included extensions
See docs/extensions.md.
Publish notes
First publish may require npm 2FA:
npm run check
npm pack --dry-run
npm publish --access public --otp <6-digit-code>After first publish, configure npm Trusted Publisher:
Provider: GitHub Actions
Organization/user: zilchfp
Repository: pi-agent-stack-zilchfp
Workflow filename: publish.yml
Allowed actions: npm publishThen release by tag:
npm version patch
git push origin main --tagsSecurity
Pi packages/extensions run with full system permissions. Review source before bumping packages.
Secrets never belong in this package or .pi/settings.json: API keys, OAuth/session tokens, cookies, GitHub/npm tokens, SSH private keys, cloud credentials, kubeconfig, database URLs, webhook secrets.
