contextdevkit 1.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (345) hide show
  1. package/CHANGELOG.md +592 -0
  2. package/LICENSE +21 -0
  3. package/README.md +401 -0
  4. package/docs/AGENT-PACKAGE-FORMAT.md +140 -0
  5. package/docs/ARCHITECTURE.md +258 -0
  6. package/docs/CHANGELOG.md +559 -0
  7. package/docs/CUSTOMIZING.md +211 -0
  8. package/docs/LEVELS.md +151 -0
  9. package/docs/ROADMAP.md +385 -0
  10. package/docs/SQUAD-PIPELINE-FORMAT.md +258 -0
  11. package/docs/SQUADS/agent-forge.md +65 -0
  12. package/docs/SQUADS/design-team.md +161 -0
  13. package/docs/token-economy-plan.md +135 -0
  14. package/install.mjs +273 -0
  15. package/instrucoes.md +274 -0
  16. package/package.json +46 -0
  17. package/templates/CLAUDE.md.tpl +133 -0
  18. package/templates/claude/agents/_TEMPLATE.md +52 -0
  19. package/templates/claude/agents/accessibility.md +36 -0
  20. package/templates/claude/agents/agent-architect.md +37 -0
  21. package/templates/claude/agents/architect.md +39 -0
  22. package/templates/claude/agents/code-reviewer.md +43 -0
  23. package/templates/claude/agents/code-security.md +59 -0
  24. package/templates/claude/agents/context-keeper.md +40 -0
  25. package/templates/claude/agents/devops.md +40 -0
  26. package/templates/claude/agents/eval-designer.md +40 -0
  27. package/templates/claude/agents/forge-orchestrator.md +42 -0
  28. package/templates/claude/agents/governance-officer.md +45 -0
  29. package/templates/claude/agents/growth.md +92 -0
  30. package/templates/claude/agents/infra-security.md +53 -0
  31. package/templates/claude/agents/landing-architect.md +154 -0
  32. package/templates/claude/agents/model-router.md +34 -0
  33. package/templates/claude/agents/packager.md +38 -0
  34. package/templates/claude/agents/privacy-lgpd.md +64 -0
  35. package/templates/claude/agents/product-owner.md +51 -0
  36. package/templates/claude/agents/prompt-engineer.md +33 -0
  37. package/templates/claude/agents/qa-e2e.md +52 -0
  38. package/templates/claude/agents/qa-fuzzer.md +24 -0
  39. package/templates/claude/agents/qa-integration.md +21 -0
  40. package/templates/claude/agents/qa-orchestrator.md +40 -0
  41. package/templates/claude/agents/qa-perf.md +40 -0
  42. package/templates/claude/agents/qa-unit.md +39 -0
  43. package/templates/claude/agents/rag-designer.md +54 -0
  44. package/templates/claude/agents/retention.md +85 -0
  45. package/templates/claude/agents/security.md +48 -0
  46. package/templates/claude/agents/seo-specialist.md +106 -0
  47. package/templates/claude/agents/test-engineer.md +48 -0
  48. package/templates/claude/agents/tool-designer.md +32 -0
  49. package/templates/claude/agents/ui-designer.md +37 -0
  50. package/templates/claude/agents/ux-designer.md +38 -0
  51. package/templates/claude/commands/README.md +95 -0
  52. package/templates/claude/commands/advise.md +80 -0
  53. package/templates/claude/commands/audit/analyze-code-ia-practices.md +75 -0
  54. package/templates/claude/commands/audit/audit.md +35 -0
  55. package/templates/claude/commands/audit/contract-check.md +21 -0
  56. package/templates/claude/commands/audit/deep-analysis.md +48 -0
  57. package/templates/claude/commands/audit/deps-audit.md +49 -0
  58. package/templates/claude/commands/audit/security-setup.md +35 -0
  59. package/templates/claude/commands/audit/seo-audit.md +63 -0
  60. package/templates/claude/commands/audit/tech-debt-sweep.md +35 -0
  61. package/templates/claude/commands/bug-hunt.md +42 -0
  62. package/templates/claude/commands/claude-md.md +36 -0
  63. package/templates/claude/commands/close-version.md +25 -0
  64. package/templates/claude/commands/context-refresh.md +19 -0
  65. package/templates/claude/commands/context-stats.md +15 -0
  66. package/templates/claude/commands/dashboard.md +66 -0
  67. package/templates/claude/commands/distill-apply.md +19 -0
  68. package/templates/claude/commands/distill-sessions.md +26 -0
  69. package/templates/claude/commands/fleet.md +47 -0
  70. package/templates/claude/commands/forge/forge-audit.md +16 -0
  71. package/templates/claude/commands/forge/forge-budget.md +16 -0
  72. package/templates/claude/commands/forge/forge-deprecate.md +16 -0
  73. package/templates/claude/commands/forge/forge-doctor.md +17 -0
  74. package/templates/claude/commands/forge/forge-eval.md +16 -0
  75. package/templates/claude/commands/forge/forge-fallback-test.md +17 -0
  76. package/templates/claude/commands/forge/forge-killswitch.md +17 -0
  77. package/templates/claude/commands/forge/forge-list.md +17 -0
  78. package/templates/claude/commands/forge/forge-new.md +41 -0
  79. package/templates/claude/commands/forge/forge-policy.md +16 -0
  80. package/templates/claude/commands/forge/forge-redteam.md +17 -0
  81. package/templates/claude/commands/forge/forge-refresh-matrix.md +20 -0
  82. package/templates/claude/commands/forge/forge-route.md +17 -0
  83. package/templates/claude/commands/forge/forge-show.md +16 -0
  84. package/templates/claude/commands/landing-page.md +71 -0
  85. package/templates/claude/commands/log-session.md +59 -0
  86. package/templates/claude/commands/media-gen.md +93 -0
  87. package/templates/claude/commands/new-adr.md +30 -0
  88. package/templates/claude/commands/pipeline/dev-start.md +64 -0
  89. package/templates/claude/commands/pipeline/pipeline.md +36 -0
  90. package/templates/claude/commands/pipeline/resume.md +70 -0
  91. package/templates/claude/commands/pipeline/retro.md +34 -0
  92. package/templates/claude/commands/pipeline/runs.md +63 -0
  93. package/templates/claude/commands/pipeline/ship.md +54 -0
  94. package/templates/claude/commands/pipeline/workflow.md +85 -0
  95. package/templates/claude/commands/playbook.md +27 -0
  96. package/templates/claude/commands/predictions-review.md +28 -0
  97. package/templates/claude/commands/qa/qa-signoff.md +24 -0
  98. package/templates/claude/commands/qa/scaffold-tests.md +27 -0
  99. package/templates/claude/commands/qa/test-plan.md +26 -0
  100. package/templates/claude/commands/qa/visual-test.md +42 -0
  101. package/templates/claude/commands/roadmap.md +48 -0
  102. package/templates/claude/commands/setup/aidevtool-from0.md +104 -0
  103. package/templates/claude/commands/setup/context-config.md +25 -0
  104. package/templates/claude/commands/setup/context-doctor.md +21 -0
  105. package/templates/claude/commands/setup/context-level.md +17 -0
  106. package/templates/claude/commands/setup/setupcontextdevkit.md +121 -0
  107. package/templates/claude/commands/simulate-impact.md +32 -0
  108. package/templates/claude/commands/squad.md +44 -0
  109. package/templates/claude/commands/state.md +21 -0
  110. package/templates/claude/commands/token-report.md +29 -0
  111. package/templates/claude/commands/tune-agents.md +35 -0
  112. package/templates/claude/commands/vcs/claim.md +18 -0
  113. package/templates/claude/commands/vcs/git.md +83 -0
  114. package/templates/claude/commands/vcs/release.md +15 -0
  115. package/templates/claude/commands/vcs/worktree-new.md +18 -0
  116. package/templates/claude/commands/watch.md +47 -0
  117. package/templates/contextkit/.env.example +36 -0
  118. package/templates/contextkit/CLAUDE.child.md.tpl +38 -0
  119. package/templates/contextkit/README.md +74 -0
  120. package/templates/contextkit/behaviors-examples.md +183 -0
  121. package/templates/contextkit/behaviors.md +116 -0
  122. package/templates/contextkit/best-practices.md +323 -0
  123. package/templates/contextkit/config.json +66 -0
  124. package/templates/contextkit/detectors/README.md +45 -0
  125. package/templates/contextkit/detectors/example-detector.mjs.example +25 -0
  126. package/templates/contextkit/instrucoes.md +114 -0
  127. package/templates/contextkit/memory/GLOSSARY.md +13 -0
  128. package/templates/contextkit/memory/SESSIONS.md +9 -0
  129. package/templates/contextkit/memory/WORKSPACE.md +7 -0
  130. package/templates/contextkit/memory/business-rules/_TEMPLATE.md +33 -0
  131. package/templates/contextkit/memory/decisions/0000-record-architecture-decisions.md +34 -0
  132. package/templates/contextkit/memory/decisions/_TEMPLATE.md +25 -0
  133. package/templates/contextkit/memory/predictions/.gitkeep +0 -0
  134. package/templates/contextkit/memory/roadmap.md +28 -0
  135. package/templates/contextkit/memory/sessions/.gitkeep +0 -0
  136. package/templates/contextkit/memory/workflows/.gitkeep +0 -0
  137. package/templates/contextkit/pipeline/backlog/.gitkeep +0 -0
  138. package/templates/contextkit/pipeline/conclusion/.gitkeep +0 -0
  139. package/templates/contextkit/pipeline/devpipeline.md +9 -0
  140. package/templates/contextkit/pipeline/testing/.gitkeep +0 -0
  141. package/templates/contextkit/pipeline/working/.gitkeep +0 -0
  142. package/templates/contextkit/review-protocol.md +214 -0
  143. package/templates/contextkit/runtime/config/defaults.mjs +215 -0
  144. package/templates/contextkit/runtime/config/levels.mjs +42 -0
  145. package/templates/contextkit/runtime/config/load.mjs +105 -0
  146. package/templates/contextkit/runtime/config/paths.mjs +92 -0
  147. package/templates/contextkit/runtime/config/presets.mjs +47 -0
  148. package/templates/contextkit/runtime/config/schema.mjs +88 -0
  149. package/templates/contextkit/runtime/config/settings-compose.mjs +55 -0
  150. package/templates/contextkit/runtime/git-hooks/commit-msg.mjs +55 -0
  151. package/templates/contextkit/runtime/git-hooks/pre-commit.mjs +47 -0
  152. package/templates/contextkit/runtime/git-hooks/pre-push.mjs +102 -0
  153. package/templates/contextkit/runtime/hooks/boot-context-readers.mjs +111 -0
  154. package/templates/contextkit/runtime/hooks/boot-signals.mjs +135 -0
  155. package/templates/contextkit/runtime/hooks/check-registration.mjs +228 -0
  156. package/templates/contextkit/runtime/hooks/concurrency-guard.mjs +110 -0
  157. package/templates/contextkit/runtime/hooks/ledger.mjs +231 -0
  158. package/templates/contextkit/runtime/hooks/md-extract.mjs +65 -0
  159. package/templates/contextkit/runtime/hooks/path-classification.mjs +62 -0
  160. package/templates/contextkit/runtime/hooks/safe-io.mjs +84 -0
  161. package/templates/contextkit/runtime/hooks/session-digest-core.mjs +85 -0
  162. package/templates/contextkit/runtime/hooks/session-start.mjs +248 -0
  163. package/templates/contextkit/runtime/hooks/simulate-gate.mjs +108 -0
  164. package/templates/contextkit/runtime/hooks/track-edits.mjs +154 -0
  165. package/templates/contextkit/runtime/providers/media/_adapter.mjs +120 -0
  166. package/templates/contextkit/runtime/providers/media/nano-banana.mjs +110 -0
  167. package/templates/contextkit/runtime/providers/media/veo.mjs +162 -0
  168. package/templates/contextkit/runtime/providers/review/_adapter.mjs +71 -0
  169. package/templates/contextkit/runtime/providers/review/detect.mjs +115 -0
  170. package/templates/contextkit/runtime/providers/review/gh.mjs +103 -0
  171. package/templates/contextkit/runtime/state/state-io.mjs +172 -0
  172. package/templates/contextkit/runtime/statusline.mjs +51 -0
  173. package/templates/contextkit/squads/README.md +115 -0
  174. package/templates/contextkit/squads/_BRIEFING.md.tpl +27 -0
  175. package/templates/contextkit/squads/agent-forge/README.md +69 -0
  176. package/templates/contextkit/squads/agent-forge/ROADMAP.md +108 -0
  177. package/templates/contextkit/squads/agent-forge/best-practices.md +89 -0
  178. package/templates/contextkit/squads/agent-forge/cli/forge-admin.mjs +132 -0
  179. package/templates/contextkit/squads/agent-forge/cli/forge-eval-cli.mjs +163 -0
  180. package/templates/contextkit/squads/agent-forge/cli/forge-new.mjs +97 -0
  181. package/templates/contextkit/squads/agent-forge/cli/forge-ops.mjs +177 -0
  182. package/templates/contextkit/squads/agent-forge/lib/architect.mjs +112 -0
  183. package/templates/contextkit/squads/agent-forge/lib/eval-designer.mjs +133 -0
  184. package/templates/contextkit/squads/agent-forge/lib/eval-runner.mjs +167 -0
  185. package/templates/contextkit/squads/agent-forge/lib/governance-officer.mjs +178 -0
  186. package/templates/contextkit/squads/agent-forge/lib/package-ops.mjs +101 -0
  187. package/templates/contextkit/squads/agent-forge/lib/packager.mjs +219 -0
  188. package/templates/contextkit/squads/agent-forge/lib/prompt-gen.mjs +122 -0
  189. package/templates/contextkit/squads/agent-forge/lib/rag-designer.mjs +102 -0
  190. package/templates/contextkit/squads/agent-forge/lib/router.mjs +165 -0
  191. package/templates/contextkit/squads/agent-forge/lib/tool-gen.mjs +113 -0
  192. package/templates/contextkit/squads/agent-forge/lib/yaml.mjs +47 -0
  193. package/templates/contextkit/squads/agent-forge/pipeline.yaml +65 -0
  194. package/templates/contextkit/squads/agent-forge/router/capability-matrix.json +112 -0
  195. package/templates/contextkit/squads/agent-forge/router/decision-rules.json +120 -0
  196. package/templates/contextkit/squads/agent-forge/templates/agent-package/.agentforgerc +12 -0
  197. package/templates/contextkit/squads/agent-forge/templates/agent-package/CHANGELOG.md +13 -0
  198. package/templates/contextkit/squads/agent-forge/templates/agent-package/LICENSE +5 -0
  199. package/templates/contextkit/squads/agent-forge/templates/agent-package/README.md +39 -0
  200. package/templates/contextkit/squads/agent-forge/templates/agent-package/adapters/go/README.md +10 -0
  201. package/templates/contextkit/squads/agent-forge/templates/agent-package/adapters/go/agent.go +14 -0
  202. package/templates/contextkit/squads/agent-forge/templates/agent-package/adapters/go/go.mod +3 -0
  203. package/templates/contextkit/squads/agent-forge/templates/agent-package/adapters/node/README.md +11 -0
  204. package/templates/contextkit/squads/agent-forge/templates/agent-package/adapters/node/index.js +53 -0
  205. package/templates/contextkit/squads/agent-forge/templates/agent-package/adapters/node/package.json +9 -0
  206. package/templates/contextkit/squads/agent-forge/templates/agent-package/adapters/python/README.md +10 -0
  207. package/templates/contextkit/squads/agent-forge/templates/agent-package/adapters/python/agent.py +16 -0
  208. package/templates/contextkit/squads/agent-forge/templates/agent-package/adapters/python/pyproject.toml +10 -0
  209. package/templates/contextkit/squads/agent-forge/templates/agent-package/evals/golden.jsonl +1 -0
  210. package/templates/contextkit/squads/agent-forge/templates/agent-package/evals/red-team.jsonl +3 -0
  211. package/templates/contextkit/squads/agent-forge/templates/agent-package/evals/rubric.yaml +14 -0
  212. package/templates/contextkit/squads/agent-forge/templates/agent-package/evals/run-eval.md +17 -0
  213. package/templates/contextkit/squads/agent-forge/templates/agent-package/evals/thresholds.yaml +18 -0
  214. package/templates/contextkit/squads/agent-forge/templates/agent-package/examples/basic.node.md +17 -0
  215. package/templates/contextkit/squads/agent-forge/templates/agent-package/examples/with-fallback.node.md +24 -0
  216. package/templates/contextkit/squads/agent-forge/templates/agent-package/examples/with-rag.python.md +20 -0
  217. package/templates/contextkit/squads/agent-forge/templates/agent-package/governance/audit.schema.json +23 -0
  218. package/templates/contextkit/squads/agent-forge/templates/agent-package/governance/compliance.policy.yaml +43 -0
  219. package/templates/contextkit/squads/agent-forge/templates/agent-package/governance/cost.policy.yaml +36 -0
  220. package/templates/contextkit/squads/agent-forge/templates/agent-package/governance/fallback-chain.yaml +16 -0
  221. package/templates/contextkit/squads/agent-forge/templates/agent-package/governance/quality.policy.yaml +43 -0
  222. package/templates/contextkit/squads/agent-forge/templates/agent-package/manifest.yaml +91 -0
  223. package/templates/contextkit/squads/agent-forge/templates/agent-package/prompts/system.anthropic.md +19 -0
  224. package/templates/contextkit/squads/agent-forge/templates/agent-package/prompts/system.canonical.md +25 -0
  225. package/templates/contextkit/squads/agent-forge/templates/agent-package/prompts/system.deepseek.md +21 -0
  226. package/templates/contextkit/squads/agent-forge/templates/agent-package/prompts/system.google.md +19 -0
  227. package/templates/contextkit/squads/agent-forge/templates/agent-package/prompts/system.ollama.md +21 -0
  228. package/templates/contextkit/squads/agent-forge/templates/agent-package/prompts/system.openai.md +20 -0
  229. package/templates/contextkit/squads/agent-forge/templates/agent-package/rag/config.yaml +17 -0
  230. package/templates/contextkit/squads/agent-forge/templates/agent-package/rag/index/.gitkeep +3 -0
  231. package/templates/contextkit/squads/agent-forge/templates/agent-package/rag/ingestion/chunker.config.yaml +6 -0
  232. package/templates/contextkit/squads/agent-forge/templates/agent-package/rag/ingestion/sources.yaml +8 -0
  233. package/templates/contextkit/squads/agent-forge/templates/agent-package/rag/retrieval/query-template.md +16 -0
  234. package/templates/contextkit/squads/agent-forge/templates/agent-package/rag/retrieval/rerank.config.yaml +6 -0
  235. package/templates/contextkit/squads/agent-forge/templates/agent-package/tools/adapters/anthropic.tools.json +11 -0
  236. package/templates/contextkit/squads/agent-forge/templates/agent-package/tools/adapters/deepseek.tools.json +14 -0
  237. package/templates/contextkit/squads/agent-forge/templates/agent-package/tools/adapters/google.tools.json +11 -0
  238. package/templates/contextkit/squads/agent-forge/templates/agent-package/tools/adapters/ollama.tools.json +14 -0
  239. package/templates/contextkit/squads/agent-forge/templates/agent-package/tools/adapters/openai.tools.json +14 -0
  240. package/templates/contextkit/squads/agent-forge/templates/agent-package/tools/schemas.canonical.json +25 -0
  241. package/templates/contextkit/starters/tanstack/README.md +86 -0
  242. package/templates/contextkit/starters/tanstack/index.html +12 -0
  243. package/templates/contextkit/starters/tanstack/package.json +25 -0
  244. package/templates/contextkit/starters/tanstack/src/main.tsx +40 -0
  245. package/templates/contextkit/starters/tanstack/src/router.tsx +12 -0
  246. package/templates/contextkit/starters/tanstack/src/routes/__root.tsx +10 -0
  247. package/templates/contextkit/starters/tanstack/src/routes/index.tsx +17 -0
  248. package/templates/contextkit/starters/tanstack/tsconfig.json +19 -0
  249. package/templates/contextkit/starters/tanstack/vite.config.ts +10 -0
  250. package/templates/contextkit/tools/scripts/adr-digest-core.mjs +42 -0
  251. package/templates/contextkit/tools/scripts/adr-digest.mjs +78 -0
  252. package/templates/contextkit/tools/scripts/agent-tuning.mjs +74 -0
  253. package/templates/contextkit/tools/scripts/aiso-audit.mjs +174 -0
  254. package/templates/contextkit/tools/scripts/audit-shared.mjs +129 -0
  255. package/templates/contextkit/tools/scripts/claim.mjs +133 -0
  256. package/templates/contextkit/tools/scripts/claude-md.mjs +123 -0
  257. package/templates/contextkit/tools/scripts/clean-drive.mjs +78 -0
  258. package/templates/contextkit/tools/scripts/context-config.mjs +111 -0
  259. package/templates/contextkit/tools/scripts/context-level.mjs +98 -0
  260. package/templates/contextkit/tools/scripts/context-pack.mjs +120 -0
  261. package/templates/contextkit/tools/scripts/contract-scan.mjs +186 -0
  262. package/templates/contextkit/tools/scripts/dashboard-data.mjs +198 -0
  263. package/templates/contextkit/tools/scripts/dashboard-html.mjs +215 -0
  264. package/templates/contextkit/tools/scripts/dashboard-server.mjs +129 -0
  265. package/templates/contextkit/tools/scripts/dashboard.mjs +107 -0
  266. package/templates/contextkit/tools/scripts/deep-analysis.mjs +62 -0
  267. package/templates/contextkit/tools/scripts/deps-audit.mjs +201 -0
  268. package/templates/contextkit/tools/scripts/detect-stack.mjs +164 -0
  269. package/templates/contextkit/tools/scripts/distill-detect.mjs +90 -0
  270. package/templates/contextkit/tools/scripts/doctor.mjs +165 -0
  271. package/templates/contextkit/tools/scripts/fleet.mjs +170 -0
  272. package/templates/contextkit/tools/scripts/generate-context.mjs +142 -0
  273. package/templates/contextkit/tools/scripts/gh-alerts.mjs +117 -0
  274. package/templates/contextkit/tools/scripts/git.mjs +97 -0
  275. package/templates/contextkit/tools/scripts/home.mjs +106 -0
  276. package/templates/contextkit/tools/scripts/mark-simulation.mjs +78 -0
  277. package/templates/contextkit/tools/scripts/media-gen.mjs +154 -0
  278. package/templates/contextkit/tools/scripts/pipeline-board.mjs +74 -0
  279. package/templates/contextkit/tools/scripts/pipeline-prioritize.mjs +68 -0
  280. package/templates/contextkit/tools/scripts/pipeline-session.mjs +99 -0
  281. package/templates/contextkit/tools/scripts/pipeline-validate.mjs +136 -0
  282. package/templates/contextkit/tools/scripts/pipeline.mjs +302 -0
  283. package/templates/contextkit/tools/scripts/playbook.mjs +123 -0
  284. package/templates/contextkit/tools/scripts/predictions-review.mjs +113 -0
  285. package/templates/contextkit/tools/scripts/release.mjs +60 -0
  286. package/templates/contextkit/tools/scripts/resume.mjs +114 -0
  287. package/templates/contextkit/tools/scripts/roadmap.mjs +86 -0
  288. package/templates/contextkit/tools/scripts/runs.mjs +116 -0
  289. package/templates/contextkit/tools/scripts/seo-audit.mjs +150 -0
  290. package/templates/contextkit/tools/scripts/session-digest.mjs +89 -0
  291. package/templates/contextkit/tools/scripts/session-reindex.mjs +91 -0
  292. package/templates/contextkit/tools/scripts/setup-complete.mjs +69 -0
  293. package/templates/contextkit/tools/scripts/squad-meta.mjs +23 -0
  294. package/templates/contextkit/tools/scripts/squad-pipeline-condition.mjs +192 -0
  295. package/templates/contextkit/tools/scripts/squad-pipeline.mjs +301 -0
  296. package/templates/contextkit/tools/scripts/squad.mjs +80 -0
  297. package/templates/contextkit/tools/scripts/stats.mjs +138 -0
  298. package/templates/contextkit/tools/scripts/sync-check.mjs +235 -0
  299. package/templates/contextkit/tools/scripts/tech-debt-detectors.mjs +76 -0
  300. package/templates/contextkit/tools/scripts/tech-debt-scan.mjs +164 -0
  301. package/templates/contextkit/tools/scripts/token-report.mjs +153 -0
  302. package/templates/contextkit/tools/scripts/visual-test.mjs +132 -0
  303. package/templates/contextkit/tools/scripts/watch.mjs +106 -0
  304. package/templates/contextkit/tools/scripts/workflow.mjs +136 -0
  305. package/templates/contextkit/tools/scripts/workspace-sync.mjs +220 -0
  306. package/templates/contextkit/tools/scripts/worktree-new.mjs +50 -0
  307. package/templates/contextkit/workflows/L1-static-loading.md +59 -0
  308. package/templates/contextkit/workflows/L2-session-ledger.md +86 -0
  309. package/templates/contextkit/workflows/L3-multi-session.md +80 -0
  310. package/templates/contextkit/workflows/L4-squads.md +68 -0
  311. package/templates/contextkit/workflows/L5-proactive.md +88 -0
  312. package/templates/contextkit/workflows/README.md +47 -0
  313. package/templates/contextkit/workflows/playbooks/distillation-cycle.md +74 -0
  314. package/templates/contextkit/workflows/playbooks/landing-page.md +197 -0
  315. package/templates/contextkit/workflows/playbooks/security-batch.md +68 -0
  316. package/templates/contextkit/workflows/playbooks/seo-aiso.md +288 -0
  317. package/templates/contextkit/workflows/playbooks/simulate-impact.md +83 -0
  318. package/templates/contextkit/workflows/playbooks/tanstack.md +164 -0
  319. package/templates/contextkit/workflows/playbooks/tech-debt-sweep.md +77 -0
  320. package/templates/docs/CHANGELOG.md.tpl +11 -0
  321. package/templates/gitattributes +3 -0
  322. package/templates/github/ISSUE_TEMPLATE/bug_report.md +30 -0
  323. package/templates/github/ISSUE_TEMPLATE/feature_request.md +22 -0
  324. package/templates/github/PULL_REQUEST_TEMPLATE.md +27 -0
  325. package/templates/github/dependabot.yml +27 -0
  326. package/templates/github/workflows/quality.yml +36 -0
  327. package/templates/github/workflows/security.yml +54 -0
  328. package/tools/install/cli.mjs +62 -0
  329. package/tools/install/fs.mjs +56 -0
  330. package/tools/install/git.mjs +114 -0
  331. package/tools/install/project.mjs +51 -0
  332. package/tools/install/uninstall.mjs +54 -0
  333. package/tools/integration-test-compozy.mjs +88 -0
  334. package/tools/integration-test-guards.mjs +269 -0
  335. package/tools/integration-test-tooling-agent-forge.mjs +189 -0
  336. package/tools/integration-test-tooling-pipeline.mjs +164 -0
  337. package/tools/integration-test-tooling.mjs +172 -0
  338. package/tools/integration-test.mjs +228 -0
  339. package/tools/it-helpers.mjs +60 -0
  340. package/tools/selfcheck-agent-forge-ops.mjs +107 -0
  341. package/tools/selfcheck-agent-forge.mjs +304 -0
  342. package/tools/selfcheck-config.mjs +80 -0
  343. package/tools/selfcheck-runtime.mjs +135 -0
  344. package/tools/selfcheck-source.mjs +326 -0
  345. package/tools/selfcheck.mjs +268 -0
