安全的 Git 開發流程,通過 Subagent 執行。
┌─────────────────────────────────────────────────────────┐
│ ❌ 禁止直接推送到 main 分支 │
│ ❌ 禁止跳過 PR 流程 │
│ ❌ 禁止在未理解程式碼庫的情況下開發新功能 │
│ ❌ 禁止在未找到 Bug 根因的情況下修復 Bug │
│ │
│ ✅ 必須從 develop 建立新分支 │
│ ✅ 必須通過 PR 合併到 develop │
│ ✅ 必須使用 code-review 技能審查程式碼 │
└─────────────────────────────────────────────────────────┘
安全提示: 本 skill 應在專案根目錄(git 倉庫)下執行,cwd 會被限制在專案目錄內。
執行任何程式碼修改前,先評估是否觸發此技能:
┌─────────────────────────────────────────────────────────┐
│ Step 1: 使用者是否使用了觸發詞? │
│ - "開發"、"實現"、"新功能"、"修復"、"提交 PR" │
│ │
│ Step 2: 評估複雜度 │
│ - 預估工作量 > 30 分鐘? │
│ - 涉及 > 3 個檔案? │
│ │
│ 判斷: │
│ ✅ 觸發詞 + (高複雜度 OR 多檔案) → 使用此技能 │
│ ❌ 無觸發詞 或 簡單修改 → 直接執行 │
└─────────────────────────────────────────────────────────┘
簡單修改示例(不觸發):
複雜修改示例(觸發):
⚠️ 所有開發任務必須通過 Subagent 執行:
sessions_spawn({
runtime: "subagent",
mode: "run",
task: "{任務描述}"
});
模型配置(可選):
使用 thinking 模式審查程式碼1. 確定任務型別(feature / fix / docs / refactor)
2. 生成分支名稱(feature/xxx, fix/xxx)
3. 確認目標分支 = develop(永遠是 develop!)
⚠️ 對於新 Feature,必須先充分理解當前程式碼庫:
┌─────────────────────────────────────────────────────────┐
│ 檢查清單: │
│ │
│ □ 是否已有類似的 helper/util 方法? │
│ □ 會影響哪些現有功能? │
│ □ 需要修改哪些檔案? │
│ □ 哪些程式碼是不必要修改的? │
│ │
│ 避免: │
│ ❌ 重複實現 helper/util 方法 │
│ ❌ 影響當前功能 │
│ ❌ 修改不必要的程式碼 │
└─────────────────────────────────────────────────────────┘
執行步驟:
⚠️ 對於 Bug 修復,必須完全充分調研找到 Bug 的產生原因:
┌─────────────────────────────────────────────────────────┐
│ 調研清單: │
│ │
│ □ Bug 的具體表現是什麼? │
│ □ Bug 在什麼條件下觸發? │
│ □ Bug 的根因在哪裡?(程式碼位置) │
│ □ 修復方案是什麼?是否會影響其他功能? │
│ │
│ 禁止: │
│ ❌ 在未找到根因的情況下修復 │
│ ❌ 只修復表面症狀而不修復根因 │
└─────────────────────────────────────────────────────────┘
執行步驟:
# 1. 確保 develop 是最新的
git checkout develop
git pull origin develop
# 2. 建立新分支(規範命名)
git checkout -b {type}/{name}
# 示例
# feature/identity-persistence
# fix/cors-validation
# docs/api-reference
必須包含:
注意業務邊界:
⚠️ 實現完成後,必須使用 code-review 技能進行自動審查:
// 觸發 code-review skill
sessions_spawn({
runtime: "subagent",
mode: "run",
task: `使用 code-review 技能審查當前變更:
- 分支: {branchName}
- 對比: develop...HEAD`
});
審查迴圈:
審查通過後提交 PR 到 develop:
# 推送分支
git push origin {branchName}
# 建立 PR
gh pr create --base develop --head {branchName} \
--title "{type}: {簡短描述}" \
--body "{PR 描述}"
PR 描述模板:
## 變更內容
- 變更 1
- 變更 2
## 程式碼庫理解(Feature)
- 已有的 helper/util:xxx
- 影響的功能:xxx
- 最小修改範圍:xxx
## Bug 根因分析(Fix)
- Bug 表現:xxx
- 觸發條件:xxx
- 根因位置:xxx
- 修復方案:xxx
## 測試
- [ ] 單元測試通過
- [ ] 型別檢查通過
- [ ] Lint 通過
- [ ] Code Review 通過
## 相關 Issue
Closes #{issue-number}
小蔥技能7w4.net有更新,你可以訪問看下。
提交 PR 後流程結束。
後續由使用者決定:
| 型別 | 格式 | 示例 |
|---|---|---|
| Feature | feature/{name} |
feature/identity-persistence |
| Fix | fix/{name} |
fix/cors-validation |
| Docs | docs/{name} |
docs/api-reference |
| Refactor | refactor/{name} |
refactor/message-queue |
命名規則:
{type}({scope}): {description}
[optional body]
[optional footer]
| 型別: | Type | 用途 |
|---|---|---|
feat |
新功能 | |
fix |
Bug 修復 | |
docs |
文件更新 | |
refactor |
重構 | |
test |
測試相關 | |
chore |
構建/工具/依賴 |
啟動開發任務時使用此模板:
sessions_spawn({
runtime: "subagent",
mode: "run",
cwd: "{projectDir}",
task: `你是 Git Workflow 開發助手。
## 任務資訊
- 型別:{feature|fix}
- 描述:{taskDescription}
- 分支名稱:{branchName}
## ⚠️ 如果是 Feature,必須先理解程式碼庫:
1. 搜尋相關程式碼檔案
2. 閱讀相關模組實現
3. 識別可複用的 helper/util
4. 確定最小修改範圍
避免:
- 重複實現 helper/util 方法
- 影響當前功能
- 修改不必要的程式碼
## ⚠️ 如果是 Fix,必須先找到 Bug 根因:
1. 復現 Bug(如果能)
2. 定位 Bug 程式碼位置
3. 分析根因
4. 設計修復方案
5. 評估影響範圍
## 開發流程
1. 從 develop 建立分支:{branchName}
2. 實現變更(最小修改範圍)
3. 編寫測試
4. 更新文件
5. 執行檢查(typecheck, lint, test)
## 完成後
1. 使用 code-review 技能審查程式碼
2. 修復發現的問題
3. 再次審查,直到無新問題
4. 提交 PR 到 develop
## 安全規則
- ❌ 不要推送到 main
- ❌ 不要跳過 code-review
- ✅ 必須從 develop 建立分支
- ✅ 必須 PR 到 develop`
});
這個 Skill 質量不錯,它定義了一套安全可靠的程式碼開發流程,能有效防止常見錯誤如直接推 main、跳過 Review 等。觸發條件設計合理,小改動不會被複雜流程拖累。流程步驟清晰,分支命名和提交規範都有明確指引。主要不足是內容全靠一份長文件,學習成本稍高;另外如果 code-review 技能缺失時沒有備用方案。總體適合團隊協作場景,能提升程式碼質量。