Thanks for contributing.
This repository is a monorepo of publishable npm packages (currently Pi extensions), plus release/check scripts.
pi-extension-*/– individual publishable packagesdev/scripts/check-publish-readiness.sh– pre-publish checksdev/scripts/publish-packages.sh– plan/apply publishing with npm→bun fallback
- Create a branch
- Make focused changes
- Validate affected package(s)
- Open PR with clear summary
From repo root:
./dev/scripts/check-publish-readiness.sh --all --check-alt-clientIf you changed publishing behavior, also run:
./dev/scripts/publish-packages.sh --all(Plan mode only; do not publish from CI/PR unless explicitly intended.)
For each changed package:
- Keep
package.jsonvalid and minimal - Ensure
pi.extensionsentries resolve to real files/globs - Keep README accurate (commands, env vars, tools)
- For reusable skills, follow
pi-package-skill-lifecycle/vendor/pi-skill-skill-creator/skills/skill-creator/references/SKILL-PORTABILITY.md - Do not commit secrets/tokens
- Bump version when preparing a release
Plan first:
./dev/scripts/publish-packages.sh --allPublish:
./dev/scripts/publish-packages.sh --all --applyThe publish script will:
- detect new vs existing package versions
- publish only needed packages
- try npm first and fallback to Bun if publish fails
If you find a vulnerability, please follow SECURITY.md and report it privately.