package/CHANGELOG.md ADDED
@@ -0,0 +1,592 @@
1
+ # Changelog
2
+
3
+ All notable changes to ContextDevKit are documented here.
4
+ Format based on [Keep a Changelog](https://keepachangelog.com/);
5
+ this project follows [Semantic Versioning](https://semver.org/).
6
+
7
+ ## [Unreleased]
8
+
9
+ ### Added
10
+ - **agent-forge squad — Fase 6: declarative pipeline DSL + dry-run engine
11
+ (ADR-0015 Part A).** The forge's orchestration is now a diffable, simulate-
12
+ impact-mappable plan. New `templates/contextkit/squads/agent-forge/pipeline.yaml`
13
+ declares the 9 build steps (validate-blueprint → route →
14
+ checkpoint-shortlist → generate-prompt → generate-tools? → generate-rag? →
15
+ governance → eval-gate (on_reject → generate-prompt, max_cycles: 3) →
16
+ package). New `templates/contextkit/tools/scripts/squad-pipeline.mjs` engine
17
+ parses via `lib/yaml.mjs` (ADR-0013 optional dynamic import) and refuses on
18
+ missing `yaml` with **exit 0 + informative** message — pipelines are opt-in,
19
+ not hot-path. New `squad-pipeline-condition.mjs` is the whitelisted
20
+ condition parser: only `<id>(.<id>)* <op> <literal>` and `…length <op>
21
+ <int>` (no function calls, no boolean chaining, no arithmetic). `--dry-run`
22
+ walks the graph against an empty context and prints the would-be execution
23
+ order with markers `✓` runs · `⊘` skipped by condition · `↺` has retry
24
+ loop. `max_review_cycles` is a hard cap (engine exits "manual escalation
25
+ required" rather than looping past it); vendor model names are refused
26
+ (only `model_tier: fast|powerful|reasoning` — the router stays the single
27
+ resolver). 2 new selfchecks in `selfcheck-agent-forge.mjs`
28
+ (`checkConditionParser` + `checkSquadPipeline`, 8 assertions). 4 new
29
+ integration asserts (pipeline ships, validates, yaml-absent informative
30
+ path). Spec: `docs/SQUAD-PIPELINE-FORMAT.md` (258 lines). `state.json` per
31
+ run is deferred to task 040 (ADR-0015 Part C). The agent-forge ROADMAP
32
+ Fase 6 row flips to ✅; opensquad-inspired but reshaped — full expression
33
+ eval, vendor names in YAML, and auto-state are deliberately rejected.
34
+ - **agent-forge squad — Fase 5: RAG designer + Go runtime + L5 gate + /fleet
35
+ Forge Stats.** Closes the original blueprint. New `lib/rag-designer.mjs`
36
+ generates the `rag/` bundle from the blueprint when `capabilities.rag` is
37
+ true — multilingual-vs-english embedding from `intent.domain`, pgvector vs
38
+ qdrant from residency, recursive chunk sizing tightened for extraction,
39
+ `top_k` scaled by complexity, hybrid search + reranker on by default. The
40
+ packager now also stamps `{{AGENT_NAME}}` / `{{MODULE_PATH}}` into the Go
41
+ runtime adapter (`go.mod` + README). `defaults.l5.highRiskPaths` ships with
42
+ `agent-packages/**` so any forged-agent edit triggers the simulate-impact
43
+ gate. `fleet.mjs cmdStats` aggregates per-repo Forge Stats and surfaces a
44
+ fleet-total `🔥 Forge fleet: N packages across M repos…` line. Selfcheck
45
+ split: build-pipeline checks stay in `selfcheck-agent-forge.mjs` (225
46
+ lines), Fase 4+5 ops checks moved to the new `selfcheck-agent-forge-ops.mjs`
47
+ (real responsibility seam). New `rag-designer.md` briefing — refuses
48
+ pinecone under no-cloud, refuses `top_k < 4`. (035)
49
+ - **agent-forge squad — Fase 4: production maintenance + Forge Stats + reference
50
+ docs.** Operating a fleet of forged agents in production now has tools.
51
+ `lib/package-ops.mjs` discovers `<name>@<semver>/` dirs without needing the
52
+ yaml dep, loads manifests + provenance via the optional path, diagnoses
53
+ structural problems (missing files OR `{{TOKEN}}` placeholders in
54
+ governance YAMLs), and aggregates monthly budgets. Three CLI modules wire
55
+ **13 new `/forge-*` slash commands**: `cli/forge-ops.mjs`
56
+ (list/show/doctor/policy/budget/audit — read-only),
57
+ `cli/forge-eval-cli.mjs` (eval/redteam/route/fallback-test with `--provider
58
+ mock|chaos` for CI), `cli/forge-admin.mjs` (refresh-matrix/killswitch/
59
+ deprecate — dry-run by default, atomic tmp+rename writes on `--write`).
60
+ Each command has a thin briefing under `templates/claude/commands/forge-*.md`
61
+ carrying its refusal conditions. The Node runtime adapter ships a
62
+ `createShadowEval` scaffold (sample rate from
63
+ `quality.policy.yaml.eval_gates.drift_monitoring.sample_pct`; real scoring
64
+ delegated to the package's `evals/`). `/context-stats` gains a **Forge Stats**
65
+ section (package count, eval-stamp ratio, aggregate target + hard cap,
66
+ distribution by primary provider). New reference docs:
67
+ [`docs/SQUADS/agent-forge.md`](docs/SQUADS/agent-forge.md) +
68
+ [`docs/AGENT-PACKAGE-FORMAT.md`](docs/AGENT-PACKAGE-FORMAT.md). Selfcheck
69
+ gains `checkPackageOps` + 19 inventory entries (13 commands + 6 files).
70
+ ROADMAP §8 / §9 / §10 (Forge Stats) all ✅; Fase 4 ✅. (034)
71
+ - **agent-forge squad — Fase 3: governance + eval gate (the refuse-to-ship layer).**
72
+ Principle 5 ("Eval before embarkation") is now enforced in code. Three pure
73
+ zero-dep modules carry the gate: `lib/eval-designer.mjs` (`designEvalSet` seeds
74
+ golden by `intent.category` + the universal red-team baseline of
75
+ prompt-injection / jailbreak / PII-leak + a rubric + thresholds derived from
76
+ blueprint privacy/sla/cost — PII-leak block rate forced to 1.0 when
77
+ `pii_present`); `lib/eval-runner.mjs` (`runEvalSuite`, provider-agnostic — mock
78
+ for CI, real adapter for production — supports `exact` / `exact_set` /
79
+ `numeric_tolerance:N` / `semantic_similarity:>=N`; aggregates p95 latency + cost
80
+ and refuses pass when any threshold breaches); `lib/governance-officer.mjs`
81
+ (`attachGovernance` builds the three pillars populated from the blueprint
82
+ plus the fallback chain from the router decision; `validateGovernance` refuses
83
+ on missing sections OR unresolved `{{TOKEN}}` placeholders). `packageAgent`
84
+ now calls `attachGovernance` first (throws early), writes 4 populated
85
+ governance YAMLs + 4 populated eval files (overwriting templates), and stamps
86
+ `provenance.eval_passed_at` ONLY when `opts.evalResult.verdict === 'pass'`.
87
+ `forgeNew` gains an opt-in `runEval = { provider, semantic }` that runs the
88
+ gate before packaging. Two new agent briefings ship: `eval-designer.md` (drives
89
+ the 10–50 golden expansion + domain red-team) and `governance-officer.md`
90
+ (three pillars equal-weight, refuse-over-rubber-stamp). 11 new behavioural
91
+ selfchecks + 6 new integration asserts. (033)
92
+ - **agent-forge squad — Fase 2: multi-provider + Python runtime adapter.** All five
93
+ providers now flow end-to-end through the pipeline. `prompt-gen.mjs` gains
94
+ `renderGoogle` (Markdown body for `systemInstruction` + safetySettings note),
95
+ `renderDeepSeek` (OpenAI-compat with an explicit CoT cue prepended to Rules),
96
+ `renderOllama` (Markdown body; the per-model `chat_template` is applied by the
97
+ runtime, not embedded). `tool-gen.mjs` gains `renderGoogle` with
98
+ `downConvertForGemini` that recursively strips JSON-Schema fields Gemini's
99
+ `functionDeclarations` parser rejects (`additionalProperties`, `$schema`, `$id`,
100
+ `$ref`), plus `renderDeepSeek` + `renderOllama` mirroring OpenAI's `type:function`
101
+ shape. `packager.mjs` writes the full 5 prompt files + 5 tool adapter files on
102
+ every package, and a new `stampRuntimeAdapters` replaces `{{AGENT_NAME}}` /
103
+ `{{SEE_LICENSE}}` in Node `package.json` + Python `pyproject.toml` (+ their
104
+ READMEs) when those runtimes are requested. `architect.mjs` promotes
105
+ `runtime_adapters` to a first-class blueprint field (`enum-multi` over
106
+ `[node, python, go]`, default `[node]`) — `validateBlueprint` rejects unknown
107
+ entries, `fillDefaults` defaults it, `assembleManifest` stamps
108
+ `spec.runtime_adapters` straight from the blueprint. Integration test gains 7
109
+ new asserts across both branches (yaml-available + no-yaml CI default) covering
110
+ every new provider + the Python adapter token stamping. (032)
111
+ - **agent-forge squad — Fase 1 MVP: end-to-end forge pipeline.** The squad now
112
+ produces a real Agent Package. Six pure, zero-dep `lib/*.mjs` modules carry the
113
+ pipeline: `architect.mjs` (canonical `INTERVIEW_QUESTIONS` + `validateBlueprint` +
114
+ `fillDefaults` + canonicalized SHA-256 `blueprintHash` for provenance);
115
+ `router.mjs` + `router/decision-rules.json` (13 rules under the 15-cap, structural
116
+ shortlists only — quality verdicts deferred to the eval harness per ADR-0012 §5);
117
+ `prompt-gen.mjs` (canonical Markdown → Anthropic XML with `cache=ephemeral` +
118
+ OpenAI Markdown sections); `tool-gen.mjs` (canonical JSON schemas → Anthropic
119
+ `{name,description,input_schema}` array + OpenAI `type:function` wrapper);
120
+ `packager.mjs` (split into pure `assembleManifest` + I/O `packageAgent` —
121
+ stamps provenance, replaces the README rationale slot, writes provider files).
122
+ The optional `yaml` dep (ADR-0013) is touched only at write time via `lib/yaml.mjs`.
123
+ Six lean `.claude/agents/forge-*.md` briefings (orchestrator / architect /
124
+ router / prompt-engineer / tool-designer / packager) plus the `/forge-new` slash
125
+ command and the executable `cli/forge-new.mjs` (exports `forgeNew()` for the
126
+ integration test). Selfcheck gains `checkRouterEngine` — a behavioural guard
127
+ that exercises a typical extraction blueprint AND the no-cloud constraint,
128
+ asserting the rationale carries the eval-as-authority disclaimer. (031)
129
+ - **Installer copies the agent-forge squad at L>=4.** Fase-0 leftover fixed —
130
+ without this, the squad existed only in the source tree and installed projects
131
+ could not run `/forge-new`. Guarded by a `checkSourceInvariants` regex so a
132
+ silent regression is impossible.
133
+ - **Integration round-trip for `/forge-new`.** New block in
134
+ `integration-test-tooling.mjs`: when the optional `yaml` dep is installed,
135
+ drives `forgeNew` to write a complete APF into a temp `agent-packages/...@0.1.0/`
136
+ and asserts 11 expected files + stamped blueprint hash + routed primary
137
+ provider + Anthropic XML prompt + OpenAI function-typed tools + Node adapter.
138
+ When `yaml` is absent (default CI), exercises the pure half of the pipeline
139
+ (validate → route → `assembleManifest` → generators) with the same invariants
140
+ in memory — CI proves correctness end-to-end either way.
141
+ - **agent-forge squad — foundations (Fase 0).** New *factory* squad that forges
142
+ portable, multi-provider Agent Packages for projects outside the kit. Scaffolded
143
+ `templates/contextkit/squads/agent-forge/` with its README (mandate, roster, boundary)
144
+ and `best-practices.md` (the bar every forged agent clears — five principles, the
145
+ default catalogue, provider notes, three-pillar governance, eval lifecycle).
146
+ Seeded `router/capability-matrix.json` (5 providers, 11 models, dated + ADR-gated)
147
+ with a selfcheck guard that parses it and rejects malformed / duplicate / disallowed
148
+ model ids. Materialized the full APF v1 template tree (`templates/agent-package/`,
149
+ 45 files): manifest, canonical + per-provider prompts, canonical tool schema +
150
+ per-provider tool adapters, the eval set (golden / red-team / rubric / thresholds /
151
+ run-eval), three governance policies + fallback-chain + audit schema, RAG config,
152
+ and Node / Python / Go runtime-adapter stubs. Selfcheck inventory guards the docs +
153
+ representative APF files. Approved by ADR-0012; remaining phases on the DevPipeline
154
+ (031–035). (030)
155
+
156
+ ## [1.4.2] - 2026-05-25
157
+
158
+ ### Changed
159
+ - **CI actions bumped to Node 24 majors** (re-pinned by SHA): `actions/checkout`
160
+ v4→v6, `actions/setup-node` v4→v6, `actions/dependency-review-action` v4→v5 —
161
+ across `release.yml`, `ci.yml` and the scaffolded `quality.yml`/`security.yml`
162
+ templates. Clears GitHub's Node 20 runtime-deprecation warning (forced Node 24
163
+ on 2026-06-02). CodeQL stays on v3 (no Node 24 major yet). Still SHA-pinned.
164
+
165
+ ## [1.4.1] - 2026-05-25
166
+
167
+ DevPipeline backlog cleared (all 25 open tasks) — bug fixes, supply-chain &
168
+ test hardening, and single-source refactors. No public API removed.
169
+
170
+ ### Fixed
171
+ - **Network git calls now time out** (`git.mjs`, `pre-push.mjs`) — an unreachable
172
+ remote could hang `/git status` and any push. Bounded via `CONTEXT_GIT_TIMEOUT_MS`. (007)
173
+ - **Boot banner**: `[Unreleased]` clipped past 60 lines now shows a `(truncated)`
174
+ marker (009); `extractLatestSession` breaks a session-number tie by the later date (010).
175
+ - **`applyPreset`** no longer crashes on a partial/custom preset missing `l5`/`qa`/`ledger`. (013)
176
+ - **Atomic writes** (tmp-file + rename) for the ledger, workspace, pipeline and claim
177
+ writers — a concurrent reader can't see a half-written file; pipeline ids are now
178
+ collision-safe (exclusive create). (011)
179
+ - **`SessionStart`** no longer deletes a live concurrent session's fresh ledger. (008)
180
+
181
+ ### Security
182
+ - **`sanitizeSid`** applied at every workspace-path construction (claim/release/track-edits)
183
+ — defense-in-depth against `../` traversal in a session id. (012)
184
+ - **GitHub Actions pinned to commit SHAs** across release/ci + the security/quality
185
+ workflow templates; **`ci.yml` is least-privilege** (`contents: read`). (019, 020)
186
+ - **README "Security & trust"** section — npx/hook-install + tag-pinning + fleet/detector
187
+ code-execution disclosure; installer **backs up an existing git hook** to `.bak`. (021, 022)
188
+
189
+ ### Added
190
+ - **Guards test suite** (`integration-test-guards.mjs`): commit-msg, pre-push
191
+ (block/warn/allow/bypass), config-loader fallbacks, uninstall/purge, concurrency-guard
192
+ external-edit, gh-alerts mappers, malformed-settings recovery. (014–018)
193
+ - **Pluggable-detector seed** `contextkit/detectors/` (README + inert example), now installed. (026)
194
+
195
+ ### Changed
196
+ - **Single-source level taxonomy** (`config/levels.mjs`) + **passthrough config schema**
197
+ (no more `max(5)` cap; keeps every section). [ADR-0010] (024, 025)
198
+ - **Single-source platform paths** via `pathsFor(root)`; a selfcheck guard now fails on any
199
+ hardcoded `contextkit/` path construction (rule 4). [ADR-0011] (023)
200
+ - **Shared zero-dep helpers**: `readJsonSafe`/`parseJsonSafe` + `squadOf`, killing duplicated
201
+ BOM-parse / squad-detection code. (027, 028)
202
+ - Line-budget cohesion notes + constitution nits (dead imports, bare-var renames);
203
+ `selfcheck.mjs` split to stay under the RED-zone gate. (005, 006, 029)
204
+
205
+ ## [1.4.0] - 2026-05-25
206
+
207
+ ### Changed
208
+ - **Recommended starting level by project type** (ADR-0009) — the installer now
209
+ defaults to **L3** for a greenfield/empty folder and **L7** for a project that
210
+ already has code (was: always recommend L2). `--level` still pins; a re-install
211
+ preserves an existing project's level. Not intrusive — the L5 simulate-gate stays
212
+ inert until `l5.highRiskPaths` is set. Docs retagged (`cli` labels, `LEVELS.md`
213
+ with new L6/L7 sections, both `instrucoes.md`, README quickstart).
214
+
215
+ ### Fixed
216
+ - **Level cap stuck at 6.** `install.mjs` silently downgraded `--level 7` to 2, and
217
+ `doctor.mjs` flagged a valid L7 project as "config.level out of range". Both now
218
+ accept **1–7**. Also corrected stale `1-5`/`1-6` range hints across `/context-level`,
219
+ `/setupcontextdevkit`, `settings-compose`, and `docs/ARCHITECTURE.md`.
220
+
221
+ ## [1.3.0] - 2026-05-25
222
+
223
+ ### Added
224
+ - **L7 "Ecosystem & Scale" — new capability tier.** The shipped Future-directions
225
+ capabilities (fleet, agent-tuning, editor/CI, detectors/presets, token economy,
226
+ playbooks, visual tests) are now a real activation level: **`/context-level 7`**.
227
+ Wiring only — `getLevel` 1→7, level labels + `--level 1-7`, `defaults` docs; **no
228
+ new hook** (same capability-tier pattern as L6). [→ ADR-0008]
229
+ - **Diverse & visual testing harness (MVP)** — `/visual-test` + `visual-test.mjs`
230
+ **scaffold** a browser-driven visual layer (screenshot / visual-regression) for the
231
+ detected stack: Playwright **JS** (`@playwright/test`) + **Python** (pytest-playwright);
232
+ `status` detects an existing harness. Owned by `qa-e2e`; wired into `/scaffold-tests`,
233
+ `/qa-signoff`, `/ship`. The runner is a project dependency — the kit scaffolds, never
234
+ bundles/runs browsers (zero-dep hot path). Roadmap *Future directions* #6.
235
+ - **Fleet mode (MVP)** — `/fleet` + `fleet.mjs`: a control plane over many repos.
236
+ Registry outside any repo (`~/.contextdevkit/fleet.json`, override `CONTEXT_FLEET_FILE`);
237
+ `add`/`remove`/`list`, `stats` (aggregate each repo's `stats.mjs`), `audit`
238
+ (aggregate `deep-analysis`), and `propagate <rule-file>` (report which repos'
239
+ `CLAUDE.md` **lack** a rule — detect-only, no cross-repo edits). Zero-dep, defensive.
240
+ - **Outcome-driven agent tuning (MVP)** — `/tune-agents` + `agent-tuning.mjs`:
241
+ aggregates per-agent signals (tier-2 briefing coverage + usage mentions across
242
+ sessions) and **proposes** briefing refinements to `.agent-tuning-proposal.md`
243
+ (gitignored); applies nothing, mirroring `/distill-sessions`. Promotes roadmap
244
+ *Future directions* #2/#3 from candidate to MVP.
245
+ - **Playbook management** (roadmap #8) — `playbook.mjs` + **`/playbook`** turn
246
+ `contextkit/workflows/playbooks/` into a managed layer: **list** the registry, **show**
247
+ a procedure, and **run** one (records a tracked entry in
248
+ `contextkit/memory/playbook-runs.md`, then prints the steps). `/ship` and the squads can
249
+ `run` a playbook instead of restating it. Zero-dep; covered by selfcheck + integration
250
+ tests.
251
+ - **Token economy & usage insight** (roadmap #7) — `token-report.mjs` + **`/token-report`**
252
+ read Claude Code's local session transcripts and aggregate token usage per session and
253
+ per ISO week (input/output/cache), with a configurable budget (`tokens.budgetPerSession`)
254
+ that flags hot sessions. Read-only, local, zero-dep, aggregated counts only. New
255
+ integration test covers aggregation.
256
+ - **Predictions-review cadence** (roadmap #002) — when `predictionsReview.active` (on by
257
+ default), the SessionStart hook reminds you to run `/predictions-review` every N sessions,
258
+ but **only** when unreviewed `/simulate-impact` predictions exist (silent otherwise).
259
+ Mirrors security-mode. New integration test covers the trigger.
260
+ - **Editor/CI surfaces (MVP)** — a **status-line widget** (`statusline.mjs`, wired as
261
+ `settings.statusLine` at L≥1, preserving a user's own) and a **quality CI workflow**
262
+ (`.github/workflows/quality.yml`: `contract-scan --ci` + `tech-debt --ci`). Roadmap
263
+ *Future directions* #4. (The Claude-driven PR-review bot is deferred — needs Claude in CI.)
264
+ - **Pluggable detectors & stack presets (MVP)** — `tech-debt-scan` loads drop-in
265
+ detectors from `contextkit/detectors/*.mjs` (defensive dynamic import); `install.mjs
266
+ --preset next|go|python` merges a stack preset (ledger / high-risk / QA paths) into
267
+ config via `presets.mjs`. Roadmap *Future directions* #5.
268
+
269
+ ### Changed
270
+ - **Contract drift detection deepened** (`contract-scan.mjs`) — the export extractor
271
+ now also catches `export default`, namespace re-exports (`export * [as N] from`),
272
+ `declare`/`abstract` declarations, generators, and type-only `export type { … }`
273
+ (and fixes an inline-`{ type X }` mis-parse). Stays regex-based and **zero-dep** by
274
+ design — AST would need a parser dependency (see *Honest gaps* / ADR-0003). New
275
+ integration test covers it.
276
+ - **Optional AST contract drift** (`contract-scan.mjs`, roadmap #001) — when a parser is
277
+ importable (`acorn`, or a module named by `CONTEXT_CONTRACT_PARSER`), extraction uses the
278
+ AST for precision; otherwise the deepened regex (the zero-dep default) is used. The kit
279
+ ships no parser, so the default is unchanged. Integration test covers the AST path via a
280
+ fake parser. [→ ADR-0003]
281
+
282
+ ## [1.2.0] - 2026-05-24
283
+
284
+ ### Added
285
+ - **`code-security` agent (security-team sub-specialist)** — owns the code's external
286
+ attack surface: third-party integration code (API clients/SDKs, webhooks &
287
+ callbacks, (de)serialization of external responses), dependency provenance/SBOM,
288
+ and SAST/CodeQL triage. Mirrors `infra-security`; cross-linked from `security`
289
+ (AppSec lead) and `infra-security` so the lanes don't overlap.
290
+ - **GitHub-native security** — `templates/github/dependabot.yml` + an **advisory**
291
+ `security.yml` workflow (dependency-review on PRs + the `/deps-audit` gate + CodeQL),
292
+ installed write-if-missing; **`gh-alerts.mjs`** syncs Dependabot + code-scanning
293
+ alerts into the DevPipeline backlog (via the `gh` CLI; degrades to exit 0 without
294
+ `gh`/repo/network); new **`/security-setup`** command ties scaffolding + sync together.
295
+ - **`/predictions-review` — closes the predicted-vs-actual loop** (ancestor parity #1,
296
+ second half). `predictions-review.mjs` fills each `/simulate-impact` prediction's
297
+ *Actual* section from the session ledger (paths changed vs predicted, delta both
298
+ ways); auto-run by `/log-session`. The v1.1.0 write-half was a stub; the review half
299
+ is now implemented. Covered by selfcheck + integration tests.
300
+ - **`workflows/` guides + playbooks** — installed `contextkit/workflows/` with per-level
301
+ workflow docs (L1–L5, plus an L6 capability-tier note) and four reusable playbooks
302
+ (`tech-debt-sweep`, `simulate-impact`, `distillation-cycle`, `security-batch`),
303
+ generalized and translated from the source platform. Seeded write-if-missing by the
304
+ installer (`copyTreeIfMissing`); covered by selfcheck + integration tests. Completes
305
+ the post-1.0 **ancestor parity** focus (piece #3 of 3).
306
+
307
+ ### Changed
308
+ - **`/deps-audit` grown into a dependency policy** — adds **license allow/deny** (from
309
+ installed package metadata), a CycloneDX **SBOM** (`--sbom` → `contextkit/memory/sbom.json`),
310
+ and **lockfile-drift** detection, driven by a new `deps` config block (`defaults.mjs`
311
+ + optional zod `schema.mjs`). Findings still flow into the DevPipeline backlog.
312
+ Zero-dep and defensive (never throws).
313
+
314
+ ### Docs
315
+ - **Roadmap:** added — and shipped — the **"supply-chain & code security"** section
316
+ (deepen the security-team), plus a **status-key convention** (`⏳ in progress`
317
+ alongside `✅`/`📋`/`🟡`/`➖`) in `docs/ROADMAP.md` and the installed-project template;
318
+ trimmed the now-resolved entries from *Honest gaps*.
319
+ - **Roadmap:** added two *Future directions* initiatives — **token economy & usage
320
+ insight** (per-session token reporting via `/token-report`, budgets, and cost-driven
321
+ optimization, extending L6 Insight) and **playbook management** (a registry +
322
+ `/playbook` to list/show/run/track reusable procedures), cross-linked to the existing
323
+ `workflows/playbooks/` ancestor-parity foundation.
324
+
325
+ ## [1.1.0] - 2026-05-24
326
+
327
+ ### Added
328
+ - **Two-tier squad briefings** — `squad.mjs brief <agent>` scaffolds a rich briefing
329
+ into `contextkit/squads/<squad>/<agent>.md` (squad auto-detected) behind the lean
330
+ `.claude/agents/` agent; `squad.mjs list` shows briefing coverage. Wired into
331
+ `/squad`. Ancestor parity #2.
332
+ - **`memory/predictions/`** — `/simulate-impact` (`mark-simulation.mjs`) now writes a
333
+ prediction file per run (objective · covered paths · predicted-vs-actual stub),
334
+ seeded on install. First step of the post-1.0 **ancestor parity** focus.
335
+
336
+ ### Docs
337
+ - **Roadmap:** marked the 1.0 milestone **shipped** (per-item status + the extras
338
+ delivered) and set **ancestor parity** as the post-1.0 focus.
339
+
340
+ ## [1.0.0]
341
+
342
+ ### Added
343
+ - **Security mode (active, not reactive)** — a SessionStart trigger reminds you to
344
+ run `/deep-analysis` every `securityMode.everyNSessions` sessions (default 10),
345
+ **on by default**; disable with `securityMode.active: false`. The manual
346
+ `/deep-analysis` command stays available anytime.
347
+ - **`/deep-analysis` (global sweep)** — `deep-analysis.mjs` aggregates every
348
+ deterministic scanner (tech-debt, deps, contract) into one report; the command
349
+ adds judgment (security / architecture / bug pass), suggests ADRs, and ingests
350
+ every finding into the backlog. The security-mode boot trigger reminds you to run it.
351
+ - **WSJF (SAFe) prioritization + bug severity + SLA** in the DevPipeline. A task's
352
+ priority comes from a WSJF score (`pipeline.mjs add --wsjf uv,tc,rr,js` or
353
+ `pipeline.mjs wsjf <id> …`), from **bug severity** (`--severity S1-S4`), or from
354
+ scanner severity; the **SLA due date** follows the priority (config
355
+ `pipeline.slaDays`) and the board flags ⏰ overdue. Logic in
356
+ `pipeline-prioritize.mjs`, rendering in `pipeline-board.mjs`.
357
+ - **Bug taxonomy + known-bugs map.** Bug tasks carry `severity` (S1-S4) + `bugType`
358
+ (functional/regression/security/performance/data/…); `pipeline.mjs sync` generates
359
+ `contextkit/pipeline/known-bugs.md` (registry grouped by severity, open vs resolved,
360
+ ⏰ overdue), and `pipeline.mjs bugs` prints/regenerates it.
361
+ - **`business-rules/` memory folder** — `contextkit/memory/business-rules/` with a
362
+ versioned-rule `_TEMPLATE.md`, scaffolded on install and surfaced in
363
+ `/setupcontextdevkit`. Mirrors the source platform's `docs/business-rules/`, kept in
364
+ `contextkit/memory/` alongside the rest of the project's durable memory.
365
+ - **`security-team` squad (security & infra / DevSecOps)** in the squads manifest —
366
+ groups `security` (AppSec + dependency/supply-chain) and `devops` (infra, CI/CD,
367
+ release safety), with veto on the L5/L6 gates for Critical/High findings.
368
+ - **`/deps-audit` (security-team)** — deterministic dependency / supply-chain check
369
+ (lockfile present, version pinning, plus native `npm`/`pnpm`/`yarn audit` CVEs when
370
+ available) that emits findings into the DevPipeline backlog. Roadmap 1.0 #6.
371
+ - **`infra-security` agent (security-team)** — threat-models the platform the app
372
+ runs on (IaC/cloud misconfig, IAM least-privilege, network exposure, secrets,
373
+ container/runtime + CI/CD supply-chain hardening); pairs with `devops` (builds it)
374
+ and `security` (AppSec). The security-team is now AppSec + infra + delivery.
375
+ - **Analysis → DevPipeline backlog flow.** `/bug-hunt`, `/analyze-code-ia-practices`,
376
+ `/tech-debt-sweep`, and `/audit` now always emit a report **and** push each finding
377
+ into the DevPipeline backlog, **auto-prioritized** by severity (RED→P1, yellow→P2,
378
+ low→P3) and **idempotent**. New `pipeline.mjs ingest <findings.json>` and
379
+ `pipeline.mjs prioritize <id> <P0-P3>` (the auto priority is **always editable** by
380
+ the user). `tech-debt-scan --write` also emits `tech-debt-findings.json`.
381
+
382
+ ### Changed
383
+ - **`install.mjs` refactored into focused modules** under `tools/install/` (cli,
384
+ fs, project, git, uninstall). The entry point drops 487 → 234 lines — back under
385
+ the 280-line constitution and out of the tech-debt RED ZONE. Behaviour-identical
386
+ (the integration test drives the real installer end-to-end). Renamed
387
+ `require_basename` → `requireBasename` to satisfy the kit's own naming rule.
388
+ - **All git/node calls go through `execFileSync` (no shell)** in `claim` and
389
+ `release` — consistency + defense-in-depth.
390
+ - **`tech-debt-scan --ci`** added (exits non-zero on any RED-zone finding) and
391
+ enforced as a CI step, so the kit can't regress past its own line-budget limit.
392
+ - **Deepened tier-2 QA agents** (`qa-unit`, `qa-perf`, `qa-e2e`) with anti-pattern
393
+ tables + operational guidance (mocking strategy; visual-regression note), and
394
+ **sharpened routing boundaries** — `architect` (dependency fit) vs `security`
395
+ (supply-chain risk); `test-engineer` (devteam, L<4) vs `qa-orchestrator` (L≥4
396
+ entry point). Roadmap 1.0 #5.
397
+
398
+ ### Deprecated
399
+ - `/state`, `/context-doctor`, `/context-refresh` now carry a deprecation banner
400
+ pointing to `/audit` (still fully functional); `/release` is noted as paired with
401
+ `/claim`. Non-destructive first step of the 1.0 surface-trim (#1).
402
+
403
+ ### Fixed
404
+ - Tech-debt marker detector no longer flags its own doc comment (a false positive
405
+ in every sweep).
406
+
407
+ ### Docs
408
+ - **Roadmap:** marked the squad families as shipped (v0.5.2); set a **1.0 — harden
409
+ & prove** milestone before any L7; added **dependency & supply-chain control**
410
+ (owned by `security-team`) as a 1.0 item.
411
+ - `/git` command description said "skill"; corrected to "command".
412
+ - **Roadmap:** added a **diverse & visual testing harness** future direction —
413
+ browser-driven visual / regression testing with a **Python** option (Playwright /
414
+ Selenium), owned by `qa-e2e` + `design-team`, gating "done" in `/ship`.
415
+ - **CONTRIBUTING:** documented the **public contracts** (config schema, installer
416
+ flags, hook payload, `contextkit/` layout, command/agent names) as the 1.0 stability
417
+ promise — breaking changes need an ADR + `/contract-check` (roadmap 1.0 #4).
418
+
419
+ ### Security
420
+ - **Closed a shell-injection vector in `worktree-new`.** The base-branch argument
421
+ was interpolated into a shell string (`execSync(\`git ... ${base}\`)`), so a
422
+ crafted value like `"HEAD; rm -rf ~"` could run arbitrary commands. It now uses
423
+ `execFileSync('git', argv)` (no shell), so the argument is a single literal git
424
+ revision and a malicious value simply fails as an invalid reference.
425
+
426
+ ## [0.5.2] - 2026-05-22
427
+
428
+ ### Added
429
+ - **Squads as a first-class concept** — `contextkit/squads/README.md` manifest
430
+ (rosters, when-to-use, **sovereignty** rule, grow guide), `_BRIEFING.md.tpl`
431
+ (optional two-tier rich briefings), and the `/squad` command (show/route/brief/
432
+ new-squad). Agents are now grouped: **devteam** + **qa-team** (existing), plus
433
+ **compliance-team** (`privacy-lgpd` — standardized Brazilian LGPD skills: legal
434
+ basis, consent, Art. 18 rights, retention/deletion, DPO, ANPD incidents,
435
+ processors), **design-team** (`ux-designer`, `ui-designer`, `accessibility`
436
+ WCAG AA), and starters for **product-team** (`product-owner`) and **ops-team**
437
+ (`devops`). README suggests further squads (docs/data/growth/support) as
438
+ templates. Now 18 agent archetypes; all install at Level 4.
439
+
440
+ ## [0.5.1] - 2026-05-22
441
+
442
+ ### Added
443
+ - **Safe `--update`** — `npx contextdevkit@latest --target . --update` refreshes the
444
+ engine, slash commands, agents, and hook wiring **for the project's CURRENT
445
+ level**, and **never touches** user-owned content: `CLAUDE.md`, `contextkit/config.json`
446
+ (level + overrides preserved), memory (ADRs/sessions/roadmap/glossary), pipeline
447
+ tasks, or scoped module `CLAUDE.md` files. New seed artifacts are added
448
+ write-if-missing. Any plain re-run also now preserves the existing level instead
449
+ of defaulting to 2.
450
+
451
+ ## [0.5.0] - 2026-05-22
452
+
453
+ ### Added
454
+ - **Version-control skill** — `/git` command + `git.mjs` diagnostics. Codifies the
455
+ workflow (Conventional branches/commits — already hook-enforced — feature→PR, no
456
+ direct push to default, rebase-sync, conflict handling via pre-push) and the
457
+ **remote setup**: detects git/repo/remote/provider and whether `gh`/`glab` are
458
+ installed+authed, and guides connecting GitHub/GitLab/other (install the CLI +
459
+ create the repo, private by default). Wired into `/setupcontextdevkit` (6b),
460
+ `/aidevtool-from0` (6b), the installer hint, and `doctor` (notes missing remote).
461
+ - **Modular CLAUDE.md** — each app/module gets its own scoped CLAUDE.md (like the
462
+ source platform's `apps/api/CLAUDE.md` + `apps/mobile/CLAUDE.md`). `claude-md.mjs`
463
+ (find/scaffold) detects module roots (`backend/`, `frontend/`, `api/`, `web/`,
464
+ `mobile/`, and `apps/*`/`packages/*`/`modules/*`/`services/*`), `/claude-md`
465
+ scaffolds + fills them, a `CLAUDE.child.md.tpl` is seeded, and `doctor` notes
466
+ modules missing one. Wired into `/setupcontextdevkit` (Phase 4b) + `/aidevtool-from0`.
467
+ - **Product roadmap as a first-class artifact**: seeded `contextkit/memory/roadmap.md`
468
+ (P-ID format), `/roadmap` command (new project → build it WITH the user;
469
+ existing project → find a roadmap/PRD/spec to import, or analyze the code and
470
+ **propose** one + ask the user for objectives), and `roadmap.mjs`
471
+ (find/status/init). Wired into `/setupcontextdevkit` (Phase 5b) and
472
+ `/aidevtool-from0` (Phase 4); `doctor` notes when the roadmap is undefined.
473
+ - **`/aidevtool-from0`** — bootstrap an empty project from zero: intelligent
474
+ interactive product questionnaire → product vision, stack suggestion/refine
475
+ (ADR), product **roadmap** (P-IDs), best-practices constitution, and a seeded
476
+ DevPipeline. First-run boot now routes empty projects here, existing ones to
477
+ `/setupcontextdevkit`.
478
+ - **Best-practices skill**: `contextkit/best-practices.md` (file-size budget +
479
+ **intelligent** refactor-by-responsibility, SoC, naming, errors, docs) and
480
+ `/analyze-code-ia-practices` — runs the scanner then proposes the *right*
481
+ refactor per file (never random splits). New `practices.active` config; boot
482
+ reminds when active.
483
+ - **DevPipeline** (execution control, distinct from the product roadmap):
484
+ `contextkit/pipeline/{backlog,testing,conclusion}/` task files + generated
485
+ `devpipeline.md` dashboard; `pipeline.mjs` (`add`/`move`/`sync`) and the
486
+ `/pipeline` manager command. Bugs/increments/chores + roadmap items broken into
487
+ tasks with priority + SLA. Synced on pre-commit.
488
+ - **Concurrency hardening (L3)** — robust against parallel sessions on the same
489
+ machine AND different devs/machines:
490
+ - `concurrency-guard.mjs` (`PreToolUse`): warns before you overwrite a file
491
+ another active session edited recently, or that changed on disk since you
492
+ last wrote it (covers full-file `Write`, which Claude Code's `Edit` freshness
493
+ check doesn't).
494
+ - `pre-push.mjs` git hook: fetches the upstream and **blocks a push that has a
495
+ real textual conflict** with what was pushed there (`git merge-tree`); warns
496
+ on auto-mergeable overlap. Bypass: `CONTEXT_ALLOW_CONFLICT_PUSH=1`.
497
+ - SessionStart now lists **other active branches** (local worktrees + recent
498
+ remote branches with author/age) for cross-machine awareness.
499
+ - New config `l3.mainBranch` (upstream the conflict check compares against).
500
+ - **`/ship` automatic checkpoints** — `--auto` runs the pipeline through
501
+ objective gates (no manual pause), still stopping on a red gate and before any
502
+ irreversible action.
503
+ - **L6 — Autonomy & Insight** (new level): `/ship` (autonomous squad pipeline:
504
+ design → implement → review → test → record, with checkpoints), `/retro`
505
+ (learning loop turning recurring drift/debt into rules + ADRs), `/context-stats`
506
+ (platform telemetry). No new hook — a capability tier on top of L5.
507
+ - **Deterministic tech-debt scanner** (`tech-debt-scan.mjs` + `tech-debt-detectors.mjs`):
508
+ generic regex detectors (line budget, SRP "And/Or/E" names, TODO markers,
509
+ React state-loops). `/tech-debt-sweep` now runs the scanner, then interprets.
510
+ - **Generic contract-drift** (`contract-scan.mjs` + `/contract-check`): declare
511
+ `l5.contractGlobs`, snapshot exported symbols, flag removals/renames. CI-able.
512
+ - **Platform metrics** (`stats.mjs`): sessions, drift rate, cadence, ADR/agent counts.
513
+ - **`instrucoes.md`** — pt-BR usage guide (kit root + installed into projects).
514
+ - **`docs/ROADMAP.md`** — architect gap analysis vs the source system + L6 + future.
515
+ - New config: `l5.lineBudget`, `l5.contractGlobs`. Level range is now 1–6.
516
+
517
+ ### Changed
518
+ - `/audit` now runs doctor + stats + tech-debt-scan + contract-scan deterministically.
519
+
520
+ ## [0.4.1] - 2026-05-22
521
+
522
+ ### Added
523
+ - **QA squad Tier 2**: `qa-perf` (benchmark/profile a hot path) and `qa-e2e`
524
+ (critical user journeys through the real UI) agents — now 12 agent archetypes.
525
+ - **Release workflow** (`.github/workflows/release.yml`): pushing a `v*` tag runs
526
+ the test suite, publishes to npm via the `NPM_TOKEN` secret, and creates the
527
+ GitHub Release automatically.
528
+ - README demo/walkthrough of the `/setupcontextdevkit` flow.
529
+
530
+ ### Note
531
+ - First release cut by the automated tag pipeline (validating it end-to-end).
532
+
533
+ ## [0.4.0] - 2026-05-22
534
+
535
+ ### Added
536
+ - **QA squad** (Level 4): `qa-orchestrator` (router + sign-off) plus `qa-unit`,
537
+ `qa-integration`, `qa-fuzzer` specialists, and the `/test-plan`,
538
+ `/scaffold-tests`, `/qa-signoff` commands. New `qa` config section
539
+ (`criticalPaths`, `coverageTarget`); `detect-stack`/`setup-complete` suggest
540
+ and apply `qa.criticalPaths`.
541
+ - **`/audit`** — one-pass health audit (doctor + tech-debt + QA + drift) with a
542
+ prioritized action list; README documents running it on a schedule.
543
+ - **GitHub templates** installed into the target's `.github/` (PR template +
544
+ bug/feature issue templates), written only if missing.
545
+ - **npm packaging**: `prepublishOnly` gates publish on the test suite.
546
+
547
+ ### Notes
548
+ - Now ships 22 slash commands and 10 agent archetypes. Agents install at L ≥ 4.
549
+
550
+ ## [0.3.0] - 2026-05-22
551
+
552
+ ### Added
553
+ - **GitHub Actions CI** (`.github/workflows/ci.yml`) — runs the self-check and a
554
+ full integration test on Node 18/20/22, plus a greenfield install smoke test.
555
+ - **`tools/integration-test.mjs`** — installs into a temp project and drives the
556
+ real hooks through a true stdin pipe (drift block, L5 gate block + allow,
557
+ first-run trigger, level rewire, doctor). Cross-platform, self-cleaning.
558
+ - **`/distill-sessions` + `/distill-apply`** — the auto-distill cycle the L5 Stop
559
+ nudge referenced (propose CLAUDE.md refinements, then apply with an ADR).
560
+ - **`/context-doctor`** + `doctor.mjs` — diagnoses node version, config validity,
561
+ hook wiring vs level, git hooks, memory scaffolding, and onboarding state.
562
+ - **`context-config.mjs`** — robust `show`/`set` backing `/context-config` (type
563
+ coercion + optional zod validation), replacing free-form JSON editing.
564
+ - **Agent archetypes**: `test-engineer`, `security` (now 6 universal agents).
565
+ - **Installer**: `--help`, `--version`, `--uninstall [--purge]`, and a
566
+ `.gitattributes` patch (keeps engine scripts LF on all platforms).
567
+ - **Packaging**: `files`, `repository`, `homepage`, `bugs`, and `npm test`.
568
+
569
+ ### Notes
570
+ - `--uninstall` keeps your memory (`contextkit/memory/`) and `CLAUDE.md`; `--purge`
571
+ additionally removes the engine, commands, and agents.
572
+
573
+ ## [0.2.0] - 2026-05-22
574
+
575
+ ### Added
576
+ - **First-run trigger** — the SessionStart hook surfaces a "First run" banner
577
+ until onboarding completes, prompting `/setupcontextdevkit`.
578
+ - **`/setupcontextdevkit`** — one-shot self-configuring onboarding (detect stack,
579
+ tune config, fill CLAUDE.md, seed glossary, scaffold agents, baseline ADR).
580
+ - **`detect-stack.mjs`** + **`setup-complete.mjs`** — read-only stack analyzer
581
+ with suggested ledger/high-risk paths, applied via `--detect`.
582
+ - `npx github:reiTavares/ContextDevKit` import documented.
583
+
584
+ ## [0.1.0] - 2026-05-22
585
+
586
+ ### Added
587
+ - Initial release: portable, level-based (L1–L5) AI dev platform for Claude Code.
588
+ - Engine: 4 hooks (boot context, edit ledger, drift nudge, L5 risk gate),
589
+ config-driven path classification, zero-dependency BOM-safe config loader.
590
+ - Installer with greenfield/existing detection and idempotent settings
591
+ composition. 14 slash commands, agent archetypes, ADR/session/glossary
592
+ scaffolding, and docs.
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 reiTavares
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.