forge-workflow 0.0.10 → 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.
- package/.claude/rules/{greptile-review-process.md → review-process.md} +56 -41
- package/.claude/scripts/{greptile-resolve.sh → review-resolve.sh} +13 -3
- package/.cursor/rules/permissions-guidance.mdc +2 -2
- package/.forge/hooks/check-tdd.js +3 -0
- package/.forge/hooks/forge-native-hook.js +245 -0
- package/.forge/protected-paths.yaml +157 -0
- package/AGENTS.md +150 -61
- package/CHANGELOG.md +681 -0
- package/CLAUDE.md +9 -118
- package/QUICKSTART.md +171 -0
- package/README.md +271 -363
- package/bin/forge-cmd.js +120 -9
- package/bin/forge-preflight.js +26 -5
- package/bin/forge.js +461 -489
- package/docs/INDEX.md +93 -0
- package/docs/PROJECT_DESIGN.md +685 -0
- package/docs/architecture/index.md +66 -0
- package/docs/architecture/notes/README.md +35 -0
- package/docs/architecture/subsystems/README.md +46 -0
- package/docs/forge/TOOLCHAIN.md +670 -0
- package/docs/forge/VALIDATION.md +82 -0
- package/docs/{AGENT_INSTALL_PROMPT.md → guides/AGENT_INSTALL_PROMPT.md} +3 -3
- package/docs/guides/BEADS_GITHUB_SYNC.md +32 -0
- package/docs/{ENHANCED_ONBOARDING.md → guides/ENHANCED_ONBOARDING.md} +16 -12
- package/docs/guides/GREPTILE_SETUP.md +46 -0
- package/docs/guides/MANUAL_REVIEW_GUIDE.md +58 -0
- package/docs/guides/MIGRATION.md +56 -0
- package/docs/guides/SETUP.md +118 -0
- package/docs/guides/SUPPORT.md +185 -0
- package/docs/guides/WORKFLOW_TEMPLATES.md +74 -0
- package/docs/guides/memory-backends.md +183 -0
- package/docs/reference/ADAPTERS.md +128 -0
- package/docs/reference/AGENT_SKILL_PARITY.md +175 -0
- package/docs/reference/COMMANDS.md +205 -0
- package/docs/reference/DECISION_DRIFT_GUARDS.md +97 -0
- package/docs/{EXAMPLES.md → reference/EXAMPLES.md} +7 -5
- package/docs/reference/FORGE_KERNEL_STORAGE_MODEL.md +135 -0
- package/docs/reference/HERMES_INTEGRATION.md +118 -0
- package/docs/reference/INSIGHTS_RECAP.md +63 -0
- package/docs/reference/INSTALL.md +164 -0
- package/docs/reference/KERNEL_TAXONOMY_VALIDATION.md +161 -0
- package/docs/reference/PROTECTED_PATH_MANIFEST.md +25 -0
- package/docs/reference/RELEASE.md +68 -0
- package/docs/reference/RESEARCH_TEMPLATE.md +292 -0
- package/docs/{ROADMAP.md → reference/ROADMAP.md} +12 -9
- package/docs/reference/SKILLS.md +35 -0
- package/docs/reference/STATUS_BOARD.md +80 -0
- package/docs/reference/TEMPLATES.md +106 -0
- package/docs/{TOOLCHAIN.md → reference/TOOLCHAIN.md} +62 -47
- package/docs/reference/VALIDATION.md +82 -0
- package/docs/reference/agent-permissions.md +169 -0
- package/docs/reference/beads-to-kernel-migration-ux.md +61 -0
- package/docs/reference/control-plane-guarantees.md +125 -0
- package/docs/reference/dependency-chain.md +331 -0
- package/docs/reference/forge-kernel-issue-command-contract.md +161 -0
- package/docs/reference/forge-kernel-schema.md +72 -0
- package/docs/reference/kernel-conflict-evaluators.md +27 -0
- package/docs/reference/patch-md-format.md +77 -0
- package/docs/reference/protected-state-surfaces.md +59 -0
- package/docs/reference/shepherd.md +115 -0
- package/docs/reference/superpowers-analysis.md +320 -0
- package/docs/reference/superpowers-integration-options.md +404 -0
- package/docs/reference/test-environment.md +519 -0
- package/docs/reference/upgrade-safety.md +59 -0
- package/lefthook.yml +18 -0
- package/lib/adapter-cli.js +307 -0
- package/lib/adapters/beads-issue-adapter.js +127 -0
- package/lib/adapters/beads-kernel-compat.js +1042 -0
- package/lib/adapters/greptile-review-adapter.js +141 -0
- package/lib/adapters/kernel-issue-adapter.js +101 -0
- package/lib/adapters/pr-state-adapter.js +484 -0
- package/lib/adoption-profiles.js +126 -0
- package/lib/agents/README.md +2 -6
- package/lib/agents/claude.plugin.json +3 -8
- package/lib/agents/codex.plugin.json +9 -1
- package/lib/agents/cursor.plugin.json +2 -6
- package/lib/agents/hermes.plugin.json +22 -0
- package/lib/agents-config.js +39 -1236
- package/lib/audit-evidence.js +282 -0
- package/lib/beads-setup.js +121 -0
- package/lib/beads-sync-scaffold.js +25 -101
- package/lib/codex-skills.js +51 -1
- package/lib/commands/_issue.js +741 -77
- package/lib/commands/_manifest.js +91 -0
- package/lib/commands/_registry.js +85 -34
- package/lib/commands/_resolve-command-opts.js +261 -0
- package/lib/commands/_serve-security.js +270 -0
- package/lib/commands/adapter.js +12 -0
- package/lib/commands/add.js +118 -0
- package/lib/commands/audit.js +70 -0
- package/lib/commands/blocked.js +5 -0
- package/lib/commands/board.js +64 -0
- package/lib/commands/claim.js +21 -2
- package/lib/commands/claims.js +7 -0
- package/lib/commands/clean.js +485 -75
- package/lib/commands/close.js +2 -2
- package/lib/commands/comment.js +5 -0
- package/lib/commands/control.js +148 -0
- package/lib/commands/create.js +2 -2
- package/lib/commands/dev.js +185 -7
- package/lib/commands/doc-gate.js +336 -0
- package/lib/commands/doctor.js +156 -0
- package/lib/commands/explain.js +15 -0
- package/lib/commands/export.js +237 -0
- package/lib/commands/gate.js +192 -0
- package/lib/commands/hooks.js +242 -0
- package/lib/commands/inbox.js +118 -0
- package/lib/commands/init.js +598 -0
- package/lib/commands/insights.js +79 -0
- package/lib/commands/issue.js +12 -1
- package/lib/commands/issues.js +17 -0
- package/lib/commands/lint.js +5 -0
- package/lib/commands/list.js +2 -2
- package/lib/commands/merge.js +312 -0
- package/lib/commands/migrate.js +523 -0
- package/lib/commands/new.js +12 -0
- package/lib/commands/options.js +241 -0
- package/lib/commands/orient.js +13 -0
- package/lib/commands/orphans.js +5 -0
- package/lib/commands/patch.js +67 -0
- package/lib/commands/plan.js +436 -24
- package/lib/commands/preflight.js +211 -0
- package/lib/commands/prime.js +13 -0
- package/lib/commands/push.js +69 -2
- package/lib/commands/ready.js +2 -2
- package/lib/commands/recall.js +116 -0
- package/lib/commands/recap.js +61 -0
- package/lib/commands/recommend.js +0 -1
- package/lib/commands/release.js +91 -0
- package/lib/commands/remember.js +74 -0
- package/lib/commands/role.js +99 -0
- package/lib/commands/serve.js +581 -0
- package/lib/commands/setup.js +838 -972
- package/lib/commands/shepherd.js +436 -0
- package/lib/commands/ship.js +23 -1
- package/lib/commands/show.js +2 -2
- package/lib/commands/stage.js +192 -0
- package/lib/commands/stale.js +5 -0
- package/lib/commands/status.js +158 -21
- package/lib/commands/sync.js +34 -46
- package/lib/commands/team.js +4 -1
- package/lib/commands/test.js +43 -27
- package/lib/commands/update.js +2 -2
- package/lib/commands/upgrade.js +47 -0
- package/lib/commands/validate.js +43 -18
- package/lib/commands/worktree.js +307 -100
- package/lib/config-writer.js +202 -0
- package/lib/control-plane.js +236 -0
- package/lib/core/runtime-graph.js +946 -0
- package/lib/dep-guard/keyword-ripple.js +2 -2
- package/lib/deprecated-sync-cleanup.js +362 -0
- package/lib/detect-agent.js +2 -28
- package/lib/detect-worktree.js +35 -9
- package/lib/doc-gate/declaration.js +177 -0
- package/lib/doc-gate/detect.js +289 -0
- package/lib/doc-gate/gate.js +375 -0
- package/lib/doc-gate/okf-config.js +128 -0
- package/lib/doc-gate/okf.js +429 -0
- package/lib/docs-command.js +1161 -6
- package/lib/forge-issues.js +382 -11
- package/lib/forge-lock.js +262 -0
- package/lib/gate-events.js +193 -0
- package/lib/global-flags.js +74 -0
- package/lib/greptile-match.js +7 -63
- package/lib/harness-capability-matrix.js +380 -0
- package/lib/hook-global-installer.js +347 -0
- package/lib/hook-renderer.js +451 -0
- package/lib/inbox.js +391 -0
- package/lib/insights.js +397 -0
- package/lib/issue-adapter.js +156 -0
- package/lib/issue-backend.js +145 -0
- package/lib/issue-render.js +220 -0
- package/lib/kernel/backing-issue.js +305 -0
- package/lib/kernel/broker.js +1218 -0
- package/lib/kernel/cli-broker-factory.js +130 -0
- package/lib/kernel/conflict-signal.js +82 -0
- package/lib/kernel/evaluators.js +195 -0
- package/lib/kernel/fs-class.js +495 -0
- package/lib/kernel/issue-command-contract.js +559 -0
- package/lib/kernel/issue-id-resolver.js +186 -0
- package/lib/kernel/lease-enforcer.js +158 -0
- package/lib/kernel/migrations.js +333 -0
- package/lib/kernel/planning-buckets-schema.js +109 -0
- package/lib/kernel/projection-jsonl-writer.js +450 -0
- package/lib/kernel/readiness-model.js +329 -0
- package/lib/kernel/schema.js +356 -0
- package/lib/kernel/sqlite-driver.js +2504 -0
- package/lib/kernel/taxonomy-validator.js +394 -0
- package/lib/lefthook-check.js +3 -2
- package/lib/lefthook-wiring.js +413 -0
- package/lib/mcp-config-renderer.js +288 -0
- package/lib/memory/graphiti-mcp.js +106 -0
- package/lib/memory/router.js +387 -0
- package/lib/memory/typed-api.js +102 -0
- package/lib/memory-digest.js +195 -0
- package/lib/merge-rules.js +395 -0
- package/lib/migrate-dry-run.js +466 -0
- package/lib/orientation.js +863 -0
- package/lib/package-manager-remediation.js +103 -0
- package/lib/package-root.js +381 -0
- package/lib/patch-intent.js +890 -0
- package/lib/plugin-catalog.js +3 -4
- package/lib/plugin-manager.js +0 -5
- package/lib/pr-bundle.js +186 -0
- package/lib/pr-monitor/differ.js +195 -0
- package/lib/pr-monitor/events.js +0 -0
- package/lib/pr-monitor/gather.js +124 -0
- package/lib/pr-monitor/journal.js +299 -0
- package/lib/pr-monitor/monitor.js +146 -0
- package/lib/pr-monitor/render-sticky.js +157 -0
- package/lib/pr-monitor/watch-lifecycle.js +95 -0
- package/lib/pr-monitor/watch.js +247 -0
- package/lib/pr-pull.js +1273 -0
- package/lib/pr-shepherd.js +494 -0
- package/lib/pr-state-validator.js +59 -0
- package/lib/preflight/gates.js +237 -0
- package/lib/preflight/runner.js +116 -0
- package/lib/project-discovery.js +0 -53
- package/lib/project-memory.js +99 -497
- package/lib/protected-path-manifest.js +281 -0
- package/lib/protected-state-surfaces.js +387 -0
- package/lib/release-readiness.js +2089 -0
- package/lib/reset.js +59 -45
- package/lib/review-adapter.js +68 -0
- package/lib/rules-sync.js +260 -0
- package/lib/runtime-health.js +241 -20
- package/lib/safety-config-renderer.js +268 -0
- package/lib/setup-action-log.js +1 -7
- package/lib/setup.js +27 -65
- package/lib/shell-utils.js +76 -6
- package/lib/skills-sync.js +330 -0
- package/lib/smart-status/scoring.js +17 -3
- package/lib/status/beads-snapshot.js +45 -2
- package/lib/status/presenter.js +169 -18
- package/lib/status/snapshot.js +186 -0
- package/lib/sync-backend.js +202 -0
- package/lib/untrusted-content.js +52 -0
- package/lib/upgrade-safety.js +199 -0
- package/lib/workflow/enforce-stage.js +296 -47
- package/lib/workflow/stage-transition.js +115 -0
- package/lib/workflow/stages.js +30 -6
- package/lib/workflow/state-manager.js +11 -22
- package/lib/workflow/state.js +23 -1
- package/lib/workflow-profiles.js +17 -5
- package/package.json +37 -35
- package/rules/documentation.md +19 -0
- package/rules/kernel-tracking.md +26 -0
- package/rules/security.md +22 -0
- package/rules/tdd.md +20 -0
- package/rules/workflow.md +27 -0
- package/scripts/auto-backing-issue.js +47 -0
- package/scripts/beads-context.sh +81 -57
- package/scripts/beads-upgrade-smoke.sh +24 -3
- package/scripts/bootstrap-windows-tools.sh +78 -0
- package/scripts/branch-protection.js +2 -3
- package/scripts/check-agents.js +34 -137
- package/scripts/commitlint.js +3 -1
- package/scripts/conflict-detect.sh +3 -0
- package/scripts/dep-guard.sh +22 -3
- package/scripts/file-index.sh +3 -0
- package/scripts/forge-team/lib/claim.sh +34 -18
- package/scripts/forge-team/lib/dashboard.sh +61 -86
- package/scripts/forge-team/lib/epic.sh +99 -263
- package/scripts/forge-team/lib/hooks.sh +26 -28
- package/scripts/forge-team/lib/identity.sh +4 -4
- package/scripts/forge-team/lib/sync-github.sh +49 -84
- package/scripts/forge-team/lib/verify.sh +93 -83
- package/scripts/forge-team/lib/workload.sh +41 -65
- package/scripts/forge-team/tests/claim.test.sh +25 -19
- package/scripts/forge-team/tests/dashboard.test.sh +31 -46
- package/scripts/forge-team/tests/epic.test.sh +52 -71
- package/scripts/forge-team/tests/hooks.test.sh +38 -50
- package/scripts/forge-team/tests/identity.test.sh +3 -3
- package/scripts/forge-team/tests/integration.test.sh +44 -66
- package/scripts/forge-team/tests/sync-github.test.sh +50 -83
- package/scripts/forge-team/tests/verify.test.sh +37 -46
- package/scripts/forge-team/tests/workflow-integration.test.sh +4 -4
- package/scripts/forge-team/tests/workload.test.sh +32 -66
- package/scripts/gen-command-manifest.js +153 -0
- package/scripts/gen-embedded-assets.mjs +129 -0
- package/scripts/install.ps1 +139 -0
- package/scripts/install.sh +268 -0
- package/scripts/lib/release-asset.mjs +84 -0
- package/scripts/parity-check.mjs +145 -0
- package/scripts/parity-check.test.mjs +58 -0
- package/scripts/pin-agentic-workflow-images.js +112 -0
- package/scripts/pr-coordinator.sh +3 -0
- package/scripts/preflight-sonar.eslint.config.mjs +44 -0
- package/scripts/preflight.sh +21 -94
- package/scripts/protected-state-check.js +104 -0
- package/scripts/smart-status.sh +60 -57
- package/scripts/spikes/config-race-bench.js +111 -0
- package/scripts/spikes/harness-capability-matrix.js +13 -0
- package/scripts/spikes/patch-anchor-stability-bench.js +125 -0
- package/scripts/spikes/protected-path-manifest.js +20 -0
- package/scripts/spikes/skill-auto-invoke-parity.js +292 -0
- package/scripts/sync-agent-skills.js +62 -0
- package/scripts/sync-utils.sh +3 -0
- package/scripts/test-ci-shard.js +13 -6
- package/scripts/test.js +95 -12
- package/skills/claim-safety/SKILL.md +102 -0
- package/skills/claim-safety/evals/evals.json +46 -0
- package/{.github/prompts/dev.prompt.md → skills/dev/SKILL.md} +44 -50
- package/skills/dev/evals/evals.json +50 -0
- package/skills/hermes-forge/SKILL.md +185 -0
- package/skills/hermes-forge/evals/evals.json +46 -0
- package/skills/issue-basics/SKILL.md +111 -0
- package/skills/issue-basics/evals/evals.json +46 -0
- package/skills/kernel/SKILL.md +166 -0
- package/skills/kernel/evals/evals.json +50 -0
- package/skills/memory/SKILL.md +102 -0
- package/skills/parallel-deep-research/SKILL.md +14 -11
- package/skills/parallel-deep-research/evals/evals.json +11 -27
- package/{.github/prompts/plan.prompt.md → skills/plan/SKILL.md} +132 -157
- package/skills/plan/evals/evals.json +42 -0
- package/skills/research/SKILL.md +195 -0
- package/skills/research/evals/evals.json +42 -0
- package/{.github/prompts/review.prompt.md → skills/review/SKILL.md} +98 -62
- package/skills/review/evals/evals.json +42 -0
- package/skills/rollback/SKILL.md +110 -0
- package/skills/rollback/evals/evals.json +46 -0
- package/skills/rollback/references/methods.md +204 -0
- package/{.cursor/commands/rollback.md → skills/rollback/references/workflow-integration.md} +10 -284
- package/skills/shepherd/SKILL.md +66 -0
- package/skills/shepherd/evals/evals.json +42 -0
- package/{.github/prompts/ship.prompt.md → skills/ship/SKILL.md} +81 -45
- package/skills/ship/evals/evals.json +42 -0
- package/skills/smith/SKILL.md +142 -0
- package/skills/smith/evals/evals.json +46 -0
- package/skills/smith/references/autonomy-and-gates.md +94 -0
- package/{.github/prompts/sonarcloud.prompt.md → skills/sonarcloud/SKILL.md} +14 -3
- package/skills/sonarcloud/evals/evals.json +46 -0
- package/skills/sonarcloud-analysis/SKILL.md +18 -13
- package/skills/sonarcloud-analysis/evals/evals.json +11 -15
- package/{.github/prompts/status.prompt.md → skills/status/SKILL.md} +20 -10
- package/skills/status/evals/evals.json +50 -0
- package/skills/triage-ready/SKILL.md +121 -0
- package/skills/triage-ready/evals/evals.json +42 -0
- package/{.github/prompts/validate.prompt.md → skills/validate/SKILL.md} +52 -29
- package/skills/validate/evals/evals.json +42 -0
- package/skills/verify/SKILL.md +299 -0
- package/skills/verify/evals/evals.json +50 -0
- package/.claude/commands/dev.md +0 -345
- package/.claude/commands/plan.md +0 -566
- package/.claude/commands/premerge.md +0 -186
- package/.claude/commands/research.md +0 -42
- package/.claude/commands/review.md +0 -451
- package/.claude/commands/rollback.md +0 -721
- package/.claude/commands/ship.md +0 -213
- package/.claude/commands/sonarcloud.md +0 -152
- package/.claude/commands/status.md +0 -90
- package/.claude/commands/validate.md +0 -288
- package/.claude/commands/verify.md +0 -269
- package/.claude/rules/workflow.md +0 -121
- package/.cline/workflows/dev.md +0 -342
- package/.cline/workflows/plan.md +0 -563
- package/.cline/workflows/premerge.md +0 -183
- package/.cline/workflows/research.md +0 -39
- package/.cline/workflows/review.md +0 -448
- package/.cline/workflows/rollback.md +0 -718
- package/.cline/workflows/ship.md +0 -210
- package/.cline/workflows/sonarcloud.md +0 -146
- package/.cline/workflows/status.md +0 -87
- package/.cline/workflows/validate.md +0 -285
- package/.cline/workflows/verify.md +0 -266
- package/.codex/config.toml +0 -11
- package/.codex/skills/dev/SKILL.md +0 -345
- package/.codex/skills/plan/SKILL.md +0 -566
- package/.codex/skills/premerge/SKILL.md +0 -186
- package/.codex/skills/research/SKILL.md +0 -42
- package/.codex/skills/review/SKILL.md +0 -451
- package/.codex/skills/rollback/SKILL.md +0 -721
- package/.codex/skills/ship/SKILL.md +0 -213
- package/.codex/skills/sonarcloud/SKILL.md +0 -149
- package/.codex/skills/status/SKILL.md +0 -90
- package/.codex/skills/validate/SKILL.md +0 -288
- package/.codex/skills/verify/SKILL.md +0 -269
- package/.cursor/commands/dev.md +0 -342
- package/.cursor/commands/plan.md +0 -563
- package/.cursor/commands/premerge.md +0 -183
- package/.cursor/commands/research.md +0 -39
- package/.cursor/commands/review.md +0 -448
- package/.cursor/commands/ship.md +0 -210
- package/.cursor/commands/sonarcloud.md +0 -146
- package/.cursor/commands/status.md +0 -87
- package/.cursor/commands/validate.md +0 -285
- package/.cursor/commands/verify.md +0 -266
- package/.cursorrules +0 -149
- package/.github/prompts/premerge.prompt.md +0 -188
- package/.github/prompts/research.prompt.md +0 -44
- package/.github/prompts/rollback.prompt.md +0 -723
- package/.github/prompts/verify.prompt.md +0 -271
- package/.github/workflows/beads-to-github.yml +0 -89
- package/.github/workflows/github-to-beads.yml +0 -100
- package/.kilocode/workflows/dev.md +0 -346
- package/.kilocode/workflows/plan.md +0 -567
- package/.kilocode/workflows/premerge.md +0 -187
- package/.kilocode/workflows/research.md +0 -43
- package/.kilocode/workflows/review.md +0 -452
- package/.kilocode/workflows/rollback.md +0 -722
- package/.kilocode/workflows/ship.md +0 -214
- package/.kilocode/workflows/sonarcloud.md +0 -150
- package/.kilocode/workflows/status.md +0 -91
- package/.kilocode/workflows/validate.md +0 -289
- package/.kilocode/workflows/verify.md +0 -270
- package/.opencode/commands/dev.md +0 -345
- package/.opencode/commands/plan.md +0 -566
- package/.opencode/commands/premerge.md +0 -186
- package/.opencode/commands/research.md +0 -42
- package/.opencode/commands/review.md +0 -451
- package/.opencode/commands/rollback.md +0 -721
- package/.opencode/commands/ship.md +0 -213
- package/.opencode/commands/sonarcloud.md +0 -149
- package/.opencode/commands/status.md +0 -90
- package/.opencode/commands/validate.md +0 -288
- package/.opencode/commands/verify.md +0 -269
- package/.roo/commands/dev.md +0 -346
- package/.roo/commands/plan.md +0 -567
- package/.roo/commands/premerge.md +0 -187
- package/.roo/commands/research.md +0 -43
- package/.roo/commands/review.md +0 -452
- package/.roo/commands/rollback.md +0 -722
- package/.roo/commands/ship.md +0 -214
- package/.roo/commands/sonarcloud.md +0 -150
- package/.roo/commands/status.md +0 -91
- package/.roo/commands/validate.md +0 -289
- package/.roo/commands/verify.md +0 -270
- package/docs/BEADS_GITHUB_SYNC.md +0 -281
- package/docs/GREPTILE_SETUP.md +0 -400
- package/docs/MANUAL_REVIEW_GUIDE.md +0 -106
- package/docs/SETUP.md +0 -663
- package/docs/VALIDATION.md +0 -363
- package/lib/agents/cline.plugin.json +0 -29
- package/lib/agents/copilot.plugin.json +0 -24
- package/lib/agents/kilocode.plugin.json +0 -22
- package/lib/agents/opencode.plugin.json +0 -23
- package/lib/agents/roo.plugin.json +0 -30
- package/lib/beads-bootstrap.js +0 -225
- package/lib/beads-health-check.js +0 -188
- package/lib/commands/commands-reset.js +0 -147
- package/opencode.json +0 -67
- package/scripts/beads-context.test.js +0 -584
- package/scripts/github-beads-sync/comment.mjs +0 -64
- package/scripts/github-beads-sync/config.mjs +0 -148
- package/scripts/github-beads-sync/github-api.mjs +0 -131
- package/scripts/github-beads-sync/index.mjs +0 -356
- package/scripts/github-beads-sync/label-mapper.mjs +0 -54
- package/scripts/github-beads-sync/mapping.mjs +0 -132
- package/scripts/github-beads-sync/reverse-sync-cli.mjs +0 -31
- package/scripts/github-beads-sync/reverse-sync.mjs +0 -162
- package/scripts/github-beads-sync/run-bd.mjs +0 -161
- package/scripts/github-beads-sync/sanitize.mjs +0 -121
- package/scripts/github-beads-sync.config.json +0 -26
- package/scripts/sync-commands.js +0 -600
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
# Validation Reference
|
|
2
|
+
|
|
3
|
+
Forge validation is evidence, not a slogan. Record the command, result, and failure text when validation fails.
|
|
4
|
+
|
|
5
|
+
## Project Validation
|
|
6
|
+
|
|
7
|
+
In this repository:
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
bun run check
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
`bun run check` runs `scripts/validate.js` in this order:
|
|
14
|
+
|
|
15
|
+
1. `bun run typecheck`
|
|
16
|
+
2. `bun run lint`
|
|
17
|
+
3. `bun audit`
|
|
18
|
+
4. `node scripts/test.js --validate`
|
|
19
|
+
|
|
20
|
+
Security audit behavior distinguishes blocking high/critical vulnerabilities from lower-severity warnings.
|
|
21
|
+
|
|
22
|
+
## Supporting Commands
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
bun run typecheck
|
|
26
|
+
bun run lint
|
|
27
|
+
bun test --timeout 15000
|
|
28
|
+
bun run validate:yaml
|
|
29
|
+
npm pack --dry-run
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
Use `npm pack --dry-run` for package contents and release-readiness checks. It does not publish.
|
|
33
|
+
|
|
34
|
+
## Agent Stage Validation
|
|
35
|
+
|
|
36
|
+
`/validate` is an agent workflow stage. It may include rebase/freshness checks, local validation, manual security review, and Beads context updates according to the installed stage instructions.
|
|
37
|
+
|
|
38
|
+
Do not confuse:
|
|
39
|
+
|
|
40
|
+
- `/validate` - agent stage workflow
|
|
41
|
+
- `forge-preflight` - prerequisite checker
|
|
42
|
+
- `bun run check` - repository validation script
|
|
43
|
+
|
|
44
|
+
## Work Artifact Paths
|
|
45
|
+
|
|
46
|
+
Current planning and validation evidence should point to:
|
|
47
|
+
|
|
48
|
+
```text
|
|
49
|
+
docs/work/YYYY-MM-DD-<slug>/
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
Legacy `docs/research/` or `docs/plans/` examples are historical unless a specific tool documents a compatibility fallback.
|
|
53
|
+
|
|
54
|
+
## Failure Recovery
|
|
55
|
+
|
|
56
|
+
Fix failures in order:
|
|
57
|
+
|
|
58
|
+
1. Typecheck
|
|
59
|
+
2. Lint
|
|
60
|
+
3. Security audit
|
|
61
|
+
4. Tests
|
|
62
|
+
5. Packaging
|
|
63
|
+
|
|
64
|
+
For each failure:
|
|
65
|
+
|
|
66
|
+
1. Reproduce with the exact command.
|
|
67
|
+
2. Read the first real error.
|
|
68
|
+
3. Fix the root cause.
|
|
69
|
+
4. Rerun the full validation command.
|
|
70
|
+
|
|
71
|
+
Do not proceed to ship with "should pass" or stale output.
|
|
72
|
+
|
|
73
|
+
## Documentation Changes
|
|
74
|
+
|
|
75
|
+
For docs-only changes, still run:
|
|
76
|
+
|
|
77
|
+
```bash
|
|
78
|
+
bun run check
|
|
79
|
+
npm pack --dry-run
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
Run a Markdown link check when available. If adding docs tooling would broaden the PR, file follow-up work instead.
|
|
@@ -20,13 +20,13 @@ First, determine which AI agent you are by checking for these directories:
|
|
|
20
20
|
|
|
21
21
|
```bash
|
|
22
22
|
# Check for agent-specific directories
|
|
23
|
-
ls -la | grep -E "\.claude|\.cursor
|
|
23
|
+
ls -la | grep -E "\.claude|\.codex|\.cursor"
|
|
24
24
|
```
|
|
25
25
|
|
|
26
26
|
**Agent Detection:**
|
|
27
27
|
- `.claude/` exists → You are **Claude Code**
|
|
28
|
+
- `.codex/` exists → You are **Codex**
|
|
28
29
|
- `.cursor/` exists → You are **Cursor**
|
|
29
|
-
- `.cline/` exists → You are **Cline**
|
|
30
30
|
- None exist → Generic agent
|
|
31
31
|
|
|
32
32
|
Store this for later: `DETECTED_AGENT=<name>`
|
|
@@ -328,8 +328,8 @@ EOF
|
|
|
328
328
|
|
|
329
329
|
**This prompt is designed to work with:**
|
|
330
330
|
- Claude Code (via CLI)
|
|
331
|
+
- Codex (via CLI)
|
|
331
332
|
- Cursor (via chat)
|
|
332
|
-
- Cline (via VSCode extension)
|
|
333
333
|
- Any AI coding assistant with file system access
|
|
334
334
|
|
|
335
335
|
---
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# Beads/GitHub Sync Deprecation
|
|
2
|
+
|
|
3
|
+
Beads/GitHub workflow sync is deprecated. Forge no longer ships active `github-to-beads.yml` or `beads-to-github.yml` workflow templates, and `forge setup --sync` must not create new Beads/GitHub sync scaffolding.
|
|
4
|
+
|
|
5
|
+
## Current Behavior
|
|
6
|
+
|
|
7
|
+
- `.beads/` is local runtime/export state and is not committed.
|
|
8
|
+
- `forge setup --sync` is retained only as a compatibility cleanup path and removes old generated Beads/GitHub sync files from existing installs when they are present.
|
|
9
|
+
- Plain `forge setup` does not perform Beads/GitHub sync cleanup as a side effect.
|
|
10
|
+
- `forge sync` may still run local Beads/Dolt sync operations while Beads compatibility remains, but it is not GitHub issue lifecycle sync.
|
|
11
|
+
|
|
12
|
+
## Removed Generated Files
|
|
13
|
+
|
|
14
|
+
The `forge setup --sync` compatibility cleanup removes the old generated files:
|
|
15
|
+
|
|
16
|
+
```text
|
|
17
|
+
.github/workflows/github-to-beads.yml
|
|
18
|
+
.github/workflows/beads-to-github.yml
|
|
19
|
+
.github/beads-mapping.json
|
|
20
|
+
.github/beads-sync-config.json
|
|
21
|
+
.github/scripts/beads-sync/*.mjs
|
|
22
|
+
scripts/github-beads-sync.config.json
|
|
23
|
+
scripts/github-beads-sync/*.mjs
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
Unrelated GitHub workflows are preserved.
|
|
27
|
+
|
|
28
|
+
## Replacement Direction
|
|
29
|
+
|
|
30
|
+
Future GitHub issue sync must use Forge Kernel/server authority. Local-only work is durable in local Kernel SQLite. Team or cross-machine issue state is serialized through server authority, then GitHub issues can be updated as a projection from that authority.
|
|
31
|
+
|
|
32
|
+
Do not commit live `.beads/` files, create metadata-only PRs, or bypass protected branches to update issue tracker state.
|
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
# Enhanced Onboarding Guide
|
|
2
2
|
|
|
3
|
+
> **Historical — superseded by [Quickstart](../../QUICKSTART.md).** This guide predates the current onboarding flow and still references the old `/premerge` stage and some undocumented flags. Kept for historical reference only; do not follow it for a fresh install.
|
|
4
|
+
|
|
3
5
|
Intelligent onboarding that adapts to your project and preserves existing content.
|
|
4
6
|
|
|
5
7
|
---
|
|
6
8
|
|
|
7
9
|
## Key Features
|
|
8
10
|
|
|
11
|
+
> This guide describes the broader onboarding experience and workflow-profile ideas. For current first-run setup, start with [Quickstart](../../QUICKSTART.md). For the current workflow-template boundary, use [Workflow templates](WORKFLOW_TEMPLATES.md).
|
|
12
|
+
|
|
9
13
|
### Key Features
|
|
10
14
|
|
|
11
15
|
1. **Intelligent File Merging** - Preserves your existing AGENTS.md content
|
|
@@ -35,7 +39,7 @@ bunx forge setup --merge=smart
|
|
|
35
39
|
- Tech stack details
|
|
36
40
|
|
|
37
41
|
**What gets updated:**
|
|
38
|
-
- Workflow instructions (
|
|
42
|
+
- Workflow instructions (composable TDD process)
|
|
39
43
|
- TDD principles
|
|
40
44
|
- Git conventions
|
|
41
45
|
|
|
@@ -65,7 +69,7 @@ E-commerce platform for selling widgets.
|
|
|
65
69
|
- 80% test coverage
|
|
66
70
|
|
|
67
71
|
## Workflow Configuration
|
|
68
|
-
Use the
|
|
72
|
+
Use the default TDD workflow template:
|
|
69
73
|
1. /plan - Design intent, research, branch + worktree + task list
|
|
70
74
|
2. /dev - Subagent-driven TDD per task
|
|
71
75
|
...
|
|
@@ -165,7 +169,7 @@ Forge adapts its workflow based on the type of work you're doing.
|
|
|
165
169
|
|
|
166
170
|
### Six Change Classifications
|
|
167
171
|
|
|
168
|
-
#### 1. Critical (
|
|
172
|
+
#### 1. Critical (full default template)
|
|
169
173
|
**Use for:** Security, auth, payments, breaking changes
|
|
170
174
|
|
|
171
175
|
```bash
|
|
@@ -178,11 +182,11 @@ bunx forge setup --type=critical
|
|
|
178
182
|
/plan -> /dev -> /validate -> /ship -> /review -> /premerge -> /verify
|
|
179
183
|
```
|
|
180
184
|
|
|
181
|
-
- Full
|
|
185
|
+
- Full default Forge workflow template with all gates
|
|
182
186
|
- OWASP analysis required
|
|
183
187
|
- Design docs for strategic changes
|
|
184
188
|
|
|
185
|
-
#### 2. Standard (6 stages)
|
|
189
|
+
#### 2. Standard (6 stages plus `/status` utility)
|
|
186
190
|
**Use for:** Normal features, enhancements
|
|
187
191
|
|
|
188
192
|
```bash
|
|
@@ -199,7 +203,7 @@ bunx forge setup --type=standard
|
|
|
199
203
|
- Auto-escalates to **Critical** if keywords detected:
|
|
200
204
|
- auth, security, payment, crypto, password, token, session, migration, breaking
|
|
201
205
|
|
|
202
|
-
#### 3. Simple (
|
|
206
|
+
#### 3. Simple (4 stages)
|
|
203
207
|
**Use for:** Bug fixes, small changes
|
|
204
208
|
|
|
205
209
|
```bash
|
|
@@ -209,7 +213,7 @@ bunx forge setup --type=simple
|
|
|
209
213
|
|
|
210
214
|
**Workflow:**
|
|
211
215
|
```
|
|
212
|
-
/dev -> /validate -> /ship
|
|
216
|
+
/dev -> /validate -> /ship -> /premerge
|
|
213
217
|
```
|
|
214
218
|
|
|
215
219
|
- Streamlined for quick fixes
|
|
@@ -232,7 +236,7 @@ bunx forge setup --type=hotfix
|
|
|
232
236
|
- Skip planning and research
|
|
233
237
|
- TDD to reproduce, then fix
|
|
234
238
|
|
|
235
|
-
#### 5. Docs (
|
|
239
|
+
#### 5. Docs (3 stages)
|
|
236
240
|
**Use for:** Documentation only
|
|
237
241
|
|
|
238
242
|
```bash
|
|
@@ -242,7 +246,7 @@ bunx forge setup --type=docs
|
|
|
242
246
|
|
|
243
247
|
**Workflow:**
|
|
244
248
|
```
|
|
245
|
-
/verify -> /ship
|
|
249
|
+
/verify -> /ship -> /premerge
|
|
246
250
|
```
|
|
247
251
|
|
|
248
252
|
- Minimal workflow for documentation changes
|
|
@@ -354,7 +358,7 @@ git checkout -b feat/user-authentication
|
|
|
354
358
|
bunx forge setup --type=critical
|
|
355
359
|
|
|
356
360
|
# Uses Critical profile:
|
|
357
|
-
# - Full
|
|
361
|
+
# - Full default Forge workflow template
|
|
358
362
|
# - OWASP analysis required
|
|
359
363
|
# - Design docs for strategic changes
|
|
360
364
|
```
|
|
@@ -593,8 +597,8 @@ Share project knowledge with team.
|
|
|
593
597
|
|
|
594
598
|
## Related Documentation
|
|
595
599
|
|
|
596
|
-
- [Main README](
|
|
597
|
-
- [Workflow Guide](
|
|
600
|
+
- [Main README](../../README.md) - Overview and quick start
|
|
601
|
+
- [Workflow Guide](../../AGENTS.md) - Complete default Forge workflow template
|
|
598
602
|
- [Setup Guide](SETUP.md) - Agent-specific setup
|
|
599
603
|
- [Agent Install Prompt](AGENT_INSTALL_PROMPT.md) - AI-assisted setup
|
|
600
604
|
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# Greptile Code Review Setup
|
|
2
|
+
|
|
3
|
+
Greptile is an optional review integration. Do not assume it is installed, required by branch protection, or present on every Forge consumer repository. Verify the current repository's checks before documenting Greptile as a required gate.
|
|
4
|
+
|
|
5
|
+
## Verify Current Status
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
gh pr checks <pr-number>
|
|
9
|
+
gh api repos/<owner>/<repo>/branches/<branch>/protection
|
|
10
|
+
```
|
|
11
|
+
|
|
12
|
+
If Greptile appears on PRs and you want it to block merges, add the exact check name reported by GitHub to branch protection. Required check names are repository-specific.
|
|
13
|
+
|
|
14
|
+
## How Greptile Fits Forge
|
|
15
|
+
|
|
16
|
+
- Greptile can provide PR review comments through the GitHub App.
|
|
17
|
+
- A repository may add a custom quality-gate workflow.
|
|
18
|
+
- Forge review work should reply to and resolve actionable review threads.
|
|
19
|
+
- The review adapter scaffold currently supports Greptile-shaped review adapters.
|
|
20
|
+
|
|
21
|
+
## Setup Boundary
|
|
22
|
+
|
|
23
|
+
Forge does not guarantee that Greptile is installed or enforced. Treat Greptile as repository configuration:
|
|
24
|
+
|
|
25
|
+
1. Install/configure the Greptile GitHub App.
|
|
26
|
+
2. Confirm it runs on a PR.
|
|
27
|
+
3. Add required checks only after the check name is visible.
|
|
28
|
+
4. Document the configured branch-protection rule in the repository.
|
|
29
|
+
|
|
30
|
+
## Review Handling
|
|
31
|
+
|
|
32
|
+
When the repo includes the helper script:
|
|
33
|
+
|
|
34
|
+
```bash
|
|
35
|
+
bash .claude/scripts/review-resolve.sh list <pr-number> --unresolved
|
|
36
|
+
bash .claude/scripts/review-resolve.sh stats <pr-number>
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
Reply to each valid, invalid, conflicting, or out-of-scope thread before resolving it.
|
|
40
|
+
|
|
41
|
+
## Known Limits
|
|
42
|
+
|
|
43
|
+
- Greptile availability depends on GitHub App installation and repository access.
|
|
44
|
+
- Branch protection may not include Greptile even when Greptile comments on PRs.
|
|
45
|
+
- Required check names can change if workflows or integrations are renamed.
|
|
46
|
+
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
# Manual Review Guide
|
|
2
|
+
|
|
3
|
+
Manual review remains required even when AI review tools are configured.
|
|
4
|
+
|
|
5
|
+
## Workflow Boundary
|
|
6
|
+
|
|
7
|
+
`/review` is an agent workflow stage. It is not currently documented as a standalone `forge review` CLI command. Use GitHub, `gh`, adapter tools, and the installed agent review skill for PR review work.
|
|
8
|
+
|
|
9
|
+
Default stage context:
|
|
10
|
+
|
|
11
|
+
```text
|
|
12
|
+
/plan -> /dev -> /validate -> /ship -> /review -> /verify
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
These are the 6 workflow stages. Pre-merge is not a stage or a `/premerge` command — it is a documentation-and-handoff gate embedded in `/ship` and `/review`.
|
|
16
|
+
|
|
17
|
+
## Review Inputs
|
|
18
|
+
|
|
19
|
+
Check all available inputs:
|
|
20
|
+
|
|
21
|
+
- GitHub Actions and required checks
|
|
22
|
+
- human review comments
|
|
23
|
+
- Greptile or other review-bot comments, when configured
|
|
24
|
+
- SonarCloud or code-scanning findings, when configured
|
|
25
|
+
- local validation evidence from `bun run check`
|
|
26
|
+
- design and task artifacts under `docs/work/YYYY-MM-DD-<slug>/`
|
|
27
|
+
|
|
28
|
+
## Checklist
|
|
29
|
+
|
|
30
|
+
- The PR description matches the diff.
|
|
31
|
+
- The change stays inside scope.
|
|
32
|
+
- User-facing commands are verified against current code.
|
|
33
|
+
- Security-sensitive claims are backed by code, tests, or configured CI.
|
|
34
|
+
- Tests or validation evidence match the risk of the change.
|
|
35
|
+
- Documentation changes do not present future roadmap work as ready now.
|
|
36
|
+
- Review threads are replied to and resolved where the platform supports it.
|
|
37
|
+
|
|
38
|
+
## Greptile
|
|
39
|
+
|
|
40
|
+
If Greptile is configured for the repository, use the repo's review-thread resolution script when available (it handles Greptile and any other review author):
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
bash .claude/scripts/review-resolve.sh list <pr-number> --unresolved
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
Then reply to each thread with the fix, rejection reason, or follow-up issue.
|
|
47
|
+
|
|
48
|
+
## Final State
|
|
49
|
+
|
|
50
|
+
Before calling review complete:
|
|
51
|
+
|
|
52
|
+
```bash
|
|
53
|
+
gh pr checks <pr-number>
|
|
54
|
+
gh pr view <pr-number> --json reviews,comments,statusCheckRollup
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
All completed required checks should be passing, and unresolved comments should either be fixed or explicitly answered.
|
|
58
|
+
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
# Migration Guide
|
|
2
|
+
|
|
3
|
+
Use this guide when moving older Forge docs, habits, or installed scaffolding toward the v0.0.11 public framing.
|
|
4
|
+
|
|
5
|
+
## What Changed
|
|
6
|
+
|
|
7
|
+
Forge is now documented as a local runtime control plane for AI-assisted engineering. The TDD-first workflow is still the default template, but it is no longer the only public explanation of Forge.
|
|
8
|
+
|
|
9
|
+
## From Stage-Only Docs
|
|
10
|
+
|
|
11
|
+
Old docs often describe Forge as a fixed seven-, eight-, or nine-stage workflow. Replace that with:
|
|
12
|
+
|
|
13
|
+
```text
|
|
14
|
+
Default template: /plan -> /dev -> /validate -> /ship -> /review -> /verify
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
These are the 6 workflow stages. Pre-merge is not a stage or a `/premerge` command — it is a documentation-and-handoff gate embedded in `/ship` and `/review`. A composable `research` skill runs as a phase of `/plan` or standalone. Then add the boundary:
|
|
18
|
+
|
|
19
|
+
```text
|
|
20
|
+
These are agent workflow stages. Not every stage is a standalone forge CLI command.
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
## From `forge setup` Only
|
|
24
|
+
|
|
25
|
+
Use both entry points correctly:
|
|
26
|
+
|
|
27
|
+
- `forge init` creates the `.forge/` adoption skeleton.
|
|
28
|
+
- `forge setup` installs agent instructions, skills, harness files, local Beads compatibility, and optional setup material.
|
|
29
|
+
- `forge setup --sync` is deprecated and retained only to remove old generated Beads/GitHub sync scaffolding when present.
|
|
30
|
+
|
|
31
|
+
## From Singular Agent Flags
|
|
32
|
+
|
|
33
|
+
Replace stale examples that use the old singular agent flag form with:
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
forge setup --agents codex
|
|
37
|
+
forge setup --agents claude,cursor
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
## Version Labels
|
|
41
|
+
|
|
42
|
+
- `0.0.11` is the package version for this public docs/readiness release.
|
|
43
|
+
- `0.0.10` is the previous published package version.
|
|
44
|
+
- Internal labels such as `0.0.19` or `v3` describe roadmap slices or historical codenames. Do not present them as current package versions.
|
|
45
|
+
|
|
46
|
+
## Safe Upgrade Path
|
|
47
|
+
|
|
48
|
+
1. Update docs and examples first.
|
|
49
|
+
2. Run `bun run check`.
|
|
50
|
+
3. Run `npm pack --dry-run`.
|
|
51
|
+
4. Open a PR.
|
|
52
|
+
5. After merge, refresh DeepWiki and verify generated pages against repository docs.
|
|
53
|
+
|
|
54
|
+
## Rollback
|
|
55
|
+
|
|
56
|
+
If migration creates confusion, revert the release PR or open a corrective docs PR. Do not publish a package version unless README, CHANGELOG, quickstart, support docs, and package metadata agree.
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
# Setup Guide
|
|
2
|
+
|
|
3
|
+
This guide covers supported Forge adoption paths. Use [Quickstart](../../QUICKSTART.md) for the shortest path and [Support](SUPPORT.md) when setup fails.
|
|
4
|
+
|
|
5
|
+
## Prerequisites
|
|
6
|
+
|
|
7
|
+
- Git
|
|
8
|
+
- Node.js and Bun
|
|
9
|
+
- GitHub CLI if using PR or sync workflows
|
|
10
|
+
- Optional: Beads (`bd`) as an opt-out issue backend (issue commands use the built-in kernel backend by default)
|
|
11
|
+
|
|
12
|
+
## Install
|
|
13
|
+
|
|
14
|
+
```bash
|
|
15
|
+
bun add -D forge-workflow
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
The package exposes `forge`, `forge-workflow`, and `forge-preflight`.
|
|
19
|
+
|
|
20
|
+
`install.sh` is a thin bootstrapper. It installs or invokes `forge-workflow` and delegates setup to the package; it is not a separate implementation of setup behavior.
|
|
21
|
+
|
|
22
|
+
## Fresh Repository Runtime Skeleton
|
|
23
|
+
|
|
24
|
+
Use `forge init` when you want only the local `.forge/` adoption skeleton:
|
|
25
|
+
|
|
26
|
+
```bash
|
|
27
|
+
bunx forge init --profile minimal --classification standard --harness codex --yes
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
Supported options:
|
|
31
|
+
|
|
32
|
+
```text
|
|
33
|
+
--profile minimal|standard|full
|
|
34
|
+
--classification critical|standard|refactor
|
|
35
|
+
--harness claude,cursor,codex
|
|
36
|
+
--yes
|
|
37
|
+
--force
|
|
38
|
+
--dry-run
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
`forge init` creates `.forge/config.yaml`, `.forge/patch.md`, and `.forge/protected-paths.yaml`. It does not install agent instructions.
|
|
42
|
+
|
|
43
|
+
## Agent Setup
|
|
44
|
+
|
|
45
|
+
Use `forge setup` when you want agent-facing files:
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
bunx forge setup --agents codex --yes
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
Safe examples:
|
|
52
|
+
|
|
53
|
+
```bash
|
|
54
|
+
bunx forge setup --agents claude,cursor
|
|
55
|
+
bunx forge setup --agents claude cursor
|
|
56
|
+
bunx forge setup --all --quick
|
|
57
|
+
bunx forge setup --path ./my-project --agents codex --dry-run
|
|
58
|
+
bunx forge setup --merge smart --agents claude,cursor
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
Use `--agents`, not `--agent`.
|
|
62
|
+
|
|
63
|
+
## Agent Notes
|
|
64
|
+
|
|
65
|
+
Forge currently supports Claude Code, Codex, and Cursor. Hermes support is planned.
|
|
66
|
+
|
|
67
|
+
- Claude Code: installs `.claude/commands`, rules, and skills when selected.
|
|
68
|
+
- Cursor: installs Cursor rules and links back to `AGENTS.md`.
|
|
69
|
+
- Codex: uses `AGENTS.md` and may use Codex skills when installed.
|
|
70
|
+
|
|
71
|
+
Exact generated files depend on selected agents and existing repository files. Use `--dry-run` before applying setup to a mature repo.
|
|
72
|
+
|
|
73
|
+
## Issue Backend
|
|
74
|
+
|
|
75
|
+
Forge issue commands (`forge ready`, `forge show`, `forge claim`, `forge create`, `forge close`) use the built-in **kernel** backend by default. No install or initialization is required — a fresh clone can track issues immediately.
|
|
76
|
+
|
|
77
|
+
## Beads (Opt-Out Backend)
|
|
78
|
+
|
|
79
|
+
Beads (`bd`) is an optional opt-out backend for teams that prefer Dolt-backed sync internals. Select it (precedence, highest first) with `--issue-backend beads`, `FORGE_ISSUE_BACKEND=beads`, or `issueBackend: beads` in `.forge/config.yaml`; only then is `bd` required. Prefer the current Beads installer documented by Beads itself and this repo's toolchain docs. On Windows, avoid stale global install examples if they hit EPERM or shim issues; use the PowerShell installer path described in [Toolchain](../reference/TOOLCHAIN.md).
|
|
80
|
+
|
|
81
|
+
When Beads is selected, health checks:
|
|
82
|
+
|
|
83
|
+
```bash
|
|
84
|
+
bd doctor
|
|
85
|
+
bd dolt status
|
|
86
|
+
forge sync
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
If a feature worktree reports `database "forge" not found on Dolt server`, diagnose in the root checkout before changing issue state. This applies only to the Beads backend.
|
|
90
|
+
|
|
91
|
+
## Deprecated GitHub Sync Cleanup
|
|
92
|
+
|
|
93
|
+
To remove old generated GitHub/Beads sync files from an existing install:
|
|
94
|
+
|
|
95
|
+
```bash
|
|
96
|
+
bunx forge setup --sync
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
`forge setup --sync` is deprecated. It now removes old generated Beads/GitHub sync files instead of creating new sync workflows. Future GitHub issue sync belongs to Forge Kernel/server authority, not Beads runtime files or metadata commits.
|
|
100
|
+
|
|
101
|
+
## Validate Setup
|
|
102
|
+
|
|
103
|
+
```bash
|
|
104
|
+
bunx forge status --json
|
|
105
|
+
bunx forge board --json
|
|
106
|
+
bun run check
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
## Troubleshooting
|
|
110
|
+
|
|
111
|
+
Use [Support and troubleshooting](SUPPORT.md) for:
|
|
112
|
+
|
|
113
|
+
- Beads/Dolt database errors
|
|
114
|
+
- Windows locked files
|
|
115
|
+
- protected-state blocks
|
|
116
|
+
- branch-protection push failures
|
|
117
|
+
- validation failures
|
|
118
|
+
- DeepWiki refresh drift
|