一键导入
gen-branch
依據 GitHub Issue 編號建立以 main 為 base 的「純本地分支」(不追蹤任何 remote), 命名格式對齊 <category>/YYYYMM/<ISSUE-NUMBER>-<kebab-case-summary>。 觸發條件:gen branch <ISSUE-NUMBER>
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
依據 GitHub Issue 編號建立以 main 為 base 的「純本地分支」(不追蹤任何 remote), 命名格式對齊 <category>/YYYYMM/<ISSUE-NUMBER>-<kebab-case-summary>。 觸發條件:gen branch <ISSUE-NUMBER>
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
完整開發流程編排器。使用者說「幫我做 X 功能」時觸發,自動依序驅動所有 agent 直到 PR 建立,只在關鍵決策點暫停確認。 也可用既有 GitHub issue id 直接進入 STAGE 1(跳過 STAGE 0a/0b 規劃),例如「開發 issue #42」「處理 #54」。 PR 實際合併後,可另外觸發 STAGE 6 清理該 PR 對應的 worktree(branch 一律保留不刪除)。 小修正可走 quick 模式(單暫停點、不建 worktree),例如「快速修正 <描述>」「/gen-dev-workflow quick #54」。 觸發條件:dev workflow, 開始開發, 新功能開發, 幫我做 X 功能, 繼續, 繼續上次, 繼續開發, /gen-dev-workflow, 開發 issue #<id>, 處理 #<id>, 快速修正, quick fix, PR #<id> 合併了 清理 worktree
分析 unstaged/staged 的 git 變更,依功能相關性將檔案分組,並建立多個語意化的單元 commit。當使用者說 "commit"、"gen-commit"、"依功能 commit"、"幫我 commit"、"進行功能單元 commit",或任何要求智慧分組並 commit 目前變更的變體時使用。也適用於使用者想把變更檔案以有意義、結構良好、依功能領域組織的訊息 commit 時。
當使用者要為已合入 main 的變更發布新版本——更新版號(pubspec.yaml / README.md)、把使用者可見的新功能同步進 README、補上 CHANGELOG、並打 git tag 推上去時使用。觸發語如「更新版本資訊」、「bump 版號」、「調整版號為 vX.Y.Z 下 tag push」、「release vX.Y.Z」、「gen-update-publish-info vX.Y.Z」。
讀取 GitHub PR 的 review inline comments,自行判斷每則意見是否需要修復——技術正確且合理者修復後 commit、push 並回覆附 commit SHA;不需修復者直接以中文回覆技術理由。觸發時機:使用者說「回覆 PR comment」、「針對 review 回覆修正」、「gen-pr-reply PR {number}」,或要針對 code review 的每個 inline comment 回覆修正 commit。
當使用者提供 GitHub issue id 連同已解析的 issue brief,並希望 Codex 從安全的 base 建立新的 git branch 與 worktree、沿用既有命名規則、且不依賴當前 branch 名稱即完成最小開發設定時,使用此 skill。
用於安全地關閉、移除、清理 git worktree 的收尾流程。檢查 worktree 狀態,乾淨且無殘留變更時直接移除、 不需再詢問是否刪除;不觸碰任何 issue 或 ticket 的 State;只移除 worktree,對應 branch 一律保留不刪除。 觸發條件:關閉 worktree, 移除 worktree, 清理 worktree, worktree 收尾, close worktree, remove worktree
| name | gen-branch |
| description | 依據 GitHub Issue 編號建立以 main 為 base 的「純本地分支」(不追蹤任何 remote), 命名格式對齊 <category>/YYYYMM/<ISSUE-NUMBER>-<kebab-case-summary>。 觸發條件:gen branch <ISSUE-NUMBER> |
| allow-tools | ["Bash"] |
從觸發指令解析 GitHub Issue 編號。
gen branch <ISSUE-NUMBER># 前綴(會自動去除)gen branch 1702、gen branch #1718、gen branch 42將編號記為 $ISSUE(純數字,無 # 前綴)。
若需指定 repo(不在 git 工作目錄、或要查跨 repo 的 issue),可帶 --repo <owner>/<name>。
使用 GitHub CLI 取得 issue 詳情:
gh issue view "$ISSUE" --json number,title,body,labels,state,url
關注:
title:作為 slug 來源body:協助判斷本質是修正/優化/重構/新增labels:輔助判斷(例如 bug、enhancement、refactor、chore、documentation 等)state:若為 CLOSED,提示使用者再確認是否仍要建立分支若找不到 issue(gh 回 404 或非 0 退出碼),報錯並停止。
若環境未安裝
gh或未登入,提示使用者先執行gh auth login。
不要只看 labels。labels 只是輔助;最終依 issue 內容本質決定:
| category | 判準:issue 本質是要… |
|---|---|
fix | 修正 既有功能的 bug / 行為錯誤 / 顯示錯誤 |
feature | 新增 功能、頁面、API 串接、流程 |
refactor | 重構 既有程式碼結構(行為不變,架構/可讀性改善) |
chore | 優化 雜項(建置/設定/文件/依賴升版/CI 等不影響產品功能) |
判斷線索(由強到弱):
fix;「新增」「建立」「增加」「支援」→ feature;「重構」「整理」「抽出」→ refactor;「調整設定」「升級套件」「文件」→ chore。bug 幾乎必為 fix;enhancement/feature 多為 feature;documentation/dependencies/ci 多為 chore,但仍要看 title)。對不確定的 case,列出候選並請使用者確認再繼續。
格式:<category>/<YYYYMM>/<ISSUE-NUMBER>-<slug>
<category>:步驟 2 決定<YYYYMM>:當前年月(date +%Y%m)<ISSUE-NUMBER>:純數字(無 # 前綴)<slug>:title 轉出的英文 kebab-case
[STG][iOS/Android][APP V3/XXX] 等方括號前綴- 連字,不含中文或特殊字元範例:
| 編號 | 本質 | title 節選 | 結果 |
|---|---|---|---|
1700 | 修正 | 我的收藏貨到通知按鈕狀態重置 | fix/202604/1700-wishlist-arrival-notify-button-state-reset |
1702 | 修正 | 點擊貨到通知按鈕提示訊息顯示不正確 | fix/202604/1702-wishlist-arrival-notify-toast-message |
1699 | 修正 | 未根據商品銷售狀態顯示相應功能按鈕 | fix/202604/1699-wishlist-button-state-by-sale-status |
1718 | 新增 | Member card badge 功能 | feature/202604/1718-member-card-badge |
1751 | 重構 | Refactor app coupon detail page | refactor/202604/1751-app-coupon-detail-page |
42 | 優化 | 升級 Dart SDK 至 3.4 | chore/202604/42-bump-dart-sdk-3-4 |
將結果記為 $BRANCH,請使用者確認後再建立分支。
git status --short
git stash push -m "gen-branch switch: $ISSUE" -- <files> 暫存git stash popgit fetch origin main
git checkout --no-track -b "$BRANCH" origin/main
重點:必須使用 --no-track,確保新分支為純本地分支,不自動關聯任何 remote tracking branch。
git config branch.autoSetupMerge 被設為 always,--no-track 也會強制覆蓋此行為。git branch -vv 驗證:新分支該行不應出現 [origin/...] 之類的 upstream 標記,只會顯示 commit hash 與 message。若本地已有同名分支,報錯並中止(不強制覆蓋)。
git stash pop
若 pop 發生衝突:提示使用者,不自動解決。
輸出摘要:
origin/main$BRANCH(local only, no upstream tracking)url)git status 摘要git branch -vv 結果(用以確認未追蹤 remote)執行完畢後立即停止,等待使用者下達開發指令。嚴禁主動進入研究(Research)或開發階段。
origin/main 起頭,不是當前 HEAD。--no-track,不自動追蹤任何 remote branch。git push,由使用者自行決定 remote 與 upstream。#。