Files
Charles Wiltgen 31224bece0 feat(axiom-pi): add Pi coding agent extension and install manifest
Add an axiom-pi extension for the Pi coding agent. Pi has no sub-agent or
plugin-command system, so this supplies the layers its skills can't:

- the 15 /axiom-* commands, each dispatching a prompt that triggers the
  matching skill inline (sendUserMessage);
- a session hook injecting the iOS-version ground truth and on-PATH tool
  availability (before_agent_start), gated to Apple projects;
- tool hooks: swiftformat + @State access-control guardrail on Swift
  writes, crash-file Read routing to xcsym, and bash-output skill hints.

Pure logic lives in commands/session/guardrails.ts with colocated vitest
tests (31 tests); index.ts is thin Pi wiring, typechecked against the
@earendil-works/pi-coding-agent types.

Declare a pi manifest (pi.skills + pi.extensions) in the root package.json
so `pi install git:github.com/CharlesWiltgen/Axiom` delivers the 27 skills
and the extension in one native command — no npm publish, no build step
(Pi runs the TypeScript directly).
2026-06-14 17:55:46 -07:00

52 lines
1.1 KiB
JSON

{
"name": "axiom-pi",
"version": "0.0.0",
"private": true,
"type": "module",
"description": "Axiom extension for the Pi coding agent — /axiom-* commands and session/tool hooks for Apple-platform development",
"pi": {
"extensions": [
"./src/index.ts"
]
},
"files": [
"src",
"README.md",
"LICENSE"
],
"scripts": {
"typecheck": "tsc --noEmit",
"test": "vitest run",
"test:watch": "vitest"
},
"keywords": [
"pi",
"pi-agent",
"ios",
"swift",
"swiftui",
"xcode",
"axiom"
],
"author": "Charles Wiltgen",
"license": "MIT",
"repository": {
"type": "git",
"url": "https://github.com/CharlesWiltgen/Axiom.git",
"directory": "axiom-pi"
},
"homepage": "https://charleswiltgen.github.io/Axiom/start/pi-install",
"bugs": {
"url": "https://github.com/CharlesWiltgen/Axiom/issues"
},
"engines": {
"node": ">=18.0.0"
},
"devDependencies": {
"@earendil-works/pi-coding-agent": "^0.79.3",
"@types/node": "^25.9.3",
"typescript": "^6.0.3",
"vitest": "^4.1.8"
}
}