From forge
Continue an existing Forge project after a pause, restart, or interruption. Triggers: "forge continue", "pick up where we left off", "resume".
npx claudepluginhub cjy5507/forge --plugin forgeThis skill uses the workspace's default tool permissions.
<Purpose>
Implements structured self-debugging workflow for AI agent failures: capture errors, diagnose patterns like loops or context overflow, apply contained recoveries, and generate introspection reports.
Monitors deployed URLs for regressions in HTTP status, console errors, performance metrics, content, network, and APIs after deploys, merges, or upgrades.
Provides React and Next.js patterns for component composition, compound components, state management, data fetching, performance optimization, forms, routing, and accessible UIs.
<Use_When>
Read .forge/state.json. If missing → "No active Forge project. Use forge to start one."
| Phase | Files to load |
|---|---|
| 0–1 | state.json only |
| 2 | + spec.md |
| 3 | + spec.md, code-rules.md, design/, contracts/, plan.md, runtime.json |
| 4 | + spec.md, code-rules.md, design/, contracts/, plan.md, tasks/, runtime.json |
| 5–7 | + spec.md, holes/, runtime.json |
| 8 | + spec.md, holes/, delivery-report/ |
If .forge/runtime.json exists, always load it — it has lane ownership, blockers, and handoff notes.
Keep it short. The user needs three things:
Forge: {{project_name}}
Phase {{N}}/{{9 for build, 7 for repair}} — {{phase_name}}
{{one-line summary of where things stand}}
Next: {{what to do now}}
{{if blockers: list them}}
Examples:
Forge: my-saas-app
Phase 4/9 — develop
3 lanes active, 1 blocked (auth waiting on DB schema)
Next: Continue auth-api lane after resolving DB contract
Forge: my-saas-app
Phase 6/8 — fix
2 blockers remaining (login redirect loop, rate limit bypass)
Next: Diagnose login redirect — attempt 1/3
Do NOT dump every runtime field. Surface only what's actionable.
Evaluate in this exact order. Take the FIRST match — do not skip ahead.
| Priority | Condition | Action |
|---|---|---|
| 1 | Customer blocker exists | Surface the question. Don't pretend work can continue without user input. |
| 2 | Internal blocker exists | Route to the owning team's phase skill with the blocker context. |
| 3 | Saved analysis is stale, or repair flow has no analysis yet | Route to forge:analyze first. Refresh analysis before phase work continues. |
| 4 | Lane has handoff notes and is in_progress | Load that lane's task file, worktree, and latest handoff note. Continue in-lane. |
| 5 | Runtime has a designated next lane (next_lane) | Load that lane's context. This is the lead dev's recommendation for where to pick up. |
| 6 | None of the above | Fall back to the current phase skill. |
The goal: the user types forge continue and lands on the single most useful thing to work on, with full context loaded and zero re-explanation needed.
On resume, recommendedAgentsFor() provides layer-classified agent recommendations.
Dispatch agents according to their layer classification (layer0, layer2_subagent, etc.).
Apply session age-aware dispatch (from state-restore.mjs; based on session wall-clock, not artifact dependencies):
forge continue, then resume from saved state instead of restarting discoveryStandard mode (build, N/9):
Repair mode (N/7):
Express mode:
Invoke the target skill with loaded context. The skill takes over from here. Do NOT ask the user for extra confirmation during resume unless a true customer blocker or an approved ambiguity gate is hit.
<Tool_Usage>