@chankov/agent-skills 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (320) hide show
  1. package/.claude/commands/build.md +18 -0
  2. package/.claude/commands/code-simplify.md +22 -0
  3. package/.claude/commands/design-agent.md +14 -0
  4. package/.claude/commands/doctor.md +13 -0
  5. package/.claude/commands/plan.md +16 -0
  6. package/.claude/commands/prime.md +22 -0
  7. package/.claude/commands/review.md +16 -0
  8. package/.claude/commands/setup.md +19 -0
  9. package/.claude/commands/ship.md +17 -0
  10. package/.claude/commands/spec.md +15 -0
  11. package/.claude/commands/test.md +19 -0
  12. package/.opencode/commands/as-build.md +17 -0
  13. package/.opencode/commands/as-code-simplify.md +16 -0
  14. package/.opencode/commands/as-design-agent.md +15 -0
  15. package/.opencode/commands/as-doctor.md +11 -0
  16. package/.opencode/commands/as-plan.md +16 -0
  17. package/.opencode/commands/as-prime.md +22 -0
  18. package/.opencode/commands/as-review.md +15 -0
  19. package/.opencode/commands/as-setup.md +11 -0
  20. package/.opencode/commands/as-ship.md +16 -0
  21. package/.opencode/commands/as-spec.md +16 -0
  22. package/.opencode/commands/as-test.md +21 -0
  23. package/.pi/agents/agent-chain.yaml +49 -0
  24. package/.pi/agents/bowser.md +19 -0
  25. package/.pi/agents/pi-pi/agent-expert.md +98 -0
  26. package/.pi/agents/pi-pi/cli-expert.md +41 -0
  27. package/.pi/agents/pi-pi/config-expert.md +63 -0
  28. package/.pi/agents/pi-pi/ext-expert.md +43 -0
  29. package/.pi/agents/pi-pi/keybinding-expert.md +134 -0
  30. package/.pi/agents/pi-pi/pi-orchestrator.md +57 -0
  31. package/.pi/agents/pi-pi/prompt-expert.md +70 -0
  32. package/.pi/agents/pi-pi/skill-expert.md +42 -0
  33. package/.pi/agents/pi-pi/theme-expert.md +40 -0
  34. package/.pi/agents/pi-pi/tui-expert.md +85 -0
  35. package/.pi/agents/teams.yaml +31 -0
  36. package/.pi/damage-control-rules.yaml +278 -0
  37. package/.pi/extensions/chrome-devtools-mcp/README.md +39 -0
  38. package/.pi/extensions/chrome-devtools-mcp/index.ts +61 -0
  39. package/.pi/extensions/chrome-devtools-mcp/package.json +6 -0
  40. package/.pi/extensions/compact-and-continue/README.md +42 -0
  41. package/.pi/extensions/compact-and-continue/index.ts +120 -0
  42. package/.pi/extensions/compact-and-continue/package.json +6 -0
  43. package/.pi/extensions/mcp-bridge/README.md +46 -0
  44. package/.pi/extensions/mcp-bridge/index.ts +206 -0
  45. package/.pi/extensions/mcp-bridge/package.json +6 -0
  46. package/.pi/extensions/package-lock.json +1143 -0
  47. package/.pi/extensions/package.json +9 -0
  48. package/.pi/harnesses/agent-chain/README.md +37 -0
  49. package/.pi/harnesses/agent-chain/index.ts +795 -0
  50. package/.pi/harnesses/agent-chain/package.json +6 -0
  51. package/.pi/harnesses/agent-team/README.md +38 -0
  52. package/.pi/harnesses/agent-team/index.ts +732 -0
  53. package/.pi/harnesses/agent-team/package.json +6 -0
  54. package/.pi/harnesses/coms/README.md +36 -0
  55. package/.pi/harnesses/coms/index.ts +1595 -0
  56. package/.pi/harnesses/coms/package.json +6 -0
  57. package/.pi/harnesses/coms-net/README.md +46 -0
  58. package/.pi/harnesses/coms-net/index.ts +1637 -0
  59. package/.pi/harnesses/coms-net/package.json +6 -0
  60. package/.pi/harnesses/damage-control/README.md +38 -0
  61. package/.pi/harnesses/damage-control/index.ts +207 -0
  62. package/.pi/harnesses/damage-control/package.json +6 -0
  63. package/.pi/harnesses/damage-control-continue/README.md +37 -0
  64. package/.pi/harnesses/damage-control-continue/index.ts +234 -0
  65. package/.pi/harnesses/damage-control-continue/package.json +6 -0
  66. package/.pi/harnesses/minimal/README.md +27 -0
  67. package/.pi/harnesses/minimal/index.ts +32 -0
  68. package/.pi/harnesses/minimal/package.json +6 -0
  69. package/.pi/harnesses/package-lock.json +35 -0
  70. package/.pi/harnesses/package.json +9 -0
  71. package/.pi/harnesses/pi-pi/README.md +39 -0
  72. package/.pi/harnesses/pi-pi/index.ts +631 -0
  73. package/.pi/harnesses/pi-pi/package.json +6 -0
  74. package/.pi/harnesses/purpose-gate/README.md +27 -0
  75. package/.pi/harnesses/purpose-gate/index.ts +82 -0
  76. package/.pi/harnesses/purpose-gate/package.json +6 -0
  77. package/.pi/harnesses/session-replay/README.md +28 -0
  78. package/.pi/harnesses/session-replay/index.ts +214 -0
  79. package/.pi/harnesses/session-replay/package.json +6 -0
  80. package/.pi/harnesses/subagent-widget/README.md +36 -0
  81. package/.pi/harnesses/subagent-widget/index.ts +479 -0
  82. package/.pi/harnesses/subagent-widget/package.json +6 -0
  83. package/.pi/harnesses/system-select/README.md +39 -0
  84. package/.pi/harnesses/system-select/index.ts +165 -0
  85. package/.pi/harnesses/system-select/package.json +6 -0
  86. package/.pi/harnesses/tilldone/README.md +35 -0
  87. package/.pi/harnesses/tilldone/index.ts +724 -0
  88. package/.pi/harnesses/tilldone/package.json +6 -0
  89. package/.pi/harnesses/tool-counter/README.md +31 -0
  90. package/.pi/harnesses/tool-counter/index.ts +100 -0
  91. package/.pi/harnesses/tool-counter/package.json +6 -0
  92. package/.pi/harnesses/tool-counter-widget/README.md +27 -0
  93. package/.pi/harnesses/tool-counter-widget/index.ts +66 -0
  94. package/.pi/harnesses/tool-counter-widget/package.json +6 -0
  95. package/.pi/prompts/build.md +24 -0
  96. package/.pi/prompts/code-simplify.md +22 -0
  97. package/.pi/prompts/doctor.md +13 -0
  98. package/.pi/prompts/plan.md +16 -0
  99. package/.pi/prompts/review.md +16 -0
  100. package/.pi/prompts/setup.md +19 -0
  101. package/.pi/prompts/ship.md +17 -0
  102. package/.pi/prompts/spec.md +15 -0
  103. package/.pi/prompts/test.md +19 -0
  104. package/.pi/skills/bowser/SKILL.md +114 -0
  105. package/.versions/0.1.0/.claude/commands/build.md +18 -0
  106. package/.versions/0.1.0/.claude/commands/code-simplify.md +22 -0
  107. package/.versions/0.1.0/.claude/commands/design-agent.md +14 -0
  108. package/.versions/0.1.0/.claude/commands/doctor.md +13 -0
  109. package/.versions/0.1.0/.claude/commands/plan.md +16 -0
  110. package/.versions/0.1.0/.claude/commands/prime.md +22 -0
  111. package/.versions/0.1.0/.claude/commands/review.md +16 -0
  112. package/.versions/0.1.0/.claude/commands/setup.md +19 -0
  113. package/.versions/0.1.0/.claude/commands/ship.md +17 -0
  114. package/.versions/0.1.0/.claude/commands/spec.md +15 -0
  115. package/.versions/0.1.0/.claude/commands/test.md +19 -0
  116. package/.versions/0.1.0/.opencode/commands/as-build.md +17 -0
  117. package/.versions/0.1.0/.opencode/commands/as-code-simplify.md +16 -0
  118. package/.versions/0.1.0/.opencode/commands/as-design-agent.md +15 -0
  119. package/.versions/0.1.0/.opencode/commands/as-doctor.md +11 -0
  120. package/.versions/0.1.0/.opencode/commands/as-plan.md +16 -0
  121. package/.versions/0.1.0/.opencode/commands/as-prime.md +22 -0
  122. package/.versions/0.1.0/.opencode/commands/as-review.md +15 -0
  123. package/.versions/0.1.0/.opencode/commands/as-setup.md +11 -0
  124. package/.versions/0.1.0/.opencode/commands/as-ship.md +16 -0
  125. package/.versions/0.1.0/.opencode/commands/as-spec.md +16 -0
  126. package/.versions/0.1.0/.opencode/commands/as-test.md +21 -0
  127. package/.versions/0.1.0/.pi/agents/agent-chain.yaml +49 -0
  128. package/.versions/0.1.0/.pi/agents/bowser.md +19 -0
  129. package/.versions/0.1.0/.pi/agents/pi-pi/agent-expert.md +98 -0
  130. package/.versions/0.1.0/.pi/agents/pi-pi/cli-expert.md +41 -0
  131. package/.versions/0.1.0/.pi/agents/pi-pi/config-expert.md +63 -0
  132. package/.versions/0.1.0/.pi/agents/pi-pi/ext-expert.md +43 -0
  133. package/.versions/0.1.0/.pi/agents/pi-pi/keybinding-expert.md +134 -0
  134. package/.versions/0.1.0/.pi/agents/pi-pi/pi-orchestrator.md +57 -0
  135. package/.versions/0.1.0/.pi/agents/pi-pi/prompt-expert.md +70 -0
  136. package/.versions/0.1.0/.pi/agents/pi-pi/skill-expert.md +42 -0
  137. package/.versions/0.1.0/.pi/agents/pi-pi/theme-expert.md +40 -0
  138. package/.versions/0.1.0/.pi/agents/pi-pi/tui-expert.md +85 -0
  139. package/.versions/0.1.0/.pi/agents/teams.yaml +31 -0
  140. package/.versions/0.1.0/.pi/damage-control-rules.yaml +278 -0
  141. package/.versions/0.1.0/.pi/extensions/chrome-devtools-mcp/README.md +39 -0
  142. package/.versions/0.1.0/.pi/extensions/chrome-devtools-mcp/index.ts +61 -0
  143. package/.versions/0.1.0/.pi/extensions/chrome-devtools-mcp/package.json +6 -0
  144. package/.versions/0.1.0/.pi/extensions/compact-and-continue/README.md +42 -0
  145. package/.versions/0.1.0/.pi/extensions/compact-and-continue/index.ts +120 -0
  146. package/.versions/0.1.0/.pi/extensions/compact-and-continue/package.json +6 -0
  147. package/.versions/0.1.0/.pi/extensions/mcp-bridge/README.md +46 -0
  148. package/.versions/0.1.0/.pi/extensions/mcp-bridge/index.ts +206 -0
  149. package/.versions/0.1.0/.pi/extensions/mcp-bridge/package.json +6 -0
  150. package/.versions/0.1.0/.pi/extensions/package-lock.json +1143 -0
  151. package/.versions/0.1.0/.pi/extensions/package.json +9 -0
  152. package/.versions/0.1.0/.pi/harnesses/agent-chain/README.md +37 -0
  153. package/.versions/0.1.0/.pi/harnesses/agent-chain/index.ts +795 -0
  154. package/.versions/0.1.0/.pi/harnesses/agent-chain/package.json +6 -0
  155. package/.versions/0.1.0/.pi/harnesses/agent-team/README.md +38 -0
  156. package/.versions/0.1.0/.pi/harnesses/agent-team/index.ts +732 -0
  157. package/.versions/0.1.0/.pi/harnesses/agent-team/package.json +6 -0
  158. package/.versions/0.1.0/.pi/harnesses/coms/README.md +36 -0
  159. package/.versions/0.1.0/.pi/harnesses/coms/index.ts +1595 -0
  160. package/.versions/0.1.0/.pi/harnesses/coms/package.json +6 -0
  161. package/.versions/0.1.0/.pi/harnesses/coms-net/README.md +46 -0
  162. package/.versions/0.1.0/.pi/harnesses/coms-net/index.ts +1637 -0
  163. package/.versions/0.1.0/.pi/harnesses/coms-net/package.json +6 -0
  164. package/.versions/0.1.0/.pi/harnesses/damage-control/README.md +38 -0
  165. package/.versions/0.1.0/.pi/harnesses/damage-control/index.ts +207 -0
  166. package/.versions/0.1.0/.pi/harnesses/damage-control/package.json +6 -0
  167. package/.versions/0.1.0/.pi/harnesses/damage-control-continue/README.md +37 -0
  168. package/.versions/0.1.0/.pi/harnesses/damage-control-continue/index.ts +234 -0
  169. package/.versions/0.1.0/.pi/harnesses/damage-control-continue/package.json +6 -0
  170. package/.versions/0.1.0/.pi/harnesses/minimal/README.md +27 -0
  171. package/.versions/0.1.0/.pi/harnesses/minimal/index.ts +32 -0
  172. package/.versions/0.1.0/.pi/harnesses/minimal/package.json +6 -0
  173. package/.versions/0.1.0/.pi/harnesses/package-lock.json +35 -0
  174. package/.versions/0.1.0/.pi/harnesses/package.json +9 -0
  175. package/.versions/0.1.0/.pi/harnesses/pi-pi/README.md +39 -0
  176. package/.versions/0.1.0/.pi/harnesses/pi-pi/index.ts +631 -0
  177. package/.versions/0.1.0/.pi/harnesses/pi-pi/package.json +6 -0
  178. package/.versions/0.1.0/.pi/harnesses/purpose-gate/README.md +27 -0
  179. package/.versions/0.1.0/.pi/harnesses/purpose-gate/index.ts +82 -0
  180. package/.versions/0.1.0/.pi/harnesses/purpose-gate/package.json +6 -0
  181. package/.versions/0.1.0/.pi/harnesses/session-replay/README.md +28 -0
  182. package/.versions/0.1.0/.pi/harnesses/session-replay/index.ts +214 -0
  183. package/.versions/0.1.0/.pi/harnesses/session-replay/package.json +6 -0
  184. package/.versions/0.1.0/.pi/harnesses/subagent-widget/README.md +36 -0
  185. package/.versions/0.1.0/.pi/harnesses/subagent-widget/index.ts +479 -0
  186. package/.versions/0.1.0/.pi/harnesses/subagent-widget/package.json +6 -0
  187. package/.versions/0.1.0/.pi/harnesses/system-select/README.md +39 -0
  188. package/.versions/0.1.0/.pi/harnesses/system-select/index.ts +165 -0
  189. package/.versions/0.1.0/.pi/harnesses/system-select/package.json +6 -0
  190. package/.versions/0.1.0/.pi/harnesses/tilldone/README.md +35 -0
  191. package/.versions/0.1.0/.pi/harnesses/tilldone/index.ts +724 -0
  192. package/.versions/0.1.0/.pi/harnesses/tilldone/package.json +6 -0
  193. package/.versions/0.1.0/.pi/harnesses/tool-counter/README.md +31 -0
  194. package/.versions/0.1.0/.pi/harnesses/tool-counter/index.ts +100 -0
  195. package/.versions/0.1.0/.pi/harnesses/tool-counter/package.json +6 -0
  196. package/.versions/0.1.0/.pi/harnesses/tool-counter-widget/README.md +27 -0
  197. package/.versions/0.1.0/.pi/harnesses/tool-counter-widget/index.ts +66 -0
  198. package/.versions/0.1.0/.pi/harnesses/tool-counter-widget/package.json +6 -0
  199. package/.versions/0.1.0/.pi/prompts/build.md +24 -0
  200. package/.versions/0.1.0/.pi/prompts/code-simplify.md +22 -0
  201. package/.versions/0.1.0/.pi/prompts/doctor.md +13 -0
  202. package/.versions/0.1.0/.pi/prompts/plan.md +16 -0
  203. package/.versions/0.1.0/.pi/prompts/review.md +16 -0
  204. package/.versions/0.1.0/.pi/prompts/setup.md +19 -0
  205. package/.versions/0.1.0/.pi/prompts/ship.md +17 -0
  206. package/.versions/0.1.0/.pi/prompts/spec.md +15 -0
  207. package/.versions/0.1.0/.pi/prompts/test.md +19 -0
  208. package/.versions/0.1.0/.pi/skills/bowser/SKILL.md +114 -0
  209. package/.versions/0.1.0/.version +1 -0
  210. package/.versions/0.1.0/agents/builder.md +6 -0
  211. package/.versions/0.1.0/agents/code-reviewer.md +93 -0
  212. package/.versions/0.1.0/agents/documenter.md +6 -0
  213. package/.versions/0.1.0/agents/plan-reviewer.md +22 -0
  214. package/.versions/0.1.0/agents/planner.md +6 -0
  215. package/.versions/0.1.0/agents/scout.md +6 -0
  216. package/.versions/0.1.0/agents/security-auditor.md +97 -0
  217. package/.versions/0.1.0/agents/test-engineer.md +89 -0
  218. package/.versions/0.1.0/hooks/SIMPLIFY-IGNORE.md +90 -0
  219. package/.versions/0.1.0/hooks/hooks.json +14 -0
  220. package/.versions/0.1.0/hooks/session-start.sh +20 -0
  221. package/.versions/0.1.0/hooks/simplify-ignore-test.sh +247 -0
  222. package/.versions/0.1.0/hooks/simplify-ignore.sh +302 -0
  223. package/.versions/0.1.0/references/accessibility-checklist.md +159 -0
  224. package/.versions/0.1.0/references/performance-checklist.md +121 -0
  225. package/.versions/0.1.0/references/prompting-patterns.md +380 -0
  226. package/.versions/0.1.0/references/security-checklist.md +134 -0
  227. package/.versions/0.1.0/references/testing-patterns.md +236 -0
  228. package/.versions/0.1.0/skills/api-and-interface-design/SKILL.md +294 -0
  229. package/.versions/0.1.0/skills/browser-testing-with-devtools/SKILL.md +335 -0
  230. package/.versions/0.1.0/skills/ci-cd-and-automation/SKILL.md +390 -0
  231. package/.versions/0.1.0/skills/code-review-and-quality/SKILL.md +347 -0
  232. package/.versions/0.1.0/skills/code-simplification/SKILL.md +331 -0
  233. package/.versions/0.1.0/skills/context-engineering/SKILL.md +291 -0
  234. package/.versions/0.1.0/skills/debugging-and-error-recovery/SKILL.md +300 -0
  235. package/.versions/0.1.0/skills/deprecation-and-migration/SKILL.md +206 -0
  236. package/.versions/0.1.0/skills/designing-agents/SKILL.md +394 -0
  237. package/.versions/0.1.0/skills/designing-agents/pi-harness-authoring.md +213 -0
  238. package/.versions/0.1.0/skills/documentation-and-adrs/SKILL.md +278 -0
  239. package/.versions/0.1.0/skills/frontend-ui-engineering/SKILL.md +322 -0
  240. package/.versions/0.1.0/skills/git-workflow-and-versioning/SKILL.md +316 -0
  241. package/.versions/0.1.0/skills/guided-workspace-setup/SKILL.md +293 -0
  242. package/.versions/0.1.0/skills/idea-refine/SKILL.md +178 -0
  243. package/.versions/0.1.0/skills/idea-refine/examples.md +238 -0
  244. package/.versions/0.1.0/skills/idea-refine/frameworks.md +99 -0
  245. package/.versions/0.1.0/skills/idea-refine/refinement-criteria.md +113 -0
  246. package/.versions/0.1.0/skills/idea-refine/scripts/idea-refine.sh +15 -0
  247. package/.versions/0.1.0/skills/incremental-implementation/SKILL.md +279 -0
  248. package/.versions/0.1.0/skills/performance-optimization/SKILL.md +350 -0
  249. package/.versions/0.1.0/skills/planning-and-task-breakdown/SKILL.md +237 -0
  250. package/.versions/0.1.0/skills/security-and-hardening/SKILL.md +349 -0
  251. package/.versions/0.1.0/skills/shipping-and-launch/SKILL.md +309 -0
  252. package/.versions/0.1.0/skills/source-driven-development/SKILL.md +194 -0
  253. package/.versions/0.1.0/skills/spec-driven-development/SKILL.md +237 -0
  254. package/.versions/0.1.0/skills/test-driven-development/SKILL.md +379 -0
  255. package/.versions/0.1.0/skills/using-agent-skills/SKILL.md +176 -0
  256. package/CHANGELOG.md +14 -0
  257. package/LICENSE +21 -0
  258. package/README.md +359 -0
  259. package/agents/builder.md +6 -0
  260. package/agents/code-reviewer.md +93 -0
  261. package/agents/documenter.md +6 -0
  262. package/agents/plan-reviewer.md +22 -0
  263. package/agents/planner.md +6 -0
  264. package/agents/scout.md +6 -0
  265. package/agents/security-auditor.md +97 -0
  266. package/agents/test-engineer.md +89 -0
  267. package/bin/cli.js +375 -0
  268. package/bin/lib/detect-agent.js +37 -0
  269. package/bin/lib/doctor.js +209 -0
  270. package/bin/snapshot-version.js +71 -0
  271. package/docs/agent-skills-setup.md +187 -0
  272. package/docs/copilot-setup.md +94 -0
  273. package/docs/cursor-setup.md +67 -0
  274. package/docs/gemini-cli-setup.md +113 -0
  275. package/docs/getting-started.md +162 -0
  276. package/docs/npm-install.md +169 -0
  277. package/docs/opencode-setup.md +241 -0
  278. package/docs/pi-extensions.md +163 -0
  279. package/docs/pi-setup.md +416 -0
  280. package/docs/skill-anatomy.md +129 -0
  281. package/docs/windsurf-setup.md +48 -0
  282. package/hooks/SIMPLIFY-IGNORE.md +90 -0
  283. package/hooks/hooks.json +14 -0
  284. package/hooks/session-start.sh +20 -0
  285. package/hooks/simplify-ignore-test.sh +247 -0
  286. package/hooks/simplify-ignore.sh +302 -0
  287. package/package.json +86 -0
  288. package/references/accessibility-checklist.md +159 -0
  289. package/references/performance-checklist.md +121 -0
  290. package/references/prompting-patterns.md +380 -0
  291. package/references/security-checklist.md +134 -0
  292. package/references/testing-patterns.md +236 -0
  293. package/skills/api-and-interface-design/SKILL.md +294 -0
  294. package/skills/browser-testing-with-devtools/SKILL.md +335 -0
  295. package/skills/ci-cd-and-automation/SKILL.md +390 -0
  296. package/skills/code-review-and-quality/SKILL.md +347 -0
  297. package/skills/code-simplification/SKILL.md +331 -0
  298. package/skills/context-engineering/SKILL.md +291 -0
  299. package/skills/debugging-and-error-recovery/SKILL.md +300 -0
  300. package/skills/deprecation-and-migration/SKILL.md +206 -0
  301. package/skills/designing-agents/SKILL.md +394 -0
  302. package/skills/designing-agents/pi-harness-authoring.md +213 -0
  303. package/skills/documentation-and-adrs/SKILL.md +278 -0
  304. package/skills/frontend-ui-engineering/SKILL.md +322 -0
  305. package/skills/git-workflow-and-versioning/SKILL.md +316 -0
  306. package/skills/guided-workspace-setup/SKILL.md +293 -0
  307. package/skills/idea-refine/SKILL.md +178 -0
  308. package/skills/idea-refine/examples.md +238 -0
  309. package/skills/idea-refine/frameworks.md +99 -0
  310. package/skills/idea-refine/refinement-criteria.md +113 -0
  311. package/skills/idea-refine/scripts/idea-refine.sh +15 -0
  312. package/skills/incremental-implementation/SKILL.md +279 -0
  313. package/skills/performance-optimization/SKILL.md +350 -0
  314. package/skills/planning-and-task-breakdown/SKILL.md +237 -0
  315. package/skills/security-and-hardening/SKILL.md +349 -0
  316. package/skills/shipping-and-launch/SKILL.md +309 -0
  317. package/skills/source-driven-development/SKILL.md +194 -0
  318. package/skills/spec-driven-development/SKILL.md +237 -0
  319. package/skills/test-driven-development/SKILL.md +379 -0
  320. package/skills/using-agent-skills/SKILL.md +176 -0
