issue-fix
Use when asked to pick up a GitHub issue. Most common invocation is `/issue-fix <N>` or `/issue-fix
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Use when asked to pick up a GitHub issue. Most common invocation is `/issue-fix <N>` or `/issue-fix
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Use when starting work on a Jira story — loads the ticket's context (summary, description, acceptance criteria, comments, attachments) into the conversation and downloads attachments by default. --delegate also writes a self-contained context doc for agent handoff. Trigger phrases: "bootstrap PROJ-123", "load jira ticket PROJ-123", "start work on PROJ-123", "jira-bootstrap PROJ-123".
Use when the user wants a structured, multi-session learning experience on a technical topic with persistent notes and progress tracking. Triggers include "let's learn X", "teach me X", "I want to study X", "I want to study/prepare for an interview on X", explicit /socratic-learning, "resume the learning session", or when CWD already contains an INDEX.md learning corpus and the user asks "what's next" or "continue".
Stricter variant of `/ensure-code-quality`: review every quality violation in the changes you introduced this session and fix them, with two extra teeth — the automated Python guard-clause checker runs in rule 8, and rule 6 (no in-function / mid-module imports) applies to `tests/` too, not just source. **Default scope:** only the lines you added — the `+` lines from `git diff` (staged and unstaged), plus the full contents of any untracked files you created. Pre-existing lines stay out of scope.
Use when about to claim a code change is complete or ready to commit in the current session, when wrapping up a coding task with edits to Python (or other) source files, or when the user explicitly invokes `/ensure-code-quality` (optional `extend` argument broadens scope to full touched files instead of just the lines Claude added).
Use when the user asks to create a git commit, commit current work, or prepare a commit from staged changes. Inspects the relevant diff, writes one commit message matching the repository convention, and runs git commit.
Use when bootstrapping a new project's documentation scaffolding, when running `/init` in a fresh repo that lacks `docs/roadmap/` or `docs/architecture/`, or when the user asks to "scaffold the project docs", "set up the roadmap structure", "init the doc folders". Creates `docs/roadmap/{README.md, phases.md}` and `docs/architecture/README.md` with self-documenting starter templates, then adds a thin pointer block to the project's `CLAUDE.md` (creating it if absent).
| name | issue-fix |
| description | Use when asked to pick up a GitHub issue. Most common invocation is `/issue-fix <N>` or `/issue-fix |
When handed an issue number, the failure mode is jumping straight to a fix that's already shipped, or fixing the wrong half. Before touching code:
The sibling skill for creating an issue is issue-file.
/issue-fix <N> or /issue-fix #<N> — the canonical invocation. Any extra
context after the number is optional (hints about scope or approach).#N with implied "do this".gh issue view <N> --json number,title,state,body,labels,comments
Always read the comments — not optional, even on fresh-looking issues.
Humans and other contributors extend issues via the GitHub UI with comments,
and issue-file deliberately adds new info as comments rather than editing
the body. Skipping them means missing scope reductions, blockers, deferrals,
"I started this in branch foo", or a found root cause.
Run these checks before planning any code change:
## (a) Commit messages referencing the issue. Project commit styles vary —
## try several patterns. The most common in repos that follow a strict
## convention is `Iss #<N>:` as a prefix.
git log --all --oneline --grep="#<N>\|Iss <N>\|Fixes #<N>\|Closes #<N>"
## (b) If the issue lists specific paths/symbols, grep them in current code.
## If the code matches the issue's "after" / "fix" shape, it shipped.
## (c) Look for files the issue says to create (e.g. new migration script,
## new endpoint, new module). If present → likely shipped.
Outcomes:
superpowers:brainstorming first; for multi-step
implementation, use superpowers:writing-plans.git log --oneline -20 for the prevailing style. Common patterns:
Iss #<N>: <subject> (most informative; works with the grep above)Fix #<N>: <subject> / Fixes #<N> in body (auto-closes on merge to
default branch — be deliberate about that)Iss #<N> part K: <subject> per commit.Before claiming done, walk the acceptance list literally. If any criterion is
"tests pass" / "lint clean", run them — don't assume. (See
superpowers:verification-before-completion.)
After the resolving commit(s) are merged, post a close comment with concrete evidence, not just a sha. The closed issue is the historical record — make it self-explanatory months later.
Resolved by <sha> ("<commit title>"):
- `path/to/file.py:42` — what this commit added/changed
- `path/to/other.py:101` — second piece
- Acceptance criteria walked: [✓] tests pass, [✓] cascade verified, [✓] …
For multi-commit fixes:
Resolved by:
- <sha1> — part 1: <subject>
- <sha2> — part 2: <subject>
- <sha3> — part 3: <subject>
Evidence:
- `path:line` — …
For "found-already-done" closes:
Resolved — implementation landed in <sha> ("<title>"):
- <bullet of what shipped, with file:line>
- <…>
Acceptance criteria all met; closing.
Auto-mode classifiers may block bulk closes when the instruction is generic. If asked to "close them" against a list, either:
| Mistake | Fix |
|---|---|
| Jumping to implementation without checking if it's done | Step 2 first. Grep commits + code for the issue's named symbols. |
| Ignoring issue comments | Comments hold scope changes, blockers, deferrals. Read them. |
| Closing partial work | If only some acceptance criteria are met, comment with what's done vs what remains. Keep open. |
| One-line close comments ("done") | Use the structured shape above — file:line + sha. The closed page is the record. |
| Wrong commit-message convention | Check git log --oneline -20 for the project's style. |
| Fixing against the issue body when the code has moved | If named files/symbols don't exist, ask whether to rescope before implementing. |
| Trying to bulk-close without explicit authorization | Quote each issue back or get blanket pre-auth first. |
| Re-deriving what "done" means | Use the issue's Acceptance criteria checklist literally. |