@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
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 MrCipherSmith
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,351 @@
1
+ <p align="center">
2
+ <img src="docs/assets/keryx-logo.png" alt="keryx" width="440">
3
+ </p>
4
+
5
+ <h1 align="center">keryx</h1>
6
+
7
+ <p align="center"><strong>One project-local brain for your AI agents and your team.</strong></p>
8
+
9
+ <p align="center">
10
+ <a href="https://github.com/MrCipherSmith/keryx/actions/workflows/ci.yml"><img src="https://github.com/MrCipherSmith/keryx/actions/workflows/ci.yml/badge.svg" alt="CI"></a>
11
+ <a href="LICENSE"><img src="https://img.shields.io/badge/License-MIT-yellow.svg" alt="License: MIT"></a>
12
+ <a href="package.json"><img src="https://img.shields.io/badge/version-0.2.0-blue.svg" alt="Version"></a>
13
+ </p>
14
+
15
+ `keryx` is a CLI that installs a small `.metaproject/` workspace into any codebase, giving AI agents and developers one shared, versioned source of context: a code graph, an architecture wiki, normalized health and test reports, long-term memory, and agent skills. Instead of context scattered across scratchpads, CI logs, and IDE rule files that never agree, everything lives in one git-diffable place that both humans and agents read from.
16
+
17
+ The core is deterministic, local, and offline — with zero runtime dependencies. Every model-backed or precision feature is strictly opt-in, so a fresh install behaves identically whether or not you enable them.
18
+
19
+ > **Model assets are optional.** Tree-sitter parsing uses downloadable grammars
20
+ > that are **not bundled and not required**; when a grammar is absent, the graph
21
+ > falls back to its deterministic resolver.
22
+ >
23
+ > **Two model-backed features are off in a way a download will not fix.**
24
+ > Semantic memory search and the ML security detectors have no runtime shipped —
25
+ > the ONNX stack was removed for weight, so their runtime identifiers are empty
26
+ > strings (`src/security/detect/index.ts`, `src/memory/config.ts`). Re-enabling
27
+ > them means editing those constants and installing a transformers.js-API
28
+ > package, not supplying an asset. Both run on their deterministic floor
29
+ > instead: lexical recall, and regex plus entropy.
30
+
31
+ Most things degrade rather than break, but not everything. `keryx ctx rg` exits
32
+ non-zero without `ripgrep` on `PATH` rather than falling back, and the
33
+ model-backed commands — `test suggest`, `flow plan`, `memory reflect --narrate`,
34
+ `health explain --narrate` — have no deterministic mode and exit non-zero
35
+ without a credential. `wiki enrich` is the exception that degrades: it exits 0
36
+ and marks pages skipped.
37
+
38
+ ## What this removes
39
+
40
+ An agent starts every task by re-deriving what your repository already knows.
41
+ Which files relate to which. What the architecture decision was and why. Which
42
+ tests cover the thing being changed. What broke last time someone tried this.
43
+ That work is repeated per task, per agent, per person — and the answers land in
44
+ scratchpads, CI logs and IDE rule files that never agree with each other.
45
+
46
+ keryx materializes those answers **into the repository**, as Markdown and JSON
47
+ under `.metaproject/`, and points every agent at one index. The context is
48
+ versioned with the code, readable in a diff, and shared by the humans and the
49
+ agents alike.
50
+
51
+ ### What it looks like when it works
52
+
53
+ Real output, from a real run on [express](https://github.com/expressjs/express)
54
+ — cloned fresh, four commands, nothing edited:
55
+
56
+ ```console
57
+ $ keryx init --yes
58
+ ✓ gdgraph ✓ gdctx ✓ gdwiki ✓ gdskills
59
+ ✓ health ✓ testing ✓ memory ✓ tasks ✓ security
60
+
61
+ $ keryx gdgraph build
62
+ gdgraph build complete: 139 nodes, 153 edges
63
+
64
+ $ keryx gdgraph query cycles
65
+ No cycles found.
66
+
67
+ $ keryx gdgraph affected lib/express.js
68
+ # Affected context for lib/express.js
69
+
70
+ ## Dependencies
71
+ - lib/application.js
72
+ - lib/request.js
73
+ - lib/response.js
74
+
75
+ ## Dependents
76
+ - examples/route-map/index.js
77
+ - examples/route-middleware/index.js
78
+ - index.js
79
+ ```
80
+
81
+ That last answer — *what breaks if I change this* — is the one an agent
82
+ otherwise spends a dozen file reads guessing at, and gets wrong on the files
83
+ that matter most.
84
+
85
+ ### Is this for you?
86
+
87
+ **Probably not, if:**
88
+
89
+ - **you want a hosted service.** There is no server, no account, no dashboard in
90
+ the cloud. If nothing runs on your machine, nothing runs.
91
+ - **you are on Linux and need the network allowlist.** The domain allowlist,
92
+ credential masking and TLS termination are macOS-only and **refuse** to run on
93
+ Linux rather than quietly doing less. Filesystem containment and network
94
+ on/off work on both.
95
+ - **you need remote approvals today.** `keryx serve` exists, but a turn whose
96
+ policy decision is `ask` terminates in a recorded denial. Approvals are not
97
+ implemented yet.
98
+ - **you want it to think for you.** keryx does deterministic mechanics — scan,
99
+ graph, score, checksum. The judgement stays with the agent and with you.
100
+
101
+ **Probably yes, if** you run agents against a repository you care about, more
102
+ than once, and you have noticed them rediscovering the same things.
103
+
104
+ ## Quick Start
105
+
106
+ **Requirements:** `git` and `bun` (>= 1.1.0). Code search (`keryx ctx rg` and the
107
+ agent's `search_code` tool) additionally requires [ripgrep](https://github.com/BurntSushi/ripgrep)
108
+ (`rg`) on `PATH` — install it with `brew install ripgrep` (macOS) or `apt install ripgrep`
109
+ (Debian/Ubuntu). Without it, code search is unavailable and the harness falls back to
110
+ reading files directly.
111
+
112
+ ### Install / update (global)
113
+
114
+ ```bash
115
+ npm install -g @mrciphersmith/keryx
116
+ ```
117
+
118
+ > **The package is scoped, and the scope matters.** The unscoped name `keryx` on
119
+ > npm belongs to [an unrelated project](https://github.com/actionhero/keryx) —
120
+ > `npm install -g keryx` installs a different program. The executable this
121
+ > package installs is still called `keryx`.
122
+
123
+ Or use the managed installer, which lays out `~/.keryx/keryx` with a wrapper at
124
+ `~/.local/bin/keryx`. Re-run either command to upgrade.
125
+
126
+ ```bash
127
+ # curl (short)
128
+ curl -fsSL https://raw.githubusercontent.com/MrCipherSmith/keryx/main/install | bash
129
+
130
+ # bun (short) — pipe into bun (Bun cannot run remote https://…/file.ts as entrypoint)
131
+ curl -fsSL https://raw.githubusercontent.com/MrCipherSmith/keryx/main/install.ts | bun -
132
+ ```
133
+
134
+ Pure Bun without the `curl` binary:
135
+
136
+ ```bash
137
+ bun -e 'await Bun.spawn(["bash","-s"],{stdin:await fetch("https://raw.githubusercontent.com/MrCipherSmith/keryx/main/install"),stdout:"inherit",stderr:"inherit"}).exited'
138
+ ```
139
+
140
+ Both paths run `scripts/install.sh --global` under the hood. Ensure `~/.local/bin` is on `PATH`:
141
+
142
+ ```bash
143
+ export PATH="$HOME/.local/bin:$PATH"
144
+ ```
145
+
146
+ ### Interactive shell (TUI agent harness)
147
+
148
+ Bare `keryx` is the **CLI** (lists commands / usage). The interactive TUI agent
149
+ harness starts only with **`keryx shell`**:
150
+
151
+ ```bash
152
+ keryx # CLI help — metaproject commands
153
+ keryx shell # OpenTUI + agent harness (default UI)
154
+ ```
155
+
156
+ Useful `shell` flags:
157
+
158
+ | Flag | Effect |
159
+ |------|--------|
160
+ | *(default)* | TUI + agent |
161
+ | `--no-tui` | classic readline shell |
162
+ | `--chat` | chat without tools (readline) |
163
+ | `--agent` | agent mode explicitly |
164
+ | `--provider <p> --model <m>` | skip the provider/model picker |
165
+ | `--base-url <url>` | custom provider endpoint |
166
+
167
+ Examples:
168
+
169
+ ```bash
170
+ keryx shell --provider ollama --model llama3.1:latest
171
+ keryx shell --no-tui
172
+ keryx shell --chat
173
+ ```
174
+
175
+ ### First project setup
176
+
177
+ ```bash
178
+ cd path/to/your-project
179
+ keryx init
180
+
181
+ keryx gdgraph build # code dependency graph
182
+ keryx test analyze # testing context report
183
+ keryx health run --changed # normalized health report
184
+
185
+ keryx dash # human admin dashboard
186
+ ```
187
+
188
+ `keryx init` creates a `.metaproject/` workspace and connects your existing
189
+ `AGENTS.md` / `CLAUDE.md` entrypoints to it, so agents are routed to the right
190
+ module automatically. See the
191
+ [onboarding guide](docs/docs/onboarding.md) for the full first-run walkthrough
192
+ and alternative install paths (managed curl installer, or project-local).
193
+
194
+ ## Core Ideas
195
+
196
+ A few pieces of jargon, defined once:
197
+
198
+ - **gdgraph** — a *code graph*: language-aware dependency and import graph of your
199
+ repo (TypeScript/JavaScript, Java via Maven/Gradle, and Python), with
200
+ cycle/orphan queries, concept and symbol lookup, call-aware impact analysis,
201
+ shortest paths, and a PageRank-ranked repo map.
202
+ - **gdctx** — *compact context output*: runs commands, searches, and file reads
203
+ and stores condensed results so agents don't flood their context with raw logs.
204
+ - **gdwiki** — an *architecture wiki*: a Markdown knowledge base of domain
205
+ models, decisions, and flows, with grounded `wiki ask` retrieval, hierarchical
206
+ indexes, and backlinks between wiki pages and code.
207
+ - **gdskills** — *agent skills*: bundled and project-generated skills that route
208
+ agents to the right workflow, plus verification and export to different runtimes.
209
+
210
+ ## Modules
211
+
212
+ `keryx` itself is the toolkit core (`init`, `status`, `update`, `dashboard`,
213
+ `rules`, `standard`, `agents`) and manages the `.metaproject/` structure. It
214
+ ships these modules:
215
+
216
+ - **gdgraph** — code dependency graph with language-aware import resolution (TypeScript/JavaScript, Java Maven/Gradle, Python); concept search, file/symbol paths, affected-set blast radius, PageRank repo map, and an optional tree-sitter symbol/call graph.
217
+ - **gdctx** — compact command / search / read output plus opt-in routing guards for supported agent runtimes.
218
+ - **gdwiki** — Markdown project wiki with hierarchical indexes, backlinks, link checks, collection, and grounded retrieval.
219
+ - **gdskills** — bundled and generated agent skills with routing, verification, learning, and export.
220
+ - **health** — normalized code-health reports from TypeScript, tests, audit, complexity, coverage, and lint (optional SonarQube).
221
+ - **testing** — testing context, related-test selection, changed-scope runs, and an opt-in coverage-map Test Impact Analysis.
222
+ - **memory** — long-term Markdown project memory with indexing, lexical search, dedup and bitemporal validity. The embedding seam exists but ships with no runtime — see the note above.
223
+ - **tasks** — an agent-first Task Manager driven by `keryx flow` for issue/task lifecycle tracking.
224
+ - **security** — deterministic secrets / PII / prompt-injection / egress scanning, redaction, and a policy gate at agent write seams.
225
+ - **mcp** — opt-in [Model Context Protocol](https://modelcontextprotocol.io) server exposing read-only module services to agents. A real module, but **off by default** — the nine above are on after `init`, this one is not.
226
+
227
+ `keryx modules` toggles modules by manifest key. Two caveats worth knowing:
228
+ `security` is enabled by default but is **not** in that command's module list, so
229
+ it cannot be toggled there; and toggling any module currently drops an enabled
230
+ `mcp` from the manifest.
231
+
232
+ **`review` and `serve` are commands, not modules.** They have no manifest entry
233
+ and are not toggleable — `keryx review` writes managed review packages under
234
+ `.metaproject/reviews/`, and `keryx serve` is the loopback HTTP entry described
235
+ below. Earlier versions of this README listed them alongside the modules; that
236
+ conflated three different things.
237
+
238
+ Two cross-cutting commands improve agent startup and routing:
239
+
240
+ - `keryx orient` emits or installs a compact graph + wiki orientation block at
241
+ turn start for Claude, Codex, and Cursor.
242
+ - `keryx agents bootstrap` installs the Metaproject discovery rule in supported
243
+ global agent entrypoints.
244
+
245
+ ## How Agents Use It
246
+
247
+ After `init`, agents follow the root `AGENTS.md`/`CLAUDE.md` pointer to
248
+ `.metaproject/index.md`, which routes them to the right module. For example:
249
+
250
+ ```text
251
+ Find the files related to payment retry handling, explain the relationships,
252
+ and use the keryx tools for context discovery before broad raw search.
253
+ ```
254
+
255
+ The agent is directed to use `gdgraph` for navigation, `gdctx` for large output,
256
+ `gdwiki` and `memory` for decisions and history, and `flow` for managed work —
257
+ only for the modules you've enabled.
258
+
259
+ For an always-current starting map, install the optional orientation hook:
260
+
261
+ ```bash
262
+ keryx orient install-hook --runtime codex
263
+ ```
264
+
265
+ For traceable review work, create a standalone review package or attach one to
266
+ an existing flow:
267
+
268
+ ```bash
269
+ keryx review start --target branch --ref feature/example
270
+ keryx review attach --flow 001 --target pull-request --ref 42
271
+ ```
272
+
273
+ For agents that speak the Model Context Protocol, `keryx mcp install` wires a
274
+ read-only MCP server into Cursor or Claude in one command (opt-in, off by
275
+ default). See the [architecture doc](docs/docs/architecture.md) for the module
276
+ data flows.
277
+
278
+ ## Remote Entry (opt-in, off by default)
279
+
280
+ `keryx serve` is a second door into the same agent harness `keryx shell` uses —
281
+ a loopback-bound HTTP listener, so a Telegram bot or a browser workspace can
282
+ drive a run without a second agent runtime or a second owner of session state.
283
+
284
+ ```bash
285
+ keryx serve config init # write the listener config
286
+ keryx serve token issue # print a bearer token (only a salted hash is stored)
287
+ keryx serve # bind 127.0.0.1 and listen
288
+ keryx serve status --json # configuration state
289
+ ```
290
+
291
+ It is **off unless you configure it**, binds loopback unless you pass
292
+ `--acknowledge-non-loopback`, and authenticates *before* routing — so an
293
+ unauthenticated caller cannot tell a known path from an unknown one. Routes
294
+ today: `GET /v1/status`, `GET /v1/projects`, `POST /v1/turns` with
295
+ per-project idempotency keys, and `GET /v1/turns/<id>` for the durable record
296
+ and its server-sent-event stream.
297
+
298
+ Two boundaries worth knowing before you point anything at it:
299
+
300
+ - **The remote policy profile may never be weaker than the local one**; it is
301
+ compared on every turn, and a weaker profile is refused rather than accepted.
302
+ - **Approvals are not implemented yet.** A turn whose policy decision is `ask`
303
+ terminates in a *recorded denial* — it is never auto-approved.
304
+
305
+ `keryx projects` manages the user-global registry these routes address projects
306
+ by; `keryx init` registers a project into it.
307
+
308
+ ## CI Integration
309
+
310
+ `keryx` is designed so CI can publish normalized, committable artifacts that
311
+ humans and agents read later:
312
+
313
+ ```bash
314
+ keryx gdgraph build
315
+ keryx test analyze
316
+ keryx health run --changed
317
+ keryx dashboard build
318
+ ```
319
+
320
+ Use `keryx health gate --strict-warn` to fail a job on the normalized health
321
+ gate instead of parsing raw linter/test logs, and `keryx security eval --corpus
322
+ all` to fail on any detector breaching its committed false-negative threshold.
323
+
324
+ ## Documentation
325
+
326
+ Full developer documentation — reverse-engineered from the source — lives under
327
+ [docs/docs/](docs/docs/):
328
+
329
+ - **[Onboarding](docs/docs/onboarding.md)** — install paths, first-run walkthrough, the build loop.
330
+ - **[Architecture](docs/docs/architecture.md)** — the four-layer pattern, invariants, cross-module data flows.
331
+ - **[Module reference](docs/docs/modules.md)** — one section per module: purpose, CLI surface, mechanics, data paths.
332
+ - **[CLI reference](docs/docs/cli-reference.md)** — every command, subcommand, and flag.
333
+ - **[Workspace & lifecycle](docs/docs/workspace-and-lifecycle.md)** — the `.metaproject/` contract and `init`/`update` lifecycle.
334
+
335
+ - **[Changelog](CHANGELOG.md)** — what has landed since `v0.1.0`, including a
336
+ standing list of known gaps.
337
+
338
+ Run `keryx <command> --help` (or `keryx` with no arguments) for the live command
339
+ surface.
340
+
341
+ ## Local Development
342
+
343
+ ```bash
344
+ bun ./src/cli.ts init
345
+ bun ./src/cli.ts status
346
+ bun run check # typecheck + tests
347
+ ```
348
+
349
+ ## License
350
+
351
+ MIT. See [LICENSE](LICENSE).