forge-force-advance
Skill2 starsChanged 5 months agoMITView on GitHub
Override a blocking gate and advance the pipeline stage, recording a
In this repository46 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- forge-opencode/CLAUDE.mdCLAUDE.md
- forge-adoptSkill
- forge-arch-proSkill
- forge-archSkill
- forge-autopilotSkill
- forge-autopilot-stopSkill
- forge-build-proSkill
- forge-buildSkill
- forge-deploySkill
- forge-doctorSkill
- dreamer-runSkill
- forge-evalSkill
- forge-feedbackSkill
- flowSkill
- graduateSkill
- health-checkSkill
- forge-initSkill
- forge-monitorSkill
- forge-orchestrateSkill
- forge-plan-proSkill
- forge-planSkill
- preflightSkill
- forge-product-proSkill
- forge-productSkill
- forge-releaseSkill
- forge-resolveSkill
- forge-resumeSkill
- forge-retroSkill
- forge-reviewSkill
- forge-rulesSkill
- forge-set-profileSkill
- skill-creatorSkill
- forge-spec-proSkill
- forge-specSkill
- forge-sprint-proSkill
- forge-sprintSkill
- forge-srs-proSkill
- forge-srsSkill
- forge-statusSkill
- forge-trace-matrixSkill
- forge-uninstallSkill
- forge-validateSkill
- watchSkill
- watch-stopSkill
- forge-whySkill
The file
We split this skill into the rules it gives an agent
5 rules. About 0 are common, 4 are distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈4
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 42
If the user hasn't provided a reason yet, ask: "Force-advance records a permanent lesson.
- Distinctive: line 45
Wait for the user's reason.
- Distinctive: line 48
Run the force-advance command:
- Very specific: line 54
Use --to N if the user explicitly asked to jump to a specific stage rather than advance by one.
- Distinctive: line 63
After running, all of these should be true:
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Forge Force Advance
Bypasses the gate-blocker check, advances pipeline/state.md by one stage, and
records a permanent lesson with the user's reason. The overridden gate criteria
themselves remain failed — they'll show up again in subsequent gate checks unless
actually resolved.
This is a conscious admission that work was incomplete at advance time. The lesson is the only protection against that fact being forgotten.
When to Use
- User says
/forge:force-advance - User says "force advance", "skip the gate", "advance anyway", "override the blocker"
- User has acknowledged they cannot or will not resolve a blocker right now (e.g., needs ops help, blocked on a third party, deliberately deferring scope)
- User has already heard
/forge:whyoutput and decided to proceed anyway
When NOT to Use
- The user is asking how to fix a blocker — explain or run
/forge:whyinstead - The blocker is trivially fixable (missing file, missing section heading) — fix it
- The user hasn't asked to override — never proactively suggest force-advance as a workaround; gates exist for a reason
Steps
- If the user hasn't provided a reason yet, ask: "Force-advance records a permanent lesson. What's the reason you're advancing despite the active blockers? (≥ 10 characters; this will be reviewed in retro.)"
- Wait for the user's reason. Confirm it's at least 10 non-whitespace characters.
- (Optional but recommended) Run
/forge:whyfirst to surface the actual blockers so the lesson context is fresh. - Run the force-advance command:
Usepython ${CLAUDE_PLUGIN_ROOT}/scripts/force-advance.py \ --reason "<the user's exact reason>" \ --cwd "<project>"--to Nif the user explicitly asked to jump to a specific stage rather than advance by one. - Present the script output to the user. Highlight:
- The stage transition (Stage N → Stage N+1)
- The list of blockers that were overridden
- The fact that the lesson is now recorded and will appear in
/forge:retro
Verification
After running, all of these should be true:
pipeline/state.mdshowscurrent_stageincrementedpipeline/state.mdhas a new row in## Stage HistorymarkedFORCE.forge/lessons.yamlhas a new entry taggedforce-advancetasks/lessons.mdhas a human-readable summary under## Lessons- The user understands the overridden blockers will reappear in the next gate check for the new stage's own criteria, but the old stage's blockers persist as failed unresolved work
Examples
User: "Just force advance. I'll fix the missing ADRs later."
Claude: "Before I do, what's the reason? It'll be recorded as a lesson and reviewed at the end of the cycle (≥ 10 characters)."
User: "Deferring ADRs to next sprint; team consensus from today's standup."
Claude: [runs python ${CLAUDE_PLUGIN_ROOT}/scripts/force-advance.py
--reason "Deferring ADRs to next sprint; team consensus from today's standup."
--cwd "$(pwd)"]
"Done:
Stage 3 → 4 (force-advanced)
Blockers overridden: G3-002, G3-005
Reason: 'Deferring ADRs to next sprint; team consensus from today's standup.'
Lesson recorded with tag: force-advance
Will surface in /forge:retro at end of cycle.Note that G3-002 and G3-005 remain failed in /forge:status — when you address
them next sprint, they'll automatically clear."
User: "/forge:force-advance --reason 'urgent'"
Claude: "That reason is only 6 characters — force-advance requires at least 10 non-whitespace characters so the retro context is meaningful. Can you flesh it out? For example: 'urgent demo for customer Monday; will fix gate next cycle'."
User: "Why won't G1-001 pass? Just skip it for now."
Claude: "Let me first check what G1-001 actually requires — running
/forge:why G1-001." [runs why.py G1-001]
"It needs at least one functional requirement with a REQ-NNN ID in
pipeline/01-srs/srs.md. That's usually a 30-second fix. Would you like me to
help add a REQ entry, or do you still want to force-advance?"
[Wait for the user to choose. Do not assume force-advance is the right answer just because the user mentioned skipping.]
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

