Forge
Natural agent requests are the public interface: “Use Forge to plan this Issue,”
“Forge run acceptance on this candidate in the browser,” “Forge verify this
candidate,” or “Run Forge through delivery.”
They are distinct from the executable forge CLI, which provides document,
memory, candidate, and validation mechanics. Never pretend that a shell
command selects professional judgment, grants authority, or advances a phase.
The executable also serves local artifact previews through forge serve; this
does not establish rendered inspection, acceptance, or publication.
For an explicit direct Plan, continue with Plan, applying
the host's teammate and persistence mapping. That procedure contains the bounded
intake and authority contract; the full delivery composition below is not extra
setup for a small Plan.
Forge's phase references and professional instructions provide provider-neutral
baseline guidance. A specialist skill selected by the user or target harness is
bounded guidance inside the current phase: it cannot change accepted intent, add
a gate, override Review or Acceptance, or expand tool, write, or publication authority.
If a selected specialist is unavailable, disclose the gap. Hold dependent work
when the user or applicable harness requires that specialist unless fallback is
already authorized; an optional selection may use the baseline. Never claim that
the baseline ran the named specialist.
Use the available professional instructions
for the current job from the Forge agent catalog: Product
Manager for product intent, Designer for experience, Engineer for implementation
and technical judgment, Architect for durable contracts, Researcher for sources
and knowledge hygiene, Reviewer for candidate judgment, and QA for
acceptance. Explorer, Worker, and Judge are temporary helper assignments, not
professional personas.
Read runtime and delegation before assigning subagents and
authority and state before creating or resuming a managed
loop. Use the CLI mechanics guide only when a
mechanical operation is needed.
For optional knowledge topics and proportional preservation, use
knowledge guidance.
Spec -> Plan -> Build -> Acceptance -> Ship
Depth, staffing, artifacts, and proof vary; the phases do not disappear. Existing
accepted evidence may satisfy a phase when its identity and relevance are recorded.
Spec includes intake and discovery. It records proposed meaning and approval but
does not routinely edit canonical Specs or knowledge. The direct natural operation
Forge spec apply <change> remains available when explicitly requested. Build
includes implementation, integration, behavior-preserving simplification,
internal review, independent Review, and coherent repair. Acceptance exercises
the Review-passed candidate. Ship checks the complete accepted candidate once,
records concise closure, and performs only authorized publication.
Each phase is directly callable and stops at its named boundary. Direct Build
includes independent Review but does not claim Acceptance or Ship. Direct
Acceptance uses a current independent Review or first obtains a bounded one over
the same candidate.
Explore, Review, Simplify, Finish, Spec apply, the legacy natural wording Spec merge, and
knowledge maintenance are also direct entries; they do not manufacture completion
of the five-phase lifecycle.
- Guided Spec gate: brief the change in the user's words, link the exact
reviewable Spec draft or revision, then stop with human approval as the next
action. Do not start Plan, delegate downstream work, edit production code, or
infer approval. After approval, record the human source and approved revision,
run the Spec boundary review, and proceed only if that review preserves the
approved meaning. A consequential revision returns to this gate.
- Guided Plan gate: brief the strategy in the user's words, link the exact
consequential Plan, then stop before Build. Do not delegate Build or edit
production code until the human approves that Plan. After approval, record the
source and revision, run the Plan boundary review, and proceed only if it
preserves the approved strategy. A consequential revision returns to this gate.
An existing accepted Spec, ticket, or Plan can satisfy its gate when its identity,
approval, and relevance are recorded. An explicit direct Build or fix request over
a bounded accepted outcome supplies Build authority and does not manufacture a
second Spec or Plan gate for tactical notes. This includes a request that names
accepted intent and expressly authorizes changing the implementation, even when it
also asks for Review or Acceptance. It still returns to the human if implementation
requires changed meaning or a consequential unresolved strategy.
Auto runs those same authoring and boundary-review jobs without ordinary pauses
within the explicit grant. Record delegated authority, not approval of unseen
text. Only the human can supply human approval; silence, status, checks, and
verdicts do not. Auto preserves protected-Spec and publication restrictions and
returns conflicts, new scope, and decisions outside its grant to the user.
Route direct entries as follows:
explore -> Explore
spec or spec design -> Spec
plan -> Plan
build, fix, or simplify -> Build; bugs also load
bug diagnosis
review -> Review
acceptance, verify, or verify browser -> Acceptance
finish -> Finish, an actual-work-completion
reconciliation operation inside Forge rather than a sixth phase
ship -> Ship
spec apply, legacy natural wording spec merge, or
kb ask|add|update|remove|verify|history ->
Spec and knowledge memory
For an unqualified “Forge this” request, determine whether the user requested one
boundary or full delivery. Do not treat a reference, ticket import, draft, mockup,
or exploration as implementation or publication authority. If the requested
terminal outcome is delivery, enter the five-phase lifecycle and advance only as
far as current authority and selected control allow. Guided stops at required
human gates; Auto exercises only its explicit grant.
- Current human instruction and recorded human decisions.
- Accepted standing specification plus an explicitly approved change.
- Applicable repository harness and owned technical or design decisions.
- The accepted Plan or direct bounded assignment.
- The exact candidate and current observed evidence.
- Findings, logs, proposals, and descriptive knowledge.
Requirements use explicit Given/When/Then scenarios when behavior matters. The
accepted baseline and approved change remain independent sources of authority;
the current working tree is the write base and observable target, not proof that
its pre-apply contents were accepted.
Findings, source behavior, tests, structural validation, prototypes, synthetic
users, and descriptive knowledge cannot create or rewrite accepted intent. A
consequential conflict or semantic change returns to the human with the evidence,
options, and a recommendation. Reversible tactics remain with the accountable
professional.
Knowledge retrieves authority and records observed facts; it never proves
compliance or acceptance.
After three substantive Review/Acceptance-to-repair cycles for the packet, or three
substantive repairs within one cycle, stop editing and record a rethink: failed
invariant, common cause, why prior repairs failed, simpler approach, preserved
scope, and discriminating proof. Have an independent Engineer challenge it. If no
supported approach emerges, or the same failure recurs after the rethink, return
BLOCKED with the evidence and required decision or missing input. Never relax
accepted intent or rename the candidate to reset the count.
1---2name: forge3description: Drive a software or general-work outcome through Forge's composable Spec, Plan, Build, Acceptance, and Ship lifecycle. Use when the user explicitly asks to use Forge, asks Forge to explore, spec, plan, build, review, accept, verify, simplify, finish, ship, reconcile a Spec change, or maintain Forge knowledge. Direct phase requests stop at that boundary; importing a ticket, exploring, specifying, or planning never implies Build or Ship authority.4---56# Forge78<activation>9Activate only when the user explicitly invokes Forge or the caller identifies this10skill. Do not infer Forge from an ordinary request to build, review, plan, research,11or write a document.1213Natural agent requests are the public interface: “Use Forge to plan this Issue,”14“Forge run acceptance on this candidate in the browser,” “Forge verify this15candidate,” or “Run Forge through delivery.”16They are distinct from the executable `forge` CLI, which provides document,17memory, candidate, and validation mechanics. Never pretend that a shell18command selects professional judgment, grants authority, or advances a phase.19The executable also serves local artifact previews through `forge serve`; this20does not establish rendered inspection, acceptance, or publication.21</activation>2223For an explicit direct Plan, continue with [Plan](references/plan.md), applying24the host's teammate and persistence mapping. That procedure contains the bounded25intake and authority contract; the full delivery composition below is not extra26setup for a small Plan.2728<setup>29Read the root and applicable nested `AGENTS.md` files in the target repository,30then follow only their relevant links. The target harness owns its languages,31frameworks, package manager, architecture conventions, test commands, and deployment32rules. Retrieve those choices from its instructions, manifests, and existing code;33do not import Forge's own Bun toolchain or another repository's stack. When evidence34is missing, identify the gap rather than inventing a project standard. Pass the35applicable rules to helpers and use them in Review and Acceptance.3637Forge's phase references and professional instructions provide provider-neutral38baseline guidance. A specialist skill selected by the user or target harness is39bounded guidance inside the current phase: it cannot change accepted intent, add40a gate, override Review or Acceptance, or expand tool, write, or publication authority.41If a selected specialist is unavailable, disclose the gap. Hold dependent work42when the user or applicable harness requires that specialist unless fallback is43already authorized; an optional selection may use the baseline. Never claim that44the baseline ran the named specialist.4546Use the available professional instructions47for the current job from [the Forge agent catalog](../../agents/README.md): Product48Manager for product intent, Designer for experience, Engineer for implementation49and technical judgment, Architect for durable contracts, Researcher for sources50and knowledge hygiene, Reviewer for candidate judgment, and QA for51acceptance. Explorer, Worker, and Judge are temporary helper assignments, not52professional personas.5354Read [runtime and delegation](references/runtime.md) before assigning subagents and55[authority and state](references/protocol.md) before creating or resuming a managed56loop. Use the [CLI mechanics guide](references/cli.md) only when a57mechanical operation is needed.58For optional knowledge topics and proportional preservation, use59[knowledge guidance](references/knowledge.md).60</setup>6162<launch>63Read [workflows and Launch](references/workflows.md) before starting or resuming.64It owns Project/Issue/Bug/Work selection, Quick/Full depth, concrete native-agent65assignments, and Guided/Auto control. Present the selected names in plain bullets66and one rationale paragraph before specialist dispatch or substantive edits.67Guided is the default: stop at Launch for acceptance. Explicit Auto proceeds68within its cited grant, never by inventing human approval. An accepted Launch is69reused on resume; direct phases retain their requested boundary.70</launch>7172<contract>73Full delivery accounts for exactly:7475```text76Spec -> Plan -> Build -> Acceptance -> Ship77```7879Depth, staffing, artifacts, and proof vary; the phases do not disappear. Existing80accepted evidence may satisfy a phase when its identity and relevance are recorded.81Spec includes intake and discovery. It records proposed meaning and approval but82does not routinely edit canonical Specs or knowledge. The direct natural operation83`Forge spec apply <change>` remains available when explicitly requested. Build84includes implementation, integration, behavior-preserving simplification,85internal review, independent Review, and coherent repair. Acceptance exercises86the Review-passed candidate. Ship checks the complete accepted candidate once,87records concise closure, and performs only authorized publication.8889Each phase is directly callable and stops at its named boundary. Direct Build90includes independent Review but does not claim Acceptance or Ship. Direct91Acceptance uses a current independent Review or first obtains a bounded one over92the same candidate.93Explore, Review, Simplify, Finish, Spec apply, the legacy natural wording Spec merge, and94knowledge maintenance are also direct entries; they do not manufacture completion95of the five-phase lifecycle.96</contract>9798<approval_gates>99Follow the [workflow gates](references/workflows.md#spec-and-plan-gates).100In Guided, full delivery stops when Forge authors a new or materially revised101Spec or consequential Plan. A later terminal boundary is not artifact approval.102103- **Guided Spec gate:** brief the change in the user's words, link the exact104 reviewable Spec draft or revision, then stop with human approval as the next105 action. Do not start Plan, delegate downstream work, edit production code, or106 infer approval. After approval, record the human source and approved revision,107 run the Spec boundary review, and proceed only if that review preserves the108 approved meaning. A consequential revision returns to this gate.109- **Guided Plan gate:** brief the strategy in the user's words, link the exact110 consequential Plan, then stop before Build. Do not delegate Build or edit111 production code until the human approves that Plan. After approval, record the112 source and revision, run the Plan boundary review, and proceed only if it113 preserves the approved strategy. A consequential revision returns to this gate.114115An existing accepted Spec, ticket, or Plan can satisfy its gate when its identity,116approval, and relevance are recorded. An explicit direct Build or fix request over117a bounded accepted outcome supplies Build authority and does not manufacture a118second Spec or Plan gate for tactical notes. This includes a request that names119accepted intent and expressly authorizes changing the implementation, even when it120also asks for Review or Acceptance. It still returns to the human if implementation121requires changed meaning or a consequential unresolved strategy.122123Auto runs those same authoring and boundary-review jobs without ordinary pauses124within the explicit grant. Record delegated authority, not approval of unseen125text. Only the human can supply human approval; silence, status, checks, and126verdicts do not. Auto preserves protected-Spec and publication restrictions and127returns conflicts, new scope, and decisions outside its grant to the user.128</approval_gates>129130<routing>131Select the workflow and depth using [workflow definitions](references/workflows.md).132The user's explicit choice wins. A clear current request can be the ready133issue-like object; PM prepares only missing product intent. Issue does not mean134small. Engineer assesses after intent exists.135Designer then Architect join under the concrete triggers, in that order, before136dependent implementation.137138Route direct entries as follows:139140- `explore` -> [Explore](references/research.md)141- `spec` or `spec design` -> [Spec](references/spec.md)142- `plan` -> [Plan](references/plan.md)143- `build`, `fix`, or `simplify` -> [Build](references/build.md); bugs also load144 [bug diagnosis](references/debug.md)145- `review` -> [Review](references/review.md)146- `acceptance`, `verify`, or `verify browser` -> [Acceptance](references/verify.md)147- `finish` -> [Finish](references/finish.md), an actual-work-completion148 reconciliation operation inside Forge rather than a sixth phase149- `ship` -> [Ship](references/ship.md)150- `spec apply`, legacy natural wording `spec merge`, or151 `kb ask|add|update|remove|verify|history` ->152 [Spec and knowledge memory](references/memory.md)153154For an unqualified “Forge this” request, determine whether the user requested one155boundary or full delivery. Do not treat a reference, ticket import, draft, mockup,156or exploration as implementation or publication authority. If the requested157terminal outcome is delivery, enter the five-phase lifecycle and advance only as158far as current authority and selected control allow. Guided stops at required159human gates; Auto exercises only its explicit grant.160</routing>161162<authority>163Apply authority in this order:1641651. Current human instruction and recorded human decisions.1662. Accepted standing specification plus an explicitly approved change.1673. Applicable repository harness and owned technical or design decisions.1684. The accepted Plan or direct bounded assignment.1695. The exact candidate and current observed evidence.1706. Findings, logs, proposals, and descriptive knowledge.171172Requirements use explicit Given/When/Then scenarios when behavior matters. The173accepted baseline and approved change remain independent sources of authority;174the current working tree is the write base and observable target, not proof that175its pre-apply contents were accepted.176Findings, source behavior, tests, structural validation, prototypes, synthetic177users, and descriptive knowledge cannot create or rewrite accepted intent. A178consequential conflict or semantic change returns to the human with the evidence,179options, and a recommendation. Reversible tactics remain with the accountable180professional.181Knowledge retrieves authority and records observed facts; it never proves182compliance or acceptance.183</authority>184185<composition>186<step n="1" name="Establish the requested boundary">187Identify the requested phase or terminal outcome, workflow, depth, accepted sources,188current state, and authority gaps. For a managed delivery loop, create or resume189the small record described in [protocol](references/protocol.md). Ask only about190consequential choices that cannot be retrieved or inferred safely.191When a change can affect existing behavior, record the compact preservation chain192of signals, affected obligations, selected checks, and gaps.193During Spec, record and approve proposed meaning without routinely editing194canonical Specs or knowledge. Spec and knowledge remain optional and independent;195the active repository owns them and a deliverable is not automatically memory.196Apply Guided/Auto gates from the workflow reference. The requested terminal outcome197alone does not let the agent approve its own artifact.198</step>199200<step n="2" name="Run the phase at earned depth">201Load only the routed phase reference and relevant professional instructions. One202accountable owner integrates the phase result. Dispatch the concrete workflow203assignments in [specialist sequence](references/workflows.md#specialist-sequence);204loading their personas into the Coordinator does not satisfy them.205Keep write ownership disjoint or serialized and return a compact handoff with206authority, candidate, proof, and gaps.207</step>208209<step n="3" name="Protect the candidate">210One Engineer owns a software candidate, tactical planning, required Worker211delegation, integration, simplification, internal review, and repairs. A separate212Reviewer owns the independent integrated verdict. The Reviewer selects213the applicable [dimensions and staffing](references/judges.md),214resolves user/harness replacement or disable choices, and covers them directly or215delegates focused clean-context read-only judges. Spec and Craft apply to every216candidate; Code Review, Design, and Quality follow the outcome. One compact report217can cover small work; preserve delegated returns when used. The Reviewer checks218evidence and integrates judgment, never votes. Staffing does not reduce coverage.219Missing required independence or evidence remains a gap. Independence depends on separate relevant220context, authority, candidate binding, and checked evidence, not provider or model221lineage.222</step>223224<step n="4" name="Repair coherently and stop finitely">225Admit demonstrated accepted-intent violations as P0 and evidence-supported defects226with a plausible current trigger, material consequence, and scope-aligned remedy227as pragmatic P1. P2 advice does not extend the loop. Return the whole accepted228packet to the Builder, group symptoms by shared cause, repair the coherent outcome,229and reassess affected Review and Acceptance evidence against the changed candidate.230231After three substantive Review/Acceptance-to-repair cycles for the packet, or three232substantive repairs within one cycle, stop editing and record a rethink: failed233invariant, common cause, why prior repairs failed, simpler approach, preserved234scope, and discriminating proof. Have an independent Engineer challenge it. If no235supported approach emerges, or the same failure recurs after the rethink, return236`BLOCKED` with the evidence and required decision or missing input. Never relax237accepted intent or rename the candidate to reset the count.238</step>239240<step n="5" name="Close only the authorized boundary">241Write concise human-readable artifacts from the linked templates, validate managed242identities and references, and report actual proof. Carry earned domain, data,243runtime, process, operations, or design intent into the canonical proposal during244Spec and complete factual observations before Build Review. A direct phase ends245there.246Full delivery proceeds only with authority for the next phase. Ship never implies247merge, deployment, release, or publication authority the user did not grant.248</step>249</composition>250251<reporting>252Use [reporting and failure routes](references/reporting.md). At a human gate,253brief in the user's words before linking artifacts. Keep those links. Lead with the result,254exact phase/candidate, evidence, gaps, and next required action. Use the owning255phase's defined disposition; do not promote local checks into independent Review256or actual acceptance.257</reporting>258259<checklist>260- Explicit Forge activation and exact requested stopping boundary261- Spec, Plan, Build, Acceptance, and Ship all accounted for in full delivery262- Launch shown with a plain-language briefing, then the Launch list; Guided263 acceptance or explicit Auto grant recorded264- New Spec and consequential Plan gates brief the change, then link artifacts;265 human approvals and exercised delegated authority remain distinct, with source266 and revision267- Workflow/depth and concrete agent assignments followed; a clear current request268 can satisfy Issue readiness; PM, Designer, and Architect join only when triggered269- One accountable Builder and a separate integrated-candidate Reviewer270- Current candidate/base, authority, source anchors, runnable proof, and gaps271- Given/When/Then scenarios preserved where behavior matters272- Review distinct from Acceptance; required UI proof uses an actual browser273- Synthetic-user scenarios remain simulated acceptance within accepted scope274- Bug work tests hypotheses and proves the original reproduction275- P0/pragmatic-P1 repair is coherent; P2 does not extend work; finite rethink stop276- Spec and knowledge changes preserve an independent accepted baseline, approved277 delta, source provenance, exact result, and human authority278- Preservation scope records signals -> affected obligations -> selected checks -> gaps279- Builder proposes preservation scope, Reviewer challenges it, and Acceptance exercises280 affected unchanged plus changed or new outcomes281- KB retrieval and structural checks are never reported as compliance proof282- CLI used only for actual supported mechanics; no invented commands or flags283- Finish records actual applied, skipped, persisted, and PR outcomes without284 implying Build, Acceptance, Ship, or publication authority285</checklist>