name: gh-issue
description: Work a GitHub issue end-to-end — fetch, branch, implement, test. Handles bugs, features, chores. Invoke with /gh-issue .
disable-model-invocation: true
argument-hint:
Steps
Fetch the issue:
gh issue view $ARGUMENTSRead the title, description, comments, and any linked PRs to understand intent. Note the issue type (bug, feature, chore) — it shapes the commit type and branch prefix.
If not already on a feature branch, create one. Pick a prefix that matches intent (
fix/,feat/,chore/,refactor/,docs/):git checkout -b <prefix>/issue-$ARGUMENTS-<short-slug>Explore the relevant code before changing anything. House rules (
.claude/rules/) and project conventions (.claude/CLAUDE.md) are already in context — follow them; don't re-derive.If the change requires a Prisma schema update:
- Edit
apps/server/prisma/schema.prisma pnpm --filter my-wallet-server db:migrate— name the migration for the change itself (e.g.add_notes_to_snapshot), not the issuepnpm --filter my-wallet-server db:generate
- Edit
Implement the change. Cover the new behaviour with tests in the same pass.
For frontend changes, verify in a browser using the
verifyskill rather than starting the dev server inline.Validate:
pnpm --filter my-wallet-server test # server changes pnpm --filter my-wallet-web test # web changes pnpm test # both pnpm typecheck pnpm lintSummarise what changed and why. Do not commit or open a PR unless the user asks. When asked to open a PR, include
Closes #$ARGUMENTSin the body and use the Conventional Commit type that matches the issue (feat:,fix:,chore:, etc.).