Loading...
Loading...
Issue creation expertise and convention enforcement. Auto-invokes when creating issues, writing issue descriptions, asking about issue best practices, or needing help with issue titles. Validates naming conventions, suggests labels, and ensures proper metadata.
npx skill4agent add c0ntr0lledcha0s/claude-code-plugin-automations creating-issues[BUG][FEATURE][ENHANCEMENT][DOCS]| Type | Pattern | Example |
|---|---|---|
| Bug | | |
| Feature | | |
| Enhancement | | |
| Documentation | | |
| Refactor | | |
python {baseDir}/scripts/validate-issue-title.py "Issue title here"bugfeatureenhancementdocumentationrefactorchorepriority:criticalpriority:highpriority:mediumpriority:lowscope:component-namebranch:feature/authbranch:release/v2.0/issue-track context/commit-smartenv.jsonbranch.scopeLabelfeature/authscope:authlabels.suggestedScopesdef detect_scope():
# 1. Check environment for detected scope
env = load_env(".claude/github-workflows/env.json")
if env and env.get("branch", {}).get("scopeLabel"):
return env["branch"]["scopeLabel"]
# 2. Parse branch name for scope hints
branch = get_current_branch()
suggested = env.get("labels", {}).get("suggestedScopes", [])
for scope in suggested:
if scope.lower() in branch.lower():
return f"scope:{scope}"
# 3. Cannot detect - MUST prompt user
return Nonebugfeatureenhancementdocumentationrefactorchorepriority:criticalpriority:highpriority:mediumpriority:low## Summary
[Clear description of what needs to be done]
## Acceptance Criteria
- [ ] Criterion 1
- [ ] Criterion 2
- [ ] Criterion 3
## Additional Context
[Any relevant context, screenshots, or references]## Summary
[Description of the bug]
## Steps to Reproduce
1. Step 1
2. Step 2
3. Step 3
## Expected Behavior
[What should happen]
## Actual Behavior
[What actually happens]
## Acceptance Criteria
- [ ] Bug is fixed
- [ ] Tests added/updated
- [ ] No regressions
## Environment
- OS:
- Version:## Summary
[Description of the feature]
## Use Cases
1. As a [user type], I want to [action] so that [benefit]
2. ...
## Proposed Solution
[High-level approach]
## Acceptance Criteria
- [ ] Feature implemented
- [ ] Tests added
- [ ] Documentation updated
## Out of Scope
[What this does NOT include]Phase: <Name>v<version>Sprint <number>Q<n> <year>- [ ] #68managing-relationships# After creating issues, establish parent-child relationships
python github-workflows/skills/managing-relationships/scripts/manage-relationships.py \
add-sub-issue --parent 67 --child 68## Parent Issue
Part of #<number> - <Parent title>## Blocked By
- #<number> - <Blocker title>## Related Issues
- #<number> - <Related title>managing-relationshipsmanage-relationships.py show-all --issue <parent># Check if env.json exists with project info
cat .claude/github-workflows/env.json | grep -A3 "projectBoard"env.jsonprojectBoard.number# Add issue to project board
gh project item-add <PROJECT_NUMBER> --owner <OWNER> --url <ISSUE_URL>Before I create these issues, let me confirm:
1. **Project Board**: I see project #3 "Agent Plugin Development" in env.json. Should I add these issues to it?
2. **Relationships**: Should issue X be the parent of issues Y, Z?
3. **Milestone**: Should these be part of "Agent Plugins v1.0"?
This ensures all metadata is correct on first creation.User: "Is this a good title: [BUG] Login fails"
You:
❌ Title has issues:
- Contains type prefix [BUG]
Suggested fix:
✅ "Fix login authentication failure"
The type is indicated by the `bug` label, not the title.User: "What labels for 'Improve error messages for validation'"
You:
Recommended labels:
- **Type**: `enhancement` (improving existing feature)
- **Priority**: `priority:medium` (important but not blocking)
Required:
- **Scope**: `scope:claude-component-builder` (identifies component)
Optional:
- **Branch**: `branch:plugin/claude-component-builder` (if on feature branch)User: "Help me write the body for 'Add tool name validation for hook matchers'"
You:
## Summary
Add validation to check that matchers in `PreToolUse` and `PostToolUse` events match valid Claude Code tool names, not command contents.
## Problem
Currently, the validator accepts any regex pattern as a matcher, leading to incorrect configurations like:
```json
{
"matcher": "git commit",
"hooks": [...]
}BashBashReadWriteEditGrepGlobTask
### 4. Detect Relationship Opportunities
Identify potential relationships:
```markdown
User: "Creating issue for 'Add environment variable validation'"
You:
I notice related issues in the hooks validation area:
**Potential parent/phase**:
- Could be part of a "Phase: Hooks Validation" milestone
**Potentially related to**:
- #55 Add tool name validation for hook matchers
- #57 Add prompt hook best practices validation
- #58 Investigate SessionStart hook format
Would you like to:
1. Create a phase milestone and group these?
2. Just link as related issues?
3. Keep standalone?# Validate a single title
python {baseDir}/scripts/validate-issue-title.py "Issue title here"
# Output:
# ✅ Title is valid
# OR
# ❌ Issues found:
# - Contains type prefix [BUG]
# - Too long (85 chars, recommend 50-72)# Get available labels
python {baseDir}/scripts/issue-helpers.py list-labels
# Get open milestones
python {baseDir}/scripts/issue-helpers.py list-milestones
# Get projects
python {baseDir}/scripts/issue-helpers.py list-projects
# Create issue with full metadata
python {baseDir}/scripts/issue-helpers.py create \
--title "Add validation for hook matchers" \
--type enhancement \
--priority high \
--scope scope:claude-component-builder \
--milestone "Phase: Hooks Validation" \
--body-file /tmp/issue-body.md{baseDir}/assets/issue-body-template.md{baseDir}/assets/bug-report-template.md{baseDir}/assets/feature-request-template.md{baseDir}/references/issue-conventions.mdenv.jsongh issue creategh project item-addmanage-relationships.py❌ [BUG] Login fails
❌ [FEATURE] Add dark mode
❌ [ENHANCEMENT] Improve performance
✅ Fix login authentication failure (label: bug)
✅ Add dark mode support (label: feature)
✅ Improve query performance (label: enhancement)❌ Fix bug
❌ Update code
❌ Add feature
✅ Fix null pointer exception in user authentication
✅ Update API endpoints to support pagination
✅ Add two-factor authentication support❌ Labels: bug, enhancement
✅ Labels: bug (choose primary type)❌ Body: "Fix the login bug"
✅ Body with criteria:
- [ ] Bug is fixed
- [ ] Unit tests added
- [ ] No regression in related featureslabels.suggestedScopes❌ WRONG - Task lists create "tracked" relationships, not parent-child:
## Child Issues
- [ ] #68
- [ ] #69
✅ CORRECT - Use GraphQL API for true parent-child:
python manage-relationships.py add-sub-issue --parent 67 --child 68addSubIssue❌ WRONG - Creating issues without checking project context:
gh issue create --title "Add feature" --label "feature"
✅ CORRECT - Check env.json first, then add to project:
# 1. Check context
cat .claude/github-workflows/env.json | grep projectBoard
# 2. Create issue
gh issue create --title "Add feature" --label "feature"
# 3. Add to project
gh project item-add 3 --owner OWNER --url ISSUE_URL❌ WRONG - Jumping straight to issue creation:
User: "Create issues for the new auth feature"
Claude: *immediately creates 5 issues*
✅ CORRECT - Ask clarifying questions first:
User: "Create issues for the new auth feature"
Claude: "Before I create these issues, let me confirm:
1. Should I add them to project #3?
2. Should the main feature issue be parent of the subtasks?
3. Should they be assigned to the v1.0 milestone?"❌ WRONG - Ignoring that user has env.json open:
<ide_opened_file>env.json</ide_opened_file>
Claude: *doesn't read env.json*
✅ CORRECT - Read files the user has open:
<ide_opened_file>env.json</ide_opened_file>
Claude: *reads env.json to get project board, milestone, etc.*❌ WRONG - Creating and moving on:
gh issue create ...
"Done! Created issue #67"
✅ CORRECT - Verify after creation:
gh issue create ...
gh issue view 67 --json labels,projectItems
python manage-relationships.py show-all --issue 67
"Created #67, added to project #3, linked as child of #50"❌ WRONG - Only type label:
--label "feature"
✅ CORRECT - All three required labels:
--label "feature,priority:medium,scope:self-improvement"/issue-track context/commit-smartenv.jsonenv.json