← ClaudeAtlas

forge-releaselisted

Merge approved issue code to production branch and trigger deployment. Use this skill when an issue has been approved at staging and needs to be released — squash-merges the ISS-* feature branch to the production branch, triggers Coolify deploy, and closes the issue. Triggers on: /forge-release, releasing an issue, merging to production, deploying to production. Also use when the pipeline needs to move an issue from released to closed.
SidCorp-co/forge · ★ 5 · AI & Automation · score 73
Install: claude install-skill SidCorp-co/forge
# Forge Release The final step in the issue pipeline: `released → closed`. Lands the issue's own changes onto the production branch and triggers deployment. This is a lightweight skill — no codebase exploration, no review. Just land the diff, deploy, clean up. The ISS-* branch holds this issue's changes. Release = get **this issue's own changes — and only those** — onto `productionBranch`, then deploy and close. The one non-obvious trap is called out in Step 6. **State-never-lies (VISION №10):** `merged_at` and the "Released" comment are promises other issues rely on — a blocks-gate/decompose child dispatches the moment `merged_at` is stamped, trusting the base branch now has this code. Never let branch-name equality or a push exit code stand in for verified git ancestry (see Step 4 and Step 8) — a wrongly-skipped merge or a silently-failed push must halt the release, not complete it. ## Usage ``` /forge-release <documentId> ``` ## Tools - **forge_issues** — get issue data, update status - **forge_comments** — post release comment - **forge_config** — get baseBranch, productionBranch, Coolify config - **forge_coolify_deploy** — trigger production deploy (if configured) - **Bash** — git merge, push, branch cleanup ## Workflow ### Step 0: Local-only mode guard Call `forge_config → get` and `forge_coolify_deploy → list`. If `previewDeploy` is null/missing AND Coolify list is empty → project is in **local-only mode**. In local-only mode, `forge-release` is not applicab