@mrciphersmith/keryx 0.2.9

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 (297) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +351 -0
  3. package/dist/cli.js +48427 -0
  4. package/dist/proxy-worker.js +381 -0
  5. package/package.json +63 -0
  6. package/src/gdgraph/affected.test.ts +100 -0
  7. package/src/gdgraph/affected.ts +135 -0
  8. package/src/gdgraph/build-integrity.test.ts +193 -0
  9. package/src/gdgraph/build-lang.test.ts +399 -0
  10. package/src/gdgraph/build.test.ts +120 -0
  11. package/src/gdgraph/build.ts +804 -0
  12. package/src/gdgraph/config.test.ts +47 -0
  13. package/src/gdgraph/config.ts +113 -0
  14. package/src/gdgraph/core-sources.test.ts +99 -0
  15. package/src/gdgraph/core-sources.ts +20 -0
  16. package/src/gdgraph/enrich.ts +79 -0
  17. package/src/gdgraph/fallback.test.ts +153 -0
  18. package/src/gdgraph/find.test.ts +78 -0
  19. package/src/gdgraph/find.ts +107 -0
  20. package/src/gdgraph/pagerank.ts +129 -0
  21. package/src/gdgraph/path.test.ts +56 -0
  22. package/src/gdgraph/path.ts +112 -0
  23. package/src/gdgraph/query.ts +133 -0
  24. package/src/gdgraph/repomap.test.ts +110 -0
  25. package/src/gdgraph/repomap.ts +193 -0
  26. package/src/gdgraph/service.test.ts +59 -0
  27. package/src/gdgraph/service.ts +51 -0
  28. package/src/gdgraph/staleness.ts +20 -0
  29. package/src/gdgraph/symbol.test.ts +89 -0
  30. package/src/gdgraph/symbol.ts +123 -0
  31. package/src/gdgraph/symbols-capability.test.ts +41 -0
  32. package/src/gdgraph/symbols-capability.ts +49 -0
  33. package/src/gdgraph/target.ts +56 -0
  34. package/src/gdgraph/treesitter/adapter.test.ts +249 -0
  35. package/src/gdgraph/treesitter/adapter.ts +213 -0
  36. package/src/gdgraph/treesitter/extract.test.ts +278 -0
  37. package/src/gdgraph/treesitter/extract.ts +389 -0
  38. package/src/gdgraph/treesitter/grammars.ts +110 -0
  39. package/src/gdgraph/treesitter/no-treesitter-import.test.ts +51 -0
  40. package/src/gdgraph/treesitter/resolve-calls.test.ts +38 -0
  41. package/src/gdgraph/types.ts +63 -0
  42. package/src/gdskills/bundled/rules/core/api-contracts.mdc +148 -0
  43. package/src/gdskills/bundled/rules/core/async-patterns.mdc +185 -0
  44. package/src/gdskills/bundled/rules/core/clean-architecture.mdc +163 -0
  45. package/src/gdskills/bundled/rules/core/code-review-ai-assistant.mdc +49 -0
  46. package/src/gdskills/bundled/rules/core/code-review-b091-profile.mdc +48 -0
  47. package/src/gdskills/bundled/rules/core/code-style-patterns.mdc +54 -0
  48. package/src/gdskills/bundled/rules/core/commit-message-formatting.mdc +25 -0
  49. package/src/gdskills/bundled/rules/core/database-patterns.mdc +162 -0
  50. package/src/gdskills/bundled/rules/core/documentation-management.mdc +106 -0
  51. package/src/gdskills/bundled/rules/core/error-handling.mdc +163 -0
  52. package/src/gdskills/bundled/rules/core/execution-metrics.md +99 -0
  53. package/src/gdskills/bundled/rules/core/frontend-assistant.mdc +40 -0
  54. package/src/gdskills/bundled/rules/core/git-rules.mdc +37 -0
  55. package/src/gdskills/bundled/rules/core/gproject-contracts.mdc +198 -0
  56. package/src/gdskills/bundled/rules/core/implementation-doc-mandate.mdc +149 -0
  57. package/src/gdskills/bundled/rules/core/implementation-plans.mdc +58 -0
  58. package/src/gdskills/bundled/rules/core/jobs-documentation.mdc +221 -0
  59. package/src/gdskills/bundled/rules/core/mobx-store-template.mdc +561 -0
  60. package/src/gdskills/bundled/rules/core/model-selection.mdc +53 -0
  61. package/src/gdskills/bundled/rules/core/nestjs-dto.mdc +50 -0
  62. package/src/gdskills/bundled/rules/core/playwright-testing.mdc +321 -0
  63. package/src/gdskills/bundled/rules/core/requirements-management.mdc +35 -0
  64. package/src/gdskills/bundled/rules/core/requirements-package-standard.mdc +103 -0
  65. package/src/gdskills/bundled/rules/core/review-agent-profile.mdc +49 -0
  66. package/src/gdskills/bundled/rules/core/review-strict-profile.mdc +44 -0
  67. package/src/gdskills/bundled/rules/core/rule-management-workflow.mdc +62 -0
  68. package/src/gdskills/bundled/rules/core/security-baseline.mdc +155 -0
  69. package/src/gdskills/bundled/rules/core/shared-definitions.mdc +79 -0
  70. package/src/gdskills/bundled/rules/core/skill-lifecycle.mdc +55 -0
  71. package/src/gdskills/bundled/rules/core/skills-storage-workflow.mdc +88 -0
  72. package/src/gdskills/bundled/rules/core/solid-principles.mdc +149 -0
  73. package/src/gdskills/bundled/rules/core/storybook-guidelines.mdc +36 -0
  74. package/src/gdskills/bundled/rules/core/subagent-context-construction.md +107 -0
  75. package/src/gdskills/bundled/rules/core/subagent-status-protocol.md +169 -0
  76. package/src/gdskills/bundled/rules/core/tdd-workflow.mdc +96 -0
  77. package/src/gdskills/bundled/skills/orchestration/code-verifier/SKILL.codex.md +47 -0
  78. package/src/gdskills/bundled/skills/orchestration/code-verifier/SKILL.cursor.md +55 -0
  79. package/src/gdskills/bundled/skills/orchestration/code-verifier/SKILL.md +352 -0
  80. package/src/gdskills/bundled/skills/orchestration/code-verifier/SKILL.opencode.md +39 -0
  81. package/src/gdskills/bundled/skills/orchestration/code-verifier/SKILL.zed.md +29 -0
  82. package/src/gdskills/bundled/skills/orchestration/context-collector/SKILL.codex.md +567 -0
  83. package/src/gdskills/bundled/skills/orchestration/context-collector/SKILL.cursor.md +567 -0
  84. package/src/gdskills/bundled/skills/orchestration/context-collector/SKILL.md +655 -0
  85. package/src/gdskills/bundled/skills/orchestration/context-collector/SKILL.opencode.md +567 -0
  86. package/src/gdskills/bundled/skills/orchestration/context-collector/SKILL.zed.md +567 -0
  87. package/src/gdskills/bundled/skills/orchestration/context-collector/input-contract.schema.json +134 -0
  88. package/src/gdskills/bundled/skills/orchestration/context-collector/orchestrator-prompt.md +183 -0
  89. package/src/gdskills/bundled/skills/orchestration/context-collector/output-contract.schema.json +208 -0
  90. package/src/gdskills/bundled/skills/orchestration/feature-analyzer/SKILL.codex.md +1412 -0
  91. package/src/gdskills/bundled/skills/orchestration/feature-analyzer/SKILL.cursor.md +1412 -0
  92. package/src/gdskills/bundled/skills/orchestration/feature-analyzer/SKILL.detail.md +735 -0
  93. package/src/gdskills/bundled/skills/orchestration/feature-analyzer/SKILL.md +468 -0
  94. package/src/gdskills/bundled/skills/orchestration/feature-analyzer/SKILL.opencode.md +1412 -0
  95. package/src/gdskills/bundled/skills/orchestration/feature-analyzer/SKILL.zed.md +1412 -0
  96. package/src/gdskills/bundled/skills/orchestration/feature-analyzer/analysis-request.md +62 -0
  97. package/src/gdskills/bundled/skills/orchestration/feature-analyzer/analysis-request.template.md +79 -0
  98. package/src/gdskills/bundled/skills/orchestration/feature-analyzer/input-contract.schema.json +247 -0
  99. package/src/gdskills/bundled/skills/orchestration/feature-analyzer/orchestrator-prompt.md +362 -0
  100. package/src/gdskills/bundled/skills/orchestration/feature-analyzer/output-contract.schema.json +87 -0
  101. package/src/gdskills/bundled/skills/orchestration/feature-dev/SKILL.codex.md +105 -0
  102. package/src/gdskills/bundled/skills/orchestration/feature-dev/SKILL.cursor.md +105 -0
  103. package/src/gdskills/bundled/skills/orchestration/feature-dev/SKILL.md +165 -0
  104. package/src/gdskills/bundled/skills/orchestration/flow-orchestrator/SKILL.md +379 -0
  105. package/src/gdskills/bundled/skills/orchestration/flow-orchestrator/input-contract.schema.json +33 -0
  106. package/src/gdskills/bundled/skills/orchestration/flow-orchestrator/output-contract.schema.json +41 -0
  107. package/src/gdskills/bundled/skills/orchestration/issue-analyzer/SKILL.codex.md +307 -0
  108. package/src/gdskills/bundled/skills/orchestration/issue-analyzer/SKILL.cursor.md +307 -0
  109. package/src/gdskills/bundled/skills/orchestration/issue-analyzer/SKILL.md +373 -0
  110. package/src/gdskills/bundled/skills/orchestration/issue-analyzer/SKILL.opencode.md +307 -0
  111. package/src/gdskills/bundled/skills/orchestration/issue-analyzer/SKILL.zed.md +307 -0
  112. package/src/gdskills/bundled/skills/orchestration/issue-analyzer/input-contract.schema.json +130 -0
  113. package/src/gdskills/bundled/skills/orchestration/issue-analyzer/issue-request.template.md +50 -0
  114. package/src/gdskills/bundled/skills/orchestration/issue-analyzer/orchestrator-prompt.md +155 -0
  115. package/src/gdskills/bundled/skills/orchestration/issue-analyzer/output-contract.schema.json +61 -0
  116. package/src/gdskills/bundled/skills/orchestration/job-documenter/SKILL.codex.md +365 -0
  117. package/src/gdskills/bundled/skills/orchestration/job-documenter/SKILL.cursor.md +365 -0
  118. package/src/gdskills/bundled/skills/orchestration/job-documenter/SKILL.md +373 -0
  119. package/src/gdskills/bundled/skills/orchestration/job-documenter/SKILL.opencode.md +365 -0
  120. package/src/gdskills/bundled/skills/orchestration/job-documenter/SKILL.zed.md +365 -0
  121. package/src/gdskills/bundled/skills/orchestration/job-documenter/input-contract.schema.json +55 -0
  122. package/src/gdskills/bundled/skills/orchestration/job-documenter/output-contract.schema.json +58 -0
  123. package/src/gdskills/bundled/skills/orchestration/job-orchestrator/SKILL.codex.md +1701 -0
  124. package/src/gdskills/bundled/skills/orchestration/job-orchestrator/SKILL.cursor.md +1701 -0
  125. package/src/gdskills/bundled/skills/orchestration/job-orchestrator/SKILL.md +1734 -0
  126. package/src/gdskills/bundled/skills/orchestration/job-orchestrator/SKILL.opencode.md +1701 -0
  127. package/src/gdskills/bundled/skills/orchestration/job-orchestrator/SKILL.zed.md +1701 -0
  128. package/src/gdskills/bundled/skills/orchestration/job-orchestrator/input-contract.schema.json +188 -0
  129. package/src/gdskills/bundled/skills/orchestration/job-orchestrator/orchestrator-prompt.md +179 -0
  130. package/src/gdskills/bundled/skills/orchestration/job-orchestrator/output-contract.schema.json +103 -0
  131. package/src/gdskills/bundled/skills/orchestration/job-orchestrator/state.schema.json +164 -0
  132. package/src/gdskills/bundled/skills/orchestration/task-implementer/SKILL.codex.md +395 -0
  133. package/src/gdskills/bundled/skills/orchestration/task-implementer/SKILL.cursor.md +395 -0
  134. package/src/gdskills/bundled/skills/orchestration/task-implementer/SKILL.md +556 -0
  135. package/src/gdskills/bundled/skills/orchestration/task-implementer/SKILL.opencode.md +395 -0
  136. package/src/gdskills/bundled/skills/orchestration/task-implementer/SKILL.zed.md +395 -0
  137. package/src/gdskills/bundled/skills/orchestration/task-implementer/input-contract.schema.json +204 -0
  138. package/src/gdskills/bundled/skills/orchestration/task-implementer/orchestrator-prompt.md +206 -0
  139. package/src/gdskills/bundled/skills/orchestration/task-implementer/output-contract.schema.json +51 -0
  140. package/src/gdskills/bundled/skills/orchestration/task-implementer/task-request.template.md +111 -0
  141. package/src/gdskills/bundled/skills/planning/autodoc-analyst/SKILL.md +163 -0
  142. package/src/gdskills/bundled/skills/planning/autodoc-architect/SKILL.md +161 -0
  143. package/src/gdskills/bundled/skills/planning/autodoc-assembler/SKILL.md +128 -0
  144. package/src/gdskills/bundled/skills/planning/autodoc-orchestrator/SKILL.md +321 -0
  145. package/src/gdskills/bundled/skills/planning/autodoc-scanner/SKILL.md +166 -0
  146. package/src/gdskills/bundled/skills/planning/autodoc-writer/SKILL.md +253 -0
  147. package/src/gdskills/bundled/skills/planning/brainstorm/SKILL.claude.md +46 -0
  148. package/src/gdskills/bundled/skills/planning/brainstorm/SKILL.codex.md +90 -0
  149. package/src/gdskills/bundled/skills/planning/brainstorm/SKILL.cursor.md +90 -0
  150. package/src/gdskills/bundled/skills/planning/brainstorm/SKILL.md +90 -0
  151. package/src/gdskills/bundled/skills/planning/consistency-checker/SKILL.codex.md +33 -0
  152. package/src/gdskills/bundled/skills/planning/consistency-checker/SKILL.cursor.md +33 -0
  153. package/src/gdskills/bundled/skills/planning/consistency-checker/SKILL.md +190 -0
  154. package/src/gdskills/bundled/skills/planning/docpack-orchestrator/SKILL.md +142 -0
  155. package/src/gdskills/bundled/skills/planning/docpack-orchestrator/input-contract.schema.json +31 -0
  156. package/src/gdskills/bundled/skills/planning/docpack-orchestrator/output-contract.schema.json +31 -0
  157. package/src/gdskills/bundled/skills/planning/docpack-review/SKILL.md +80 -0
  158. package/src/gdskills/bundled/skills/planning/docpack-review/input-contract.schema.json +20 -0
  159. package/src/gdskills/bundled/skills/planning/docpack-review/output-contract.schema.json +36 -0
  160. package/src/gdskills/bundled/skills/planning/interview/SKILL.codex.md +181 -0
  161. package/src/gdskills/bundled/skills/planning/interview/SKILL.cursor.md +181 -0
  162. package/src/gdskills/bundled/skills/planning/interview/SKILL.md +187 -0
  163. package/src/gdskills/bundled/skills/planning/interviewer/SKILL.claude.md +94 -0
  164. package/src/gdskills/bundled/skills/planning/interviewer/SKILL.codex.md +99 -0
  165. package/src/gdskills/bundled/skills/planning/interviewer/SKILL.cursor.md +99 -0
  166. package/src/gdskills/bundled/skills/planning/interviewer/SKILL.md +105 -0
  167. package/src/gdskills/bundled/skills/planning/patterns-researcher/SKILL.codex.md +33 -0
  168. package/src/gdskills/bundled/skills/planning/patterns-researcher/SKILL.cursor.md +33 -0
  169. package/src/gdskills/bundled/skills/planning/patterns-researcher/SKILL.md +237 -0
  170. package/src/gdskills/bundled/skills/planning/planner/SKILL.codex.md +33 -0
  171. package/src/gdskills/bundled/skills/planning/planner/SKILL.cursor.md +33 -0
  172. package/src/gdskills/bundled/skills/planning/planner/SKILL.md +190 -0
  173. package/src/gdskills/bundled/skills/planning/prd-creator/SKILL.codex.md +193 -0
  174. package/src/gdskills/bundled/skills/planning/prd-creator/SKILL.cursor.md +193 -0
  175. package/src/gdskills/bundled/skills/planning/prd-creator/SKILL.md +193 -0
  176. package/src/gdskills/bundled/skills/planning/prd-creator/SKILL.opencode.md +193 -0
  177. package/src/gdskills/bundled/skills/planning/prd-creator/SKILL.zed.md +193 -0
  178. package/src/gdskills/bundled/skills/planning/prd-creator/input-contract.schema.json +63 -0
  179. package/src/gdskills/bundled/skills/planning/prd-creator/output-contract.schema.json +175 -0
  180. package/src/gdskills/bundled/skills/planning/problem-definer/SKILL.codex.md +31 -0
  181. package/src/gdskills/bundled/skills/planning/problem-definer/SKILL.cursor.md +31 -0
  182. package/src/gdskills/bundled/skills/planning/problem-definer/SKILL.md +153 -0
  183. package/src/gdskills/bundled/skills/planning/project-discovery/SKILL.codex.md +32 -0
  184. package/src/gdskills/bundled/skills/planning/project-discovery/SKILL.cursor.md +32 -0
  185. package/src/gdskills/bundled/skills/planning/project-discovery/SKILL.md +166 -0
  186. package/src/gdskills/bundled/skills/planning/spec-writer/SKILL.codex.md +44 -0
  187. package/src/gdskills/bundled/skills/planning/spec-writer/SKILL.cursor.md +44 -0
  188. package/src/gdskills/bundled/skills/planning/spec-writer/SKILL.md +243 -0
  189. package/src/gdskills/bundled/skills/planning/stack-advisor/SKILL.codex.md +43 -0
  190. package/src/gdskills/bundled/skills/planning/stack-advisor/SKILL.cursor.md +43 -0
  191. package/src/gdskills/bundled/skills/planning/stack-advisor/SKILL.md +193 -0
  192. package/src/gdskills/bundled/skills/platform/agent-entrypoint-distiller/SKILL.md +47 -0
  193. package/src/gdskills/bundled/skills/platform/claude-md-management/SKILL.codex.md +87 -0
  194. package/src/gdskills/bundled/skills/platform/claude-md-management/SKILL.cursor.md +87 -0
  195. package/src/gdskills/bundled/skills/platform/claude-md-management/SKILL.md +87 -0
  196. package/src/gdskills/bundled/skills/platform/hookify/SKILL.codex.md +100 -0
  197. package/src/gdskills/bundled/skills/platform/hookify/SKILL.cursor.md +100 -0
  198. package/src/gdskills/bundled/skills/platform/hookify/SKILL.md +100 -0
  199. package/src/gdskills/bundled/skills/quality/changelog/SKILL.claude.md +45 -0
  200. package/src/gdskills/bundled/skills/quality/changelog/SKILL.codex.md +84 -0
  201. package/src/gdskills/bundled/skills/quality/changelog/SKILL.cursor.md +84 -0
  202. package/src/gdskills/bundled/skills/quality/changelog/SKILL.md +84 -0
  203. package/src/gdskills/bundled/skills/quality/commit/SKILL.codex.md +66 -0
  204. package/src/gdskills/bundled/skills/quality/commit/SKILL.cursor.md +66 -0
  205. package/src/gdskills/bundled/skills/quality/commit/SKILL.md +66 -0
  206. package/src/gdskills/bundled/skills/quality/db-migrate/SKILL.claude.md +40 -0
  207. package/src/gdskills/bundled/skills/quality/db-migrate/SKILL.codex.md +66 -0
  208. package/src/gdskills/bundled/skills/quality/db-migrate/SKILL.cursor.md +66 -0
  209. package/src/gdskills/bundled/skills/quality/db-migrate/SKILL.md +66 -0
  210. package/src/gdskills/bundled/skills/quality/dependency-update/SKILL.claude.md +45 -0
  211. package/src/gdskills/bundled/skills/quality/dependency-update/SKILL.codex.md +81 -0
  212. package/src/gdskills/bundled/skills/quality/dependency-update/SKILL.cursor.md +81 -0
  213. package/src/gdskills/bundled/skills/quality/dependency-update/SKILL.md +81 -0
  214. package/src/gdskills/bundled/skills/quality/deploy/SKILL.claude.md +42 -0
  215. package/src/gdskills/bundled/skills/quality/deploy/SKILL.codex.md +70 -0
  216. package/src/gdskills/bundled/skills/quality/deploy/SKILL.cursor.md +70 -0
  217. package/src/gdskills/bundled/skills/quality/deploy/SKILL.md +70 -0
  218. package/src/gdskills/bundled/skills/quality/metaproject-security/SKILL.md +103 -0
  219. package/src/gdskills/bundled/skills/quality/perf-check/SKILL.claude.md +48 -0
  220. package/src/gdskills/bundled/skills/quality/perf-check/SKILL.codex.md +83 -0
  221. package/src/gdskills/bundled/skills/quality/perf-check/SKILL.cursor.md +83 -0
  222. package/src/gdskills/bundled/skills/quality/perf-check/SKILL.md +83 -0
  223. package/src/gdskills/bundled/skills/quality/pr/SKILL.codex.md +75 -0
  224. package/src/gdskills/bundled/skills/quality/pr/SKILL.cursor.md +75 -0
  225. package/src/gdskills/bundled/skills/quality/pr/SKILL.md +75 -0
  226. package/src/gdskills/bundled/skills/quality/pr-issue-documenter/SKILL.codex.md +364 -0
  227. package/src/gdskills/bundled/skills/quality/pr-issue-documenter/SKILL.cursor.md +295 -0
  228. package/src/gdskills/bundled/skills/quality/pr-issue-documenter/SKILL.md +378 -0
  229. package/src/gdskills/bundled/skills/quality/pr-issue-documenter/SKILL.opencode.md +364 -0
  230. package/src/gdskills/bundled/skills/quality/pr-issue-documenter/SKILL.zed.md +38 -0
  231. package/src/gdskills/bundled/skills/quality/pr-issue-documenter/input-contract.schema.json +53 -0
  232. package/src/gdskills/bundled/skills/quality/pr-issue-documenter/output-contract.schema.json +46 -0
  233. package/src/gdskills/bundled/skills/quality/push/SKILL.codex.md +52 -0
  234. package/src/gdskills/bundled/skills/quality/push/SKILL.cursor.md +52 -0
  235. package/src/gdskills/bundled/skills/quality/push/SKILL.md +52 -0
  236. package/src/gdskills/bundled/skills/quality/security-audit/SKILL.claude.md +40 -0
  237. package/src/gdskills/bundled/skills/quality/security-audit/SKILL.codex.md +61 -0
  238. package/src/gdskills/bundled/skills/quality/security-audit/SKILL.cursor.md +61 -0
  239. package/src/gdskills/bundled/skills/quality/security-audit/SKILL.md +61 -0
  240. package/src/gdskills/bundled/skills/quality/test-gen/SKILL.claude.md +30 -0
  241. package/src/gdskills/bundled/skills/quality/test-gen/SKILL.codex.md +75 -0
  242. package/src/gdskills/bundled/skills/quality/test-gen/SKILL.cursor.md +75 -0
  243. package/src/gdskills/bundled/skills/quality/test-gen/SKILL.md +75 -0
  244. package/src/gdskills/bundled/skills/quality/tests-creator/SKILL.codex.md +64 -0
  245. package/src/gdskills/bundled/skills/quality/tests-creator/SKILL.cursor.md +74 -0
  246. package/src/gdskills/bundled/skills/quality/tests-creator/SKILL.md +339 -0
  247. package/src/gdskills/bundled/skills/quality/tests-creator/SKILL.opencode.md +48 -0
  248. package/src/gdskills/bundled/skills/quality/tests-creator/SKILL.zed.md +44 -0
  249. package/src/gdskills/bundled/skills/quality/tests-creator/input-contract.schema.json +121 -0
  250. package/src/gdskills/bundled/skills/quality/tests-creator/output-contract.schema.json +127 -0
  251. package/src/gdskills/bundled/skills/review/code-ai-review/SKILL.codex.md +204 -0
  252. package/src/gdskills/bundled/skills/review/code-ai-review/SKILL.cursor.md +204 -0
  253. package/src/gdskills/bundled/skills/review/code-ai-review/SKILL.md +203 -0
  254. package/src/gdskills/bundled/skills/review/code-ai-review/SKILL.opencode.md +204 -0
  255. package/src/gdskills/bundled/skills/review/code-ai-review/SKILL.zed.md +204 -0
  256. package/src/gdskills/bundled/skills/review/code-b091-review/SKILL.codex.md +209 -0
  257. package/src/gdskills/bundled/skills/review/code-b091-review/SKILL.cursor.md +209 -0
  258. package/src/gdskills/bundled/skills/review/code-b091-review/SKILL.md +208 -0
  259. package/src/gdskills/bundled/skills/review/code-b091-review/SKILL.opencode.md +209 -0
  260. package/src/gdskills/bundled/skills/review/code-b091-review/SKILL.zed.md +209 -0
  261. package/src/gdskills/bundled/skills/review/code-mobx-store-review/SKILL.codex.md +263 -0
  262. package/src/gdskills/bundled/skills/review/code-mobx-store-review/SKILL.cursor.md +263 -0
  263. package/src/gdskills/bundled/skills/review/code-mobx-store-review/SKILL.md +258 -0
  264. package/src/gdskills/bundled/skills/review/code-mobx-store-review/SKILL.opencode.md +263 -0
  265. package/src/gdskills/bundled/skills/review/code-mobx-store-review/SKILL.zed.md +263 -0
  266. package/src/gdskills/bundled/skills/review/code-style-review/SKILL.codex.md +175 -0
  267. package/src/gdskills/bundled/skills/review/code-style-review/SKILL.cursor.md +175 -0
  268. package/src/gdskills/bundled/skills/review/code-style-review/SKILL.md +168 -0
  269. package/src/gdskills/bundled/skills/review/code-style-review/SKILL.opencode.md +175 -0
  270. package/src/gdskills/bundled/skills/review/code-style-review/SKILL.zed.md +175 -0
  271. package/src/gdskills/bundled/skills/review/review-architecture/SKILL.md +360 -0
  272. package/src/gdskills/bundled/skills/review/review-backend/SKILL.md +337 -0
  273. package/src/gdskills/bundled/skills/review/review-clean-code/SKILL.md +477 -0
  274. package/src/gdskills/bundled/skills/review/review-core-boundaries/SKILL.md +93 -0
  275. package/src/gdskills/bundled/skills/review/review-flow-graph/SKILL.md +119 -0
  276. package/src/gdskills/bundled/skills/review/review-frontend/SKILL.md +595 -0
  277. package/src/gdskills/bundled/skills/review/review-frontend-conventions/SKILL.md +144 -0
  278. package/src/gdskills/bundled/skills/review/review-highload/SKILL.md +519 -0
  279. package/src/gdskills/bundled/skills/review/review-logic/SKILL.md +323 -0
  280. package/src/gdskills/bundled/skills/review/review-orchestrator/SKILL.md +927 -0
  281. package/src/gdskills/bundled/skills/review/review-orchestrator/input-contract.schema.json +153 -0
  282. package/src/gdskills/bundled/skills/review/review-orchestrator/output-contract.schema.json +77 -0
  283. package/src/gdskills/bundled/skills/review/review-orchestrator/review-context.schema.json +389 -0
  284. package/src/gdskills/bundled/skills/review/review-orchestrator/reviewer-finding.schema.json +189 -0
  285. package/src/gdskills/bundled/skills/review/review-orchestrator/reviewer-input.schema.json +241 -0
  286. package/src/gdskills/bundled/skills/review/review-performance/SKILL.md +344 -0
  287. package/src/gdskills/bundled/skills/review/review-pr-feedback/SKILL.md +327 -0
  288. package/src/gdskills/bundled/skills/review/review-security-code/SKILL.md +348 -0
  289. package/src/gdskills/bundled/skills/review/review-strict/SKILL.md +328 -0
  290. package/src/gdskills/bundled/skills/review/review-style/SKILL.md +343 -0
  291. package/src/gdskills/bundled/skills/review/review-testing-practices/SKILL.md +134 -0
  292. package/src/gdskills/bundled/skills/shared/git-merge-base.md +33 -0
  293. package/src/gdskills/contracts/agent-event.schema.json +32 -0
  294. package/src/gdskills/contracts/orchestrator-state.schema.json +58 -0
  295. package/src/gdskills/contracts/review-finding.schema.json +59 -0
  296. package/src/gdskills/contracts/subagent-dispatch.schema.json +123 -0
  297. package/src/gdskills/contracts/subagent-result.schema.json +136 -0
