compound-engineering-pi 0.2.3

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 (332) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +124 -0
  3. package/bin/compound-engineering-pi +12 -0
  4. package/bin/compound-plugin +12 -0
  5. package/compound-engineering-pi +12 -0
  6. package/compound-plugin +5 -0
  7. package/docs/pi.md +152 -0
  8. package/extensions/compound-engineering-compat.ts +452 -0
  9. package/package.json +84 -0
  10. package/pi-resources/compound-engineering/mcporter.json +7 -0
  11. package/plugins/coding-tutor/.claude-plugin/plugin.json +9 -0
  12. package/plugins/coding-tutor/README.md +37 -0
  13. package/plugins/coding-tutor/commands/quiz-me.md +1 -0
  14. package/plugins/coding-tutor/commands/sync-tutorials.md +25 -0
  15. package/plugins/coding-tutor/commands/teach-me.md +1 -0
  16. package/plugins/coding-tutor/skills/coding-tutor/SKILL.md +214 -0
  17. package/plugins/coding-tutor/skills/coding-tutor/scripts/create_tutorial.py +207 -0
  18. package/plugins/coding-tutor/skills/coding-tutor/scripts/index_tutorials.py +193 -0
  19. package/plugins/coding-tutor/skills/coding-tutor/scripts/quiz_priority.py +190 -0
  20. package/plugins/coding-tutor/skills/coding-tutor/scripts/setup_tutorials.py +118 -0
  21. package/plugins/compound-engineering/.claude-plugin/plugin.json +33 -0
  22. package/plugins/compound-engineering/CHANGELOG.md +457 -0
  23. package/plugins/compound-engineering/CLAUDE.md +89 -0
  24. package/plugins/compound-engineering/LICENSE +21 -0
  25. package/plugins/compound-engineering/README.md +232 -0
  26. package/plugins/compound-engineering/agents/design/design-implementation-reviewer.md +109 -0
  27. package/plugins/compound-engineering/agents/design/design-iterator.md +224 -0
  28. package/plugins/compound-engineering/agents/design/figma-design-sync.md +190 -0
  29. package/plugins/compound-engineering/agents/docs/ankane-readme-writer.md +65 -0
  30. package/plugins/compound-engineering/agents/research/best-practices-researcher.md +126 -0
  31. package/plugins/compound-engineering/agents/research/framework-docs-researcher.md +106 -0
  32. package/plugins/compound-engineering/agents/research/git-history-analyzer.md +59 -0
  33. package/plugins/compound-engineering/agents/research/learnings-researcher.md +264 -0
  34. package/plugins/compound-engineering/agents/research/repo-research-analyst.md +135 -0
  35. package/plugins/compound-engineering/agents/review/agent-native-reviewer.md +261 -0
  36. package/plugins/compound-engineering/agents/review/architecture-strategist.md +67 -0
  37. package/plugins/compound-engineering/agents/review/code-simplicity-reviewer.md +101 -0
  38. package/plugins/compound-engineering/agents/review/data-integrity-guardian.md +85 -0
  39. package/plugins/compound-engineering/agents/review/data-migration-expert.md +112 -0
  40. package/plugins/compound-engineering/agents/review/deployment-verification-agent.md +174 -0
  41. package/plugins/compound-engineering/agents/review/dhh-rails-reviewer.md +66 -0
  42. package/plugins/compound-engineering/agents/review/julik-frontend-races-reviewer.md +221 -0
  43. package/plugins/compound-engineering/agents/review/kieran-python-reviewer.md +133 -0
  44. package/plugins/compound-engineering/agents/review/kieran-rails-reviewer.md +115 -0
  45. package/plugins/compound-engineering/agents/review/kieran-typescript-reviewer.md +124 -0
  46. package/plugins/compound-engineering/agents/review/pattern-recognition-specialist.md +72 -0
  47. package/plugins/compound-engineering/agents/review/performance-oracle.md +137 -0
  48. package/plugins/compound-engineering/agents/review/schema-drift-detector.md +154 -0
  49. package/plugins/compound-engineering/agents/review/security-sentinel.md +114 -0
  50. package/plugins/compound-engineering/agents/workflow/bug-reproduction-validator.md +82 -0
  51. package/plugins/compound-engineering/agents/workflow/every-style-editor.md +64 -0
  52. package/plugins/compound-engineering/agents/workflow/lint.md +16 -0
  53. package/plugins/compound-engineering/agents/workflow/pr-comment-resolver.md +84 -0
  54. package/plugins/compound-engineering/agents/workflow/spec-flow-analyzer.md +134 -0
  55. package/plugins/compound-engineering/commands/agent-native-audit.md +278 -0
  56. package/plugins/compound-engineering/commands/changelog.md +138 -0
  57. package/plugins/compound-engineering/commands/create-agent-skill.md +9 -0
  58. package/plugins/compound-engineering/commands/deepen-plan.md +546 -0
  59. package/plugins/compound-engineering/commands/deploy-docs.md +113 -0
  60. package/plugins/compound-engineering/commands/feature-video.md +342 -0
  61. package/plugins/compound-engineering/commands/generate_command.md +163 -0
  62. package/plugins/compound-engineering/commands/heal-skill.md +143 -0
  63. package/plugins/compound-engineering/commands/lfg.md +20 -0
  64. package/plugins/compound-engineering/commands/release-docs.md +212 -0
  65. package/plugins/compound-engineering/commands/report-bug.md +151 -0
  66. package/plugins/compound-engineering/commands/reproduce-bug.md +100 -0
  67. package/plugins/compound-engineering/commands/resolve_parallel.md +35 -0
  68. package/plugins/compound-engineering/commands/resolve_todo_parallel.md +37 -0
  69. package/plugins/compound-engineering/commands/slfg.md +32 -0
  70. package/plugins/compound-engineering/commands/technical_review.md +8 -0
  71. package/plugins/compound-engineering/commands/test-browser.md +339 -0
  72. package/plugins/compound-engineering/commands/test-xcode.md +332 -0
  73. package/plugins/compound-engineering/commands/triage.md +311 -0
  74. package/plugins/compound-engineering/commands/workflows/brainstorm.md +124 -0
  75. package/plugins/compound-engineering/commands/workflows/compound.md +239 -0
  76. package/plugins/compound-engineering/commands/workflows/plan.md +551 -0
  77. package/plugins/compound-engineering/commands/workflows/review.md +526 -0
  78. package/plugins/compound-engineering/commands/workflows/work.md +433 -0
  79. package/plugins/compound-engineering/skills/agent-browser/SKILL.md +223 -0
  80. package/plugins/compound-engineering/skills/agent-native-architecture/SKILL.md +435 -0
  81. package/plugins/compound-engineering/skills/agent-native-architecture/references/action-parity-discipline.md +409 -0
  82. package/plugins/compound-engineering/skills/agent-native-architecture/references/agent-execution-patterns.md +467 -0
  83. package/plugins/compound-engineering/skills/agent-native-architecture/references/agent-native-testing.md +582 -0
  84. package/plugins/compound-engineering/skills/agent-native-architecture/references/architecture-patterns.md +478 -0
  85. package/plugins/compound-engineering/skills/agent-native-architecture/references/dynamic-context-injection.md +338 -0
  86. package/plugins/compound-engineering/skills/agent-native-architecture/references/files-universal-interface.md +301 -0
  87. package/plugins/compound-engineering/skills/agent-native-architecture/references/from-primitives-to-domain-tools.md +359 -0
  88. package/plugins/compound-engineering/skills/agent-native-architecture/references/mcp-tool-design.md +506 -0
  89. package/plugins/compound-engineering/skills/agent-native-architecture/references/mobile-patterns.md +871 -0
  90. package/plugins/compound-engineering/skills/agent-native-architecture/references/product-implications.md +443 -0
  91. package/plugins/compound-engineering/skills/agent-native-architecture/references/refactoring-to-prompt-native.md +317 -0
  92. package/plugins/compound-engineering/skills/agent-native-architecture/references/self-modification.md +269 -0
  93. package/plugins/compound-engineering/skills/agent-native-architecture/references/shared-workspace-architecture.md +680 -0
  94. package/plugins/compound-engineering/skills/agent-native-architecture/references/system-prompt-design.md +250 -0
  95. package/plugins/compound-engineering/skills/andrew-kane-gem-writer/SKILL.md +184 -0
  96. package/plugins/compound-engineering/skills/andrew-kane-gem-writer/references/database-adapters.md +231 -0
  97. package/plugins/compound-engineering/skills/andrew-kane-gem-writer/references/module-organization.md +121 -0
  98. package/plugins/compound-engineering/skills/andrew-kane-gem-writer/references/rails-integration.md +183 -0
  99. package/plugins/compound-engineering/skills/andrew-kane-gem-writer/references/resources.md +119 -0
  100. package/plugins/compound-engineering/skills/andrew-kane-gem-writer/references/testing-patterns.md +261 -0
  101. package/plugins/compound-engineering/skills/brainstorming/SKILL.md +190 -0
  102. package/plugins/compound-engineering/skills/compound-docs/SKILL.md +511 -0
  103. package/plugins/compound-engineering/skills/compound-docs/assets/critical-pattern-template.md +34 -0
  104. package/plugins/compound-engineering/skills/compound-docs/assets/resolution-template.md +93 -0
  105. package/plugins/compound-engineering/skills/compound-docs/references/yaml-schema.md +65 -0
  106. package/plugins/compound-engineering/skills/compound-docs/schema.yaml +176 -0
  107. package/plugins/compound-engineering/skills/create-agent-skills/SKILL.md +275 -0
  108. package/plugins/compound-engineering/skills/create-agent-skills/references/api-security.md +226 -0
  109. package/plugins/compound-engineering/skills/create-agent-skills/references/be-clear-and-direct.md +531 -0
  110. package/plugins/compound-engineering/skills/create-agent-skills/references/best-practices.md +404 -0
  111. package/plugins/compound-engineering/skills/create-agent-skills/references/common-patterns.md +595 -0
  112. package/plugins/compound-engineering/skills/create-agent-skills/references/core-principles.md +437 -0
  113. package/plugins/compound-engineering/skills/create-agent-skills/references/executable-code.md +175 -0
  114. package/plugins/compound-engineering/skills/create-agent-skills/references/iteration-and-testing.md +474 -0
  115. package/plugins/compound-engineering/skills/create-agent-skills/references/official-spec.md +134 -0
  116. package/plugins/compound-engineering/skills/create-agent-skills/references/recommended-structure.md +168 -0
  117. package/plugins/compound-engineering/skills/create-agent-skills/references/skill-structure.md +152 -0
  118. package/plugins/compound-engineering/skills/create-agent-skills/references/using-scripts.md +113 -0
  119. package/plugins/compound-engineering/skills/create-agent-skills/references/using-templates.md +112 -0
  120. package/plugins/compound-engineering/skills/create-agent-skills/references/workflows-and-validation.md +510 -0
  121. package/plugins/compound-engineering/skills/create-agent-skills/templates/router-skill.md +73 -0
  122. package/plugins/compound-engineering/skills/create-agent-skills/templates/simple-skill.md +33 -0
  123. package/plugins/compound-engineering/skills/create-agent-skills/workflows/add-reference.md +96 -0
  124. package/plugins/compound-engineering/skills/create-agent-skills/workflows/add-script.md +93 -0
  125. package/plugins/compound-engineering/skills/create-agent-skills/workflows/add-template.md +74 -0
  126. package/plugins/compound-engineering/skills/create-agent-skills/workflows/add-workflow.md +120 -0
  127. package/plugins/compound-engineering/skills/create-agent-skills/workflows/audit-skill.md +138 -0
  128. package/plugins/compound-engineering/skills/create-agent-skills/workflows/create-domain-expertise-skill.md +605 -0
  129. package/plugins/compound-engineering/skills/create-agent-skills/workflows/create-new-skill.md +191 -0
  130. package/plugins/compound-engineering/skills/create-agent-skills/workflows/get-guidance.md +121 -0
  131. package/plugins/compound-engineering/skills/create-agent-skills/workflows/upgrade-to-router.md +161 -0
  132. package/plugins/compound-engineering/skills/create-agent-skills/workflows/verify-skill.md +204 -0
  133. package/plugins/compound-engineering/skills/dhh-rails-style/SKILL.md +185 -0
  134. package/plugins/compound-engineering/skills/dhh-rails-style/references/architecture.md +653 -0
  135. package/plugins/compound-engineering/skills/dhh-rails-style/references/controllers.md +303 -0
  136. package/plugins/compound-engineering/skills/dhh-rails-style/references/frontend.md +510 -0
  137. package/plugins/compound-engineering/skills/dhh-rails-style/references/gems.md +266 -0
  138. package/plugins/compound-engineering/skills/dhh-rails-style/references/models.md +359 -0
  139. package/plugins/compound-engineering/skills/dhh-rails-style/references/testing.md +338 -0
  140. package/plugins/compound-engineering/skills/document-review/SKILL.md +87 -0
  141. package/plugins/compound-engineering/skills/dspy-ruby/SKILL.md +737 -0
  142. package/plugins/compound-engineering/skills/dspy-ruby/assets/config-template.rb +187 -0
  143. package/plugins/compound-engineering/skills/dspy-ruby/assets/module-template.rb +300 -0
  144. package/plugins/compound-engineering/skills/dspy-ruby/assets/signature-template.rb +221 -0
  145. package/plugins/compound-engineering/skills/dspy-ruby/references/core-concepts.md +674 -0
  146. package/plugins/compound-engineering/skills/dspy-ruby/references/observability.md +366 -0
  147. package/plugins/compound-engineering/skills/dspy-ruby/references/optimization.md +603 -0
  148. package/plugins/compound-engineering/skills/dspy-ruby/references/providers.md +418 -0
  149. package/plugins/compound-engineering/skills/dspy-ruby/references/toolsets.md +502 -0
  150. package/plugins/compound-engineering/skills/every-style-editor/SKILL.md +134 -0
  151. package/plugins/compound-engineering/skills/every-style-editor/references/EVERY_WRITE_STYLE.md +529 -0
  152. package/plugins/compound-engineering/skills/file-todos/SKILL.md +252 -0
  153. package/plugins/compound-engineering/skills/file-todos/assets/todo-template.md +155 -0
  154. package/plugins/compound-engineering/skills/frontend-design/SKILL.md +42 -0
  155. package/plugins/compound-engineering/skills/gemini-imagegen/SKILL.md +237 -0
  156. package/plugins/compound-engineering/skills/gemini-imagegen/requirements.txt +2 -0
  157. package/plugins/compound-engineering/skills/gemini-imagegen/scripts/compose_images.py +157 -0
  158. package/plugins/compound-engineering/skills/gemini-imagegen/scripts/edit_image.py +144 -0
  159. package/plugins/compound-engineering/skills/gemini-imagegen/scripts/gemini_images.py +263 -0
  160. package/plugins/compound-engineering/skills/gemini-imagegen/scripts/generate_image.py +133 -0
  161. package/plugins/compound-engineering/skills/gemini-imagegen/scripts/multi_turn_chat.py +216 -0
  162. package/plugins/compound-engineering/skills/git-worktree/SKILL.md +302 -0
  163. package/plugins/compound-engineering/skills/git-worktree/scripts/worktree-manager.sh +337 -0
  164. package/plugins/compound-engineering/skills/orchestrating-swarms/SKILL.md +1718 -0
  165. package/plugins/compound-engineering/skills/rclone/SKILL.md +150 -0
  166. package/plugins/compound-engineering/skills/rclone/scripts/check_setup.sh +60 -0
  167. package/plugins/compound-engineering/skills/resolve-pr-parallel/SKILL.md +89 -0
  168. package/plugins/compound-engineering/skills/resolve-pr-parallel/scripts/get-pr-comments +68 -0
  169. package/plugins/compound-engineering/skills/resolve-pr-parallel/scripts/resolve-pr-thread +23 -0
  170. package/plugins/compound-engineering/skills/skill-creator/SKILL.md +210 -0
  171. package/plugins/compound-engineering/skills/skill-creator/scripts/init_skill.py +303 -0
  172. package/plugins/compound-engineering/skills/skill-creator/scripts/package_skill.py +110 -0
  173. package/plugins/compound-engineering/skills/skill-creator/scripts/quick_validate.py +65 -0
  174. package/prompts/deepen-plan.md +549 -0
  175. package/prompts/feature-video.md +341 -0
  176. package/prompts/resolve_todo_parallel.md +36 -0
  177. package/prompts/test-browser.md +342 -0
  178. package/prompts/workflows-brainstorm.md +123 -0
  179. package/prompts/workflows-compound.md +238 -0
  180. package/prompts/workflows-plan.md +550 -0
  181. package/prompts/workflows-review.md +529 -0
  182. package/prompts/workflows-work.md +432 -0
  183. package/skills/agent-browser/SKILL.md +223 -0
  184. package/skills/agent-native-architecture/SKILL.md +435 -0
  185. package/skills/agent-native-architecture/references/action-parity-discipline.md +409 -0
  186. package/skills/agent-native-architecture/references/agent-execution-patterns.md +467 -0
  187. package/skills/agent-native-architecture/references/agent-native-testing.md +582 -0
  188. package/skills/agent-native-architecture/references/architecture-patterns.md +478 -0
  189. package/skills/agent-native-architecture/references/dynamic-context-injection.md +338 -0
  190. package/skills/agent-native-architecture/references/files-universal-interface.md +301 -0
  191. package/skills/agent-native-architecture/references/from-primitives-to-domain-tools.md +359 -0
  192. package/skills/agent-native-architecture/references/mcp-tool-design.md +506 -0
  193. package/skills/agent-native-architecture/references/mobile-patterns.md +871 -0
  194. package/skills/agent-native-architecture/references/product-implications.md +443 -0
  195. package/skills/agent-native-architecture/references/refactoring-to-prompt-native.md +317 -0
  196. package/skills/agent-native-architecture/references/self-modification.md +269 -0
  197. package/skills/agent-native-architecture/references/shared-workspace-architecture.md +680 -0
  198. package/skills/agent-native-architecture/references/system-prompt-design.md +250 -0
  199. package/skills/agent-native-reviewer/SKILL.md +260 -0
  200. package/skills/andrew-kane-gem-writer/SKILL.md +184 -0
  201. package/skills/andrew-kane-gem-writer/references/database-adapters.md +231 -0
  202. package/skills/andrew-kane-gem-writer/references/module-organization.md +121 -0
  203. package/skills/andrew-kane-gem-writer/references/rails-integration.md +183 -0
  204. package/skills/andrew-kane-gem-writer/references/resources.md +119 -0
  205. package/skills/andrew-kane-gem-writer/references/testing-patterns.md +261 -0
  206. package/skills/ankane-readme-writer/SKILL.md +63 -0
  207. package/skills/architecture-strategist/SKILL.md +66 -0
  208. package/skills/best-practices-researcher/SKILL.md +125 -0
  209. package/skills/brainstorming/SKILL.md +190 -0
  210. package/skills/bug-reproduction-validator/SKILL.md +81 -0
  211. package/skills/code-simplicity-reviewer/SKILL.md +100 -0
  212. package/skills/compound-docs/SKILL.md +511 -0
  213. package/skills/compound-docs/assets/critical-pattern-template.md +34 -0
  214. package/skills/compound-docs/assets/resolution-template.md +93 -0
  215. package/skills/compound-docs/references/yaml-schema.md +65 -0
  216. package/skills/compound-docs/schema.yaml +176 -0
  217. package/skills/create-agent-skills/SKILL.md +275 -0
  218. package/skills/create-agent-skills/references/api-security.md +226 -0
  219. package/skills/create-agent-skills/references/be-clear-and-direct.md +531 -0
  220. package/skills/create-agent-skills/references/best-practices.md +404 -0
  221. package/skills/create-agent-skills/references/common-patterns.md +595 -0
  222. package/skills/create-agent-skills/references/core-principles.md +437 -0
  223. package/skills/create-agent-skills/references/executable-code.md +175 -0
  224. package/skills/create-agent-skills/references/iteration-and-testing.md +474 -0
  225. package/skills/create-agent-skills/references/official-spec.md +134 -0
  226. package/skills/create-agent-skills/references/recommended-structure.md +168 -0
  227. package/skills/create-agent-skills/references/skill-structure.md +152 -0
  228. package/skills/create-agent-skills/references/using-scripts.md +113 -0
  229. package/skills/create-agent-skills/references/using-templates.md +112 -0
  230. package/skills/create-agent-skills/references/workflows-and-validation.md +510 -0
  231. package/skills/create-agent-skills/templates/router-skill.md +73 -0
  232. package/skills/create-agent-skills/templates/simple-skill.md +33 -0
  233. package/skills/create-agent-skills/workflows/add-reference.md +96 -0
  234. package/skills/create-agent-skills/workflows/add-script.md +93 -0
  235. package/skills/create-agent-skills/workflows/add-template.md +74 -0
  236. package/skills/create-agent-skills/workflows/add-workflow.md +120 -0
  237. package/skills/create-agent-skills/workflows/audit-skill.md +138 -0
  238. package/skills/create-agent-skills/workflows/create-domain-expertise-skill.md +605 -0
  239. package/skills/create-agent-skills/workflows/create-new-skill.md +191 -0
  240. package/skills/create-agent-skills/workflows/get-guidance.md +121 -0
  241. package/skills/create-agent-skills/workflows/upgrade-to-router.md +161 -0
  242. package/skills/create-agent-skills/workflows/verify-skill.md +204 -0
  243. package/skills/data-integrity-guardian/SKILL.md +84 -0
  244. package/skills/data-migration-expert/SKILL.md +111 -0
  245. package/skills/deployment-verification-agent/SKILL.md +173 -0
  246. package/skills/design-implementation-reviewer/SKILL.md +107 -0
  247. package/skills/design-iterator/SKILL.md +222 -0
  248. package/skills/dhh-rails-reviewer/SKILL.md +65 -0
  249. package/skills/dhh-rails-style/SKILL.md +185 -0
  250. package/skills/dhh-rails-style/references/architecture.md +653 -0
  251. package/skills/dhh-rails-style/references/controllers.md +303 -0
  252. package/skills/dhh-rails-style/references/frontend.md +510 -0
  253. package/skills/dhh-rails-style/references/gems.md +266 -0
  254. package/skills/dhh-rails-style/references/models.md +359 -0
  255. package/skills/dhh-rails-style/references/testing.md +338 -0
  256. package/skills/document-review/SKILL.md +87 -0
  257. package/skills/dspy-ruby/SKILL.md +737 -0
  258. package/skills/dspy-ruby/assets/config-template.rb +187 -0
  259. package/skills/dspy-ruby/assets/module-template.rb +300 -0
  260. package/skills/dspy-ruby/assets/signature-template.rb +221 -0
  261. package/skills/dspy-ruby/references/core-concepts.md +674 -0
  262. package/skills/dspy-ruby/references/observability.md +366 -0
  263. package/skills/dspy-ruby/references/optimization.md +603 -0
  264. package/skills/dspy-ruby/references/providers.md +418 -0
  265. package/skills/dspy-ruby/references/toolsets.md +502 -0
  266. package/skills/every-style-editor/SKILL.md +134 -0
  267. package/skills/every-style-editor/references/EVERY_WRITE_STYLE.md +529 -0
  268. package/skills/every-style-editor-2/SKILL.md +62 -0
  269. package/skills/figma-design-sync/SKILL.md +188 -0
  270. package/skills/file-todos/SKILL.md +252 -0
  271. package/skills/file-todos/assets/todo-template.md +155 -0
  272. package/skills/framework-docs-researcher/SKILL.md +105 -0
  273. package/skills/frontend-design/SKILL.md +42 -0
  274. package/skills/gemini-imagegen/SKILL.md +237 -0
  275. package/skills/gemini-imagegen/requirements.txt +2 -0
  276. package/skills/gemini-imagegen/scripts/compose_images.py +157 -0
  277. package/skills/gemini-imagegen/scripts/edit_image.py +144 -0
  278. package/skills/gemini-imagegen/scripts/gemini_images.py +263 -0
  279. package/skills/gemini-imagegen/scripts/generate_image.py +133 -0
  280. package/skills/gemini-imagegen/scripts/multi_turn_chat.py +216 -0
  281. package/skills/git-history-analyzer/SKILL.md +58 -0
  282. package/skills/git-worktree/SKILL.md +302 -0
  283. package/skills/git-worktree/scripts/worktree-manager.sh +337 -0
  284. package/skills/julik-frontend-races-reviewer/SKILL.md +220 -0
  285. package/skills/kieran-python-reviewer/SKILL.md +132 -0
  286. package/skills/kieran-rails-reviewer/SKILL.md +114 -0
  287. package/skills/kieran-typescript-reviewer/SKILL.md +123 -0
  288. package/skills/learnings-researcher/SKILL.md +263 -0
  289. package/skills/lint/SKILL.md +14 -0
  290. package/skills/orchestrating-swarms/SKILL.md +1718 -0
  291. package/skills/pattern-recognition-specialist/SKILL.md +71 -0
  292. package/skills/performance-oracle/SKILL.md +136 -0
  293. package/skills/pr-comment-resolver/SKILL.md +82 -0
  294. package/skills/rclone/SKILL.md +150 -0
  295. package/skills/rclone/scripts/check_setup.sh +60 -0
  296. package/skills/repo-research-analyst/SKILL.md +134 -0
  297. package/skills/resolve_pr_parallel/SKILL.md +89 -0
  298. package/skills/resolve_pr_parallel/scripts/get-pr-comments +68 -0
  299. package/skills/resolve_pr_parallel/scripts/resolve-pr-thread +23 -0
  300. package/skills/schema-drift-detector/SKILL.md +153 -0
  301. package/skills/security-sentinel/SKILL.md +113 -0
  302. package/skills/skill-creator/SKILL.md +210 -0
  303. package/skills/skill-creator/scripts/init_skill.py +303 -0
  304. package/skills/skill-creator/scripts/package_skill.py +110 -0
  305. package/skills/skill-creator/scripts/quick_validate.py +65 -0
  306. package/skills/spec-flow-analyzer/SKILL.md +133 -0
  307. package/src/commands/convert.ts +183 -0
  308. package/src/commands/install.ts +273 -0
  309. package/src/commands/list.ts +37 -0
  310. package/src/commands/sync.ts +89 -0
  311. package/src/converters/claude-to-codex.ts +182 -0
  312. package/src/converters/claude-to-opencode.ts +395 -0
  313. package/src/converters/claude-to-pi.ts +205 -0
  314. package/src/index.ts +22 -0
  315. package/src/parsers/claude-home.ts +65 -0
  316. package/src/parsers/claude.ts +252 -0
  317. package/src/sync/codex.ts +92 -0
  318. package/src/sync/opencode.ts +75 -0
  319. package/src/sync/pi.ts +88 -0
  320. package/src/targets/codex.ts +96 -0
  321. package/src/targets/index.ts +38 -0
  322. package/src/targets/opencode.ts +57 -0
  323. package/src/targets/pi.ts +131 -0
  324. package/src/templates/pi/compat-extension.ts +452 -0
  325. package/src/types/claude.ts +90 -0
  326. package/src/types/codex.ts +23 -0
  327. package/src/types/opencode.ts +54 -0
  328. package/src/types/pi.ts +40 -0
  329. package/src/utils/codex-agents.ts +64 -0
  330. package/src/utils/files.ts +77 -0
  331. package/src/utils/frontmatter.ts +65 -0
  332. package/src/utils/symlink.ts +43 -0