@@ -0,0 +1,163 @@
1
+ # pi Extensions
2
+
3
+ A catalog of the pi extensions in this repo — what each one does, how to run it, the
4
+ supporting data it needs, and how the ported set differs from upstream.
5
+
6
+ ---
7
+
8
+ ## Attribution
9
+
10
+ The 15 orchestration, UI, safety, and messaging extensions documented here — together
11
+ with their supporting agent definitions, design specs, the `coms-net` hub server, and the
12
+ `justfile` — are ported from the **`pi-vs-claude-code`** project:
13
+
14
+ - **Author:** [disler](https://github.com/disler) (IndyDevDan)
15
+ - **Source:** <https://github.com/disler/pi-vs-claude-code>
16
+ - **License:** MIT — Copyright (c) 2026 IndyDevDan
17
+
18
+ Ported files retain their original authorship; this repo adapts them to its layout and
19
+ conventions. Runtime design specs for the imported harnesses live in `docs/pi-specs/`.
20
+
21
+ ---
22
+
23
+ ## What these extensions are
24
+
25
+ `.pi/extensions/` ships three always-on **utility** extensions — `mcp-bridge`,
26
+ `chrome-devtools-mcp`, and `compact-and-continue`. pi auto-discovers that directory, so
27
+ those three layer onto every session.
28
+
29
+ The 15 documented below are different: each is a **session harness**. They reshape the
30
+ whole pi session — some remove every codebase tool and leave only an orchestration tool,
31
+ some replace the footer, some gate every tool call. They are **mutually exclusive by
32
+ design**: run one per session (at most two stacked, e.g. an orchestrator `+ minimal`),
33
+ not all at once. Because of that they live in **`.pi/harnesses/`** — a directory pi does
34
+ *not* auto-discover — so a plain `pi` run never loads them.
35
+
36
+ ### Selective loading — read this first
37
+
38
+ pi auto-discovers every extension directory under a project's `.pi/extensions/` and loads
39
+ all of them. If the 15 harnesses lived there, a plain `pi` run would load them all at once
40
+ — footers would fight, orchestrators would collide, and `coms` / `coms-net` would abort
41
+ startup with duplicate CLI-flag registrations. So the harnesses live in `.pi/harnesses/`
42
+ instead, and you load exactly one (or two) explicitly:
43
+
44
+ - through the `justfile` — `just ext-agent-team`, `just ext-tilldone`, …
45
+ - or directly — `pi -e .pi/harnesses/<name>/index.ts`
46
+
47
+ When you consume this repo from another project, point `pi -e` at the harness file you
48
+ want, or symlink that one directory into *its* `.pi/harnesses/` — never drop the harnesses
49
+ into `.pi/extensions/`, and never load all 15 (see
50
+ [pi-setup.md](pi-setup.md#optional-pi-extensions)).
51
+
52
+ ---
53
+
54
+ ## Setup
55
+
56
+ ```bash
57
+ just install # one-time — installs runtime deps for extensions + harnesses
58
+ just ext-minimal # launch pi with a harness
59
+ just --list # see every recipe
60
+ ```
61
+
62
+ `just install` runs `npm install` for both dependency roots: `.pi/extensions/` for the
63
+ utilities (`@modelcontextprotocol/sdk`, `typebox`) and `.pi/harnesses/` for the harnesses
64
+ (`@sinclair/typebox`, `yaml`). The `@mariozechner/pi-*` packages are provided by the pi
65
+ runtime itself.
66
+
67
+ ---
68
+
69
+ ## Catalog
70
+
71
+ | Extension | Category | What it does | Run |
72
+ |-----------|----------|--------------|-----|
73
+ | [minimal](../.pi/harnesses/minimal/README.md) | UI | Model name + 10-block context meter footer | `just ext-minimal` |
74
+ | [tool-counter](../.pi/harnesses/tool-counter/README.md) | UI | Rich two-line footer: model, branch, cwd, tokens, cost, tool tally | `just ext-tool-counter` |
75
+ | [tool-counter-widget](../.pi/harnesses/tool-counter-widget/README.md) | UI | Per-tool call counts in a widget above the editor | `just ext-tool-counter-widget` |
76
+ | [session-replay](../.pi/harnesses/session-replay/README.md) | UI | `/replay` scrollable timeline overlay of session history | `just ext-session-replay` |
77
+ | [purpose-gate](../.pi/harnesses/purpose-gate/README.md) | Focus | Forces you to declare session intent before working | `just ext-purpose-gate` |
78
+ | [tilldone](../.pi/harnesses/tilldone/README.md) | Focus | Agent must define tasks before using any other tool | `just ext-tilldone` |
79
+ | [damage-control](../.pi/harnesses/damage-control/README.md) | Safety | Blocks destructive tool calls and aborts the turn | `just ext-damage-control` |
80
+ | [damage-control-continue](../.pi/harnesses/damage-control-continue/README.md) | Safety | Same rules, but the agent keeps working with corrective feedback | `just ext-damage-control-continue` |
81
+ | [subagent-widget](../.pi/harnesses/subagent-widget/README.md) | Orchestration | `/sub <task>` background subagents with live stacking widgets | `just ext-subagent-widget` |
82
+ | [agent-team](../.pi/harnesses/agent-team/README.md) | Orchestration | Dispatcher-only orchestrator with a grid dashboard | `just ext-agent-team` |
83
+ | [agent-chain](../.pi/harnesses/agent-chain/README.md) | Orchestration | Sequential agent pipeline orchestrator | `just ext-agent-chain` |
84
+ | [system-select](../.pi/harnesses/system-select/README.md) | Orchestration | `/system` to pick an agent persona as the system prompt | `just ext-system-select` |
85
+ | [pi-pi](../.pi/harnesses/pi-pi/README.md) | Orchestration | Meta-agent that builds pi agents via parallel expert research | `just ext-pi-pi` |
86
+ | [coms](../.pi/harnesses/coms/README.md) | Messaging | Peer-to-peer messaging between pi agents on one machine | `just local-coms` |
87
+ | [coms-net](../.pi/harnesses/coms-net/README.md) | Messaging | HTTP/SSE communication network across hosts (needs the hub) | `just coms` |
88
+
89
+ Each extension directory has its own `README.md` with the full description, command/tool
90
+ surface, requirements, and per-extension upstream changes.
91
+
92
+ ---
93
+
94
+ ## Environment variables
95
+
96
+ The `justfile` sets `dotenv-load`, so a `.env` file at the repo root is auto-loaded
97
+ (`.env` is gitignored). Only a few extensions need keys:
98
+
99
+ | Variable | Needed by | Purpose |
100
+ |----------|-----------|---------|
101
+ | `FIRECRAWL_API_KEY` | `pi-pi` | Expert agents crawl current pi documentation via Firecrawl |
102
+ | `PI_COMS_NET_AUTH_TOKEN` | `coms-net` | Shared secret — required to bind a LAN/remote hub |
103
+ | `PI_COMS_NET_PORT` | `coms-net` | Pin the hub port so the URL is stable across restarts |
104
+ | `PI_COMS_NET_SERVER_URL` | `coms-net` | Hub URL for clients (blank = auto-discover the local `server.json`) |
105
+
106
+ For `127.0.0.1`-only `coms-net` use, the hub auto-generates a token — no env needed.
107
+
108
+ ---
109
+
110
+ ## Supporting data
111
+
112
+ These ported files are runtime dependencies of the extensions above:
113
+
114
+ - **`.pi/agents/`** — symlinks back to the canonical personas in `agents/`
115
+ (`scout`, `planner`, `plan-reviewer`, `builder`, `documenter`, `code-reviewer`,
116
+ `test-engineer`, `security-auditor`), the pi-local `bowser.md`, the `pi-pi/`
117
+ research experts, plus `teams.yaml` and `agent-chain.yaml`. Read by `agent-team`,
118
+ `agent-chain`, `system-select`, and `pi-pi`. The earlier `reviewer` and
119
+ `red-team` personas were folded into `code-reviewer` and `security-auditor`;
120
+ the team and chain configs already reference the canonical names.
121
+ - **`.pi/damage-control-rules.yaml`** — the destructive-command / protected-path rule set
122
+ for `damage-control` and `damage-control-continue`.
123
+ - **`.pi/skills/bowser/`** — a pi-runtime skill for headless Playwright browser
124
+ automation, used by the `bowser` agent persona. Kept separate from the core
125
+ engineering `skills/`.
126
+ - **`scripts/coms-net-server.ts`** — the HTTP/SSE hub server for `coms-net`. Pure Node
127
+ built-ins; run it with `node --experimental-strip-types scripts/coms-net-server.ts`
128
+ (Node >= 22.6, or `just coms-net-server`).
129
+ - **`docs/pi-specs/`** — the original design specifications: `agent-forge` (the
130
+ `agent-team` design), `agent-workflow` (`agent-chain`), `damage-control`, and `pi-pi`.
131
+
132
+ ---
133
+
134
+ ## Upstream changes
135
+
136
+ What changed relative to `disler/pi-vs-claude-code`:
137
+
138
+ - **Theme code removed.** Every ported extension imported `applyExtensionDefaults` from a
139
+ shared `themeMap.ts`. That import and its `session_start` call site were stripped from
140
+ all 15 files; `themeMap.ts` and the 11 `.pi/themes/*.json` palettes are not ported.
141
+ Extensions render against pi's active theme.
142
+ - **Layout converted.** Flat `extensions/<name>.ts` files became
143
+ `.pi/harnesses/<name>/index.ts` directories, each with its own `package.json` and
144
+ `README.md`. They live under `.pi/harnesses/` — *not* `.pi/extensions/` — because pi
145
+ auto-discovers and loads everything in `.pi/extensions/`, and these 15 are
146
+ mutually-exclusive harnesses that must be loaded one at a time.
147
+ - **Tooling switched to npm.** `bun` / `bun.lock` are not used; the `justfile` recipes
148
+ point at the new paths and use npm. The `coms-net` hub launches via
149
+ `node --experimental-strip-types` instead of `bun`.
150
+
151
+ ### Not ported
152
+
153
+ - The `pure-focus`, `theme-cycler`, and `cross-agent` extensions.
154
+ - `themeMap.ts` and all 11 `.pi/themes/*.json` theme palettes.
155
+ - The Claude Code `statusLine` config and `status_lines/status_line.py`, and the
156
+ `plan_w_team.md` command (it depended on team-agent files absent from the source).
157
+
158
+ ### A note on `.pi/settings.json`
159
+
160
+ Upstream shipped a `.pi/settings.json` that only set the (now-stripped) theme and
161
+ registered a prompt directory. This repo already keeps pi prompts in the standard
162
+ `.pi/prompts/` location, so no `.pi/settings.json` is shipped — it would carry nothing
163
+ useful.
@@ -0,0 +1,416 @@
1
+ # pi Setup
2
+
3
+ This guide explains how to use Agent Skills with [pi](https://github.com/badlogic/pi-mono/tree/main/packages/coding-agent) — the terminal coding agent from `pi-mono`. Unlike some harnesses, pi has a **native Agent Skills implementation**, so no prompt hacks are needed for skills: this repo drops in directly.
4
+
5
+ This repo also ships pi-native **prompt templates** for the lifecycle slash commands (`/spec`, `/plan`, `/build`, `/test`, `/review`, `/code-simplify`, `/ship`). These commands add workflow orchestration on top of the underlying skills.
6
+
7
+ ## Overview
8
+
9
+ pi natively supports:
10
+
11
+ - `AGENTS.md` / `CLAUDE.md` context files (auto-loaded from cwd, parent dirs, and global config)
12
+ - Skill discovery from well-known directories (`.agents/skills/`, `.pi/skills/`, `~/.pi/agent/skills/`)
13
+ - Explicit skill invocation via `/skill:<name>`
14
+ - Automatic skill loading by the model when intent matches
15
+ - Prompt-template slash commands from `.pi/prompts/*.md`
16
+
17
+ This means you get near-parity with Claude Code:
18
+
19
+ - Skills are selected automatically based on intent
20
+ - Workflows are enforced via `AGENTS.md`
21
+ - Users can explicitly trigger any skill with `/skill:<name>`
22
+ - Users can start lifecycle workflows with `/spec`, `/plan`, `/build`, `/test`, `/review`, `/code-simplify`, and `/ship`
23
+
24
+ No plugin, wrapper, or custom system prompt is required for the core workflow.
25
+
26
+ **Recommended companion package:** install [`pi-ask-user`](https://github.com/edlsh/pi-ask-user) alongside these skills. It adds an interactive `ask_user` tool and bundles an `ask-user` skill, which is already used by this repo's current pi setup for high-stakes or ambiguous decisions.
27
+
28
+ ---
29
+
30
+ ## Installation
31
+
32
+ The recommended install is **project-scoped using symlinks**:
33
+
34
+ - `.agents/skills/` exposes the skills.
35
+ - `.pi/prompts/` exposes the lifecycle slash commands.
36
+
37
+ pi walks upward from the current working directory looking for project configuration, so once the symlinks exist, every pi session started from inside (or below) the repo picks up the skills and commands automatically. The `AGENTS.md` at the repo root is loaded the same way.
38
+
39
+ 1. Clone the repository somewhere stable:
40
+
41
+ ```bash
42
+ git clone https://github.com/chankov/agent-skills.git /path/to/agent-skills
43
+ ```
44
+
45
+ 2. From the project where you want to use the skills, symlink `skills/` into a pi-discoverable path:
46
+
47
+ ```bash
48
+ cd /path/to/your-project
49
+ mkdir -p .agents
50
+ ln -s /path/to/agent-skills/skills .agents/skills
51
+ ```
52
+
53
+ 3. From the same project, symlink the pi-native lifecycle commands into pi's prompt-template directory:
54
+
55
+ ```bash
56
+ mkdir -p .pi
57
+ ln -s /path/to/agent-skills/.pi/prompts .pi/prompts
58
+ ```
59
+
60
+ This exposes:
61
+
62
+ ```text
63
+ /spec
64
+ /plan
65
+ /build
66
+ /test
67
+ /review
68
+ /code-simplify
69
+ /ship
70
+ ```
71
+
72
+ If `.pi/prompts` already exists as a real directory, keep it and symlink the individual command files instead:
73
+
74
+ ```bash
75
+ ln -s /path/to/agent-skills/.pi/prompts/spec.md .pi/prompts/spec.md
76
+ ln -s /path/to/agent-skills/.pi/prompts/plan.md .pi/prompts/plan.md
77
+ ln -s /path/to/agent-skills/.pi/prompts/build.md .pi/prompts/build.md
78
+ ln -s /path/to/agent-skills/.pi/prompts/test.md .pi/prompts/test.md
79
+ ln -s /path/to/agent-skills/.pi/prompts/review.md .pi/prompts/review.md
80
+ ln -s /path/to/agent-skills/.pi/prompts/code-simplify.md .pi/prompts/code-simplify.md
81
+ ln -s /path/to/agent-skills/.pi/prompts/ship.md .pi/prompts/ship.md
82
+ ```
83
+
84
+ 4. Install the recommended `pi-ask-user` pi package:
85
+
86
+ ```bash
87
+ pi install npm:pi-ask-user
88
+ ```
89
+
90
+ This adds:
91
+
92
+ - the interactive `ask_user` tool
93
+ - the bundled `ask-user` skill
94
+
95
+ 5. Verify pi can see everything:
96
+
97
+ ```bash
98
+ pi
99
+ # then type:
100
+ /skill:
101
+ # pi should autocomplete the full list of agent-skills, plus ask-user if pi packages are enabled
102
+
103
+ # then type:
104
+ /
105
+ # pi should autocomplete /spec, /plan, /build, /test, /review, /code-simplify, and /ship
106
+ ```
107
+
108
+ That's it. `AGENTS.md` is already at the repo root and is auto-loaded when pi starts.
109
+
110
+ ### Optional: pi extensions
111
+
112
+ This repo also ships pi **extensions** under `.pi/extensions/`. Extensions are TypeScript modules that register tools and commands directly with pi. They come in two kinds: **always-on utilities** that layer onto any session, and selectable **harnesses** that reshape a whole session.
113
+
114
+ The always-on utilities:
115
+
116
+ - `mcp-bridge/` — a reusable factory that turns any stdio MCP server into a pi extension. This is a library consumed by wrapper extensions. Symlink it alongside wrappers so relative imports resolve; when pi discovers it directly, it intentionally registers no tools or commands by itself.
117
+ - `chrome-devtools-mcp/` — bridges the [`chrome-devtools-mcp`](https://www.npmjs.com/package/chrome-devtools-mcp) server into pi as native tools, unlocking the `browser-testing-with-devtools` skill on pi.
118
+ - `compact-and-continue/` — registers the `request_compaction` tool that queues pi context compaction to run after the current agent turn ends, optionally resuming work from a self-contained continuation prompt. Used by `/build` to offer a "Compact & continue" option at slice-approval time.
119
+
120
+ To install, symlink the directories into your project's `.pi/extensions/`:
121
+
122
+ ```bash
123
+ mkdir -p .pi/extensions
124
+ ln -s /path/to/agent-skills/.pi/extensions/mcp-bridge .pi/extensions/mcp-bridge
125
+ ln -s /path/to/agent-skills/.pi/extensions/chrome-devtools-mcp .pi/extensions/chrome-devtools-mcp
126
+ ln -s /path/to/agent-skills/.pi/extensions/compact-and-continue .pi/extensions/compact-and-continue
127
+ ```
128
+
129
+ Install the shared runtime dependencies used by the symlinked extensions once in the `agent-skills` clone:
130
+
131
+ ```bash
132
+ cd /path/to/agent-skills/.pi/extensions
133
+ npm ci
134
+ # If this clone does not have package-lock.json yet, run: npm install
135
+ ```
136
+
137
+ Because the project extensions are symlinks into the clone, these dependencies are reused by every project that links the same extension directories.
138
+
139
+ Verify by starting `pi` and running `/chrome_devtools-status` — expect `Chrome DevTools MCP connected. Registered N tool(s).`
140
+
141
+ #### Extension harnesses — orchestration, safety, messaging
142
+
143
+ This repo also ships **15 session harnesses** ported from [disler](https://github.com/disler)'s [`pi-vs-claude-code`](https://github.com/disler/pi-vs-claude-code) project (MIT):
144
+
145
+ - **Orchestration** — `agent-team`, `agent-chain`, `pi-pi`, `subagent-widget`, `system-select`
146
+ - **Safety** — `damage-control`, `damage-control-continue`
147
+ - **Focus** — `purpose-gate`, `tilldone`
148
+ - **UI** — `minimal`, `tool-counter`, `tool-counter-widget`, `session-replay`
149
+ - **Pi-to-Pi messaging** — `coms`, `coms-net`
150
+
151
+ Unlike the utilities above, each harness reshapes the entire pi session, and they are **mutually exclusive** — you load one per session, not all at once. pi auto-discovers and loads *everything* under `.pi/extensions/`, so the harnesses deliberately live in a separate directory — **`.pi/harnesses/`** — which pi does *not* auto-discover. **Never copy or symlink a harness into `.pi/extensions/`**: that would load it on every plain `pi` run, and stacking all 15 aborts startup (`coms` and `coms-net` register clashing CLI flags). Load a single harness explicitly instead — there is nothing to symlink:
152
+
153
+ ```bash
154
+ # from the agent-skills clone, via the bundled justfile
155
+ just --list # list every harness recipe
156
+ just ext-agent-team # launch pi with one harness
157
+
158
+ # or directly, from anywhere — point pi -e at the harness file
159
+ pi -e /path/to/agent-skills/.pi/harnesses/tilldone/index.ts
160
+ ```
161
+
162
+ The harnesses have their own runtime dependencies (`yaml`, `@sinclair/typebox`) declared in `.pi/harnesses/package.json` — separate from the extension deps above. Install both at once with `just install` from the clone, or run `npm ci` in `.pi/harnesses/` as well. The [pi extension catalog](pi-extensions.md) has the full list, per-extension `README.md` pointers, required environment variables (for `coms-net` and `pi-pi`), and what changed from upstream.
163
+
164
+ Each extension — utility or harness — has its own `README.md` describing what it provides.
165
+
166
+ > Why a generic `mcp-bridge` exists: pi does not yet have first-class MCP infrastructure. The bridge is a stopgap that lets pi consume MCP servers today; it will be deprecated once pi gains native MCP support.
167
+
168
+ ### Keeping skills up to date
169
+
170
+ Because `.agents/skills`, `.pi/prompts`, and `.pi/extensions` are symlinks into the cloned `agent-skills` repo, running `git pull` in that clone updates every skill, lifecycle command, and extension in place — no re-copy required.
171
+
172
+ ### Alternative scopes
173
+
174
+ - **Global install** — symlink skills into `~/.pi/agent/skills/` and prompts into `~/.pi/agent/prompts/` to make them available in every pi session on the machine, regardless of cwd. You may also symlink `AGENTS.md` into `~/.pi/agent/AGENTS.md` for global workflow context.
175
+ - **Copy instead of symlink** — use `cp -R /path/to/agent-skills/skills .agents/skills` and `cp -R /path/to/agent-skills/.pi/prompts .pi/prompts` if you're on a platform where symlinks are awkward (e.g. plain Windows without developer mode). You'll need to re-copy after updates.
176
+
177
+ ### Recommended companion skill
178
+
179
+ If you install `pi-ask-user`, pi will also discover its bundled `ask-user` skill from the installed pi package. This is a strong complement to `agent-skills` because it gives the agent a structured way to stop and ask for an explicit decision before:
180
+
181
+ - architectural or API trade-offs
182
+ - destructive or costly-to-reverse changes
183
+ - ambiguous requirements
184
+ - preference-dependent implementation choices
185
+
186
+ That matches the repo's current pi setup, where `ask-user` is available as a recommended decision-gating skill.
187
+
188
+ ### Future work
189
+
190
+ pi supports extensions and skill discovery "from pi packages." Publishing `agent-skills` as a first-class pi package would let users install via pi's own mechanism — out of scope for this guide, but tracked as a future integration.
191
+
192
+ ---
193
+
194
+ ## How It Works
195
+
196
+ ### 1. Skill Discovery
197
+
198
+ pi searches these locations for skills (all are merged):
199
+
200
+ ```
201
+ .agents/skills/ ← this install (walked upward from cwd)
202
+ .pi/skills/ ← project scope
203
+ ~/.agents/skills/ ← global convention
204
+ ~/.pi/agent/skills/ ← pi global config
205
+ <pi packages> ← bundled/installed pi packages (e.g. `pi-ask-user`)
206
+ ```
207
+
208
+ Each skill lives in:
209
+
210
+ ```
211
+ skills/<skill-name>/SKILL.md
212
+ ```
213
+
214
+ ### 2. Context Files
215
+
216
+ `AGENTS.md` (and `CLAUDE.md`) are auto-loaded and concatenated from:
217
+
218
+ - `~/.pi/agent/AGENTS.md` (global)
219
+ - Every parent directory walking up from cwd
220
+ - The current directory
221
+
222
+ The repo's `AGENTS.md` encodes the intent-to-skill mapping and workflow rules that make skill selection behave like Claude Code.
223
+
224
+ ### 3. Prompt Templates
225
+
226
+ pi also searches for prompt templates in:
227
+
228
+ ```
229
+ .pi/prompts/*.md ← this command install (walked upward from cwd)
230
+ ~/.pi/agent/prompts/*.md ← pi global command config
231
+ <pi packages> ← bundled/installed pi packages
232
+ ```
233
+
234
+ Each Markdown file becomes a slash command by filename. For example:
235
+
236
+ ```
237
+ .pi/prompts/spec.md → /spec
238
+ .pi/prompts/code-simplify.md → /code-simplify
239
+ ```
240
+
241
+ These lifecycle commands are not replacements for skills. They are workflow entry points that add orchestration and tell the agent which skills to load and follow for the current phase.
242
+
243
+ ### 4. Invocation
244
+
245
+ Three ways to trigger the workflow:
246
+
247
+ - **Explicit skill:** type `/skill:<name>` (e.g. `/skill:spec-driven-development`)
248
+ - **Lifecycle command:** type `/spec`, `/plan`, `/build`, `/test`, `/review`, `/code-simplify`, or `/ship`
249
+ - **Automatic:** describe intent in natural language — the model reads `AGENTS.md` and loads the matching skill
250
+
251
+ ### 5. Lifecycle Mapping
252
+
253
+ The development lifecycle is encoded in both `AGENTS.md` and the pi prompt templates:
254
+
255
+ - DEFINE → `/spec` → `spec-driven-development`
256
+ - PLAN → `/plan` → `planning-and-task-breakdown`
257
+ - BUILD → `/build` → `incremental-implementation` + `test-driven-development`
258
+ - VERIFY → `/test` → `test-driven-development`; use `debugging-and-error-recovery` when tests or builds fail
259
+ - REVIEW → `/review` → `code-review-and-quality`
260
+ - SIMPLIFY → `/code-simplify` → `code-simplification`
261
+ - SHIP → `/ship` → `shipping-and-launch`
262
+
263
+ ---
264
+
265
+ ## Usage Examples
266
+
267
+ ### Example 1: Feature Development
268
+
269
+ User:
270
+ ```
271
+ Add authentication to this app
272
+ ```
273
+
274
+ pi behavior:
275
+ - Reads `AGENTS.md`, detects feature work
276
+ - Auto-loads `spec-driven-development`
277
+ - Produces a spec before writing code
278
+ - Progresses to `planning-and-task-breakdown` and implementation skills
279
+
280
+ Equivalent explicit forms:
281
+ ```
282
+ /spec Add authentication to this app
283
+ /skill:spec-driven-development
284
+ ```
285
+
286
+ ---
287
+
288
+ ### Example 2: Bug Fix
289
+
290
+ User:
291
+ ```
292
+ This endpoint is returning 500 errors
293
+ ```
294
+
295
+ pi behavior:
296
+ - Auto-loads `debugging-and-error-recovery`
297
+ - Reproduces → localizes → fixes → adds guards
298
+
299
+ Equivalent explicit forms:
300
+ ```
301
+ /test This endpoint is returning 500 errors
302
+ /skill:debugging-and-error-recovery
303
+ ```
304
+
305
+ ---
306
+
307
+ ### Example 3: Code Review
308
+
309
+ User:
310
+ ```
311
+ Review this PR
312
+ ```
313
+
314
+ pi behavior:
315
+ - Auto-loads `code-review-and-quality`
316
+ - Applies structured review (correctness, design, readability, security, tests)
317
+
318
+ Equivalent explicit forms:
319
+ ```
320
+ /review
321
+ /skill:code-review-and-quality
322
+ ```
323
+
324
+ ---
325
+
326
+ ## Agent Expectations (Critical)
327
+
328
+ For the skill system to deliver its value, the agent must:
329
+
330
+ - Check whether a skill applies before acting
331
+ - Invoke the matching skill when one applies
332
+ - Never skip required workflows (spec, plan, test, etc.)
333
+ - Not jump directly to implementation on non-trivial work
334
+
335
+ These rules are enforced by `AGENTS.md`, which pi auto-loads.
336
+
337
+ ---
338
+
339
+ ## Verification
340
+
341
+ After installing, confirm the integration works:
342
+
343
+ 1. Run `pi` from inside the repo (or any subdirectory).
344
+ 2. Type `/skill:` and confirm the skill list autocompletes with entries like `spec-driven-development`, `incremental-implementation`, `code-review-and-quality`, and `ask-user`.
345
+ 3. Type `/` and confirm the lifecycle commands autocomplete: `/spec`, `/plan`, `/build`, `/test`, `/review`, `/code-simplify`, and `/ship`.
346
+ 4. Run `/spec design a new feature for X` — confirm pi expands the command and invokes `spec-driven-development`.
347
+ 5. Ask: *"fix this bug"* — confirm pi invokes `debugging-and-error-recovery`, or run `/test` to start a TDD/debugging workflow explicitly.
348
+ 6. Give pi an ambiguous or high-stakes request and confirm it can use the `ask_user` tool / `ask-user` skill to request an explicit decision.
349
+
350
+ If skill autocomplete is empty, check that `.agents/skills` points to a directory containing `<skill-name>/SKILL.md` files and that pi was not started with `--no-skills`.
351
+
352
+ If lifecycle command autocomplete is empty, check that `.pi/prompts` points to a directory containing the command Markdown files and run `/reload` or restart pi.
353
+
354
+ If extension loading reports `Cannot find module '@modelcontextprotocol/sdk/client/index.js'`, the extension runtime dependencies are not installed. Run:
355
+
356
+ ```bash
357
+ cd /path/to/agent-skills/.pi/extensions
358
+ npm ci
359
+ ```
360
+
361
+ The harnesses install separately — if a harness reports `Cannot find module 'yaml'` or `'@sinclair/typebox'`, run `npm ci` in `.pi/harnesses/` as well (or `just install` from the clone, which does both).
362
+
363
+ Then run `/reload` or restart pi.
364
+
365
+ ---
366
+
367
+ ## Limitations
368
+
369
+ - Automatic skill loading depends on the underlying model's compliance with `AGENTS.md` rules.
370
+ - Prompt-template commands expand into instructions; they do not mechanically execute `/skill:<name>`. The pi-specific prompt templates therefore explicitly tell the agent which skills to load and follow.
371
+ - Windows without developer mode may not support symlinks — use the copy variant instead.
372
+ - Global `AGENTS.md` applies to every project when using the global-install alternative; pi concatenates context files, so this is usually additive, not destructive, but be aware of it.
373
+
374
+ ---
375
+
376
+ ## Recommended Workflow
377
+
378
+ Just use natural language:
379
+
380
+ - "Design a feature"
381
+ - "Plan this change"
382
+ - "Implement this"
383
+ - "Fix this bug"
384
+ - "Review this"
385
+
386
+ Or invoke lifecycle commands when you want the full workflow prompt:
387
+
388
+ - `/spec`
389
+ - `/plan`
390
+ - `/build`
391
+ - `/test`
392
+ - `/review`
393
+ - `/code-simplify`
394
+ - `/ship`
395
+
396
+ Or invoke individual skills directly when you want precise control:
397
+
398
+ - `/skill:spec-driven-development`
399
+ - `/skill:planning-and-task-breakdown`
400
+ - `/skill:incremental-implementation`
401
+ - `/skill:debugging-and-error-recovery`
402
+ - `/skill:code-review-and-quality`
403
+
404
+ ---
405
+
406
+ ## Summary
407
+
408
+ pi integration works by leveraging pi's **native** Agent Skills and prompt-template support:
409
+
410
+ - Symlink `skills/` into `.agents/skills/`
411
+ - Symlink `.pi/prompts/` into the target project's `.pi/prompts/`
412
+ - Install the recommended `pi-ask-user` pi package for interactive decision gating
413
+ - Let pi auto-load `AGENTS.md` from the repo root
414
+ - Use `/skill:<name>`, lifecycle commands like `/spec`, or natural language to trigger workflows
415
+
416
+ The result is a fully agent-driven, production-grade engineering workflow — with minimal setup: one symlink for this repo's skills, one symlink for lifecycle commands, plus an optional but recommended `pi-ask-user` install for interactive decision gating.