@@ -0,0 +1,395 @@
1
+ ---
2
+ name: task-implementer
3
+ description: "Autonomous implementation agent that receives a single atomic task (JSON task object from issue-analyzer) and implements it end-to-end: researches codebase, plans changes, writes code, creates tests/stories as needed, verifies via lint/type-check/test, and reports results. Use when: implementing a single decomposed task from issue-analyzer, executing code changes autonomously."
4
+ triggers:
5
+ - "Implement task"
6
+ - "Execute task scenario"
7
+ - "Code this task"
8
+ - "Run task-implementer"
9
+ - "Implement issue task"
10
+ metadata:
11
+ author: "MrCipherSmith"
12
+ version: "1.0.0"
13
+ category: "implementation"
14
+ license: "MIT"
15
+ compatibility: "cursor,codex,zed,opencode"
16
+ ---
17
+
18
+ # Task Implementer
19
+
20
+ ## Purpose
21
+
22
+ Receives a single atomic task (JSON task object from `issue-analyzer`) and implements it end-to-end. Designed to run autonomously as a sub-agent — no user interaction required. Commits its changes to a shared feature branch managed by the orchestrator.
23
+
24
+ **Input:** JSON task object + workspace context (branch, codebase path, issue number)
25
+ **Output:** JSON result object with implementation status, files modified, verification results
26
+
27
+ ## When to Use
28
+
29
+ - Orchestrator dispatches a task from `issue-analyzer` decomposition
30
+ - Implementing a single atomic code change (new component, store change, API fix, etc.)
31
+ - Fixing review findings dispatched back by orchestrator (`task_type: "fix"`)
32
+
33
+ ## Architecture: 6 Phases
34
+
35
+ ```
36
+ Phase 1: RECEIVE → Parse task input, validate, set up context
37
+ Phase 2: RESEARCH → Deep-read target files, understand module patterns
38
+ Phase 3: PLAN → Decide implementation approach, list file changes
39
+ Phase 4: IMPLEMENT → Write code, tests, stories
40
+ Phase 5: VERIFY → Run lint, type-check, tests
41
+ Phase 6: REPORT → Emit JSON result object
42
+ ```
43
+
44
+ ---
45
+
46
+ ## Workflow
47
+
48
+ ```
49
+ Task Implementer Progress:
50
+ - [ ] Phase 1: Receive and parse task input
51
+ - [ ] Phase 2: Research target files and module patterns
52
+ - [ ] Phase 3: Plan implementation approach
53
+ - [ ] Phase 4: Implement code changes
54
+ - [ ] Phase 5: Verify (lint, type-check, test)
55
+ - [ ] Phase 6: Report results
56
+ ```
57
+
58
+ ### Phase 1: RECEIVE
59
+
60
+ Parse the incoming task and validate all required fields.
61
+
62
+ **1.1 Extract from JSON task object:**
63
+
64
+ ```
65
+ TASK: (from JSON object passed by orchestrator)
66
+ task_id: string, e.g. "task-1"
67
+ task_name: string, e.g. "Add validation to form"
68
+ task_type: string: ui_component|store_logic|service_api|refactoring|fix|mixed
69
+ complexity: string: low|medium|high
70
+ dependencies: array of task_id strings (already satisfied — orchestrator ensures order)
71
+ description: string: what to implement
72
+ target_files: array of file path strings
73
+ acceptance_criteria: array of criterion strings
74
+ context: string: code context, types, signatures
75
+ existing_tests: array of file path strings (may be empty)
76
+ existing_stories: array of file path strings (may be empty)
77
+ module_patterns: string: how similar code is written in this module
78
+ ```
79
+
80
+ **1.2 Extract from workspace context:**
81
+
82
+ ```
83
+ WORKSPACE:
84
+ codebase_path: absolute path to the repository
85
+ branch: feature branch to work on (already checked out by orchestrator)
86
+ issue_number: GitHub issue number (for commit messages)
87
+ issue_title: issue title (for commit messages)
88
+ ```
89
+
90
+ **1.3 For fix tasks (dispatched from review loop):**
91
+
92
+ ```
93
+ FIX_CONTEXT:
94
+ review_feedback: structured findings from reviewer (file, line, severity, message)
95
+ original_task_id: the task that introduced the issue
96
+ iteration: fix iteration number (1 or 2)
97
+ ```
98
+
99
+ **1.4 Validate:**
100
+ ```
101
+ ASSERT task_id IS NOT EMPTY → otherwise ABORT("Missing task_id")
102
+ ASSERT task_type IN valid_types → otherwise ABORT("Invalid task_type")
103
+ ASSERT target_files IS NOT EMPTY → otherwise ABORT("No target files")
104
+ ASSERT codebase_path EXISTS → otherwise ABORT("Codebase path not found")
105
+ ASSERT branch IS NOT EMPTY → otherwise ABORT("Wrong branch checked out")
106
+ ```
107
+
108
+ ### Phase 2: RESEARCH
109
+
110
+ Deep-read the target files and surrounding module to understand patterns.
111
+
112
+ **2.0 Read job context (if available):**
113
+
114
+ If the orchestrator provided `JOB_NAME` and `CONTEXT_PATH`:
115
+ - Read `CONTEXT_PATH` (e.g., `.metaproject/jobs/<job-name>/ai/context.md`)
116
+ - Extract relevant sections: library docs, codebase patterns, conventions, best practices
117
+ - Use this context throughout Phase 2-4 to guide implementation decisions
118
+ - If the file does not exist, proceed without it — context is optional
119
+
120
+ **2.1 Read all target files:**
121
+ - Read each file from `target_files` in full
122
+ - If a file does not exist yet, note it as "new file to create"
123
+ - Read the `context` field for additional type/signature info
124
+
125
+ **2.2 Read existing tests and stories:**
126
+ - If `existing_tests` is not "none" — read each test file
127
+ - If `existing_stories` is not "none" — read each story file
128
+ - Understand existing test patterns (describe/it structure, mocks, fixtures)
129
+
130
+ **2.3 Read module neighbors:**
131
+ - List sibling files in the same directory as each target file
132
+ - Read 2-3 similar files to understand module patterns (naming, exports, structure)
133
+ - Pay attention to:
134
+ - Import aliases used (e.g., `@components`, `@utils`)
135
+ - Export patterns (named vs default)
136
+ - TypeScript patterns (interfaces vs types, generics usage)
137
+ - Component patterns (observer wrapping, props interface naming)
138
+ - Store patterns (makeObservable(this), explicit decorators, private fields before public fields, thin public @action.bound UI actions, non-mutating public helpers, private API methods, runInAction inside private mutation blocks after await)
139
+
140
+ **2.4 Load relevant rules (from `module_patterns` or by detection):**
141
+
142
+ Based on what you're implementing, load and follow the relevant project rules:
143
+
144
+ | Task Type | Relevant Rules |
145
+ |-----------|---------------|
146
+ | `ui_component` | `code-style-patterns.mdc`, `frontend-assistant.mdc`, `storybook-guidelines.mdc` |
147
+ | `store_logic` | `code-style-patterns.mdc`, `mobx-store-template.mdc` |
148
+ | `service_api` | `code-style-patterns.mdc`, `nestjs-dto.mdc` |
149
+ | `fix` | Load rules based on the files being fixed |
150
+ | `mixed` | Load all applicable rules |
151
+
152
+ Rules are located at:
153
+ - OpenCode: `.metaproject/rules/core/<rule>.mdc`
154
+ - Cursor: `.cursor/rules/core/<rule>.mdc`
155
+ - Codex: `.metaproject/rules/core/<rule>.mdc`
156
+
157
+ **Output of Phase 2:** Mental model of the implementation:
158
+ ```
159
+ RESEARCH_SUMMARY:
160
+ target_files_status: [{path, exists: bool, line_count, key_exports}]
161
+ test_pattern: <describe structure, assertion style>
162
+ story_pattern: <Meta/StoryObj, args pattern>
163
+ module_conventions: <naming, imports, exports, TS patterns>
164
+ relevant_rules_loaded: [<rule names>]
165
+ ```
166
+
167
+ ### Phase 3: PLAN
168
+
169
+ Decide the implementation approach. Self-validate — no orchestrator approval needed.
170
+
171
+ **3.1 Create change plan:**
172
+
173
+ For each file to modify or create, plan:
174
+ ```
175
+ CHANGE_PLAN:
176
+ - file: <path>
177
+ action: create | modify | delete
178
+ changes:
179
+ - <description of what to add/change/remove>
180
+ - <description of types/interfaces needed>
181
+ rationale: <why this change is needed>
182
+ ```
183
+
184
+ **3.2 Determine required outputs based on task_type:**
185
+
186
+ | Task Type | Code | Unit Test | Story | Screenshot Test |
187
+ |-----------|------|-----------|-------|-----------------|
188
+ | `ui_component` | Yes | Optional | Yes | Yes (if visual) |
189
+ | `store_logic` | Yes | Yes | No | No |
190
+ | `service_api` | Yes | Yes | No | No |
191
+ | `refactoring` | Yes | Verify existing pass | No | No |
192
+ | `fix` | Yes | Regression test | No | No |
193
+ | `mixed` | Yes | Per layer | Per UI component | Per visual change |
194
+
195
+ **3.3 Self-validation checklist:**
196
+ - [ ] All acceptance criteria are addressable with this plan
197
+ - [ ] No files outside the task's scope are being modified
198
+ - [ ] Changes follow the 3-layer architecture (Service → Store → Component)
199
+ - [ ] TypeScript types are planned (no `any`, proper interfaces)
200
+ - [ ] Imports use project path aliases
201
+ - [ ] Plan is consistent with `module_patterns`
202
+
203
+ ### Phase 4: IMPLEMENT
204
+
205
+ Execute the change plan. Write production-quality code.
206
+
207
+ **4.1 Implementation order:**
208
+ 1. Types and interfaces first (shared types, DTOs)
209
+ 2. Service/API layer changes
210
+ 3. Store/logic layer changes
211
+ 4. Component/UI layer changes
212
+ 5. Tests
213
+ 6. Stories (if needed)
214
+
215
+ **4.2 Code standards (always follow):**
216
+ - TypeScript strict mode — no `any`, no `as` casts unless justified
217
+ - Use project path aliases for imports (`@components/...`, `@utils/...`)
218
+ - React components: `observer()` wrapping for MobX, named function components
219
+ - MobX stores: `makeObservable(this)` in constructor with explicit decorators, member order `private fields → public fields → constructor → public methods → private methods`, thin public `@action.bound` UI methods, non-mutating public helpers without actions, private API/IO methods, and `runInAction()` in private mutation blocks after every `await`
220
+ - Naming: PascalCase for components/types, camelCase for functions/variables, kebab-case for files
221
+ - Follow existing module patterns discovered in Phase 2
222
+
223
+ **4.3 Test standards:**
224
+ - Unit tests: Vitest with `describe`/`it`, `@testing-library/react` for components
225
+ - Use `data-testid` for test selectors
226
+ - Follow AAA pattern (Arrange, Act, Assert)
227
+ - Mock external dependencies, not internal module logic
228
+
229
+ **4.4 Story standards:**
230
+ - `Meta` + `StoryObj` pattern
231
+ - `args`-based variants
232
+ - `fn()` for action callbacks
233
+ - Cover: default state, edge cases, error states
234
+
235
+ **4.5 Commit after implementation:**
236
+
237
+ Create a conventional commit with the changes:
238
+ ```bash
239
+ git add <modified files>
240
+ git commit -m "<type>(<scope>): <description>
241
+
242
+ refs #<issue_number>
243
+ task: <task_id>"
244
+ ```
245
+
246
+ Commit type mapping:
247
+ | Task Type | Commit Type |
248
+ |-----------|-------------|
249
+ | `ui_component` | `feat` |
250
+ | `store_logic` | `feat` |
251
+ | `service_api` | `feat` |
252
+ | `refactoring` | `refactor` |
253
+ | `fix` | `fix` |
254
+ | `mixed` | `feat` (or `fix` if bug-related) |
255
+
256
+ ### Phase 5: VERIFY
257
+
258
+ Run verification checks appropriate to the task type.
259
+
260
+ **5.1 Always run:**
261
+ ```bash
262
+ npm run lint # ESLint (errors only)
263
+ npm run type-check # tsc --noEmit
264
+ ```
265
+
266
+ **5.2 Run if tests exist:**
267
+ ```bash
268
+ npm test # Vitest run
269
+ ```
270
+
271
+ If tests were created or modified, ensure they pass.
272
+
273
+ **5.3 Run if stories were created (optional, only if build is available):**
274
+ ```bash
275
+ npm run build-storybook # Verify stories compile
276
+ ```
277
+
278
+ **5.4 Handle failures:**
279
+
280
+ | Failure | Action |
281
+ |---------|--------|
282
+ | Lint errors | Fix automatically using `npm run lint:fix:changed`, re-run lint |
283
+ | Type errors | Fix the type errors in code, re-commit |
284
+ | Test failures | Fix failing tests, re-commit |
285
+ | Story build failure | Fix story code, re-commit |
286
+
287
+ Maximum 3 self-fix attempts per verification step.
288
+ **ROLLBACK POLICY**: If implementation fatally fails (e.g. tests still failing after 3 attempts or unresolvable compilation errors), you MUST run `git reset --hard` to clean the worktree before reporting the failure in Phase 6, unless explicitly instructed to leave it dirty.
289
+
290
+ **5.5 Re-commit fixes if any:**
291
+ ```bash
292
+ git add <fixed files>
293
+ git commit -m "fix(<scope>): resolve lint/type/test issues
294
+
295
+ refs #<issue_number>
296
+ task: <task_id>"
297
+ ```
298
+
299
+ ### Phase 6: REPORT
300
+
301
+ Emit a JSON result object as the final message to the orchestrator.
302
+
303
+ **Output structure:**
304
+
305
+ ```json
306
+ {
307
+ "task_id": "<task_id>",
308
+ "task_name": "<task_name>",
309
+ "task_type": "<task_type>",
310
+ "status": "<success|partial|failed>",
311
+ "description": "<what was implemented>",
312
+ "files_modified": ["src/path/file.ts"],
313
+ "files_created": ["src/path/newfile.ts"],
314
+ "files_deleted": [],
315
+ "commits": ["abc1234", "def5678"],
316
+ "lint_result": "<pass|N errors: details>",
317
+ "type_check_result": "<pass|N errors: details>",
318
+ "test_result": "<pass|N passed, M failed: details|skipped>",
319
+ "story_result": "<pass|build error: details|not applicable>",
320
+ "acceptance_criteria_met": "<all|partial: list of unmet criteria|none>",
321
+ "notes": "<any warnings, blockers, or additional context>"
322
+ }
323
+ ```
324
+
325
+ **Status classification:**
326
+ - `success`: All acceptance criteria met, all verifications pass
327
+ - `partial`: Some criteria met or some verification failures after self-fix attempts
328
+ - `failed`: Critical blockers prevented implementation. Worktree must be reverted via `git reset --hard`.
329
+
330
+ ---
331
+
332
+ ## Automation Settings
333
+
334
+ This skill is designed to run fully autonomously. The following settings control behavior:
335
+
336
+ | Setting | Default | Options | Description |
337
+ |---------|---------|---------|-------------|
338
+ | `auto_commit` | `true` | true/false | Automatically commit changes |
339
+ | `verify_lint` | `true` | true/false | Run ESLint after implementation |
340
+ | `verify_types` | `true` | true/false | Run type-check after implementation |
341
+ | `verify_tests` | `true` | true/false | Run tests after implementation |
342
+ | `verify_stories` | `false` | true/false | Build storybook to verify stories |
343
+ | `max_self_fix_attempts` | `3` | 1-5 | Max attempts to fix verification failures |
344
+ | `commit_message_style` | `conventional` | `conventional` | Commit format |
345
+
346
+ ---
347
+
348
+ ## Error Handling
349
+
350
+ | Error | Action |
351
+ |-------|--------|
352
+ | Target file not found (expected to exist) | ABORT with error — dependency task may not have run |
353
+ | Branch mismatch | ABORT — orchestrator must fix branch |
354
+ | Lint fails after max attempts | Report as `partial`, include error details |
355
+ | Type-check fails after max attempts | Report as `partial`, include error details |
356
+ | Tests fail after max attempts | Report as `partial`, include failing test details |
357
+ | Git commit fails (pre-commit hook) | Fix lint-staged issues, retry commit |
358
+ | Acceptance criteria unclear | Implement best interpretation, note in report |
359
+
360
+ ---
361
+
362
+ ## Rules of Engagement
363
+
364
+ 1. **DO NOT** ask the user any questions. All input comes from the task Scenario and workspace context.
365
+ 2. **DO NOT** modify files outside the task's target scope unless absolutely necessary (e.g., shared type file).
366
+ 3. **DO** follow the project's existing code patterns discovered in Phase 2.
367
+ 4. **DO** write TypeScript-strict code — no `any`, no untyped functions.
368
+ 5. **DO** use project path aliases (`@components`, `@utils`, etc.) for imports.
369
+ 6. **DO** wrap React components with `observer()` when they access MobX stores.
370
+ 7. **DO** use `runInAction()` after every `await` in MobX actions.
371
+ 8. **DO** commit with conventional commit format referencing the issue number.
372
+ 9. **DO** verify your work before reporting.
373
+ 10. Return the JSON result object as your **final message** to the orchestrator.
374
+
375
+ ---
376
+
377
+ ## Job Context Awareness
378
+
379
+ When dispatched by `job-orchestrator`, the prompt MAY include:
380
+
381
+ ```
382
+ JOB_NAME: <job-name>
383
+ CONTEXT_PATH: .metaproject/jobs/<job-name>/ai/context.md
384
+ ```
385
+
386
+ If provided, read the context document at the start of Phase 2 (RESEARCH) before reading target files. The context document contains:
387
+ - Library documentation and API references relevant to the task
388
+ - Codebase patterns and conventions discovered during analysis
389
+ - Best practices for the specific libraries and frameworks in use
390
+
391
+ Use this context to:
392
+ - Follow established patterns and conventions
393
+ - Use correct API signatures for libraries
394
+ - Avoid anti-patterns documented in the context
395
+ - Make implementation decisions consistent with the project style
@@ -0,0 +1,204 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "task-implementer-input-contract",
4
+ "title": "Task Implementer Input Contract",
5
+ "description": "Defines all input parameters required to run task-implementer skill autonomously. Receives a single Gherkin Scenario from issue-analyzer plus workspace context.",
6
+ "type": "object",
7
+ "required": ["task", "workspace", "automation"],
8
+ "properties": {
9
+ "task": {
10
+ "type": "object",
11
+ "description": "The atomic task to implement, extracted from issue-analyzer Gherkin Scenario.",
12
+ "required": ["task_id", "task_name", "task_type", "description", "target_files", "acceptance_criteria"],
13
+ "properties": {
14
+ "task_id": {
15
+ "type": "string",
16
+ "pattern": "^task-\\d+$",
17
+ "description": "Unique task identifier from issue-analyzer",
18
+ "examples": ["task-1", "task-3"]
19
+ },
20
+ "task_name": {
21
+ "type": "string",
22
+ "description": "Descriptive name of the task",
23
+ "examples": ["Add validation to pipeline form"]
24
+ },
25
+ "task_type": {
26
+ "type": "string",
27
+ "enum": ["ui_component", "store_logic", "service_api", "refactoring", "fix", "mixed"],
28
+ "description": "Type of implementation task"
29
+ },
30
+ "complexity": {
31
+ "type": "string",
32
+ "enum": ["low", "medium", "high"],
33
+ "default": "medium",
34
+ "description": "Estimated complexity"
35
+ },
36
+ "dependencies": {
37
+ "type": "array",
38
+ "items": {
39
+ "type": "string",
40
+ "pattern": "^task-\\d+$"
41
+ },
42
+ "default": [],
43
+ "description": "Task IDs this task depends on (already completed)"
44
+ },
45
+ "description": {
46
+ "type": "string",
47
+ "description": "Full description of what to implement"
48
+ },
49
+ "target_files": {
50
+ "type": "array",
51
+ "items": { "type": "string" },
52
+ "minItems": 1,
53
+ "description": "File paths to modify or create",
54
+ "examples": [["src/pipelines/components/StepForm.tsx", "src/pipelines/stores/step.store.ts"]]
55
+ },
56
+ "acceptance_criteria": {
57
+ "type": "array",
58
+ "items": { "type": "string" },
59
+ "minItems": 1,
60
+ "description": "Criteria that must be met for task to be considered complete"
61
+ },
62
+ "context": {
63
+ "type": "string",
64
+ "description": "Relevant code context: key types, function signatures, patterns"
65
+ },
66
+ "existing_tests": {
67
+ "type": "array",
68
+ "items": { "type": "string" },
69
+ "default": [],
70
+ "description": "Paths to existing test files (empty array if none)"
71
+ },
72
+ "existing_stories": {
73
+ "type": "array",
74
+ "items": { "type": "string" },
75
+ "default": [],
76
+ "description": "Paths to existing story files (empty array if none)"
77
+ },
78
+ "module_patterns": {
79
+ "type": "string",
80
+ "description": "Notes on how similar code is written in the module"
81
+ }
82
+ }
83
+ },
84
+ "workspace": {
85
+ "type": "object",
86
+ "description": "Workspace context managed by the orchestrator.",
87
+ "required": ["codebase_path", "branch", "issue_number"],
88
+ "properties": {
89
+ "codebase_path": {
90
+ "type": "string",
91
+ "description": "Absolute path to the repository root",
92
+ "examples": ["/Users/dev/<PROJECT>"]
93
+ },
94
+ "branch": {
95
+ "type": "string",
96
+ "description": "Feature branch to work on (already created and checked out by orchestrator)",
97
+ "examples": ["feature/4141-add-pipeline-validation"]
98
+ },
99
+ "issue_number": {
100
+ "type": "integer",
101
+ "minimum": 1,
102
+ "description": "GitHub issue number for commit references"
103
+ },
104
+ "issue_title": {
105
+ "type": "string",
106
+ "description": "GitHub issue title for context"
107
+ }
108
+ }
109
+ },
110
+ "fix_context": {
111
+ "type": "object",
112
+ "description": "Present only for fix tasks dispatched from review loop.",
113
+ "properties": {
114
+ "review_feedback": {
115
+ "type": "array",
116
+ "items": {
117
+ "type": "object",
118
+ "required": ["file", "severity", "message"],
119
+ "properties": {
120
+ "file": {
121
+ "type": "string",
122
+ "description": "File path where the issue was found"
123
+ },
124
+ "line": {
125
+ "type": "integer",
126
+ "description": "Line number (if available)"
127
+ },
128
+ "severity": {
129
+ "type": "string",
130
+ "enum": ["CRITICAL", "WARNING", "INFO"],
131
+ "description": "Severity of the finding"
132
+ },
133
+ "message": {
134
+ "type": "string",
135
+ "description": "Review finding description"
136
+ },
137
+ "reviewer": {
138
+ "type": "string",
139
+ "description": "Which review skill found this",
140
+ "examples": ["code-ai-review", "code-boss-review", "code-style-review"]
141
+ }
142
+ }
143
+ },
144
+ "description": "Structured findings from review skills"
145
+ },
146
+ "original_task_id": {
147
+ "type": "string",
148
+ "pattern": "^task-\\d+$",
149
+ "description": "The task that introduced the issues"
150
+ },
151
+ "iteration": {
152
+ "type": "integer",
153
+ "minimum": 1,
154
+ "maximum": 2,
155
+ "description": "Fix iteration number (max 2)"
156
+ }
157
+ }
158
+ },
159
+ "automation": {
160
+ "type": "object",
161
+ "description": "Controls for autonomous execution.",
162
+ "required": ["skip_confirmation"],
163
+ "properties": {
164
+ "skip_confirmation": {
165
+ "type": "boolean",
166
+ "const": true,
167
+ "description": "Must be true for autonomous mode"
168
+ },
169
+ "auto_commit": {
170
+ "type": "boolean",
171
+ "default": true,
172
+ "description": "Automatically commit changes after implementation"
173
+ },
174
+ "verify_lint": {
175
+ "type": "boolean",
176
+ "default": true,
177
+ "description": "Run ESLint after implementation"
178
+ },
179
+ "verify_types": {
180
+ "type": "boolean",
181
+ "default": true,
182
+ "description": "Run type-check after implementation"
183
+ },
184
+ "verify_tests": {
185
+ "type": "boolean",
186
+ "default": true,
187
+ "description": "Run tests after implementation"
188
+ },
189
+ "verify_stories": {
190
+ "type": "boolean",
191
+ "default": false,
192
+ "description": "Build storybook to verify stories compile"
193
+ },
194
+ "max_self_fix_attempts": {
195
+ "type": "integer",
196
+ "minimum": 1,
197
+ "maximum": 5,
198
+ "default": 3,
199
+ "description": "Max attempts to fix verification failures"
200
+ }
201
+ }
202
+ }
203
+ }
204
+ }