gh-buglisted
Install: claude install-skill fadymondy/gh-pms
# gh-bug
Create a bug-report issue with whichever GitHub primitives are available.
## When to use
- User reports a defect
- Regression found in testing
- Post-merge unexpected behavior
## What it does
### Step 1 — Collect inputs
Required:
- `title` — what's broken
- `steps_to_reproduce` — bullet list
- `expected` — what should happen
- `actual` — what happens
Optional:
- `services` — `svc:*` labels
- `severity` — resolved against `workflows/default.yaml.severities.values[]`. Defaults to that file's `severities.default` (`medium` out of the box). Same scale used by `gh-feature` and `gh-task` — bugs no longer own a private severity definition.
- `related_feature` — original feature issue number if regression
### Step 2 — Detect features
```bash
FEATURES=$(${CLAUDE_PLUGIN_ROOT}/lib/ghcall.sh detect-features)
USE_TYPES=$(echo "$FEATURES" | jq -r .issue_types)
```
### Step 3 — Create issue
Use `mcp__github__issue_write`:
- `title`: `[Bug] {title}`
- `body`: filled `templates/bug.md`
- `labels`: `type:bug`, `status:todo`, `severity:{severity}`, `svc:*`
- Capture issue number `N`
### Step 4 — Set native issue type
If `USE_TYPES=true`:
```bash
NODE_ID=$(${CLAUDE_PLUGIN_ROOT}/lib/ghcall.sh issue-node-id "{owner}" "{repo}" "{N}")
TYPE_ID=$(${CLAUDE_PLUGIN_ROOT}/lib/ghcall.sh resolve-issue-type-id "{owner}" "Bug")
${CLAUDE_PLUGIN_ROOT}/lib/ghcall.sh set-issue-type "$NODE_ID" "$TYPE_ID"
```
### Step 5 — Add to project + set fields
If project exists, add to it and set:
- `S