@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,99 @@
1
+ ---
2
+ name: interviewer
3
+ description: "Critical requirements interviewer that gathers precise context before complex tasks. Asks one focused question at a time (with A/B/C options where applicable). Skips questions already answered by provided context. Can be called by other skills as a sub-agent or directly by the user. Outputs structured context for the calling skill."
4
+ triggers:
5
+ - "Interview me"
6
+ - "Ask me questions"
7
+ - "Clarify requirements"
8
+ - "Gather requirements"
9
+ - "What do you need to know"
10
+ metadata:
11
+ author: "MrCipherSmith"
12
+ version: "1.0.0"
13
+ category: "meta"
14
+ license: "MIT"
15
+ compatibility: "cursor,codex,zed,opencode,claude"
16
+ ---
17
+
18
+ # Interviewer
19
+
20
+ ## Purpose
21
+
22
+ Gathers precise context through focused, critical questions before a complex skill executes. Prevents wasted work from wrong assumptions. Asks **one question at a time**, provides options where possible, and skips questions the context already answers.
23
+
24
+ **Input schema:**
25
+ ```
26
+ topic: string — what is being worked on
27
+ goal: string — which skill will use these answers
28
+ context?: { — optional, provided by calling skill
29
+ codebase_summary?: string
30
+ recent_changes?: string
31
+ relevant_files?: string[]
32
+ existing_analysis?: string
33
+ }
34
+ ```
35
+
36
+ **Output schema:**
37
+ ```
38
+ answers: [{question, answer, confidence: "certain"|"assumption"|"unknown"}]
39
+ derived_context: string — all gathered info as one coherent block
40
+ ready_to_proceed: boolean
41
+ blockers?: string[] — unresolved critical unknowns
42
+ ```
43
+
44
+ ## When to Use
45
+
46
+ - Called by `job-orchestrator`, `brainstorm`, `feature-dev` at start of Phase 0
47
+ - Directly by user: `/interviewer <topic>` — runs context-collector first if no context provided
48
+ - When requirements are vague or ambiguous
49
+
50
+ ## Workflow
51
+
52
+ ### If called by another skill (context provided)
53
+ 1. Parse input context
54
+ 2. Determine what's still unknown or ambiguous for the stated goal
55
+ 3. Decide number of questions needed (typically 2-6)
56
+ 4. Skip questions already answered by context
57
+ 5. Ask questions one at a time
58
+ 6. Produce output schema
59
+
60
+ ### If called directly by user (no context)
61
+ 1. Ask: "What are we working on?" (if topic not in arguments)
62
+ 2. Run `context-collector` as sub-agent to gather codebase context
63
+ 3. Proceed as above with collected context
64
+
65
+ ## Question Rules
66
+
67
+ - **One question at a time** — never ask multiple at once
68
+ - **Provide options when possible**:
69
+ ```
70
+ What is the primary trigger for this feature?
71
+ A) User request / new requirement
72
+ B) Tech debt or refactor
73
+ C) Bug or incident in production
74
+ D) Other (describe)
75
+ ```
76
+ - **Skip if already known** — if context answers a question, don't ask it
77
+ - **Be critical** — focus on questions that would change the approach
78
+ - **Max 8 questions** — stop when enough context is gathered
79
+ - **Confirm before proceeding** — summarize gathered context and ask if correct
80
+
81
+ ## Question Bank by Goal Type
82
+
83
+ ### For implementation goals
84
+ - What is the expected input/output?
85
+ - What are the edge cases that must be handled?
86
+ - Are there existing similar patterns in the codebase to follow?
87
+ - What is the performance/scale requirement?
88
+ - What should NOT be changed (constraints)?
89
+
90
+ ### For review goals
91
+ - What specific concerns should the review focus on?
92
+ - Are there known existing issues to watch for?
93
+ - What is the acceptance criteria?
94
+
95
+ ### For architecture/design goals
96
+ - What are the hard constraints (performance, compat, timeline)?
97
+ - What does success look like in 6 months?
98
+ - What are you most worried about?
99
+ - Who else is affected by this decision?
@@ -0,0 +1,99 @@
1
+ ---
2
+ name: interviewer
3
+ description: "Critical requirements interviewer that gathers precise context before complex tasks. Asks one focused question at a time (with A/B/C options where applicable). Skips questions already answered by provided context. Can be called by other skills as a sub-agent or directly by the user. Outputs structured context for the calling skill."
4
+ triggers:
5
+ - "Interview me"
6
+ - "Ask me questions"
7
+ - "Clarify requirements"
8
+ - "Gather requirements"
9
+ - "What do you need to know"
10
+ metadata:
11
+ author: "MrCipherSmith"
12
+ version: "1.0.0"
13
+ category: "meta"
14
+ license: "MIT"
15
+ compatibility: "cursor,codex,zed,opencode,claude"
16
+ ---
17
+
18
+ # Interviewer
19
+
20
+ ## Purpose
21
+
22
+ Gathers precise context through focused, critical questions before a complex skill executes. Prevents wasted work from wrong assumptions. Asks **one question at a time**, provides options where possible, and skips questions the context already answers.
23
+
24
+ **Input schema:**
25
+ ```
26
+ topic: string — what is being worked on
27
+ goal: string — which skill will use these answers
28
+ context?: { — optional, provided by calling skill
29
+ codebase_summary?: string
30
+ recent_changes?: string
31
+ relevant_files?: string[]
32
+ existing_analysis?: string
33
+ }
34
+ ```
35
+
36
+ **Output schema:**
37
+ ```
38
+ answers: [{question, answer, confidence: "certain"|"assumption"|"unknown"}]
39
+ derived_context: string — all gathered info as one coherent block
40
+ ready_to_proceed: boolean
41
+ blockers?: string[] — unresolved critical unknowns
42
+ ```
43
+
44
+ ## When to Use
45
+
46
+ - Called by `job-orchestrator`, `brainstorm`, `feature-dev` at start of Phase 0
47
+ - Directly by user: `/interviewer <topic>` — runs context-collector first if no context provided
48
+ - When requirements are vague or ambiguous
49
+
50
+ ## Workflow
51
+
52
+ ### If called by another skill (context provided)
53
+ 1. Parse input context
54
+ 2. Determine what's still unknown or ambiguous for the stated goal
55
+ 3. Decide number of questions needed (typically 2-6)
56
+ 4. Skip questions already answered by context
57
+ 5. Ask questions one at a time
58
+ 6. Produce output schema
59
+
60
+ ### If called directly by user (no context)
61
+ 1. Ask: "What are we working on?" (if topic not in arguments)
62
+ 2. Run `context-collector` as sub-agent to gather codebase context
63
+ 3. Proceed as above with collected context
64
+
65
+ ## Question Rules
66
+
67
+ - **One question at a time** — never ask multiple at once
68
+ - **Provide options when possible**:
69
+ ```
70
+ What is the primary trigger for this feature?
71
+ A) User request / new requirement
72
+ B) Tech debt or refactor
73
+ C) Bug or incident in production
74
+ D) Other (describe)
75
+ ```
76
+ - **Skip if already known** — if context answers a question, don't ask it
77
+ - **Be critical** — focus on questions that would change the approach
78
+ - **Max 8 questions** — stop when enough context is gathered
79
+ - **Confirm before proceeding** — summarize gathered context and ask if correct
80
+
81
+ ## Question Bank by Goal Type
82
+
83
+ ### For implementation goals
84
+ - What is the expected input/output?
85
+ - What are the edge cases that must be handled?
86
+ - Are there existing similar patterns in the codebase to follow?
87
+ - What is the performance/scale requirement?
88
+ - What should NOT be changed (constraints)?
89
+
90
+ ### For review goals
91
+ - What specific concerns should the review focus on?
92
+ - Are there known existing issues to watch for?
93
+ - What is the acceptance criteria?
94
+
95
+ ### For architecture/design goals
96
+ - What are the hard constraints (performance, compat, timeline)?
97
+ - What does success look like in 6 months?
98
+ - What are you most worried about?
99
+ - Who else is affected by this decision?
@@ -0,0 +1,105 @@
1
+ ---
2
+ name: interviewer
3
+ description: "Use when requirements are ambiguous and precise clarification is needed before proceeding with a complex task."
4
+ triggers:
5
+ - "Interview me"
6
+ - "Ask me questions"
7
+ - "Clarify requirements"
8
+ - "Gather requirements"
9
+ - "What do you need to know"
10
+ metadata:
11
+ author: "MrCipherSmith"
12
+ version: "1.0.0"
13
+ category: "meta"
14
+ license: "MIT"
15
+ compatibility: "cursor,codex,zed,opencode,claude"
16
+ ---
17
+
18
+ <SUBAGENT-STOP>
19
+ If you were dispatched as a subagent to execute a specific task, skip this skill entirely.
20
+ This skill is for orchestrators and interactive session-level routing only.
21
+ Proceed directly with your assigned task.
22
+ </SUBAGENT-STOP>
23
+
24
+ # Interviewer
25
+
26
+ ## Purpose
27
+
28
+ Gathers precise context through focused, critical questions before a complex skill executes. Prevents wasted work from wrong assumptions. Asks **one question at a time**, provides options where possible, and skips questions the context already answers.
29
+
30
+ **Input schema:**
31
+ ```
32
+ topic: string — what is being worked on
33
+ goal: string — which skill will use these answers
34
+ context?: { — optional, provided by calling skill
35
+ codebase_summary?: string
36
+ recent_changes?: string
37
+ relevant_files?: string[]
38
+ existing_analysis?: string
39
+ }
40
+ ```
41
+
42
+ **Output schema:**
43
+ ```
44
+ answers: [{question, answer, confidence: "certain"|"assumption"|"unknown"}]
45
+ derived_context: string — all gathered info as one coherent block
46
+ ready_to_proceed: boolean
47
+ blockers?: string[] — unresolved critical unknowns
48
+ ```
49
+
50
+ ## When to Use
51
+
52
+ - Called by `job-orchestrator`, `brainstorm`, `feature-dev` at start of Phase 0
53
+ - Directly by user: `/interviewer <topic>` — runs context-collector first if no context provided
54
+ - When requirements are vague or ambiguous
55
+
56
+ ## Workflow
57
+
58
+ ### If called by another skill (context provided)
59
+ 1. Parse input context
60
+ 2. Determine what's still unknown or ambiguous for the stated goal
61
+ 3. Decide number of questions needed (typically 2-6)
62
+ 4. Skip questions already answered by context
63
+ 5. Ask questions one at a time
64
+ 6. Produce output schema
65
+
66
+ ### If called directly by user (no context)
67
+ 1. Ask: "What are we working on?" (if topic not in arguments)
68
+ 2. Run `context-collector` as sub-agent to gather codebase context
69
+ 3. Proceed as above with collected context
70
+
71
+ ## Question Rules
72
+
73
+ - **One question at a time** — never ask multiple at once
74
+ - **Provide options when possible**:
75
+ ```
76
+ What is the primary trigger for this feature?
77
+ A) User request / new requirement
78
+ B) Tech debt or refactor
79
+ C) Bug or incident in production
80
+ D) Other (describe)
81
+ ```
82
+ - **Skip if already known** — if context answers a question, don't ask it
83
+ - **Be critical** — focus on questions that would change the approach
84
+ - **Max 8 questions** — stop when enough context is gathered
85
+ - **Confirm before proceeding** — summarize gathered context and ask if correct
86
+
87
+ ## Question Bank by Goal Type
88
+
89
+ ### For implementation goals
90
+ - What is the expected input/output?
91
+ - What are the edge cases that must be handled?
92
+ - Are there existing similar patterns in the codebase to follow?
93
+ - What is the performance/scale requirement?
94
+ - What should NOT be changed (constraints)?
95
+
96
+ ### For review goals
97
+ - What specific concerns should the review focus on?
98
+ - Are there known existing issues to watch for?
99
+ - What is the acceptance criteria?
100
+
101
+ ### For architecture/design goals
102
+ - What are the hard constraints (performance, compat, timeline)?
103
+ - What does success look like in 6 months?
104
+ - What are you most worried about?
105
+ - Who else is affected by this decision?
@@ -0,0 +1,33 @@
1
+ ---
2
+ name: gproject-patterns-researcher
3
+ description: "Researches per-technology best practices and defines architecture patterns that become binding PRD constraints. Use when: dispatched by gproject-orchestrator Phase 3."
4
+ triggers:
5
+ - "gproject-patterns-researcher: research patterns"
6
+ - "Dispatched by gproject-orchestrator Phase 3"
7
+ metadata:
8
+ author: "MrCipherSmith"
9
+ version: "1.0.0"
10
+ category: "planning"
11
+ license: "MIT"
12
+ compatibility: "cursor,codex,zed,opencode"
13
+ ---
14
+
15
+
16
+ # gproject-patterns-researcher
17
+
18
+ ## Purpose
19
+
20
+ After stack is chosen, research and define the specific patterns, conventions,
21
+ and architectural decisions for each technology. The output becomes a set of
22
+ **binding constraints** that Phase 4 (PRD) must adhere to.
23
+
24
+ ## Iron Laws
25
+
26
+ | # | Law |
27
+ |---|-----|
28
+ | 1 | Every pattern MUST reference a source (official docs, community consensus, or established practice) |
29
+ | 2 | Patterns MUST be compatible with chosen project level — no enterprise patterns for MVP |
30
+ | 3 | Architecture decisions MUST list alternatives considered |
31
+ | 4 | NEVER copy-paste generic "best practices" — every recommendation must be contextualized to THIS project |
32
+ | 5 | Output MUST be structured as checkable constraints, not prose advice |
33
+ | 6 | Existing project patterns (task_in_project) take precedence unless they're antipatterns |
@@ -0,0 +1,33 @@
1
+ ---
2
+ name: gproject-patterns-researcher
3
+ description: "Researches per-technology best practices and defines architecture patterns that become binding PRD constraints. Use when: dispatched by gproject-orchestrator Phase 3."
4
+ triggers:
5
+ - "gproject-patterns-researcher: research patterns"
6
+ - "Dispatched by gproject-orchestrator Phase 3"
7
+ metadata:
8
+ author: "MrCipherSmith"
9
+ version: "1.0.0"
10
+ category: "planning"
11
+ license: "MIT"
12
+ compatibility: "cursor,codex,zed,opencode"
13
+ ---
14
+
15
+
16
+ # gproject-patterns-researcher
17
+
18
+ ## Purpose
19
+
20
+ After stack is chosen, research and define the specific patterns, conventions,
21
+ and architectural decisions for each technology. The output becomes a set of
22
+ **binding constraints** that Phase 4 (PRD) must adhere to.
23
+
24
+ ## Iron Laws
25
+
26
+ | # | Law |
27
+ |---|-----|
28
+ | 1 | Every pattern MUST reference a source (official docs, community consensus, or established practice) |
29
+ | 2 | Patterns MUST be compatible with chosen project level — no enterprise patterns for MVP |
30
+ | 3 | Architecture decisions MUST list alternatives considered |
31
+ | 4 | NEVER copy-paste generic "best practices" — every recommendation must be contextualized to THIS project |
32
+ | 5 | Output MUST be structured as checkable constraints, not prose advice |
33
+ | 6 | Existing project patterns (task_in_project) take precedence unless they're antipatterns |
@@ -0,0 +1,237 @@
1
+ ---
2
+ name: gproject-patterns-researcher
3
+ description: >
4
+ Researches best practices per technology in the chosen stack and defines
5
+ application architecture patterns. Produces constraints that PRD must follow.
6
+ Use when: dispatched by gproject-orchestrator Phase 3.
7
+ NOT for: direct user invocation.
8
+ version: 1.0.0
9
+ ---
10
+
11
+ # gproject-patterns-researcher
12
+
13
+ ## Purpose
14
+
15
+ After stack is chosen, research and define the specific patterns, conventions,
16
+ and architectural decisions for each technology. The output becomes a set of
17
+ **binding constraints** that Phase 4 (PRD) must adhere to.
18
+
19
+ ## Iron Laws
20
+
21
+ | # | Law |
22
+ |---|-----|
23
+ | 1 | Every pattern MUST reference a source (official docs, community consensus, or established practice) |
24
+ | 2 | Patterns MUST be compatible with chosen project level — no enterprise patterns for MVP |
25
+ | 3 | Architecture decisions MUST list alternatives considered |
26
+ | 4 | NEVER copy-paste generic "best practices" — every recommendation must be contextualized to THIS project |
27
+ | 5 | Output MUST be structured as checkable constraints, not prose advice |
28
+ | 6 | Existing project patterns (task_in_project) take precedence unless they're antipatterns |
29
+
30
+ ---
31
+
32
+ ## Input Contract
33
+
34
+ ```yaml
35
+ task: "Research per-technology patterns and define application architecture"
36
+ input_artifacts:
37
+ - .metaproject/jobs/<job>/artifacts/stack-decision.md
38
+ - .metaproject/jobs/<job>/artifacts/problem-statement.md
39
+ decisions_so_far:
40
+ D_level: "..."
41
+ D_frontend: "..."
42
+ D_backend: "..."
43
+ D_database: "..."
44
+ D_deploy: "..."
45
+ # All stack decisions
46
+ ```
47
+
48
+ ## Output Contract
49
+
50
+ ```yaml
51
+ status: "DONE" | "NEEDS_CONTEXT"
52
+ summary: "<3-5 sentences: architecture pattern, key per-tech decisions, constraint count>"
53
+ new_decisions:
54
+ D_arch_pattern: "<e.g., Clean Architecture, Feature-Sliced, MVC>"
55
+ D_api_style: "<REST | GraphQL | tRPC | gRPC>"
56
+ D_state_management: "<approach>"
57
+ D_auth_pattern: "<JWT | session | OAuth flow>"
58
+ D_testing_strategy: "<unit + integration + e2e split>"
59
+ D_error_handling: "<pattern>"
60
+ D_logging_observability: "<approach>"
61
+ artifact_path: ".metaproject/jobs/<job>/artifacts/architecture.md"
62
+ additional_artifacts:
63
+ - ".metaproject/jobs/<job>/artifacts/tech-bestpractices.md"
64
+ ```
65
+
66
+ ---
67
+
68
+ ## Workflow
69
+
70
+ ### Step 1: Define Application Architecture
71
+
72
+ Based on project level and stack, select architecture pattern:
73
+
74
+ | Level | Typical Pattern | Why |
75
+ |-------|---------------|-----|
76
+ | MVP | Simple layered (routes → services → DB) | Minimum indirection, fast to build |
77
+ | Pet | Feature-based modules | Good learning structure |
78
+ | Startup | Clean Architecture / Hexagonal | Testable, scalable when team grows |
79
+ | Production | DDD + CQRS where justified | Complex domain needs it |
80
+
81
+ Document the pattern with:
82
+ - Layer diagram (which layers, what goes where)
83
+ - Dependency direction (who imports whom)
84
+ - Module/feature structure (how to organize code)
85
+ - Cross-cutting concerns (logging, auth, error handling)
86
+
87
+ ### Step 2: Per-Technology Research
88
+
89
+ For EACH technology in the stack, research and document:
90
+
91
+ #### Frontend (e.g., Next.js)
92
+ - Project structure pattern (App Router conventions, feature folders)
93
+ - Component patterns (Server vs Client components, composition)
94
+ - State management pattern (chosen approach + why)
95
+ - Data fetching pattern (Server Actions, SWR, React Query)
96
+ - Styling approach (Tailwind, CSS Modules, styled-components)
97
+ - Form handling pattern
98
+ - Error boundary strategy
99
+ - Testing approach (unit: Vitest, e2e: Playwright)
100
+
101
+ #### Backend (e.g., NestJS)
102
+ - Module structure pattern
103
+ - DTO and validation approach
104
+ - Service layer patterns
105
+ - Repository / data access pattern
106
+ - Error handling (exception filters, typed errors)
107
+ - Authentication and authorization pattern
108
+ - API versioning strategy
109
+ - Testing approach (unit + integration)
110
+
111
+ #### Database (e.g., PostgreSQL)
112
+ - Schema design approach (normalized vs denormalized for use case)
113
+ - Migration strategy and tooling
114
+ - Indexing guidelines for expected queries
115
+ - Connection pooling approach
116
+ - Backup and recovery (if production level)
117
+
118
+ #### Infrastructure (e.g., Docker)
119
+ - Container structure (multi-stage builds, compose setup)
120
+ - Environment management (dev/staging/prod)
121
+ - CI/CD pipeline pattern
122
+ - Monitoring and logging stack
123
+
124
+ ### Step 3: Define API Contract Style
125
+
126
+ Based on project needs:
127
+ - REST: resource-based, OpenAPI spec, versioning scheme
128
+ - GraphQL: schema-first vs code-first, resolver patterns
129
+ - tRPC: shared types, router structure
130
+ - gRPC: proto file organization, service boundaries
131
+
132
+ ### Step 4: Cross-Cutting Patterns
133
+
134
+ Define patterns that span all layers:
135
+ - **Authentication flow**: complete auth pattern (signup, login, token refresh, logout)
136
+ - **Authorization**: RBAC, ABAC, or simple role checks
137
+ - **Error handling**: typed errors, error codes, user-facing messages
138
+ - **Logging**: structured logging format, log levels, sensitive data masking
139
+ - **Validation**: where validation happens (API layer, domain layer, both)
140
+ - **Testing**: test pyramid ratios for this project level
141
+
142
+ ### Step 5: Write Architecture Doc
143
+
144
+ Write `artifacts/architecture.md`:
145
+
146
+ ```markdown
147
+ # Architecture: <Project/Task Name>
148
+
149
+ ## Architecture Pattern: <Pattern Name>
150
+ **Rationale**: <why this pattern for this project>
151
+ **Alternative considered**: <pattern and why rejected>
152
+
153
+ ## Layer Diagram
154
+ <describe layers and dependencies>
155
+
156
+ ## Module Structure
157
+ <how code is organized — by feature, by layer, hybrid>
158
+
159
+ ## Component Interaction
160
+ <how layers communicate — direct calls, events, DTOs>
161
+
162
+ ## Cross-Cutting Concerns
163
+ ### Authentication: <pattern>
164
+ ### Error Handling: <pattern>
165
+ ### Logging: <pattern>
166
+ ### Validation: <pattern>
167
+
168
+ ## Key Architecture Decisions
169
+ | Decision | Choice | Rationale | Alternative |
170
+ |----------|--------|-----------|-------------|
171
+ | <decision> | <choice> | <why> | <what else> |
172
+ ```
173
+
174
+ ### Step 6: Write Best Practices Constraints
175
+
176
+ Write `artifacts/tech-bestpractices.md` — this is the **constraint document**
177
+ that PRD writer must follow:
178
+
179
+ ```markdown
180
+ # Technical Best Practices & Constraints
181
+
182
+ ## How to Use This Document
183
+ Every requirement in the PRD MUST be compatible with these constraints.
184
+ The consistency-checker (Phase 5) validates PRD against these rules.
185
+
186
+ ## Frontend Constraints (<technology>)
187
+ ### MUST
188
+ - [ ] <constraint 1 — e.g., "Use Server Components by default, Client only when needed">
189
+ - [ ] <constraint 2>
190
+ ### MUST NOT
191
+ - [ ] <antipattern 1 — e.g., "Do not use getServerSideProps in App Router">
192
+ - [ ] <antipattern 2>
193
+ ### SHOULD
194
+ - [ ] <recommendation 1>
195
+
196
+ ## Backend Constraints (<technology>)
197
+ ### MUST
198
+ - [ ] ...
199
+ ### MUST NOT
200
+ - [ ] ...
201
+ ### SHOULD
202
+ - [ ] ...
203
+
204
+ ## Database Constraints (<technology>)
205
+ ### MUST
206
+ - [ ] ...
207
+ ### MUST NOT
208
+ - [ ] ...
209
+
210
+ ## API Constraints
211
+ ### MUST
212
+ - [ ] ...
213
+
214
+ ## Infrastructure Constraints
215
+ ### MUST
216
+ - [ ] ...
217
+
218
+ ## Testing Constraints
219
+ ### MUST
220
+ - [ ] <e.g., "Every API endpoint must have integration test">
221
+ - [ ] <e.g., "Critical user flows must have e2e tests">
222
+ ### Test Pyramid Target
223
+ - Unit: <X>%
224
+ - Integration: <Y>%
225
+ - E2E: <Z>%
226
+
227
+ ## Security Constraints
228
+ ### MUST
229
+ - [ ] ...
230
+ ### MUST NOT
231
+ - [ ] ...
232
+ ```
233
+
234
+ ### Step 7: Return Summary
235
+
236
+ Compact summary: architecture pattern, number of constraints defined,
237
+ key per-tech decisions, any concerns about pattern compatibility.
@@ -0,0 +1,33 @@
1
+ ---
2
+ name: gproject-planner
3
+ description: "Generates roadmap, milestones, task breakdown with dependency graph and effort estimates from approved PRD. Use when: dispatched by gproject-orchestrator Phase 6."
4
+ triggers:
5
+ - "gproject-planner: generate roadmap"
6
+ - "Dispatched by gproject-orchestrator Phase 6"
7
+ metadata:
8
+ author: "MrCipherSmith"
9
+ version: "1.0.0"
10
+ category: "planning"
11
+ license: "MIT"
12
+ compatibility: "cursor,codex,zed,opencode"
13
+ ---
14
+
15
+
16
+ # gproject-planner
17
+
18
+ ## Purpose
19
+
20
+ Transform approved PRD into an actionable implementation plan with milestones,
21
+ task breakdown, dependency ordering, and effort estimates. Output is ready
22
+ to feed into job-orchestrator or task-implementer.
23
+
24
+ ## Iron Laws
25
+
26
+ | # | Law |
27
+ |---|-----|
28
+ | 1 | Every task MUST trace to a user story in PRD |
29
+ | 2 | Dependencies MUST form a DAG — no circular dependencies |
30
+ | 3 | Estimates are ranges (optimistic / realistic / pessimistic), never single numbers |
31
+ | 4 | P0 user stories MUST be in Milestone 1 |
32
+ | 5 | Each milestone MUST be independently deployable / demonstrable |
33
+ | 6 | Infrastructure and setup tasks come before feature tasks |
@@ -0,0 +1,33 @@
1
+ ---
2
+ name: gproject-planner
3
+ description: "Generates roadmap, milestones, task breakdown with dependency graph and effort estimates from approved PRD. Use when: dispatched by gproject-orchestrator Phase 6."
4
+ triggers:
5
+ - "gproject-planner: generate roadmap"
6
+ - "Dispatched by gproject-orchestrator Phase 6"
7
+ metadata:
8
+ author: "MrCipherSmith"
9
+ version: "1.0.0"
10
+ category: "planning"
11
+ license: "MIT"
12
+ compatibility: "cursor,codex,zed,opencode"
13
+ ---
14
+
15
+
16
+ # gproject-planner
17
+
18
+ ## Purpose
19
+
20
+ Transform approved PRD into an actionable implementation plan with milestones,
21
+ task breakdown, dependency ordering, and effort estimates. Output is ready
22
+ to feed into job-orchestrator or task-implementer.
23
+
24
+ ## Iron Laws
25
+
26
+ | # | Law |
27
+ |---|-----|
28
+ | 1 | Every task MUST trace to a user story in PRD |
29
+ | 2 | Dependencies MUST form a DAG — no circular dependencies |
30
+ | 3 | Estimates are ranges (optimistic / realistic / pessimistic), never single numbers |
31
+ | 4 | P0 user stories MUST be in Milestone 1 |
32
+ | 5 | Each milestone MUST be independently deployable / demonstrable |
33
+ | 6 | Infrastructure and setup tasks come before feature tasks |