AgnosticUI / fix-github-issue

Fix a GitHub issue by number. Use when asked to fix GitHub issues.

0 views
0 installs

Skill Content

---
name: fix-github-issue
description: Fix a GitHub issue by number. Use when asked to fix GitHub issues.
disable-model-invocation: true
allowed-tools: Read, Grep, Glob, Bash(gh issue view *), Bash(gh pr view *), Bash(git status), Bash(git diff *), Bash(git log *), Bash(git branch *), Bash(git checkout *)
---

**Usage:** `/fix-github-issue ISSUE_NUMBER`

**Example:** `/fix-github-issue 276`

Fix GitHub issue $ARGUMENTS following best practices.

**Setup:**
1. Read `.claude/PROJECT_CONTEXT.md` for AgnosticUI structure, conventions, and workflows

**Steps:**

2. **Verify we're starting from a clean state:**
   - Check `git status` to ensure working directory is clean
   - Confirm we're on `master` branch
   - If not clean or on wrong branch, STOP and ask user to resolve

3. **Create a feature branch:**
   - Follow convention from PROJECT_CONTEXT: `issue-$ARGUMENTS/descriptive-name`
   - Example: `issue-276/fix-button-variant` 
   - Use `git checkout -b issue-$ARGUMENTS/[short-description]`
   - **WAIT FOR USER APPROVAL of branch name**

4. **Analyze the issue:**
   - Use `gh issue view $ARGUMENTS` to fetch full issue details
   - Understand the problem, reproduction steps, and expected behavior

5. **Investigate the codebase:**
   - Use PROJECT_CONTEXT to identify relevant locations:
     - Core components in `v2/lib/src/components/`
     - Framework implementations in playgrounds
     - Related tests and examples
   - Use Read, Grep, and Glob to find relevant files
   - Review current implementation and identify root cause

6. **Propose the fix:**
   - Explain what needs to change and why
   - Consider impact across Lit, React, and Vue if applicable
   - Follow AgnosticUI's CSS-first, accessibility-focused principles
   - Show the user your proposed changes
   - **WAIT FOR USER APPROVAL before making any changes**

7. **Implement only after approval:**
   - Make the necessary code changes
   - Update related files (tests, docs, examples) if needed
   - Run tests if applicable (check PROJECT_CONTEXT for test commands)
   - Verify the fix addresses the issue

8. **Prepare commit:**
   - Stage changes with `git add`
   - Create descriptive commit message: "Fix #$ARGUMENTS: [description]"
   - Show the user what will be committed
   - **WAIT FOR USER APPROVAL before committing**

9. **Inform user about next steps:**
   - Remind user they're on branch `issue-$ARGUMENTS/...`
   - Explain they should review changes with `git diff master`
   - When ready, they can: `git push -u origin issue-$ARGUMENTS/...`
   - Then create PR with: `gh pr create --base master --head issue-$ARGUMENTS/...`

**Important Rules:**
- **ALWAYS create a feature branch - NEVER work directly on master**
- **NEVER push to remote without explicit user permission**
- **ALWAYS show proposed changes before implementing**
- **STOP and ask for approval at each major step**
- Use clear, descriptive commit messages that reference the issue
- Follow AgnosticUI conventions from PROJECT_CONTEXT