close-epic
Installation
SKILL.md
Close Epic
A few gh calls and one honest summary. Never closes an epic with open sub-issues. Everything it computes comes from GitHub state (labels, assignees, marker comments, PR reviews), so it works the same on any host and needs nothing from the conversation.
Usage: /close-epic <epic#> [--dry-run]
1. Check
EPIC=42
gh issue view "$EPIC" --json state,subIssuesSummary,subIssues \
--jq '{state, summary: .subIssuesSummary, open: [.subIssues.nodes[] | select(.state=="OPEN") | .number]}'
openis non-empty → stop. Report the open tickets and their assignees; the epic is not done.stateis alreadyCLOSED→ stop; nothing to do.- Also check that the integration-branch PR (if any) has merged to
main:gh pr list --search "head:feat/<slug>" --state merged. In a multi-repo epic, check every repo named in the plan comment (gh pr list -R owner/repo …). If any has not merged, say so and ask whether to close anyway; the default is no.