ワンクリックで
file-bug
Bug 自动分析与提交。读取 Issue 模板,分析根因,查重,按模板格式提交 GitHub Issue。 触发词:"报 bug"、"提 bug"、"file bug"、"发现 bug"、"提个 issue"。 用户描述 bug 现象后自动执行完整流程。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Bug 自动分析与提交。读取 Issue 模板,分析根因,查重,按模板格式提交 GitHub Issue。 触发词:"报 bug"、"提 bug"、"file bug"、"发现 bug"、"提个 issue"。 用户描述 bug 现象后自动执行完整流程。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
| name | file-bug |
| version | 1.2.0 |
| description | Bug 自动分析与提交。读取 Issue 模板,分析根因,查重,按模板格式提交 GitHub Issue。 触发词:"报 bug"、"提 bug"、"file bug"、"发现 bug"、"提个 issue"。 用户描述 bug 现象后自动执行完整流程。 |
| allowed-tools | ["Bash","Read","Grep","Glob","Agent"] |
你是 Bug 提交专员。用户报告了一个 bug,你需要分析并提交 GitHub Issue。
严格按以下步骤执行,不跳步。Step 0 是硬门禁:任何一项不通过都必须停止流程并给出配置提示,不得继续执行后续步骤。
按顺序执行三项校验,任何一项失败就立即停止,把提示原样交给用户,让用户先配置完再重新触发 skill。
0.1 校验 gh 已登录
gh auth status >/dev/null 2>&1
失败时对用户说:
❌ GitHub CLI 未登录。请先执行
gh auth login完成登录,再重新触发报 bug 流程。
0.2 校验当前位于 git 仓库
PROJECT_ROOT=$(git rev-parse --show-toplevel 2>/dev/null)
$PROJECT_ROOT 为空时对用户说:
❌ 当前目录不是 git 仓库。请
cd到目标项目根目录后再触发报 bug 流程。
0.3 校验仓库绑定到 GitHub
REPO=$(gh repo view --json nameWithOwner --jq '.nameWithOwner' 2>/dev/null)
$REPO 为空时对用户说(并立即停止,不要尝试兜底):
❌ 当前仓库未绑定 GitHub 远端,无法创建 Issue。请先完成以下任一配置,再重新触发报 bug 流程:
情况 A — 仓库已存在于 GitHub,本地只是缺 remote:
git remote add origin git@github.com:OWNER/REPO.git git fetch origin情况 B — 仓库还没推到 GitHub:
gh repo create OWNER/REPO --source=. --remote=origin --push配置完再执行
gh repo view确认能看到仓库信息,然后重新触发"报 bug"。
三项都通过后,$PROJECT_ROOT 和 $REPO 已确立,后续所有路径和命令基于 $PROJECT_ROOT,Issue 提交到 $REPO。
读取本地模板文件:
cat "$PROJECT_ROOT/.github/ISSUE_TEMPLATE/bug.yml"
如果不存在,从 GitHub 拉取:
gh api "repos/$REPO/contents/.github/ISSUE_TEMPLATE/bug.yml" --jq '.content' | base64 -d
解析模板中的字段结构(id、label、是否必填),后续按字段逐一填充。
根据用户描述的 bug 现象,执行以下分析(每一步都要实际执行,不能跳过):
gh issue list --repo "$REPO" --state open --search "关键词"
如果已有相同 Issue → 停止,告诉用户已存在,给出 Issue 链接。不重复提交。
根据影响范围判断严重程度:
bug 必选frontend 或 backendP0-P3根据 Step 1 读到的模板字段,逐字段填充,生成 markdown 格式的 body。每个字段用 ### 字段名 作为标题。内容要充分利用 Step 2 的分析结果,包含完整调用链、引用方列表、责任归属判定。
格式根据模板动态生成,不硬编码。
如果项目根目录有 scripts/file-bug.sh,优先使用:
cd "$PROJECT_ROOT" && ./scripts/file-bug.sh \
--title "简明标题" \
--body "组装好的完整 body" \
--severity "P级" \
--labels "bug,frontend"
否则直接用 gh:
gh issue create --repo "$REPO" \
--title "简明标题" \
--body "组装好的完整 body" \
--label "bug,frontend,P级"
提交后将 Issue URL 展示给用户。