forge-workflow 0.0.9 → 0.1.0-beta.2

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 (479) hide show
  1. package/.claude/rules/{greptile-review-process.md → review-process.md} +56 -41
  2. package/.claude/scripts/{greptile-resolve.sh → review-resolve.sh} +13 -3
  3. package/.cursor/rules/permissions-guidance.mdc +2 -2
  4. package/.forge/hooks/check-tdd.js +3 -0
  5. package/.forge/hooks/forge-native-hook.js +245 -0
  6. package/.forge/protected-paths.yaml +157 -0
  7. package/AGENTS.md +151 -61
  8. package/CHANGELOG.md +681 -0
  9. package/CLAUDE.md +9 -106
  10. package/QUICKSTART.md +171 -0
  11. package/README.md +271 -363
  12. package/bin/forge-cmd.js +120 -9
  13. package/bin/forge-preflight.js +26 -5
  14. package/bin/forge.js +466 -489
  15. package/docs/INDEX.md +93 -0
  16. package/docs/PROJECT_DESIGN.md +685 -0
  17. package/docs/architecture/index.md +66 -0
  18. package/docs/architecture/notes/README.md +35 -0
  19. package/docs/architecture/subsystems/README.md +46 -0
  20. package/docs/{TOOLCHAIN.md → forge/TOOLCHAIN.md} +56 -47
  21. package/docs/forge/VALIDATION.md +82 -0
  22. package/docs/{AGENT_INSTALL_PROMPT.md → guides/AGENT_INSTALL_PROMPT.md} +3 -3
  23. package/docs/guides/BEADS_GITHUB_SYNC.md +32 -0
  24. package/docs/{ENHANCED_ONBOARDING.md → guides/ENHANCED_ONBOARDING.md} +16 -12
  25. package/docs/guides/GREPTILE_SETUP.md +46 -0
  26. package/docs/guides/MANUAL_REVIEW_GUIDE.md +58 -0
  27. package/docs/guides/MIGRATION.md +56 -0
  28. package/docs/guides/SETUP.md +118 -0
  29. package/docs/guides/SUPPORT.md +185 -0
  30. package/docs/guides/WORKFLOW_TEMPLATES.md +74 -0
  31. package/docs/guides/memory-backends.md +183 -0
  32. package/docs/reference/ADAPTERS.md +128 -0
  33. package/docs/reference/AGENT_SKILL_PARITY.md +175 -0
  34. package/docs/reference/COMMANDS.md +205 -0
  35. package/docs/reference/DECISION_DRIFT_GUARDS.md +97 -0
  36. package/docs/{EXAMPLES.md → reference/EXAMPLES.md} +7 -5
  37. package/docs/reference/FORGE_KERNEL_STORAGE_MODEL.md +135 -0
  38. package/docs/reference/HERMES_INTEGRATION.md +118 -0
  39. package/docs/reference/INSIGHTS_RECAP.md +63 -0
  40. package/docs/reference/INSTALL.md +164 -0
  41. package/docs/reference/KERNEL_TAXONOMY_VALIDATION.md +161 -0
  42. package/docs/reference/PROTECTED_PATH_MANIFEST.md +25 -0
  43. package/docs/reference/RELEASE.md +68 -0
  44. package/docs/reference/RESEARCH_TEMPLATE.md +292 -0
  45. package/docs/{ROADMAP.md → reference/ROADMAP.md} +12 -9
  46. package/docs/reference/SKILLS.md +35 -0
  47. package/docs/reference/STATUS_BOARD.md +80 -0
  48. package/docs/reference/TEMPLATES.md +106 -0
  49. package/docs/reference/TOOLCHAIN.md +658 -0
  50. package/docs/reference/VALIDATION.md +82 -0
  51. package/docs/reference/agent-permissions.md +169 -0
  52. package/docs/reference/beads-to-kernel-migration-ux.md +61 -0
  53. package/docs/reference/control-plane-guarantees.md +125 -0
  54. package/docs/reference/dependency-chain.md +331 -0
  55. package/docs/reference/forge-kernel-issue-command-contract.md +161 -0
  56. package/docs/reference/forge-kernel-schema.md +72 -0
  57. package/docs/reference/kernel-conflict-evaluators.md +27 -0
  58. package/docs/reference/patch-md-format.md +77 -0
  59. package/docs/reference/protected-state-surfaces.md +59 -0
  60. package/docs/reference/shepherd.md +115 -0
  61. package/docs/reference/superpowers-analysis.md +320 -0
  62. package/docs/reference/superpowers-integration-options.md +404 -0
  63. package/docs/reference/test-environment.md +519 -0
  64. package/docs/reference/upgrade-safety.md +59 -0
  65. package/lefthook.yml +18 -0
  66. package/lib/adapter-cli.js +307 -0
  67. package/lib/adapters/beads-issue-adapter.js +127 -0
  68. package/lib/adapters/beads-kernel-compat.js +1042 -0
  69. package/lib/adapters/greptile-review-adapter.js +141 -0
  70. package/lib/adapters/kernel-issue-adapter.js +101 -0
  71. package/lib/adapters/pr-state-adapter.js +484 -0
  72. package/lib/adoption-profiles.js +126 -0
  73. package/lib/agents/README.md +2 -6
  74. package/lib/agents/claude.plugin.json +3 -8
  75. package/lib/agents/codex.plugin.json +9 -1
  76. package/lib/agents/cursor.plugin.json +2 -6
  77. package/lib/agents/hermes.plugin.json +22 -0
  78. package/lib/agents-config.js +39 -1236
  79. package/lib/audit-evidence.js +282 -0
  80. package/lib/beads-setup.js +225 -28
  81. package/lib/beads-sync-scaffold.js +36 -107
  82. package/lib/codex-skills.js +51 -1
  83. package/lib/commands/_issue.js +744 -70
  84. package/lib/commands/_manifest.js +91 -0
  85. package/lib/commands/_registry.js +85 -34
  86. package/lib/commands/_resolve-command-opts.js +261 -0
  87. package/lib/commands/_serve-security.js +270 -0
  88. package/lib/commands/adapter.js +12 -0
  89. package/lib/commands/add.js +118 -0
  90. package/lib/commands/audit.js +70 -0
  91. package/lib/commands/blocked.js +5 -0
  92. package/lib/commands/board.js +64 -0
  93. package/lib/commands/claim.js +21 -2
  94. package/lib/commands/claims.js +7 -0
  95. package/lib/commands/clean.js +485 -75
  96. package/lib/commands/close.js +2 -2
  97. package/lib/commands/comment.js +5 -0
  98. package/lib/commands/control.js +148 -0
  99. package/lib/commands/create.js +2 -2
  100. package/lib/commands/dev.js +185 -7
  101. package/lib/commands/doc-gate.js +336 -0
  102. package/lib/commands/doctor.js +156 -0
  103. package/lib/commands/explain.js +15 -0
  104. package/lib/commands/export.js +237 -0
  105. package/lib/commands/gate.js +192 -0
  106. package/lib/commands/hooks.js +242 -0
  107. package/lib/commands/inbox.js +118 -0
  108. package/lib/commands/init.js +598 -0
  109. package/lib/commands/insights.js +79 -0
  110. package/lib/commands/issue.js +12 -1
  111. package/lib/commands/issues.js +66 -0
  112. package/lib/commands/lint.js +5 -0
  113. package/lib/commands/list.js +2 -2
  114. package/lib/commands/merge.js +312 -0
  115. package/lib/commands/migrate.js +523 -0
  116. package/lib/commands/new.js +12 -0
  117. package/lib/commands/options.js +241 -0
  118. package/lib/commands/orient.js +13 -0
  119. package/lib/commands/orphans.js +5 -0
  120. package/lib/commands/patch.js +67 -0
  121. package/lib/commands/plan.js +436 -24
  122. package/lib/commands/preflight.js +211 -0
  123. package/lib/commands/prime.js +13 -0
  124. package/lib/commands/push.js +69 -2
  125. package/lib/commands/ready.js +2 -2
  126. package/lib/commands/recall.js +116 -0
  127. package/lib/commands/recap.js +61 -0
  128. package/lib/commands/recommend.js +22 -2
  129. package/lib/commands/release.js +91 -0
  130. package/lib/commands/remember.js +74 -0
  131. package/lib/commands/role.js +99 -0
  132. package/lib/commands/serve.js +581 -0
  133. package/lib/commands/setup.js +851 -979
  134. package/lib/commands/shepherd.js +436 -0
  135. package/lib/commands/ship.js +23 -1
  136. package/lib/commands/show.js +2 -2
  137. package/lib/commands/stage.js +192 -0
  138. package/lib/commands/stale.js +5 -0
  139. package/lib/commands/status.js +329 -11
  140. package/lib/commands/sync.js +34 -46
  141. package/lib/commands/team.js +15 -2
  142. package/lib/commands/test.js +58 -7
  143. package/lib/commands/update.js +2 -2
  144. package/lib/commands/upgrade.js +47 -0
  145. package/lib/commands/validate.js +56 -25
  146. package/lib/commands/worktree.js +308 -128
  147. package/lib/config-writer.js +202 -0
  148. package/lib/control-plane.js +236 -0
  149. package/lib/core/runtime-graph.js +946 -0
  150. package/lib/dep-guard/keyword-ripple.js +184 -0
  151. package/lib/deprecated-sync-cleanup.js +362 -0
  152. package/lib/detect-agent.js +2 -28
  153. package/lib/detect-worktree.js +42 -17
  154. package/lib/doc-gate/declaration.js +177 -0
  155. package/lib/doc-gate/detect.js +289 -0
  156. package/lib/doc-gate/gate.js +375 -0
  157. package/lib/doc-gate/okf-config.js +128 -0
  158. package/lib/doc-gate/okf.js +429 -0
  159. package/lib/docs-command.js +1161 -6
  160. package/lib/forge-issues.js +697 -0
  161. package/lib/forge-lock.js +262 -0
  162. package/lib/gate-events.js +193 -0
  163. package/lib/global-flags.js +74 -0
  164. package/lib/greptile-match.js +7 -63
  165. package/lib/harness-capability-matrix.js +380 -0
  166. package/lib/hook-global-installer.js +347 -0
  167. package/lib/hook-renderer.js +451 -0
  168. package/lib/inbox.js +391 -0
  169. package/lib/insights.js +397 -0
  170. package/lib/issue-adapter.js +156 -0
  171. package/lib/issue-backend.js +145 -0
  172. package/lib/issue-render.js +220 -0
  173. package/lib/issue-sync/authority.js +100 -0
  174. package/lib/issue-sync/github-pull.js +184 -0
  175. package/lib/issue-sync/import-primitives.js +98 -0
  176. package/lib/issue-sync/legacy-link-bridge.js +436 -0
  177. package/lib/issue-sync/link-store.js +292 -0
  178. package/lib/issue-sync/project-github.js +123 -0
  179. package/lib/issue-sync/reconcile.js +195 -0
  180. package/lib/issue-sync/schema.js +126 -0
  181. package/lib/kernel/backing-issue.js +305 -0
  182. package/lib/kernel/broker.js +1218 -0
  183. package/lib/kernel/cli-broker-factory.js +130 -0
  184. package/lib/kernel/conflict-signal.js +82 -0
  185. package/lib/kernel/evaluators.js +195 -0
  186. package/lib/kernel/fs-class.js +495 -0
  187. package/lib/kernel/issue-command-contract.js +559 -0
  188. package/lib/kernel/issue-id-resolver.js +186 -0
  189. package/lib/kernel/lease-enforcer.js +158 -0
  190. package/lib/kernel/migrations.js +333 -0
  191. package/lib/kernel/planning-buckets-schema.js +109 -0
  192. package/lib/kernel/projection-jsonl-writer.js +450 -0
  193. package/lib/kernel/readiness-model.js +329 -0
  194. package/lib/kernel/schema.js +356 -0
  195. package/lib/kernel/sqlite-driver.js +2504 -0
  196. package/lib/kernel/taxonomy-validator.js +394 -0
  197. package/lib/lefthook-check.js +8 -4
  198. package/lib/lefthook-wiring.js +413 -0
  199. package/lib/mcp-config-renderer.js +288 -0
  200. package/lib/memory/graphiti-mcp.js +106 -0
  201. package/lib/memory/router.js +387 -0
  202. package/lib/memory/typed-api.js +102 -0
  203. package/lib/memory-digest.js +195 -0
  204. package/lib/merge-rules.js +395 -0
  205. package/lib/migrate-dry-run.js +466 -0
  206. package/lib/orientation.js +863 -0
  207. package/lib/package-manager-remediation.js +103 -0
  208. package/lib/package-root.js +381 -0
  209. package/lib/patch-intent.js +890 -0
  210. package/lib/plugin-catalog.js +3 -4
  211. package/lib/plugin-manager.js +0 -5
  212. package/lib/pr-bundle.js +186 -0
  213. package/lib/pr-monitor/differ.js +195 -0
  214. package/lib/pr-monitor/events.js +0 -0
  215. package/lib/pr-monitor/gather.js +124 -0
  216. package/lib/pr-monitor/journal.js +299 -0
  217. package/lib/pr-monitor/monitor.js +146 -0
  218. package/lib/pr-monitor/render-sticky.js +157 -0
  219. package/lib/pr-monitor/watch-lifecycle.js +95 -0
  220. package/lib/pr-monitor/watch.js +247 -0
  221. package/lib/pr-pull.js +1273 -0
  222. package/lib/pr-shepherd.js +494 -0
  223. package/lib/pr-state-validator.js +59 -0
  224. package/lib/preflight/gates.js +237 -0
  225. package/lib/preflight/runner.js +116 -0
  226. package/lib/project-discovery.js +0 -53
  227. package/lib/project-memory.js +166 -0
  228. package/lib/protected-path-manifest.js +281 -0
  229. package/lib/protected-state-surfaces.js +387 -0
  230. package/lib/release-readiness.js +2089 -0
  231. package/lib/reset.js +59 -45
  232. package/lib/review-adapter.js +68 -0
  233. package/lib/rules-sync.js +260 -0
  234. package/lib/runtime-health.js +332 -23
  235. package/lib/safety-config-renderer.js +268 -0
  236. package/lib/setup-action-log.js +1 -7
  237. package/lib/setup.js +27 -65
  238. package/lib/shell-utils.js +76 -6
  239. package/lib/skills-sync.js +330 -0
  240. package/lib/smart-status/conflicts.js +205 -0
  241. package/lib/smart-status/scoring.js +191 -0
  242. package/lib/status/beads-snapshot.js +145 -0
  243. package/lib/status/presenter.js +216 -0
  244. package/lib/status/snapshot.js +186 -0
  245. package/lib/sync-backend.js +202 -0
  246. package/lib/untrusted-content.js +52 -0
  247. package/lib/upgrade-safety.js +199 -0
  248. package/lib/workflow/enforce-stage.js +298 -47
  249. package/lib/workflow/stage-transition.js +115 -0
  250. package/lib/workflow/stages.js +30 -6
  251. package/lib/workflow/state-manager.js +159 -14
  252. package/lib/workflow/state.js +23 -1
  253. package/lib/workflow-profiles.js +17 -5
  254. package/package.json +46 -36
  255. package/rules/documentation.md +19 -0
  256. package/rules/kernel-tracking.md +26 -0
  257. package/rules/security.md +22 -0
  258. package/rules/tdd.md +20 -0
  259. package/rules/workflow.md +27 -0
  260. package/scripts/auto-backing-issue.js +47 -0
  261. package/scripts/beads-context.sh +165 -22
  262. package/scripts/beads-migrate-to-dolt.sh +7 -0
  263. package/scripts/beads-upgrade-smoke.sh +284 -0
  264. package/scripts/behavioral-judge.sh +115 -11
  265. package/scripts/benchmark.js +349 -63
  266. package/scripts/bootstrap-windows-tools.sh +78 -0
  267. package/scripts/branch-protection.js +2 -3
  268. package/scripts/check-agents.js +34 -137
  269. package/scripts/commitlint.js +3 -1
  270. package/scripts/conflict-detect.sh +3 -0
  271. package/scripts/dep-guard-analyze.js +52 -17
  272. package/scripts/dep-guard-keyword-ripple.js +29 -0
  273. package/scripts/dep-guard-render-review.js +86 -0
  274. package/scripts/dep-guard.sh +64 -232
  275. package/scripts/file-index.sh +3 -0
  276. package/scripts/forge-team/lib/claim.sh +34 -18
  277. package/scripts/forge-team/lib/dashboard.sh +61 -86
  278. package/scripts/forge-team/lib/epic.sh +99 -263
  279. package/scripts/forge-team/lib/hooks.sh +26 -28
  280. package/scripts/forge-team/lib/identity.sh +4 -4
  281. package/scripts/forge-team/lib/sync-github.sh +144 -47
  282. package/scripts/forge-team/lib/verify.sh +93 -83
  283. package/scripts/forge-team/lib/workload.sh +41 -65
  284. package/scripts/forge-team/tests/claim.test.sh +25 -19
  285. package/scripts/forge-team/tests/dashboard.test.sh +31 -46
  286. package/scripts/forge-team/tests/epic.test.sh +52 -71
  287. package/scripts/forge-team/tests/hooks.test.sh +38 -50
  288. package/scripts/forge-team/tests/identity.test.sh +3 -3
  289. package/scripts/forge-team/tests/integration.test.sh +44 -66
  290. package/scripts/forge-team/tests/sync-github.test.sh +183 -79
  291. package/scripts/forge-team/tests/verify.test.sh +37 -46
  292. package/scripts/forge-team/tests/workflow-integration.test.sh +4 -4
  293. package/scripts/forge-team/tests/workload.test.sh +32 -66
  294. package/scripts/gen-command-manifest.js +153 -0
  295. package/scripts/gen-embedded-assets.mjs +129 -0
  296. package/scripts/install.ps1 +139 -0
  297. package/scripts/install.sh +268 -0
  298. package/scripts/lib/beads-migrate-to-dolt.mjs +503 -0
  299. package/scripts/lib/release-asset.mjs +84 -0
  300. package/scripts/parity-check.mjs +145 -0
  301. package/scripts/parity-check.test.mjs +58 -0
  302. package/scripts/pin-agentic-workflow-images.js +112 -0
  303. package/scripts/pr-coordinator.sh +3 -0
  304. package/scripts/preflight-sonar.eslint.config.mjs +44 -0
  305. package/scripts/preflight.sh +108 -0
  306. package/scripts/protected-state-check.js +104 -0
  307. package/scripts/smart-status-score.js +31 -0
  308. package/scripts/smart-status-sessions.js +51 -0
  309. package/scripts/smart-status.sh +117 -369
  310. package/scripts/spikes/config-race-bench.js +111 -0
  311. package/scripts/spikes/harness-capability-matrix.js +13 -0
  312. package/scripts/spikes/patch-anchor-stability-bench.js +125 -0
  313. package/scripts/spikes/protected-path-manifest.js +20 -0
  314. package/scripts/spikes/skill-auto-invoke-parity.js +292 -0
  315. package/scripts/sync-agent-skills.js +62 -0
  316. package/scripts/sync-agentic-workflow.js +48 -0
  317. package/scripts/sync-utils.sh +3 -0
  318. package/scripts/test-ci-shard.js +251 -0
  319. package/scripts/test-dashboard.js +188 -52
  320. package/scripts/test-full-suite.js +186 -0
  321. package/scripts/test-profile.js +278 -0
  322. package/scripts/test.js +302 -28
  323. package/scripts/validate.js +143 -0
  324. package/scripts/validate.sh +18 -1
  325. package/skills/claim-safety/SKILL.md +102 -0
  326. package/skills/claim-safety/evals/evals.json +46 -0
  327. package/{.github/prompts/dev.prompt.md → skills/dev/SKILL.md} +46 -52
  328. package/skills/dev/evals/evals.json +50 -0
  329. package/skills/hermes-forge/SKILL.md +185 -0
  330. package/skills/hermes-forge/evals/evals.json +46 -0
  331. package/skills/issue-basics/SKILL.md +111 -0
  332. package/skills/issue-basics/evals/evals.json +46 -0
  333. package/skills/kernel/SKILL.md +166 -0
  334. package/skills/kernel/evals/evals.json +50 -0
  335. package/skills/memory/SKILL.md +102 -0
  336. package/skills/parallel-deep-research/SKILL.md +14 -11
  337. package/skills/parallel-deep-research/evals/evals.json +11 -27
  338. package/{.github/prompts/plan.prompt.md → skills/plan/SKILL.md} +134 -159
  339. package/skills/plan/evals/evals.json +42 -0
  340. package/skills/research/SKILL.md +195 -0
  341. package/skills/research/evals/evals.json +42 -0
  342. package/{.github/prompts/review.prompt.md → skills/review/SKILL.md} +98 -62
  343. package/skills/review/evals/evals.json +42 -0
  344. package/skills/rollback/SKILL.md +110 -0
  345. package/skills/rollback/evals/evals.json +46 -0
  346. package/skills/rollback/references/methods.md +204 -0
  347. package/{.cursor/commands/rollback.md → skills/rollback/references/workflow-integration.md} +10 -284
  348. package/skills/shepherd/SKILL.md +66 -0
  349. package/skills/shepherd/evals/evals.json +42 -0
  350. package/skills/ship/SKILL.md +251 -0
  351. package/skills/ship/evals/evals.json +42 -0
  352. package/skills/smith/SKILL.md +142 -0
  353. package/skills/smith/evals/evals.json +46 -0
  354. package/skills/smith/references/autonomy-and-gates.md +94 -0
  355. package/{.github/prompts/sonarcloud.prompt.md → skills/sonarcloud/SKILL.md} +14 -3
  356. package/skills/sonarcloud/evals/evals.json +46 -0
  357. package/skills/sonarcloud-analysis/SKILL.md +18 -13
  358. package/skills/sonarcloud-analysis/evals/evals.json +11 -15
  359. package/skills/status/SKILL.md +102 -0
  360. package/skills/status/evals/evals.json +50 -0
  361. package/skills/triage-ready/SKILL.md +121 -0
  362. package/skills/triage-ready/evals/evals.json +42 -0
  363. package/{.github/prompts/validate.prompt.md → skills/validate/SKILL.md} +52 -29
  364. package/skills/validate/evals/evals.json +42 -0
  365. package/skills/verify/SKILL.md +299 -0
  366. package/skills/verify/evals/evals.json +50 -0
  367. package/.claude/commands/dev.md +0 -345
  368. package/.claude/commands/plan.md +0 -566
  369. package/.claude/commands/premerge.md +0 -186
  370. package/.claude/commands/research.md +0 -42
  371. package/.claude/commands/review.md +0 -451
  372. package/.claude/commands/rollback.md +0 -721
  373. package/.claude/commands/ship.md +0 -213
  374. package/.claude/commands/sonarcloud.md +0 -152
  375. package/.claude/commands/status.md +0 -90
  376. package/.claude/commands/validate.md +0 -288
  377. package/.claude/commands/verify.md +0 -269
  378. package/.claude/rules/workflow.md +0 -121
  379. package/.cline/workflows/dev.md +0 -342
  380. package/.cline/workflows/plan.md +0 -563
  381. package/.cline/workflows/premerge.md +0 -183
  382. package/.cline/workflows/research.md +0 -39
  383. package/.cline/workflows/review.md +0 -448
  384. package/.cline/workflows/rollback.md +0 -718
  385. package/.cline/workflows/ship.md +0 -210
  386. package/.cline/workflows/sonarcloud.md +0 -146
  387. package/.cline/workflows/status.md +0 -87
  388. package/.cline/workflows/validate.md +0 -285
  389. package/.cline/workflows/verify.md +0 -266
  390. package/.codex/config.toml +0 -11
  391. package/.codex/skills/dev/SKILL.md +0 -345
  392. package/.codex/skills/plan/SKILL.md +0 -566
  393. package/.codex/skills/premerge/SKILL.md +0 -186
  394. package/.codex/skills/research/SKILL.md +0 -42
  395. package/.codex/skills/review/SKILL.md +0 -451
  396. package/.codex/skills/rollback/SKILL.md +0 -721
  397. package/.codex/skills/ship/SKILL.md +0 -213
  398. package/.codex/skills/sonarcloud/SKILL.md +0 -149
  399. package/.codex/skills/status/SKILL.md +0 -90
  400. package/.codex/skills/validate/SKILL.md +0 -288
  401. package/.codex/skills/verify/SKILL.md +0 -269
  402. package/.cursor/commands/dev.md +0 -342
  403. package/.cursor/commands/plan.md +0 -563
  404. package/.cursor/commands/premerge.md +0 -183
  405. package/.cursor/commands/research.md +0 -39
  406. package/.cursor/commands/review.md +0 -448
  407. package/.cursor/commands/ship.md +0 -210
  408. package/.cursor/commands/sonarcloud.md +0 -146
  409. package/.cursor/commands/status.md +0 -87
  410. package/.cursor/commands/validate.md +0 -285
  411. package/.cursor/commands/verify.md +0 -266
  412. package/.cursorrules +0 -149
  413. package/.github/prompts/premerge.prompt.md +0 -188
  414. package/.github/prompts/research.prompt.md +0 -44
  415. package/.github/prompts/rollback.prompt.md +0 -723
  416. package/.github/prompts/ship.prompt.md +0 -215
  417. package/.github/prompts/status.prompt.md +0 -92
  418. package/.github/prompts/verify.prompt.md +0 -271
  419. package/.github/workflows/beads-to-github.yml +0 -56
  420. package/.github/workflows/github-to-beads.yml +0 -97
  421. package/.kilocode/workflows/dev.md +0 -346
  422. package/.kilocode/workflows/plan.md +0 -567
  423. package/.kilocode/workflows/premerge.md +0 -187
  424. package/.kilocode/workflows/research.md +0 -43
  425. package/.kilocode/workflows/review.md +0 -452
  426. package/.kilocode/workflows/rollback.md +0 -722
  427. package/.kilocode/workflows/ship.md +0 -214
  428. package/.kilocode/workflows/sonarcloud.md +0 -150
  429. package/.kilocode/workflows/status.md +0 -91
  430. package/.kilocode/workflows/validate.md +0 -289
  431. package/.kilocode/workflows/verify.md +0 -270
  432. package/.opencode/commands/dev.md +0 -345
  433. package/.opencode/commands/plan.md +0 -566
  434. package/.opencode/commands/premerge.md +0 -186
  435. package/.opencode/commands/research.md +0 -42
  436. package/.opencode/commands/review.md +0 -451
  437. package/.opencode/commands/rollback.md +0 -721
  438. package/.opencode/commands/ship.md +0 -213
  439. package/.opencode/commands/sonarcloud.md +0 -149
  440. package/.opencode/commands/status.md +0 -90
  441. package/.opencode/commands/validate.md +0 -288
  442. package/.opencode/commands/verify.md +0 -269
  443. package/.roo/commands/dev.md +0 -346
  444. package/.roo/commands/plan.md +0 -567
  445. package/.roo/commands/premerge.md +0 -187
  446. package/.roo/commands/research.md +0 -43
  447. package/.roo/commands/review.md +0 -452
  448. package/.roo/commands/rollback.md +0 -722
  449. package/.roo/commands/ship.md +0 -214
  450. package/.roo/commands/sonarcloud.md +0 -150
  451. package/.roo/commands/status.md +0 -91
  452. package/.roo/commands/validate.md +0 -289
  453. package/.roo/commands/verify.md +0 -270
  454. package/docs/BEADS_GITHUB_SYNC.md +0 -255
  455. package/docs/GREPTILE_SETUP.md +0 -400
  456. package/docs/MANUAL_REVIEW_GUIDE.md +0 -106
  457. package/docs/SETUP.md +0 -663
  458. package/docs/VALIDATION.md +0 -363
  459. package/lib/agents/cline.plugin.json +0 -29
  460. package/lib/agents/copilot.plugin.json +0 -24
  461. package/lib/agents/kilocode.plugin.json +0 -22
  462. package/lib/agents/opencode.plugin.json +0 -23
  463. package/lib/agents/roo.plugin.json +0 -30
  464. package/lib/beads-health-check.js +0 -143
  465. package/lib/commands/commands-reset.js +0 -147
  466. package/opencode.json +0 -67
  467. package/scripts/beads-context.test.js +0 -567
  468. package/scripts/github-beads-sync/comment.mjs +0 -64
  469. package/scripts/github-beads-sync/config.mjs +0 -148
  470. package/scripts/github-beads-sync/github-api.mjs +0 -131
  471. package/scripts/github-beads-sync/index.mjs +0 -332
  472. package/scripts/github-beads-sync/label-mapper.mjs +0 -54
  473. package/scripts/github-beads-sync/mapping.mjs +0 -78
  474. package/scripts/github-beads-sync/reverse-sync-cli.mjs +0 -31
  475. package/scripts/github-beads-sync/reverse-sync.mjs +0 -138
  476. package/scripts/github-beads-sync/run-bd.mjs +0 -161
  477. package/scripts/github-beads-sync/sanitize.mjs +0 -121
  478. package/scripts/github-beads-sync.config.json +0 -26
  479. package/scripts/sync-commands.js +0 -600
