Do

Work on a GitHub issue (run from worktree)

fotoetienne 11 updated 2mo ago
Claude CodeGeneric
View source ↗
---
description: Work on a GitHub issue (run from worktree)
allowed-tools: Bash(gh:*), Bash(gh pr checks:*), Bash(git:*), Bash(cargo:*), Bash(just:*), Read, Glob, Grep, Edit, Write, Task, TodoWrite, WebFetch
argument-hint: "<issue# or URL>"
---

Work on a GitHub issue.

**Issue:**
$ARGUMENTS

## When Running Under Gru

This command is being orchestrated by Gru. GitHub operations (claiming issue, creating PR, posting updates) are handled automatically. Focus on:

1. understanding the issue (details provided by Gru)
2. planning the implementation
3. writing clean code
4. testing thoroughly
5. committing your changes

Gru will handle:
- Fetching issue details
- Creating pull requests
- Posting status updates
- Merging and cleanup

**Workflow:**

## 1. Check if Decomposition is Needed
- Assess the issue's complexity:
  - Does it involve multiple distinct components or systems?
  - Does it have multiple acceptance criteria?
  - Would it take more than a few hours to complete?
  - Does it mix different types of work (backend + frontend + docs)?

- **If the issue is complex and should be broken down:**
  - Recommend to the user: "This issue seems complex. Run `/decompose $ARGUMENTS` to break it into smaller sub-issues first."
  - Stop the fix workflow here - wait for user to decompose

- **If the issue is focused and ready to fix:**
  - Proceed to the next step

## 2. Verify Worktree Setup
- Confirm current directory is a git worktree with `git rev-parse --git-dir`
- Check current branch matches expected pattern `minion/issue-<number>-<minion-id>`
- If not in correct worktree, remind user to run `/setup-worktree` first

## 3. Plan the Fix
- Explore the codebase to understand the relevant code
- Create a detailed plan using TodoWrite with specific steps to fix the issue
- Consider tests that need to be added or updated

## 4. Implement the Fix
- Work through each todo item
- Write clean, minimal code changes
- Add or update tests as needed
- Check CLAUDE.md for project-specific build/test commands
- Run tests to verify the fix

## 5. Code Review
- Make a commit with the changes, prefixing the commit message with your Minion ID (from the branch name), e.g. `[M042] Fix null pointer in parser`
- Use the Agent tool with `subagent_type='code-reviewer'` to perform an autonomous code review
- **Wait for the review agent to complete and read its full output before proceeding**
- The code-reviewer agent will analyze the changes for:
  - Code correctness and logic errors
  - Security vulnerabilities
  - Error handling gaps
  - Edge cases
  - Adherence to project conventions (check CLAUDE.md)
  - Test coverage
- Address any issues raised by the code-reviewer before proceeding
- If the review identifies significant problems, iterate on the implementation
- **Do NOT push your branch or write PR_DESCRIPTION.md until you have read and addressed all review findings**

## 6. Finish Your Work

When your implementation is complete and ready for human review:

1. **Commit your implementation changes** with a descriptive commit message prefixed with your Minion ID (from the branch name), e.g. `[M042] Fix null pointer in parser`
2. **Push the branch** to the remote repository
3. Write `PR_DESCRIPTION.md` in the root of the repository with this format:
   ```markdown
   ## Summary
   - Key change 1
   - Key change 2

   ## Test plan
   - How you tested this
   - Commands run: cargo test, just check, etc.

   ## Notes
   - Context reviewers should know
   - Follow-up work if any

DO NOT commit PR_DESCRIPTION.md - Gru will read this file locally from your worktree, use it to create the PR description, mark the PR ready, and then delete it automatically.

IMPORTANT: Only write PR_DESCRIPTION.md when work is truly complete and ready for human review. If work is still in progress, don't create this file - Gru will create a draft PR instead.

7. Iterate on Feedback

  • Look at CI check results
  • Address any issues raised by the CI checks
  • Read review comments
  • Determine which comments require changes. Sometimes reviewers are wrong!
  • Make the necessary changes
  • For any comments that you've determined don't require changes, acknowledge them
  • Make a reply that addresses each comment and includes a summary of the changes made
  • Repeat until the PR is ready to merge

Maintain Do?

Let people know it's listed here — add the badge (live metrics, light/dark aware) or a plain link to your README or docs.

[Do on getagentictools](https://getagentictools.com/loops/fotoetienne-do?ref=badge)