بنقرة واحدة
fix-issue
Fix a GitHub issue in an isolated worktree, test, commit, and open a PR.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Fix a GitHub issue in an isolated worktree, test, commit, and open a PR.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
| name | fix-issue |
| description | Fix a GitHub issue in an isolated worktree, test, commit, and open a PR. |
| disable-model-invocation | true |
| argument-hint | ["issue-number"] |
| allowed-tools | Read, Grep, Glob, Bash(git *, gh *, npm *, npx *, curl *, pkill *, sleep *, ls *), Edit, Write, Agent, EnterPlanMode, ExitPlanMode, ExitWorktree |
Fix issue #$ARGUMENTS in an isolated git worktree so main stays clean.
Before doing anything else, label the issue so others know it's being worked on:
# Check if someone else is already working on it
gh issue view $ARGUMENTS --json title,body,labels,state
If the issue already has the in-progress label, stop and warn the user — another agent or developer may be actively working on it. Only proceed if the user confirms.
# Claim it
gh issue edit $ARGUMENTS --add-label "in-progress"
This label MUST be added before any planning or coding begins.
Enter plan mode. Read the issue, explore the relevant code, and design your approach. Get user sign-off before implementing.
git fetch origin
git worktree add .claude/worktrees/issue-$ARGUMENTS -b fix/issue-$ARGUMENTS origin/main
Work exclusively inside .claude/worktrees/issue-$ARGUMENTS/ for all file edits.
E2e tests are self-contained — each test creates its own SQLite database in a temp directory. No running daemon is required.
If the fix involves a new feature, new route, behavioral change, or anything beyond a simple bug fix:
packages/arkeon/test/e2e/ to find the most relevant file*.test.ts file only if no existing file covers this domainhelpers.ts, async API calls, descriptive test namesFor simple bug fixes where the existing test suite already covers the affected behavior, you may skip writing new tests — but you must still run the suite.
npm run typecheck -w packages/arkeon
npm test -w packages/arkeon
npm run test:e2e -w packages/arkeon
If tests fail, fix the issue and re-run. Do not proceed to the PR step with failing tests.
For interactive verification against a running daemon, start a named instance scoped to this worktree:
npx tsx packages/arkeon/src/index.ts up --name "issue-$ARGUMENTS"
# ... poke at it ...
npx tsx packages/arkeon/src/index.ts down --name "issue-$ARGUMENTS"
See the /local-dev skill for details on named instances.
cd .claude/worktrees/issue-$ARGUMENTS
git add <changed files>
git commit -m "Fix: <summary>
Fixes #$ARGUMENTS
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>"
git push -u origin fix/issue-$ARGUMENTS
gh pr create \
--base main \
--head fix/issue-$ARGUMENTS \
--title "<short title>" \
--body "## Summary
<bullet points>
Fixes #$ARGUMENTS
## Test plan
- [ ] e2e tests pass
- [ ] Manual verification
Generated with [Claude Code](https://claude.com/claude-code)"
After the PR is created, transition the issue label from in-progress to in-review:
gh issue edit $ARGUMENTS --remove-label "in-progress" --add-label "in-review"
After opening the PR, always exit the worktree using the ExitWorktree tool so you're not stranded:
ExitWorktree with keep = true (do NOT delete the worktree)Tell the user the PR is open and they can clean up after merge:
git worktree remove .claude/worktrees/issue-$ARGUMENTS
git branch -d fix/issue-$ARGUMENTS
in-progress must be added before any work begins; transition to in-review when the PR is openedin-progress label: gh issue edit $ARGUMENTS --remove-label "in-progress"in-progress when you start, warn the user before proceeding.claude/worktrees/issue-$ARGUMENTS). NEVER run rm -rf .claude/worktrees/, git worktree prune, or remove any other worktree. Other worktrees may contain active work from other sessions. If cleanup is needed, only target the exact worktree path for this issue.