Agent skill
issue
Create and update GitHub issues. Triggers on "create issue", "file issue", "open issue", "new issue", "report bug", "request feature", "track this", "create epic", "create theme", "update issue", "check off", "mark complete", "close issue". Infers type, labels, and milestone from conversation context.
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/other/issue
SKILL.md
Issue Skill
Create, update, and manage GitHub issues following ZeroAE conventions. Infer as much as possible from context; only ask when ambiguous.
Modes
This skill operates in three modes based on context:
| Mode | Trigger Phrases | Action |
|---|---|---|
| Create | "create issue", "file issue", "new issue", "report bug", "request feature" | Create new issue |
| Update | "update issue", "add to issue", "update #123" | Modify existing issue body/metadata |
| Progress | "check off", "mark complete", "done with", "finished" | Check checkboxes in issue body |
Supported Issue Types
| Type | Emoji | GitHub Type | Use For |
|---|---|---|---|
| Bug | 🐛 | Bug | Defects, unexpected behavior |
| Feature | ✨ | Feature | New functionality, enhancements |
| Task | 📋 | Task | Documentation, testing, specific work items |
| Chore | 🔧 | Chore | Maintenance: refactor, deps, ci, cleanup |
| Epic | 🎯 | Epic | Major feature spanning multiple issues |
| Theme | 🎨 | Theme | Strategic initiative spanning epics |
Note: For release preparation, use
/pr release <version>to create a Release Prep PR.
Context Inference
Before asking questions, analyze the conversation to infer:
Type Inference (Create mode)
| Context Clues | Inferred Type |
|---|---|
| "bug", "broken", "error", "fix", "crash", "fails", "doesn't work" | Bug 🐛 |
| "add", "new", "feature", "implement", "support", "enable" | Feature ✨ |
| "docs", "documentation", "readme", "write docs" | Task 📋 |
| "test", "coverage", "add tests" | Task 📋 |
| "refactor", "cleanup", "upgrade", "deps", "ci", "chore" | Chore 🔧 |
| "epic", "major feature", "multi-issue", "spanning" | Epic 🎯 |
| "theme", "strategic", "initiative", "long-term" | Theme 🎨 |
Tip: If user mentions "release", "cut release", or "release prep", redirect to
/pr release <version>.
Issue Number Inference (Update/Progress modes)
Detect issue references from context:
- Explicit: "#123", "issue 123", "issue #123"
- From branch name:
git branch --show-current→ extract issue number - From recent commits:
git log -1 --format=%s→ look for "Closes #N" - From conversation: recently discussed issue numbers
Checkbox Inference (Progress mode)
Match completed work to checkboxes:
- Compare conversation context (commits, code changes, test results) against checkbox text
- If work clearly addresses a criterion, mark it complete
- If ambiguous, ask user to confirm
Label Inference
Infer area/ labels from context:
- Files mentioned → extract component (e.g.,
src/cli.py→area/cli) - Topics discussed → map to area (e.g., "deployment" →
area/infra) - Available areas:
area/limiter,area/cli,area/infra,area/aggregator,area/ci
Milestone Inference
Query milestones and match by theme:
gh api repos/{owner}/{repo}/milestones --jq '.[] | "\(.title): \(.description)"'
Create Mode
Process
- Gather Context: Analyze conversation for problem, solution, files discussed
- Infer or Ask: Use inference first, batch questions if multiple fields ambiguous
- Build Issue Body: Use template from templates.md
- Confirm and Create: Show preview, then create
gh issue create \
--title "<emoji> <Title>" \
--body "$(cat <<'EOF'
<body from template>
EOF
)" \
--label "<area/label>" \
--milestone "<milestone>"
- Set Issue Type:
gh api -X PATCH repos/{owner}/{repo}/issues/<number> -f type=<Type>
Update Mode
Update an existing issue's body or metadata.
Process
- Identify Issue: Infer issue number from context or ask
- Fetch Current State:
gh issue view <number> --json title,body,labels,milestone
- Determine Changes: From conversation, identify what to add/modify
- Preview Changes: Show diff of what will change
- Apply Update:
Update body:
gh issue edit <number> --body "$(cat <<'EOF'
<updated body>
EOF
)"
Update metadata:
gh issue edit <number> --add-label "<label>" --milestone "<milestone>"
Update title:
gh issue edit <number> --title "<new title>"
Progress Mode
Check off completed checkboxes in issue body based on work done.
Process
- Identify Issue: Infer from branch, commits, or conversation
- Fetch Issue Body:
gh issue view <number> --json body --jq '.body'
- Parse Checkboxes: Find all
- [ ]items - Match to Context: Compare each checkbox against:
- Recent commits (
git log --oneline -10) - Files changed (
git diff --name-only origin/main) - Test results mentioned in conversation
- Explicit user statements ("I finished X")
- Recent commits (
- Preview Changes: Show which boxes will be checked
Checking off in issue #123:
- [x] Add unit tests for caching ← matches commit "test: add caching tests"
- [x] Update documentation ← matches changed docs/guide/caching.md
- [ ] Performance benchmarks ← no matching work found
Proceed? [Y/n]
- Update Issue Body: Replace
- [ ]with- [x]for completed items
gh issue edit <number> --body "$(cat <<'EOF'
<body with checked boxes>
EOF
)"
Checkbox Matching Rules
| Evidence | Checkbox Text | Match? |
|---|---|---|
| Commit "test: add unit tests" | "Add unit tests" | ✅ Yes |
Changed docs/guide/*.md |
"Update documentation" | ✅ Yes |
| User says "benchmarks done" | "Performance benchmarks" | ✅ Yes |
| No related commits/files | Any checkbox | ❌ No (ask) |
Output
- Create: Return the new issue URL
- Update: Return the updated issue URL with summary of changes
- Progress: Return issue URL with list of checkboxes marked complete
Reference Files
- templates.md - Issue body templates for each type
- conventions.md - Label taxonomy, title formatting, milestone rules
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
Didn't find tool you were looking for?