name: fix-issue
description: >
Fix a single GitHub issue end-to-end: triage, research, write the fix,
review, and create a PR. Use when asked to fix an issue: "fix issue 1234",
"resolve #500", "create a PR for issue 200".
argument-hint: ""
Fix Issue
Given GitHub issue $ARGUMENTS, decide what to do with it and either close it or fix it. This skill orchestrates the composable skills — it owns the decision tree, not the individual steps.
1. Triage
Invoke /triage-issue $ARGUMENTS to understand the issue and decide what
to do. This runs in a forked subagent and returns a verdict.
2. Act on the triage result
If triage says close it — comment with the reason and close:
gh issue close $ARGUMENTS --repo docker/docs \
--comment "<one sentence explaining why>
Generated by <active coding agent name>"
Done.
If triage says escalate upstream — comment noting the repo and stop:
gh issue comment $ARGUMENTS --repo docker/docs \
--body "This needs to be fixed in <upstream-repo>.
Generated by <active coding agent name>"
Done.
If triage says leave it open — comment explaining what was checked and what's unclear. Do not close. Done.
End every issue comment with an accurate agent-disclosure footer that names
the active coding agent, for example Generated by Codex or Generated by Claude Code.
If triage says fix it — proceed to step 3.
3. Research
Invoke /research to locate affected files, verify facts, and identify
the fix. The issue context carries over from triage. This runs inline —
findings stay in conversation context for the write step.
If research reveals the issue is upstream or cannot be fixed (e.g. unverifiable URLs), comment on the issue and stop.
4. Write
Invoke /write to create a branch, make the change, format, self-review,
and commit.
5. Review
Invoke /review-changes to check the diff for correctness, coherence, and
mechanical compliance. This runs in a forked subagent with fresh context.
If issues are found, fix them and re-review until clean.
6. Create PR
Invoke /create-pr to push the branch and open a pull request.
7. Return to main
git checkout main
8. Report
Summarize what happened: the issue number, what was done (closed, escalated, fixed with a PR link), and why — in a sentence or two.