From shipshitdev-library
Files a GitHub bug issue from a description: structures a clear report (summary, steps, expected vs actual, environment), previews it, then creates the issue with the Bug issue type or bug label.
How this skill is triggered — by the user, by Claude, or both
Slash command
/shipshitdev-library:bugThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Turn a description of something broken into a GitHub issue
Turn a description of something broken into a GitHub issue
of type Bug. It drafts the report from what the user gives (plus repo context),
shows it for approval, and only then files the issue — typed Bug where the repo
supports issue types, otherwise labelled bug.
It never opens an issue without confirmation and never invents reproduction steps or facts the user did not provide; unknowns are marked as such.
Inputs:
Outputs:
Bug or labelled bug (and why)Creates/Modifies:
Bug (or with the bug label) via ghbug label if it is used as a fallback and does not yet existExternal Side Effects:
Confirmation Required:
bug label (fallback path), if one does not already existDelegates To:
gh-fix-ci when the bug is a failing CI check the user wants fixed instead of fileddebug / systematic-debugging when the user wants to root-cause before filing/bugDo not use this skill to fix the bug, to file feature requests or tasks (those are a different issue type), or to triage existing issues.
gh auth status -h github.com
gh repo view --json nameWithOwner,hasIssuesEnabled --jq '{repo:.nameWithOwner, issues:.hasIssuesEnabled}'
Stop if issues are disabled. Detect whether the repo's owner defines issue types
and whether a Bug type exists:
gh issue create --help | grep -q -- '--type' && echo "type-flag: supported"
gh api "repos/{owner}/{repo}" --jq '.owner.type' 2>/dev/null
Decide the path:
Bug type. Use
--type Bug.bug label — fallback when no issue types exist. Check for the label and plan
to create it only if needed:gh label list --search bug --json name --jq '.[].name'
Structure the report from what the user gave. Keep it factual — never fabricate
steps, versions, or behavior. Mark anything unknown as _not provided_.
Title: a short, specific summary of the symptom (not "bug" or "it's broken").
Body (omit sections that genuinely do not apply):
## Summary
<one or two sentences: what is broken>
## Steps to Reproduce
1. …
2. …
## Expected
<what should happen>
## Actual
<what happens instead — include the error/stack trace verbatim if provided>
## Environment
<app/service, version or commit, OS/browser, anything relevant — or _not provided_>
## Notes
<links, related issues, suspected area — only if the user gave them>
If the user pasted a stack trace or error, quote it verbatim in a fenced block under Actual. Ask one concise follow-up only if the report is unusable without it (e.g. no symptom at all); otherwise draft with what you have and mark gaps.
Print the full drafted issue — title, body, the type/label decision, and any labels/assignee/milestone to apply — then stop and wait for an explicit yes. In a read-only or dry-run request, end here and file nothing.
Only after confirmation, write the body to a temp file (to preserve formatting) and create the issue.
Preferred — Bug issue type:
gh issue create --title "<title>" --body-file /tmp/bug_body.md --type Bug
Fallback — bug label (create the label first only if it is missing and the user
agreed):
gh label create bug --color d73a4a --description "Something isn't working" 2>/dev/null || true
gh issue create --title "<title>" --body-file /tmp/bug_body.md --label bug
Add --assignee, --label, --milestone, or --project only for values the user
specified. If --type Bug fails because the type does not exist, fall back to the
label path and say so rather than failing the run.
bug / bug <description> — Phases 1-4. Draft, confirm, file the issue. (Default.)bug draft — Phases 1-3. Draft and print the report only; create nothing.If the user names labels, an assignee, a milestone, or a severity, honor them. If they ask for a feature or task instead of a bug, say this skill files bugs and point them to the right issue type.
Report:
Bug or labelled bugdebug / systematic-debugging, or fix a
failing check with gh-fix-cinpx claudepluginhub shipshitdev/skills --plugin worktreeCreates well-structured GitHub issues using gh CLI, with templates for bugs, features, and chores. Includes title format guidance and acceptance criteria.
Creates and manages GitHub issues for bugs, features, and tasks with enforced quality standards like reproducibility steps, acceptance criteria, and severity assessment.
Creates issues in the configured ticketing tool with a template, gathering context for actionable bug reports.