一键导入
sdlc-issue
Use when creating a GitHub issue from a brief (bug, feature, epic, or spike) against the repo's GitHub issue templates via gh CLI.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Use when creating a GitHub issue from a brief (bug, feature, epic, or spike) against the repo's GitHub issue templates via gh CLI.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
| name | sdlc:issue |
| description | Use when creating a GitHub issue from a brief (bug, feature, epic, or spike) against the repo's GitHub issue templates via gh CLI. |
Create a well-structured GitHub issue using the repo's own templates and gh CLI.
Core principle: Templates own the format. Skill owns the behavior.
.github/ISSUE_TEMPLATE/<type>.yml. Extract all fields, required vs optional, and label. Do this every time; never reconstruct from memory.label as heading. Omit empty optional fields.gh issue create with all labels, report issue URL.Issue titles must be natural language, sentence case (code terms and command names retain their canonical casing), no conventional commit prefixes, no scope tags.
Conventional commit format (type(scope): subject) is for commits and PR titles only. It is not appropriate for issue titles, which appear in GitHub's issue list and must be scannable at a glance.
Good:
Issue skill defaults to conventional commit format for titlesmktemp fails with .md suffixAdd natural language title guidance to issue skillBad:
fix(skills): mktemp fails with .md suffixfix: issue skill defaults to conventional commit formatfeat(issue): add title guidanceRule: if a reader has to mentally strip a prefix to understand the title, the title is wrong.
| Type | File | Type label | Additional labels |
|---|---|---|---|
| Bug | 1-bug.yml | bug | priority: <level> |
| Feature | 2-feature.yml | enhancement | priority: <level> |
| Epic | 3-epic.yml | epic | priority: <level> |
| Spike | 4-spike.yml | spike | n/a |
Priority is applied as a label, not a form dropdown. See the Label Conventions section in AGENTS.md for the full table and descriptions.
Bugs, features, and epics each get a priority: <level> label.
Spikes don't carry priority.
If the brief doesn't specify a level, ask once using a numbered list, never default silently:
BODY_FILE=$(mktemp /tmp/gh_issue_body_XXXXXX)
cat > "$BODY_FILE" << 'EOF'
<body>
EOF
gh issue create \
--title "<title>" \
--label "<type-label>" \
--label "<priority-label>" \
--body-file "$BODY_FILE"
Spike exception: omit the --label "<priority-label>" line; spikes carry only the spike type label.
Multiple --label flags can be chained. The type label is always present. The priority label is added for bugs, features, and epics; omit it for spikes.
Optional flags: --assignee "<username>", --milestone "<name>", --project "<name>"
gh without explicit approval. Always show the full draft first.gh CLI creation. Always apply these as labels.