@@ -0,0 +1,68 @@
1
+ # Release Reference
2
+
3
+ This page documents release readiness. Package publishing still requires the explicit publish step after merge.
4
+
5
+ ## v0.0.11 Boundary
6
+
7
+ v0.0.11 is the public documentation and positioning package release. The release branch bumps package metadata to `0.0.11`; publish only after the release PR is merged, tagged, and validated.
8
+
9
+ Keep these release steps explicit:
10
+
11
+ - Release PR with documentation and package metadata
12
+ - GitHub Release
13
+ - npm publish
14
+ - DeepWiki refresh
15
+
16
+ ## Pre-Release Validation
17
+
18
+ Run from a clean release branch or worktree:
19
+
20
+ ```bash
21
+ git status --short --branch
22
+ bun run check
23
+ npm pack --dry-run
24
+ ```
25
+
26
+ For docs-heavy changes, also run a Markdown link check if available. If no docs checker exists and adding one would broaden the PR, create a follow-up issue instead.
27
+
28
+ ## Packaging Check
29
+
30
+ `npm pack --dry-run` should show the package contents without publishing. Confirm new canonical docs that should ship are included and generated junk is not.
31
+
32
+ ## Release Notes
33
+
34
+ Release notes should include:
35
+
36
+ - user value
37
+ - migration notes
38
+ - feature flags or experimental areas
39
+ - known limitations
40
+ - rollback path
41
+ - adapter compatibility
42
+ - DeepWiki refresh checklist
43
+
44
+ The v0.0.11 release notes live in [CHANGELOG.md](../../CHANGELOG.md).
45
+
46
+ ## Rollback
47
+
48
+ For a release PR:
49
+
50
+ 1. Revert the PR if the combined package metadata and public docs create release confusion.
51
+ 2. Do not publish until README, CHANGELOG, quickstart, package metadata, and support docs agree.
52
+ 3. If DeepWiki generated output is wrong, fix repository docs first, then refresh DeepWiki.
53
+
54
+ ## Post-Merge DeepWiki Checklist
55
+
56
+ After merge to `master`:
57
+
58
+ 1. Refresh DeepWiki for `harshanandak/forge`.
59
+ 2. Confirm the generated index date and commit changed to the merged commit.
60
+ 3. Compare generated Overview, Getting Started, and Core Concepts against:
61
+ - [README](../../README.md)
62
+ - [Quickstart](../../QUICKSTART.md)
63
+ - [Docs index](../INDEX.md)
64
+ - [Workflow templates](../guides/WORKFLOW_TEMPLATES.md)
65
+ - [Skills and command projections](SKILLS.md)
66
+ - [Command reference](COMMANDS.md)
67
+ 4. File a follow-up issue if generated docs still reflect old seven-stage-only framing.
68
+ 5. Record evidence in a PR comment or follow-up issue: DeepWiki index date, indexed commit, pages checked, pass/fail result, and any repository-doc corrections needed.
@@ -0,0 +1,292 @@
1
+ # Research: [Feature Name]
2
+
3
+ **Date**: YYYY-MM-DD
4
+ **Researcher**: Claude AI
5
+
6
+ ## Objective
7
+ [What we're trying to achieve - clear problem statement and goals]
8
+
9
+ ## Codebase Analysis
10
+
11
+ ### Existing Patterns
12
+ - **File**: `path/to/file.ts`
13
+ - **Pattern**: [Description of existing implementation]
14
+ - **Reusability**: [Yes/No + reasoning]
15
+ - **Lessons learned**: [What worked, what didn't]
16
+
17
+ ### Affected Modules
18
+ - **Module**: [name]
19
+ - **Changes needed**: [Description]
20
+ - **Impact**: [Low/Medium/High]
21
+ - **Dependencies**: [List any dependencies]
22
+
23
+ ### Test Infrastructure
24
+ - **Existing tests**: `path/to/tests/`
25
+ - **Test utilities**: [Available testing tools/helpers]
26
+ - **Coverage**: [Current state - percentage, gaps]
27
+ - **Test patterns**: [What patterns are used - unit, integration, E2E]
28
+
29
+ ## Web Research
30
+
31
+ ### Best Practices (parallel-web-search)
32
+ 1. **Source**: [URL]
33
+ - **Key insight**: [Summary of best practice]
34
+ - **Applicability**: [How it applies to our project]
35
+ - **Decision impact**: [What decision this influences]
36
+ - **Implementation notes**: [How to apply]
37
+
38
+ 2. **Source**: [URL]
39
+ - [...]
40
+
41
+ ### Known Issues (parallel-web-search)
42
+ 1. **Issue**: [Description]
43
+ - **Source**: [GitHub/SO/Blog URL]
44
+ - **Mitigation**: [How to avoid]
45
+ - **Decision impact**: [Changes to approach]
46
+ - **Frequency**: [How common is this issue]
47
+
48
+ 2. **Issue**: [...]
49
+
50
+ ### Library Documentation (Context7)
51
+ 1. **Library**: [name and version]
52
+ - **API**: [Relevant methods/patterns]
53
+ - **Compatibility**: [Version requirements, breaking changes]
54
+ - **Decision impact**: [Implementation details]
55
+ - **Example usage**: [Code snippet]
56
+
57
+ 2. **Library**: [...]
58
+
59
+ ### Case Studies
60
+ 1. **Source**: [URL]
61
+ - **Company/Project**: [Who implemented this]
62
+ - **Scale**: [Production scale, users, data volume]
63
+ - **Lessons**: [What they learned]
64
+ - **Applicability**: [How it relates to our use case]
65
+
66
+ 2. **Source**: [...]
67
+
68
+ ## Key Decisions & Reasoning
69
+
70
+ ### Decision 1: [Decision Title]
71
+ - **Decision**: [What we decided]
72
+ - **Reasoning**: [Why we chose this approach]
73
+ - **Evidence**: [Research that supports this - links to sources]
74
+ - **Alternatives considered**:
75
+ 1. [Alternative 1]: [Why rejected]
76
+ 2. [Alternative 2]: [Why rejected]
77
+ - **Trade-offs**: [What we're giving up, what we're gaining]
78
+ - **Risk**: [Low/Medium/High] - [Risk description]
79
+
80
+ ### Decision 2: [Decision Title]
81
+ - [...]
82
+
83
+ ## TDD Test Scenarios (Identified Upfront)
84
+
85
+ ### Unit Tests
86
+ 1. **Test**: [Scenario description]
87
+ - **File**: `test/path/test.ts`
88
+ - **Function under test**: `functionName()`
89
+ - **Assertions**: [What to verify]
90
+ - **Test data**: [Required test data/mocks]
91
+ - **Edge cases**: [List edge cases to cover]
92
+
93
+ 2. **Test**: [...]
94
+
95
+ ### Integration Tests
96
+ 1. **Test**: [Scenario description]
97
+ - **File**: `test/integration/test.ts`
98
+ - **Components**: [What components are being tested together]
99
+ - **Assertions**: [What to verify]
100
+ - **Test data**: [Database fixtures, API mocks]
101
+
102
+ 2. **Test**: [...]
103
+
104
+ ### E2E Tests
105
+ 1. **Test**: [User flow scenario]
106
+ - **File**: `test/e2e/test.ts`
107
+ - **User flow**: [Step-by-step user actions]
108
+ - **Assertions**: [What user should see/experience]
109
+ - **Test data**: [Complete test environment setup]
110
+
111
+ 2. **Test**: [...]
112
+
113
+ ## Security Analysis (OWASP Top 10 + Feature-Specific)
114
+
115
+ ### OWASP Top 10 Applicability
116
+
117
+ #### A01: Broken Access Control
118
+ - **Risk**: [High/Medium/Low]
119
+ - **Applicable**: [Yes/No]
120
+ - **Mitigation**: [How addressed - RLS policies, permission checks]
121
+ - **Tests**: [Security test scenarios]
122
+ - **Evidence**: [Links to security research]
123
+
124
+ #### A02: Cryptographic Failures
125
+ - **Risk**: [High/Medium/Low]
126
+ - **Applicable**: [Yes/No]
127
+ - **Mitigation**: [Encryption at rest/transit, key management]
128
+ - **Tests**: [Encryption tests]
129
+ - **Compliance**: [Data protection requirements]
130
+
131
+ #### A03: Injection
132
+ - **Risk**: [High/Medium/Low]
133
+ - **Applicable**: [Yes/No]
134
+ - **Mitigation**: [Parameterized queries, input validation, sanitization]
135
+ - **Tests**: [SQL injection tests, XSS tests, command injection tests]
136
+ - **Libraries**: [What libraries help prevent injection]
137
+
138
+ #### A04: Insecure Design
139
+ - **Risk**: [High/Medium/Low]
140
+ - **Threat model**: [Key threats identified]
141
+ - **Secure design patterns**: [Patterns used - zero trust, defense in depth]
142
+ - **Architecture review**: [Security considerations in design]
143
+ - **Tests**: [Security design validation]
144
+
145
+ #### A05: Security Misconfiguration
146
+ - **Risk**: [High/Medium/Low]
147
+ - **Configuration reviewed**: [Yes/No]
148
+ - **Security headers**: [CSP, HSTS, X-Frame-Options, etc.]
149
+ - **Error handling**: [No sensitive info in errors]
150
+ - **Default accounts**: [No default/test credentials]
151
+ - **Tests**: [Configuration security tests]
152
+
153
+ #### A06: Vulnerable Components
154
+ - **Risk**: [High/Medium/Low]
155
+ - **Dependencies scanned**: [Yes/No - tool used]
156
+ - **Known CVEs**: [Count and severity from scan]
157
+ - **Update plan**: [If vulnerabilities found]
158
+ - **Monitoring**: [Dependabot, Snyk, etc.]
159
+ - **Tests**: [Dependency security checks]
160
+
161
+ #### A07: Identification and Authentication Failures
162
+ - **Risk**: [High/Medium/Low]
163
+ - **Auth mechanism**: [OAuth2/JWT/Session/etc.]
164
+ - **Session management**: [Secure/reviewed - timeout, rotation]
165
+ - **Password policy**: [Requirements if applicable]
166
+ - **MFA**: [Required/Optional/Not applicable]
167
+ - **Brute force protection**: [Rate limiting, account lockout]
168
+ - **Tests**: [Authentication tests, session tests]
169
+
170
+ #### A08: Software and Data Integrity Failures
171
+ - **Risk**: [High/Medium/Low]
172
+ - **Integrity checks**: [Where implemented - signatures, checksums]
173
+ - **Code signing**: [Yes/No]
174
+ - **CI/CD security**: [Pipeline reviewed, secrets management]
175
+ - **Supply chain**: [Trusted sources, verification]
176
+ - **Tests**: [Integrity validation tests]
177
+
178
+ #### A09: Security Logging and Monitoring Failures
179
+ - **Risk**: [High/Medium/Low]
180
+ - **Security events logged**: [List what's tracked]
181
+ - **Audit trail**: [What's tracked for compliance]
182
+ - **No sensitive data**: [Verified - no passwords/tokens in logs]
183
+ - **Alerting**: [Security alerts configured]
184
+ - **Log retention**: [Duration and compliance]
185
+ - **Tests**: [Logging tests, no sensitive data tests]
186
+
187
+ #### A10: Server-Side Request Forgery (SSRF)
188
+ - **Risk**: [High/Medium/Low]
189
+ - **External requests**: [Where made in code]
190
+ - **URL validation**: [Whitelist/validation rules]
191
+ - **Network restrictions**: [Firewall rules, VPC]
192
+ - **Input sanitization**: [User-controlled URLs]
193
+ - **Tests**: [SSRF prevention tests]
194
+
195
+ ### Feature-Specific Security Risks
196
+
197
+ 1. **Risk**: [Specific risk for this feature]
198
+ - **Likelihood**: High/Medium/Low
199
+ - **Impact**: High/Medium/Low
200
+ - **Attack vector**: [How this could be exploited]
201
+ - **Mitigation**: [Specific solution]
202
+ - **Evidence**: [Research source showing this risk]
203
+ - **Tests**: [Security test scenarios]
204
+ - **Monitoring**: [How to detect attacks]
205
+
206
+ 2. **Risk**: [Next risk]
207
+ - [...]
208
+
209
+ ### Security Test Scenarios (TDD)
210
+
211
+ 1. **Test**: Unauthorized access attempt should fail
212
+ - **File**: `test/security/access-control.test.ts`
213
+ - **Scenario**: User tries to access another team's data
214
+ - **Expected**: 403 Forbidden, no data leak
215
+
216
+ 2. **Test**: SQL injection attempt should be blocked
217
+ - **File**: `test/security/injection.test.ts`
218
+ - **Scenario**: Malicious input in query parameter
219
+ - **Expected**: Input sanitized, no SQL execution, error logged
220
+
221
+ 3. **Test**: XSS attempt should be sanitized
222
+ - **File**: `test/security/xss.test.ts`
223
+ - **Scenario**: Script tag in user input
224
+ - **Expected**: HTML escaped, no script execution
225
+
226
+ 4. **Test**: [Additional security tests]
227
+ - [...]
228
+
229
+ ## Scope Assessment
230
+
231
+ - **Type**: Tactical / Strategic
232
+ - **Rationale**: [Why this classification]
233
+ - **OpenSpec needed**: Yes / No
234
+
235
+ - **Complexity**: Low / Medium / High
236
+ - **Rationale**: [Number of files, systems involved, dependencies]
237
+ - **Estimated effort**: [Without time, describe scope]
238
+
239
+ - **Parallel opportunity**: Yes / No
240
+ - **Rationale**: [Independent tracks available?]
241
+ - **Tracks**: [If yes, list potential parallel tracks]
242
+
243
+ - **Estimated files**: [Count]
244
+ - **New files**: [List]
245
+ - **Modified files**: [List]
246
+
247
+ - **Dependencies**:
248
+ - **Internal**: [Other features/modules]
249
+ - **External**: [Third-party libraries]
250
+ - **Blockers**: [Any blocking dependencies]
251
+
252
+ - **Security risk level**: Low / Medium / High / Critical
253
+ - **Rationale**: [Based on OWASP analysis]
254
+ - **Mitigation priority**: [When to address]
255
+
256
+ ## Next Steps
257
+
258
+ 1. **If Strategic**: Create OpenSpec proposal
259
+ - `openspec proposal create <feature-slug>`
260
+ - Write proposal.md, tasks.md, plan.md
261
+ - Reference this research doc for evidence
262
+
263
+ 2. **Create Beads issue**:
264
+ - `bd create "<feature-name>"`
265
+ - Link to this research doc
266
+ - Link to OpenSpec if strategic
267
+
268
+ 3. **Create branch**:
269
+ - `git checkout -b feat/<feature-slug>`
270
+
271
+ 4. **Proceed to /plan**:
272
+ - Read this research doc
273
+ - Create formal implementation plan
274
+ - Wait for OpenSpec approval if strategic
275
+
276
+ ## Research Checklist
277
+
278
+ - [ ] Codebase exploration complete
279
+ - [ ] parallel-web-search web research complete (multiple sources)
280
+ - [ ] Context7 library documentation reviewed
281
+ - [ ] Case studies analyzed
282
+ - [ ] All key decisions documented with evidence
283
+ - [ ] TDD test scenarios identified upfront
284
+ - [ ] OWASP Top 10 analysis complete
285
+ - [ ] Feature-specific security risks identified
286
+ - [ ] Security test scenarios defined
287
+ - [ ] Scope assessment complete
288
+ - [ ] Next steps clear
289
+
290
+ ---
291
+
292
+ **Note**: This research document serves as the single source of truth for all architectural and implementation decisions. Reference it throughout the development lifecycle (in OpenSpec proposals, PR descriptions, code reviews, and documentation).
@@ -1,6 +1,9 @@
1
1
  # Forge Enhancement Roadmap
2
2
 
3
- **Comprehensive implementation plan for transforming Forge into a fully automated, orchestrated workflow system.**
3
+ > Historical design artifact. Do not use this page for current package release planning, command availability, or public positioning. Current public release guidance lives in [Release Reference](RELEASE.md), [CHANGELOG](../../CHANGELOG.md), [Workflow templates](../guides/WORKFLOW_TEMPLATES.md), and [Skills and command projections](SKILLS.md).
4
+ > Historical snapshot: this roadmap is preserved for context only. Current public release guidance lives in [Release Reference](RELEASE.md), [CHANGELOG](../../CHANGELOG.md), and the runtime building-block work under `docs/work/2026-04-28-skeleton-pivot/`. References to `v3`, `/research`, or old PR sequences are historical/internal labels, not current package release instructions.
5
+
6
+ **Historical implementation plan for an earlier automation-heavy Forge direction.**
4
7
 
5
8
  **Plan Created**: 2026-02-10
6
9
  **Status**: Phase 2 complete. PRs 0-6 merged, PR7-PR8 pending.
@@ -22,7 +25,7 @@
22
25
 
23
26
  ## Overview
24
27
 
25
- Transform Forge from a documentation-driven workflow into a fully automated, orchestrated workflow system with:
28
+ Historical goal from this snapshot:
26
29
 
27
30
  - ✅ **Enhanced Multi-Agent Support**: Universal AGENTS.md + 8 supported agents (Claude Code, Cursor, Cline, OpenCode, Copilot, Kilo Code, Roo Code, Codex)
28
31
  - ✅ **Comprehensive Testing**: 80%+ code coverage, E2E tests, mutation testing
@@ -175,7 +178,7 @@ PR0 (Simplification) → PR1 (Fixes) → PR2 (Security) → PR3 (Test Infra)
175
178
 
176
179
  ### **PR5: Advanced Testing Expansion** 🔬
177
180
  **Beads Issue**: `forge-01p`
178
- **Research**: [docs/research/advanced-testing.md](docs/research/advanced-testing.md) (PR #36)
181
+ **Research**: historical `docs/research/advanced-testing.md` (PR #36)
179
182
  **Status**: Research complete, ready for `/plan`
180
183
  **Timeline**: 2-3 days
181
184
  **Impact**: Medium
@@ -204,7 +207,7 @@ PR0 (Simplification) → PR1 (Fixes) → PR2 (Security) → PR3 (Test Infra)
204
207
 
205
208
  ### **PR6: Plugin Architecture & Smart Recommendations** 🔌
206
209
  **Beads Issue**: `forge-a7n`
207
- **Research**: [docs/research/plugin-architecture.md](docs/research/plugin-architecture.md) (PR #37)
210
+ **Research**: historical `docs/research/plugin-architecture.md` (PR #37)
208
211
  **Status**: Research complete, ready for `/plan`
209
212
  **Timeline**: 4-5 days
210
213
  **Impact**: High (flagship feature)
@@ -310,7 +313,7 @@ Each PR follows the Forge workflow:
310
313
 
311
314
  - **Master Plan**: `docs/plans/*.md` (global, tracked by Claude Code)
312
315
  - **Roadmap**: `docs/ROADMAP.md` (repository, git-tracked)
313
- - **Beads Tracking**: `.beads/issues.jsonl` (git-tracked)
316
+ - **Beads Tracking**: `.beads/` local runtime state; shared tracking must use sync/server authority or explicit projection/import artifacts.
314
317
 
315
318
  ---
316
319
 
@@ -336,8 +339,8 @@ Each PR is self-contained and can be rolled back independently:
336
339
  1. ✅ **PR4 Completed** — CLI command automation merged (PR #33)
337
340
 
338
341
  2. ✅ **Research complete** for PR5 and PR6:
339
- - PR5 research: [docs/research/advanced-testing.md](docs/research/advanced-testing.md) (PR #36)
340
- - PR6 research: [docs/research/plugin-architecture.md](docs/research/plugin-architecture.md) (PR #37)
342
+ - PR5 research: historical `docs/research/advanced-testing.md` (PR #36)
343
+ - PR6 research: historical `docs/research/plugin-architecture.md` (PR #37)
341
344
  - PR6 scope expanded: smart plugin recommendations, CLI-first, pricing transparency
342
345
  - forge-mlm absorbed into PR5.5 + PR6 + PR8
343
346
 
@@ -349,8 +352,8 @@ Each PR is self-contained and can be rolled back independently:
349
352
 
350
353
  - **Master Plan**: `docs/plans/*.md`
351
354
  - **Beads Issues**: `forge list` or `forge show <issue-id>`
352
- - **Workflow Guide**: [AGENTS.md](../AGENTS.md)
353
- - **Architecture Docs**: Coming in PR0 - [ARCHITECTURE.md](./ARCHITECTURE.md)
355
+ - **Workflow Guide**: [AGENTS.md](../../AGENTS.md)
356
+ - **Architecture Docs**: historical PR0 placeholder, superseded by [Docs Index](../INDEX.md)
354
357
 
355
358
  ---
356
359
 
@@ -0,0 +1,35 @@
1
+ # Skills And Command Projections
2
+
3
+ Forge uses both skills and command files today. They are related, but they are not the same surface.
4
+
5
+ ## Current v0.0.11 Reality
6
+
7
+ - Codex stage workflows are packaged as `.codex/skills/<stage>/SKILL.md`.
8
+ - Claude Code and Cursor receive command projections. Forge currently supports Claude Code, Codex, and Cursor; Hermes support is planned.
9
+ - `scripts/check-agents.js` currently treats Codex as the exception where command capability is satisfied through `.codex/skills/`.
10
+ - `test/agent-gaps.test.js` still asserts `.claude/commands/` as the current canonical sync source for command projection checks.
11
+
12
+ That means `docs/reference/COMMANDS.md` should remain the CLI command reference. It should not be renamed into a skills reference until the source, sync script, tests, and package contents move together.
13
+
14
+ ## Product Direction
15
+
16
+ The intended direction is skills-first agent packaging:
17
+
18
+ - Stage behavior becomes portable `SKILL.md` packages.
19
+ - Command files become harness-specific projections or compatibility aliases.
20
+ - `skills sync` and Forge setup project the same stage behavior into each supported harness.
21
+ - Extension manifests can contribute stages, substages, evaluator regions, adapters, hooks, and evidence collectors.
22
+
23
+ This direction is documented as roadmap material until the implementation and tests make it current behavior.
24
+
25
+ ## Documentation Rule
26
+
27
+ Use these names consistently:
28
+
29
+ - Command reference: current `forge` CLI commands and package binaries.
30
+ - Workflow templates: default stage paths and customization rules.
31
+ - Skills: agent-facing stage packages and future portable extension units.
32
+ - Harness projections: generated command, prompt, workflow, or skill files for a specific agent.
33
+
34
+ Do not claim that commands have fully moved to skills until source, tests, generated files, and package contents prove that migration.
35
+
@@ -0,0 +1,80 @@
1
+ # Status And Board
2
+
3
+ `forge status` is a local personal focus surface. With no arguments it reads git context plus local Beads runtime files and shows active assigned work, ready work, blocked work, stale work, recent completions, and workflow state when available.
4
+
5
+ `forge board` is a local team runtime board. It consumes the same snapshot as `forge status` and groups all local issues into active, ready, blocked, stale, and recent completion columns.
6
+
7
+ ## JSON Mode
8
+
9
+ Both commands support `--json`.
10
+
11
+ ```bash
12
+ forge status --json
13
+ forge board --json
14
+ ```
15
+
16
+ The JSON shape mirrors each command's human sections:
17
+
18
+ - `forge status --json` returns `context`, `personal`, `workflow` when detected, and `limits`.
19
+ - `forge board --json` returns `context`, `board`, and `limits`.
20
+ - `personal` contains the status-focused issue groups for the current developer.
21
+ - `board` contains the team issue groups over the same local snapshot.
22
+
23
+ ## Sample Output
24
+
25
+ ```text
26
+ Context
27
+ Branch: codex/0.0.18-team-status
28
+ Worktree: linked
29
+ Working tree: clean
30
+
31
+ Active Issues
32
+ forge-sxg2 0.0.18 forge status command for personal work focus [in_progress]
33
+
34
+ Ready
35
+ forge-next Follow-up issue
36
+
37
+ Blocked
38
+ forge-11ds 0.0.18 team runtime board [open]
39
+
40
+ Stale
41
+ none
42
+
43
+ Recent Completions
44
+ forge-besw.12 0.0.17 insights and recap
45
+
46
+ Workflow
47
+ Development (dev)
48
+ Run now: /dev
49
+ Next after this: /validate
50
+ ```
51
+
52
+ ```text
53
+ Team Runtime Board
54
+ Source: local Beads runtime state
55
+ Branch: codex/0.0.18-team-status
56
+ Working tree: clean
57
+
58
+ Active
59
+ forge-sxg2 0.0.18 forge status command for personal work focus [in_progress]
60
+
61
+ Ready
62
+ none
63
+
64
+ Blocked
65
+ forge-11ds 0.0.18 team runtime board [open]
66
+
67
+ Stale
68
+ none
69
+
70
+ Recent Completions
71
+ forge-besw.12 0.0.17 insights and recap
72
+ ```
73
+
74
+ ## Limits
75
+
76
+ These commands are read-only and local. They do not create orchestration, mutate issue state, query GitHub, inspect review providers, infer CI health, or sync remote project fields. The data is only as current as `.beads/issues.jsonl` in the current checkout.
77
+
78
+ ## Non-Scope
79
+
80
+ This surface does not implement ReviewAdapter, IssueAdapter, GitHub sync, GitHub Projects v2, sprint velocity, or remote review-response detection.
@@ -0,0 +1,106 @@
1
+ # Adoption Templates
2
+
3
+ Forge templates are adoption scaffolds over runtime graph primitives. They are not the product surface: the generated `.forge/config.yaml` stays inspectable with `forge options`.
4
+
5
+ ## Entry Point
6
+
7
+ ```bash
8
+ forge init
9
+ forge init --yes
10
+ forge init --profile minimal --classification standard --harness codex --yes
11
+ ```
12
+
13
+ `forge init` is the day-one entry door for fresh repositories. It creates the local `.forge/` skeleton without assuming a prior v2 install or running the `forge new` onboarding wizard.
14
+
15
+ Generated files:
16
+
17
+ - `.forge/config.yaml` records the adoption profile, default classification, Layer 1 rail confirmation, and harness targets.
18
+ - `.forge/patch.md` is an empty patch-intent placeholder for future local overrides.
19
+ - `.forge/protected-paths.yaml` records the protected path manifest scaffold. Currently, only the manifest structure is generated; protected-state enforcement is not yet implemented.
20
+
21
+ When run interactively, `forge init` asks for:
22
+
23
+ - default classification: `critical`, `standard`, or `refactor`.
24
+ - Layer 1 rail confirmation.
25
+ - harness targets: `claude`, `cursor`, and/or `codex`.
26
+
27
+ Harness defaults are detected from filesystem markers where supported:
28
+
29
+ - `.claude` selects `claude`.
30
+ - `.cursor` selects `cursor`.
31
+ - `.codex` selects `codex`.
32
+
33
+ `forge init --yes` is deterministic for automation: it uses the `standard` profile, `standard` classification, confirms Layer 1 rails, and selects detected harness targets or `codex` when none are detected.
34
+
35
+ `forge init` does not overwrite existing generated files. Re-run with `--force` only when replacing `.forge/config.yaml`, `.forge/patch.md`, and `.forge/protected-paths.yaml` is intentional.
36
+
37
+ Profile shortcuts remain available:
38
+
39
+ ```bash
40
+ forge init --minimal
41
+ forge init --standard
42
+ forge init --full
43
+ ```
44
+
45
+ `forge setup --minimal` remains a separate shortcut for repositories that want setup behavior rather than only the day-one `.forge/` skeleton.
46
+
47
+ Stage commands such as `/review` and `/verify` are agent workflow stages. Do not present them as standalone `forge review` or `forge verify` CLI commands unless those commands exist in the current CLI registry. Pre-merge is not a stage or a `/premerge` command — it is a documentation-and-handoff gate embedded in `/ship` and `/review`.
48
+
49
+ ## Planning Template
50
+
51
+ `/plan` is represented as a configurable planning template in the runtime graph. The default template runs the full planning loop:
52
+
53
+ - `plan.intent_capture`
54
+ - `plan.parallel_research`
55
+ - `plan.parallel_critics`
56
+ - `plan.synthesis`
57
+ - `plan.final_lock`
58
+
59
+ Projects can tune planning depth in `.forge/config.yaml` without introducing another planner-specific config file:
60
+
61
+ ```yaml
62
+ planning:
63
+ template:
64
+ mode: partial
65
+ convergenceThreshold: 0.8
66
+ criticSet:
67
+ - spec
68
+ - security
69
+ partialInvocation:
70
+ only:
71
+ - plan.parallel_critics
72
+ skip:
73
+ - plan.parallel_research
74
+ ```
75
+
76
+ Inspect the resolved behavior with:
77
+
78
+ ```bash
79
+ forge options why plan.parallel_critics
80
+ forge options diff
81
+ forge options lint
82
+ ```
83
+
84
+ Invalid planning modes, thresholds outside `0..1`, blank critics, and unknown planning sub-skills fail through `forge options lint`.
85
+
86
+ ## Profiles
87
+
88
+ | Profile | Purpose | Output |
89
+ |---------|---------|--------|
90
+ | `minimal` | Smallest adoption skeleton for a clean repository. | Writes the day-one `.forge/` files with workflow gates and issue adapters disabled unless selected later. |
91
+ | `standard` | Default Forge command flow metadata. | Writes the day-one `.forge/` files with default gates enabled and Beads/GitHub issue adapter metadata. |
92
+ | `full` | Explicit full scaffold. | Writes the day-one `.forge/` files with rails, gates, adapters, and protected paths made explicit. |
93
+
94
+ ## Inspect The Result
95
+
96
+ ```bash
97
+ forge options lint
98
+ forge options diff
99
+ forge options stages --json
100
+ ```
101
+
102
+ The generated config includes `template.kind`, `template.version`, `template.profile`, and `template.ancestry` so users can see which scaffold produced the current defaults.
103
+
104
+ ## Non-Scope
105
+
106
+ This flow does not implement harness translation, adapter marketplace installation, upgrade or rollback, guaranteed protected-state enforcement in every repository, `forge new`, or patch intent execution.