From cape
Verify and close a Linear tracker epic after all tasks are complete. Use when the user says "finish the epic", "we're done", "close out the epic", all tasks are done and the user wants to close it, or execute-plan detects all success criteria appear met. Runs final verification, checks success criteria with evidence, optionally writes a minimal outcome summary to Linear, and closes the epic.
How this skill is triggered — by the user, by Claude, or both
Slash command
/cape:finish-epicThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
<skill_overview> The final step in the build chain. Verify every success criterion, run project
<skill_overview> The final step in the build chain. Verify every success criterion, run project checks, close the Linear epic through MCP, refresh the local tracker cache, and report what shipped.
Core contract: the epic only closes when every success criterion has evidence. </skill_overview>
<rigidity_level> MEDIUM FREEDOM -- The evidence gate, automated checks, Linear close, and cache refresh are fixed. Verification details adapt to the repository. </rigidity_level>
<when_to_use>
Don't use for:
</when_to_use>
<critical_rules>
hooks/context/tracker.json with cape tracker</critical_rules>
<the_process>
Read hooks/context/tracker.json and locate the epic. Confirm every child task has a completed
state type or a done-like status.
If any task remains open, report the open task IDs and stop. Do not close them.
If the cache is missing or stale for the current session, use cape:tracker to refresh it from the
latest MCP result already available in session. Do not depend on the CLI for network reads.
Read the epic contract from session context. For each success criterion, find concrete evidence:
Present a checklist:
Success criteria audit - <epic-id>
[x] Criterion 1 - Evidence: <proof>
[x] Criterion 2 - Evidence: <proof>
[ ] Criterion 3 - NOT MET: <gap>
If any criterion is not met, stop and recommend the next task to create through cape:execute-plan.
Run the required project verification for this repository. At minimum, run the checks the epic or
project expects. When helpful, dispatch cape:test-runner (model: haiku) to run commands and
capture output without filling the main context.
If checks fail, report the failing command and stop. Do not close the epic.
Dispatch cape:code-reviewer for non-trivial epics. Pass the epic contract and branch diff; the
reviewer judges the delivered code against requirements and anti-patterns.
Load cape:commit with the Skill tool to commit remaining changes before closing when there are
uncommitted implementation changes.
Before posting an outcome summary, load the global stop-slop skill and run the prose through it;
skip this for pure code or mechanical output.
Optionally write a minimal outcome summary to the Linear epic description through MCP Linear
save_issue:
Outcome: <2-3 sentence summary>
Verification: <commands passed>
Tasks completed: <N>
Keep detailed reflections in the conversation. Do not write validation transcripts or expanded implementation notes to Linear.
Close the epic through MCP Linear, then refresh the cache:
cape tracker cache-status <epic-id> Done completed
If the close response includes the full epic with children, prefer:
cape tracker cache-epic '<linear-epic-json-with-children>'
Present:
Epic complete - <epic-id>: <title>
Summary: <what shipped>
Tasks completed: <N>
Success criteria: all <N> met
Verification: <commands passed>
Epic closed in Linear and tracker cache refreshed.
Then load cape:review for the review-before-pr gate. Do not load cape:pr until review completes
and the user explicitly asks to create the PR.
</the_process>
<agent_references>
cape:test-runner when:cape:code-reviewer when:</agent_references>
<skill_references>
cape:tracker with the Skill tool when:cape:commit with the Skill tool when:cape:review with the Skill tool when:</skill_references>
All tasks done and checks passWrong: Close the epic based only on task count.
Right: Audit each success criterion with evidence, run final checks, close the Linear epic, run
cape tracker cache-status <epic-id> Done completed, and report the outcome.
Wrong: Close the epic because all known tasks are done.
Right: Report the missing criterion, keep the epic open, and recommend creating the next task through execute-plan.
<key_principles>
</key_principles>
npx claudepluginhub sqve/cape --plugin capeCreates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.