@@ -0,0 +1,338 @@
1
+ # Testing - DHH Rails Style
2
+
3
+ ## Core Philosophy
4
+
5
+ "Minitest with fixtures - simple, fast, deterministic." The approach prioritizes pragmatism over convention.
6
+
7
+ ## Why Minitest Over RSpec
8
+
9
+ - **Simpler**: Less DSL magic, plain Ruby assertions
10
+ - **Ships with Rails**: No additional dependencies
11
+ - **Faster boot times**: Less overhead
12
+ - **Plain Ruby**: No specialized syntax to learn
13
+
14
+ ## Fixtures as Test Data
15
+
16
+ Rather than factories, fixtures provide preloaded data:
17
+ - Loaded once, reused across tests
18
+ - No runtime object creation overhead
19
+ - Explicit relationship visibility
20
+ - Deterministic IDs for easier debugging
21
+
22
+ ### Fixture Structure
23
+ ```yaml
24
+ # test/fixtures/users.yml
25
+ david:
26
+ identity: david
27
+ account: basecamp
28
+ role: admin
29
+
30
+ jason:
31
+ identity: jason
32
+ account: basecamp
33
+ role: member
34
+
35
+ # test/fixtures/rooms.yml
36
+ watercooler:
37
+ name: Water Cooler
38
+ creator: david
39
+ direct: false
40
+
41
+ # test/fixtures/messages.yml
42
+ greeting:
43
+ body: Hello everyone!
44
+ room: watercooler
45
+ creator: david
46
+ ```
47
+
48
+ ### Using Fixtures in Tests
49
+ ```ruby
50
+ test "sending a message" do
51
+ user = users(:david)
52
+ room = rooms(:watercooler)
53
+
54
+ # Test with fixture data
55
+ end
56
+ ```
57
+
58
+ ### Dynamic Fixture Values
59
+ ERB enables time-sensitive data:
60
+ ```yaml
61
+ recent_card:
62
+ title: Recent Card
63
+ created_at: <%= 1.hour.ago %>
64
+
65
+ old_card:
66
+ title: Old Card
67
+ created_at: <%= 1.month.ago %>
68
+ ```
69
+
70
+ ## Test Organization
71
+
72
+ ### Unit Tests
73
+ Verify business logic using setup blocks and standard assertions:
74
+
75
+ ```ruby
76
+ class CardTest < ActiveSupport::TestCase
77
+ setup do
78
+ @card = cards(:one)
79
+ @user = users(:david)
80
+ end
81
+
82
+ test "closing a card creates a closure" do
83
+ assert_difference -> { Card::Closure.count } do
84
+ @card.close(creator: @user)
85
+ end
86
+
87
+ assert @card.closed?
88
+ assert_equal @user, @card.closure.creator
89
+ end
90
+
91
+ test "reopening a card destroys the closure" do
92
+ @card.close(creator: @user)
93
+
94
+ assert_difference -> { Card::Closure.count }, -1 do
95
+ @card.reopen
96
+ end
97
+
98
+ refute @card.closed?
99
+ end
100
+ end
101
+ ```
102
+
103
+ ### Integration Tests
104
+ Test full request/response cycles:
105
+
106
+ ```ruby
107
+ class CardsControllerTest < ActionDispatch::IntegrationTest
108
+ setup do
109
+ @user = users(:david)
110
+ sign_in @user
111
+ end
112
+
113
+ test "closing a card" do
114
+ card = cards(:one)
115
+
116
+ post card_closure_path(card)
117
+
118
+ assert_response :success
119
+ assert card.reload.closed?
120
+ end
121
+
122
+ test "unauthorized user cannot close card" do
123
+ sign_in users(:guest)
124
+ card = cards(:one)
125
+
126
+ post card_closure_path(card)
127
+
128
+ assert_response :forbidden
129
+ refute card.reload.closed?
130
+ end
131
+ end
132
+ ```
133
+
134
+ ### System Tests
135
+ Browser-based tests using Capybara:
136
+
137
+ ```ruby
138
+ class MessagesTest < ApplicationSystemTestCase
139
+ test "sending a message" do
140
+ sign_in users(:david)
141
+ visit room_path(rooms(:watercooler))
142
+
143
+ fill_in "Message", with: "Hello, world!"
144
+ click_button "Send"
145
+
146
+ assert_text "Hello, world!"
147
+ end
148
+
149
+ test "editing own message" do
150
+ sign_in users(:david)
151
+ visit room_path(rooms(:watercooler))
152
+
153
+ within "#message_#{messages(:greeting).id}" do
154
+ click_on "Edit"
155
+ end
156
+
157
+ fill_in "Message", with: "Updated message"
158
+ click_button "Save"
159
+
160
+ assert_text "Updated message"
161
+ end
162
+
163
+ test "drag and drop card to new column" do
164
+ sign_in users(:david)
165
+ visit board_path(boards(:main))
166
+
167
+ card = find("#card_#{cards(:one).id}")
168
+ target = find("#column_#{columns(:done).id}")
169
+
170
+ card.drag_to target
171
+
172
+ assert_selector "#column_#{columns(:done).id} #card_#{cards(:one).id}"
173
+ end
174
+ end
175
+ ```
176
+
177
+ ## Advanced Patterns
178
+
179
+ ### Time Testing
180
+ Use `travel_to` for deterministic time-dependent assertions:
181
+
182
+ ```ruby
183
+ test "card expires after 30 days" do
184
+ card = cards(:one)
185
+
186
+ travel_to 31.days.from_now do
187
+ assert card.expired?
188
+ end
189
+ end
190
+ ```
191
+
192
+ ### External API Testing with VCR
193
+ Record and replay HTTP interactions:
194
+
195
+ ```ruby
196
+ test "fetches user data from API" do
197
+ VCR.use_cassette("user_api") do
198
+ user_data = ExternalApi.fetch_user(123)
199
+
200
+ assert_equal "John", user_data[:name]
201
+ end
202
+ end
203
+ ```
204
+
205
+ ### Background Job Testing
206
+ Assert job enqueueing and email delivery:
207
+
208
+ ```ruby
209
+ test "closing card enqueues notification job" do
210
+ card = cards(:one)
211
+
212
+ assert_enqueued_with(job: NotifyWatchersJob, args: [card]) do
213
+ card.close
214
+ end
215
+ end
216
+
217
+ test "welcome email is sent on signup" do
218
+ assert_emails 1 do
219
+ Identity.create!(email: "new@example.com")
220
+ end
221
+ end
222
+ ```
223
+
224
+ ### Testing Turbo Streams
225
+ ```ruby
226
+ test "message creation broadcasts to room" do
227
+ room = rooms(:watercooler)
228
+
229
+ assert_turbo_stream_broadcasts [room, :messages] do
230
+ room.messages.create!(body: "Test", creator: users(:david))
231
+ end
232
+ end
233
+ ```
234
+
235
+ ## Testing Principles
236
+
237
+ ### 1. Test Observable Behavior
238
+ Focus on what the code does, not how it does it:
239
+
240
+ ```ruby
241
+ # ❌ Testing implementation
242
+ test "calls notify method on each watcher" do
243
+ card.expects(:notify).times(3)
244
+ card.close
245
+ end
246
+
247
+ # ✅ Testing behavior
248
+ test "watchers receive notifications when card closes" do
249
+ assert_difference -> { Notification.count }, 3 do
250
+ card.close
251
+ end
252
+ end
253
+ ```
254
+
255
+ ### 2. Don't Mock Everything
256
+
257
+ ```ruby
258
+ # ❌ Over-mocked test
259
+ test "sending message" do
260
+ room = mock("room")
261
+ user = mock("user")
262
+ message = mock("message")
263
+
264
+ room.expects(:messages).returns(stub(create!: message))
265
+ message.expects(:broadcast_create)
266
+
267
+ MessagesController.new.create
268
+ end
269
+
270
+ # ✅ Test the real thing
271
+ test "sending message" do
272
+ sign_in users(:david)
273
+ post room_messages_url(rooms(:watercooler)),
274
+ params: { message: { body: "Hello" } }
275
+
276
+ assert_response :success
277
+ assert Message.exists?(body: "Hello")
278
+ end
279
+ ```
280
+
281
+ ### 3. Tests Ship with Features
282
+ Same commit, not TDD-first but together. Neither before (strict TDD) nor after (deferred testing).
283
+
284
+ ### 4. Security Fixes Always Include Regression Tests
285
+ Every security fix must include a test that would have caught the vulnerability.
286
+
287
+ ### 5. Integration Tests Validate Complete Workflows
288
+ Don't just test individual pieces - test that they work together.
289
+
290
+ ## File Organization
291
+
292
+ ```
293
+ test/
294
+ ├── controllers/ # Integration tests for controllers
295
+ ├── fixtures/ # YAML fixtures for all models
296
+ ├── helpers/ # Helper method tests
297
+ ├── integration/ # API integration tests
298
+ ├── jobs/ # Background job tests
299
+ ├── mailers/ # Mailer tests
300
+ ├── models/ # Unit tests for models
301
+ ├── system/ # Browser-based system tests
302
+ └── test_helper.rb # Test configuration
303
+ ```
304
+
305
+ ## Test Helper Setup
306
+
307
+ ```ruby
308
+ # test/test_helper.rb
309
+ ENV["RAILS_ENV"] ||= "test"
310
+ require_relative "../config/environment"
311
+ require "rails/test_help"
312
+
313
+ class ActiveSupport::TestCase
314
+ fixtures :all
315
+
316
+ parallelize(workers: :number_of_processors)
317
+ end
318
+
319
+ class ActionDispatch::IntegrationTest
320
+ include SignInHelper
321
+ end
322
+
323
+ class ApplicationSystemTestCase < ActionDispatch::SystemTestCase
324
+ driven_by :selenium, using: :headless_chrome
325
+ end
326
+ ```
327
+
328
+ ## Sign In Helper
329
+
330
+ ```ruby
331
+ # test/support/sign_in_helper.rb
332
+ module SignInHelper
333
+ def sign_in(user)
334
+ session = user.identity.sessions.create!
335
+ cookies.signed[:session_id] = session.id
336
+ end
337
+ end
338
+ ```
@@ -0,0 +1,87 @@
1
+ ---
2
+ name: document-review
3
+ description: This skill should be used to refine brainstorm or plan documents before proceeding to the next workflow step. It applies when a brainstorm or plan document exists and the user wants to improve it.
4
+ ---
5
+
6
+ # Document Review
7
+
8
+ Improve brainstorm or plan documents through structured review.
9
+
10
+ ## Step 1: Get the Document
11
+
12
+ **If a document path is provided:** Read it, then proceed to Step 2.
13
+
14
+ **If no document is specified:** Ask which document to review, or look for the most recent brainstorm/plan in `docs/brainstorms/` or `docs/plans/`.
15
+
16
+ ## Step 2: Assess
17
+
18
+ Read through the document and ask:
19
+
20
+ - What is unclear?
21
+ - What is unnecessary?
22
+ - What decision is being avoided?
23
+ - What assumptions are unstated?
24
+ - Where could scope accidentally expand?
25
+
26
+ These questions surface issues. Don't fix yet—just note what you find.
27
+
28
+ ## Step 3: Evaluate
29
+
30
+ Score the document against these criteria:
31
+
32
+ | Criterion | What to Check |
33
+ |-----------|---------------|
34
+ | **Clarity** | Problem statement is clear, no vague language ("probably," "consider," "try to") |
35
+ | **Completeness** | Required sections present, constraints stated, open questions flagged |
36
+ | **Specificity** | Concrete enough for next step (brainstorm → can plan, plan → can implement) |
37
+ | **YAGNI** | No hypothetical features, simplest approach chosen |
38
+
39
+ If invoked within a workflow (after `/workflows:brainstorm` or `/workflows:plan`), also check:
40
+ - **User intent fidelity** — Document reflects what was discussed, assumptions validated
41
+
42
+ ## Step 4: Identify the Critical Improvement
43
+
44
+ Among everything found in Steps 2-3, does one issue stand out? If something would significantly improve the document's quality, this is the "must address" item. Highlight it prominently.
45
+
46
+ ## Step 5: Make Changes
47
+
48
+ Present your findings, then:
49
+
50
+ 1. **Auto-fix** minor issues (vague language, formatting) without asking
51
+ 2. **Ask approval** before substantive changes (restructuring, removing sections, changing meaning)
52
+ 3. **Update** the document inline—no separate files, no metadata sections
53
+
54
+ ### Simplification Guidance
55
+
56
+ Simplification is purposeful removal of unnecessary complexity, not shortening for its own sake.
57
+
58
+ **Simplify when:**
59
+ - Content serves hypothetical future needs, not current ones
60
+ - Sections repeat information already covered elsewhere
61
+ - Detail exceeds what's needed to take the next step
62
+ - Abstractions or structure add overhead without clarity
63
+
64
+ **Don't simplify:**
65
+ - Constraints or edge cases that affect implementation
66
+ - Rationale that explains why alternatives were rejected
67
+ - Open questions that need resolution
68
+
69
+ ## Step 6: Offer Next Action
70
+
71
+ After changes are complete, ask:
72
+
73
+ 1. **Refine again** - Another review pass
74
+ 2. **Review complete** - Document is ready
75
+
76
+ ### Iteration Guidance
77
+
78
+ After 2 refinement passes, recommend completion—diminishing returns are likely. But if the user wants to continue, allow it.
79
+
80
+ Return control to the caller (workflow or user) after selection.
81
+
82
+ ## What NOT to Do
83
+
84
+ - Do not rewrite the entire document
85
+ - Do not add new sections or requirements the user didn't discuss
86
+ - Do not over-engineer or add complexity
87
+ - Do not create separate review files or add metadata sections