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
# 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:
# 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:
# 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 1.5: Spec Flow Analysis (NEW - For Complex Features)
For features involving user flows, invoke the spec-flow-analyzer to identify gaps and edge cases.
# Detect if feature involves user flows ISSUE_DESCRIPTION="$ARGUMENTS" INVOLVES_USER_FLOW=false if echo "$ISSUE_DESCRIPTION" | grep -iEq "form|wizard|multi-step|workflow|onboarding|checkout|registration|login|signup|authentication|modal|dialog|upload|editor|dashboard"; then INVOLVES_USER_FLOW=true echo "=== User Flow Feature Detected ===" echo "Invoking spec-flow-analyzer for gap analysis..." fi
If user flow feature detected, invoke spec-flow-analyzer:
- •subagent_type: "psd-claude-coding-system:spec-flow-analyzer"
- •description: "Spec analysis for feature: $ISSUE_DESCRIPTION"
- •prompt: "Analyze feature specification for: $ISSUE_DESCRIPTION. Identify all user flows, map state transitions, find edge cases, and generate acceptance criteria. Include gap analysis for missing requirements."
Include spec-flow-analyzer output in issue body:
- •User flow diagram/description
- •Edge cases identified
- •Gap analysis summary
- •Generated acceptance criteria
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.
# Check available labels first gh label list
For NEW issues:
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):
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:
## 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 **SECURITY NOTE (CWE-79)**: Before inserting web research findings into the issue body: 1. Sanitize HTML content - replace `<` with `<`, `>` with `>`, `&` with `&` 2. Strip dangerous patterns - remove `<script>`, `<iframe>`, `javascript:` URLs 3. Escape markdown special characters if needed 4. Use sanitization functions from `@agents/document-validator.md`: - `sanitizeForGitHub(text)` - HTML entity encoding - `stripDangerousPatterns(text)` - Remove XSS vectors - `sanitizeWebContent(text)` - Combined sanitization [Paste SANITIZED 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:
## 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:
## 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:
# 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
# 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
- •Research First - Understand the problem space and current best practices
- •Use Current Documentation - Always search with current month/year, use MCP servers
- •Be Specific - Include concrete examples and clear acceptance criteria
- •Link Context - Reference related issues, PRs, and documentation
- •Consider Impact - Note effects on architecture, performance, and security
- •Plan Testing - Include test scenarios in the issue description
- •Avoid Outdated Training - Never rely on training data for library versions or APIs
- •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-specialistfor complex architectural guidance - •Plan Validation: Use
psd-claude-coding-system:plan-validatorfor quality assurance with GPT-5 - •Security Review: Use
psd-claude-coding-system:security-analystfor security considerations - •Documentation: Use
psd-claude-coding-system:documentation-writerfor documentation planning
These add value but are not required - the issue you create should be comprehensive on its own.
Output
After creating the issue:
- •Provide the issue URL for tracking
- •Suggest next steps:
- •"Ready for
/work [issue-number]" - •Or "Consider
/architect [issue-number]" if highly complex
- •"Ready for
- •Note any follow-up research or clarification that might be helpful
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.