From minimalism-workflow
This skill should be used when the user wants to file a GitHub issue, create a bug report, request a feature, report a problem, or open an issue in the current repository. It explores the codebase to understand project context, gathers issue details through conversation, and files the issue via the gh CLI. Trigger phrases include "file an issue", "create an issue", "report a bug", "request a feature", "open an issue", or "gh issue".
How this skill is triggered — by the user, by Claude, or both
Slash command
/minimalism-workflow:gh-issue-filerThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
File GitHub issues with codebase-aware context gathering and structured body generation.
File GitHub issues with codebase-aware context gathering and structured body generation.
Arguments: description (optional initial description of the issue)
gh CLI must be installed and authenticated (gh auth status)Run the following checks before proceeding:
gh is available and authenticated:
gh auth status
gh repo view --json nameWithOwner -q .nameWithOwner
gh auth login for auth failures.Gather project context silently (do not ask the user for this information). Perform these steps concurrently where possible:
Detect tech stack — Check for project descriptor files:
package.json (Node/JS/TS ecosystem, frameworks, key dependencies)Cargo.toml (Rust)pyproject.toml or requirements.txt (Python)go.mod (Go)Gemfile (Ruby)build.gradle or pom.xml (JVM)CLAUDE.md or AGENTS.md (project-specific instructions and architecture notes)README.md (project description)Identify directory structure — Run ls at the project root to understand layout.
Check recent changes — Run git log --oneline -10 to understand recent development activity.
Discover available labels — Run gh label list --json name,description to know what labels exist.
Check for issue templates — Look for .github/ISSUE_TEMPLATE/ directory. If templates exist,
note their names for use with --template flag.
Check existing open issues — Run gh issue list --limit 10 --state open --json number,title,labels
to avoid duplicates and understand current issue patterns.
Store all gathered context internally for use when generating the issue body.
Ask the user for issue details interactively. Adapt the conversation based on what the user has already provided (e.g., if invoked with a description argument, skip asking for it).
Question 1: Issue type (if not already clear from context)
Ask what kind of issue this is using AskUserQuestion. Suggest options based on available labels:
Question 2: Title and description
If no description was provided as an argument, ask the user to describe the issue:
"Describe the issue. A brief summary is fine — include as much or as little detail as needed."
If a description was provided, use it and skip this question.
Question 3: Additional details (conditional, based on issue type)
For bug reports, ask:
"Any additional context? Steps to reproduce, expected vs actual behavior, or which part of the codebase is affected. (Skip if not applicable.)"
For feature requests, ask:
"Any additional context? Motivation, proposed approach, or which area of the codebase this would touch. (Skip if not applicable.)"
For other types, skip this question unless the description is very sparse.
Question 4: Draft review
Present a draft showing:
Ask the user to confirm, adjust, or cancel using AskUserQuestion with options:
Generate a structured issue body adapted per type. Omit sections that have no useful content. Never generate placeholder text like "[TODO]" in the filed issue.
## Summary
[Clear description of the bug]
## Steps to reproduce
1. [Step 1]
2. [Step 2]
## Expected behavior
[What should happen]
## Actual behavior
[What actually happens]
## Context
- **Relevant area**: [detected from description + codebase structure]
## Summary
[Clear description of the feature or enhancement]
## Motivation
[Why this is needed]
## Proposed approach
[If the user provided one, otherwise omit]
## Context
- **Relevant area**: [detected from description + codebase structure]
## Summary
[Description]
## Context
- **Area**: [relevant area if identifiable]
Construct and run the gh issue create command:
gh issue create \
--title "the title" \
--label "label1,label2" \
--body "$(cat <<'EOF'
## Summary
...
EOF
)"
If issue templates exist in the repo and one matches the issue type, consider using
--template "Template Name" instead of --body.
After filing, display the issue URL to the user.
Map issue types to common GitHub labels. Only suggest labels that actually exist in the repo
(from the gh label list output in Phase 2):
| Issue Type | Candidate Labels |
|---|---|
| Bug | bug |
| Feature | enhancement |
| Documentation | documentation |
| Question | question |
| Beginner-friendly | good first issue |
If the user mentions something needs help or attention, also suggest help wanted.
When the user provides enough detail upfront (e.g., invoked with a full description argument), minimize questions:
When the user wants to file an umbrella issue (also known as a tracking issue, epic, or parent issue that groups related sub-issues), the title MUST include a prefix in the format [Category].
[Admin] as the default prefix if the user does not specify one.[Admin] Set up CI/CD pipeline[Auth] Implement OTP login flow[Federation] ActivityPub compliance improvementsgh auth status fails: suggest gh auth logingh repo creategh issue create fails: show the error and offer to retrynpx claudepluginhub kodingwarrior/minimalism-workflow --plugin minimalism-workflowGuides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.