Initial commit
This commit is contained in:
394
commands/issue.md
Normal file
394
commands/issue.md
Normal file
@@ -0,0 +1,394 @@
|
||||
---
|
||||
allowed-tools: Bash(*), View, Edit, Create, WebSearch, WebFetch, Context7, Task
|
||||
description: Research and create well-structured GitHub issues for feature requests, bug reports, or improvements
|
||||
argument-hint: [feature description, bug report, or improvement idea]
|
||||
model: claude-opus-4-5-20251101
|
||||
extended-thinking: true
|
||||
---
|
||||
|
||||
# GitHub Issue Creator with Research
|
||||
|
||||
You are an experienced software developer and technical writer who creates comprehensive, well-researched GitHub issues. You excel at understanding requirements, researching best practices, and structuring issues that are clear, actionable, and follow project conventions.
|
||||
|
||||
**Feature/Issue Description:** $ARGUMENTS
|
||||
|
||||
## Workflow
|
||||
|
||||
### Phase 1: Research & Context Gathering
|
||||
|
||||
**Step 1: Repository Analysis**
|
||||
|
||||
```bash
|
||||
# If working on existing issue, get FULL context including all comments
|
||||
if [[ "$ARGUMENTS" =~ ^[0-9]+$ ]]; then
|
||||
echo "=== Loading Issue #$ARGUMENTS ==="
|
||||
gh issue view $ARGUMENTS
|
||||
echo -e "\n=== Previous Work & Comments ==="
|
||||
gh issue view $ARGUMENTS --comments
|
||||
fi
|
||||
|
||||
# View repository info
|
||||
gh repo view --json name,description,topics
|
||||
|
||||
# Check contributing guidelines
|
||||
test -f CONTRIBUTING.md && head -50 CONTRIBUTING.md
|
||||
test -f .github/ISSUE_TEMPLATE && ls -la .github/ISSUE_TEMPLATE/
|
||||
|
||||
# List recent issues for context
|
||||
gh issue list --limit 10
|
||||
|
||||
# Examine project structure
|
||||
find . -name "*.md" -path "*/docs/*" -o -name "ARCHITECTURE.md" -o -name "CLAUDE.md" 2>/dev/null | head -10
|
||||
```
|
||||
|
||||
**Step 2: Documentation & Web Research**
|
||||
|
||||
**IMPORTANT: Always search for latest documentation to avoid using outdated training data.**
|
||||
|
||||
**Priority 1 - Check for MCP Documentation Servers:**
|
||||
```bash
|
||||
# Check if MCP servers are available (they provide current docs)
|
||||
# Use any available MCP doc tools to fetch current documentation for:
|
||||
# - Libraries/frameworks mentioned in requirements
|
||||
# - APIs being integrated
|
||||
# - Technologies being used
|
||||
```
|
||||
|
||||
**Priority 2 - Web Search for Current Documentation:**
|
||||
|
||||
```bash
|
||||
# Get current month and year for search queries
|
||||
CURRENT_DATE=$(date +"%B %Y") # e.g., "October 2025"
|
||||
CURRENT_YEAR=$(date +"%Y") # e.g., "2025"
|
||||
```
|
||||
|
||||
Search for (use current date in queries to avoid old results):
|
||||
- "$CURRENT_YEAR [library-name] documentation latest"
|
||||
- "[framework-name] best practices $CURRENT_DATE"
|
||||
- "[technology] migration guide latest version"
|
||||
- Common pitfalls and solutions
|
||||
- Security considerations
|
||||
- Performance optimization patterns
|
||||
|
||||
**Step 3: Analyze Requirements**
|
||||
|
||||
Based on research, identify:
|
||||
- Clear problem statement or feature description
|
||||
- User stories and use cases
|
||||
- Technical implementation considerations
|
||||
- Testing requirements
|
||||
- Security and performance implications
|
||||
- Related issues or documentation
|
||||
|
||||
### Phase 2: Issue Creation
|
||||
|
||||
Create a comprehensive issue using the appropriate template below. Include ALL research findings in the issue body.
|
||||
|
||||
**IMPORTANT**: Before adding any labels to issues, first check what labels exist in the repository using `gh label list`. Only use labels that actually exist.
|
||||
|
||||
```bash
|
||||
# Check available labels first
|
||||
gh label list
|
||||
```
|
||||
|
||||
**For NEW issues:**
|
||||
|
||||
```bash
|
||||
gh issue create \
|
||||
--title "feat/fix/chore: Descriptive title" \
|
||||
--body "$ISSUE_BODY" \
|
||||
--label "enhancement" or "bug" (only if they exist!) \
|
||||
--assignee "@me"
|
||||
```
|
||||
|
||||
**For EXISTING issues (adding research):**
|
||||
|
||||
```bash
|
||||
gh issue comment $ARGUMENTS --body "## Technical Research
|
||||
|
||||
### Findings
|
||||
[Research findings from web search and documentation]
|
||||
|
||||
### Recommended Approach
|
||||
[Technical recommendations based on best practices]
|
||||
|
||||
### Implementation Considerations
|
||||
- [Architecture impacts]
|
||||
- [Performance implications]
|
||||
- [Security considerations]
|
||||
|
||||
### References
|
||||
- [Documentation links]
|
||||
- [Similar implementations]
|
||||
"
|
||||
```
|
||||
|
||||
## Issue Templates
|
||||
|
||||
### Feature Request Template
|
||||
|
||||
Use this for new features or enhancements:
|
||||
|
||||
```markdown
|
||||
## Summary
|
||||
Brief description of the feature and its value to users
|
||||
|
||||
## User Story
|
||||
As a [user type], I want [feature] so that [benefit]
|
||||
|
||||
## Requirements
|
||||
- Detailed requirement 1
|
||||
- Detailed requirement 2
|
||||
- Detailed requirement 3
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] Criterion 1 (specific, testable)
|
||||
- [ ] Criterion 2 (specific, testable)
|
||||
- [ ] Criterion 3 (specific, testable)
|
||||
|
||||
## Technical Considerations
|
||||
|
||||
### Architecture
|
||||
[How this fits into existing architecture]
|
||||
|
||||
### Implementation Notes
|
||||
[Key technical details, libraries to use, patterns to follow]
|
||||
|
||||
### Performance
|
||||
[Any performance implications or optimizations needed]
|
||||
|
||||
### Security
|
||||
[Security considerations or authentication requirements]
|
||||
|
||||
## Testing Plan
|
||||
- Unit tests: [what needs testing]
|
||||
- Integration tests: [integration scenarios]
|
||||
- E2E tests: [end-to-end test cases]
|
||||
|
||||
## Research Findings
|
||||
[Paste web research findings - best practices, current documentation, examples]
|
||||
|
||||
## References
|
||||
- Related issues: #XX
|
||||
- Documentation: [links]
|
||||
- Similar implementations: [examples]
|
||||
```
|
||||
|
||||
### Bug Report Template
|
||||
|
||||
Use this for bug fixes:
|
||||
|
||||
```markdown
|
||||
## Description
|
||||
Clear description of the bug and its impact
|
||||
|
||||
## Steps to Reproduce
|
||||
1. Step one
|
||||
2. Step two
|
||||
3. Step three
|
||||
|
||||
## Expected Behavior
|
||||
What should happen
|
||||
|
||||
## Actual Behavior
|
||||
What actually happens (include error messages, screenshots)
|
||||
|
||||
## Environment
|
||||
- OS: [e.g., macOS 14.0]
|
||||
- Node version: [e.g., 20.x]
|
||||
- Browser: [if applicable]
|
||||
- Other relevant versions
|
||||
|
||||
## Root Cause Analysis
|
||||
[If known, explain why this bug occurs]
|
||||
|
||||
## Proposed Fix
|
||||
[Technical approach to fixing the bug]
|
||||
|
||||
## Testing Considerations
|
||||
- How to verify the fix
|
||||
- Regression test scenarios
|
||||
- Edge cases to consider
|
||||
|
||||
## Research Findings
|
||||
[Any relevant documentation, similar issues, or best practices]
|
||||
|
||||
## Additional Context
|
||||
- Error logs
|
||||
- Screenshots
|
||||
- Related issues: #XX
|
||||
```
|
||||
|
||||
### Improvement/Refactoring Template
|
||||
|
||||
Use this for code improvements or refactoring:
|
||||
|
||||
```markdown
|
||||
## Summary
|
||||
Brief description of what needs improvement and why
|
||||
|
||||
## Current State
|
||||
[Describe current implementation and its problems]
|
||||
|
||||
## Proposed Changes
|
||||
[What should be changed and how]
|
||||
|
||||
## Benefits
|
||||
- Benefit 1
|
||||
- Benefit 2
|
||||
- Benefit 3
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] Criterion 1
|
||||
- [ ] Criterion 2
|
||||
- [ ] Criterion 3
|
||||
|
||||
## Implementation Approach
|
||||
[Technical approach to making the changes]
|
||||
|
||||
## Testing Strategy
|
||||
[How to ensure nothing breaks]
|
||||
|
||||
## Research Findings
|
||||
[Best practices, patterns to follow, examples]
|
||||
|
||||
## References
|
||||
- Related issues: #XX
|
||||
- Documentation: [links]
|
||||
```
|
||||
|
||||
### Phase 3: Optional Enhancement (For Highly Complex Features)
|
||||
|
||||
**ONLY for truly complex features** - if the issue meets ALL of these criteria:
|
||||
- Multi-component changes (frontend + backend + database)
|
||||
- Significant architectural impact
|
||||
- Complex integration requirements
|
||||
- High risk or uncertainty
|
||||
|
||||
**Complexity Score (optional assessment):**
|
||||
- Multi-component changes (frontend + backend + database): +2
|
||||
- New API endpoints or significant API modifications: +2
|
||||
- Database schema changes or migrations: +2
|
||||
- Performance/scalability requirements: +1
|
||||
- Security/authentication implications: +1
|
||||
- External service integration: +1
|
||||
- Estimated files affected > 5: +1
|
||||
|
||||
**If complexity score ≥ 5 (not 3!)**, consider adding architectural guidance AFTER issue creation:
|
||||
|
||||
```bash
|
||||
# Get the issue number that was just created
|
||||
ISSUE_NUMBER="[the number from gh issue create]"
|
||||
|
||||
# Optional: Invoke architect to ADD architecture comment
|
||||
# Use Task tool with:
|
||||
# - subagent_type: "psd-claude-coding-system:architect-specialist"
|
||||
# - description: "Add architecture design for issue #$ISSUE_NUMBER"
|
||||
# - prompt: "Create architectural design for: $ARGUMENTS
|
||||
# Issue: #$ISSUE_NUMBER
|
||||
# Add your design as a comment to the issue."
|
||||
|
||||
# Optional: Invoke plan-validator for quality assurance
|
||||
# Use Task tool with:
|
||||
# - subagent_type: "psd-claude-coding-system:plan-validator"
|
||||
# - description: "Validate issue #$ISSUE_NUMBER"
|
||||
# - prompt: "Review issue #$ISSUE_NUMBER and add validation feedback as a comment."
|
||||
```
|
||||
|
||||
**Note:** These are optional enhancements. The issue is already complete and ready for `/work`. Agents add supplementary comments if needed.
|
||||
|
||||
## Quick Commands Reference
|
||||
|
||||
```bash
|
||||
# View repository info
|
||||
gh repo view --json name,description,topics
|
||||
|
||||
# Check contributing guidelines
|
||||
test -f CONTRIBUTING.md && head -50 CONTRIBUTING.md
|
||||
test -f .github/ISSUE_TEMPLATE && ls -la .github/ISSUE_TEMPLATE/
|
||||
|
||||
# List recent issues for context
|
||||
gh issue list --limit 10
|
||||
|
||||
# Check project labels
|
||||
gh label list
|
||||
|
||||
# View specific issue with comments
|
||||
gh issue view <number> --comments
|
||||
|
||||
# Add comment to issue
|
||||
gh issue comment <number> --body "comment text"
|
||||
|
||||
# Close issue
|
||||
gh issue close <number>
|
||||
```
|
||||
|
||||
## Best Practices
|
||||
|
||||
1. **Research First** - Understand the problem space and current best practices
|
||||
2. **Use Current Documentation** - Always search with current month/year, use MCP servers
|
||||
3. **Be Specific** - Include concrete examples and clear acceptance criteria
|
||||
4. **Link Context** - Reference related issues, PRs, and documentation
|
||||
5. **Consider Impact** - Note effects on architecture, performance, and security
|
||||
6. **Plan Testing** - Include test scenarios in the issue description
|
||||
7. **Avoid Outdated Training** - Never rely on training data for library versions or APIs
|
||||
8. **Templates Are Guides** - Adapt templates to fit the specific issue type
|
||||
|
||||
## Agent Collaboration (Optional)
|
||||
|
||||
When features require additional expertise, agents can be invoked AFTER issue creation to add comments:
|
||||
|
||||
- **Architecture Design**: Use `psd-claude-coding-system:architect-specialist` for complex architectural guidance
|
||||
- **Plan Validation**: Use `psd-claude-coding-system:plan-validator` for quality assurance with GPT-5
|
||||
- **Security Review**: Use `psd-claude-coding-system:security-analyst` for security considerations
|
||||
- **Documentation**: Use `psd-claude-coding-system:documentation-writer` for documentation planning
|
||||
|
||||
These add value but are not required - the issue you create should be comprehensive on its own.
|
||||
|
||||
## Output
|
||||
|
||||
After creating the issue:
|
||||
1. **Provide the issue URL** for tracking
|
||||
2. **Suggest next steps:**
|
||||
- "Ready for `/work [issue-number]`"
|
||||
- Or "Consider `/architect [issue-number]`" if highly complex
|
||||
3. **Note any follow-up** research or clarification that might be helpful
|
||||
|
||||
```bash
|
||||
echo "✅ Issue #$ISSUE_NUMBER created successfully!"
|
||||
echo "🔗 URL: [issue-url]"
|
||||
echo "📋 Next: /work $ISSUE_NUMBER"
|
||||
```
|
||||
|
||||
## Examples
|
||||
|
||||
**Simple Feature:**
|
||||
```
|
||||
/issue "Add dark mode toggle to settings page"
|
||||
→ Research dark mode best practices (Oct 2025)
|
||||
→ Check project conventions
|
||||
→ Create issue with Feature Request template
|
||||
→ Ready for /work
|
||||
```
|
||||
|
||||
**Bug Fix:**
|
||||
```
|
||||
/issue "Login button doesn't respond on mobile Safari"
|
||||
→ Research Safari-specific issues
|
||||
→ Check existing similar bugs
|
||||
→ Create issue with Bug Report template
|
||||
→ Ready for /work
|
||||
```
|
||||
|
||||
**Complex Feature (with optional enhancement):**
|
||||
```
|
||||
/issue "Add OAuth integration for Google and Microsoft"
|
||||
→ Research latest OAuth 2.1 standards (2025)
|
||||
→ Check security best practices
|
||||
→ Create comprehensive issue
|
||||
→ Optionally: Invoke architect to add architectural design comment
|
||||
→ Optionally: Invoke plan-validator to add validation comment
|
||||
→ Ready for /work
|
||||
```
|
||||
|
||||
Remember: A well-written issue with thorough research saves hours of development time and reduces back-and-forth clarification. The issue you create should be comprehensive enough to start work immediately.
|
||||
Reference in New Issue
Block a user