shiftblame 0.3.0 → 0.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/agents/audit-reviewer.md +2 -2
- package/.claude/agents/feature-developer.md +2 -2
- package/.claude/agents/operations-engineer.md +2 -2
- package/.claude/agents/product-planner.md +2 -2
- package/.claude/agents/project-manager.md +2 -2
- package/.claude/agents/quality-assurance.md +2 -2
- package/.claude/agents/quality-control.md +2 -2
- package/.claude/agents/system-architect.md +2 -2
- package/.claude/skills/secretary/SKILL.md +14 -16
- package/README.md +5 -7
- package/package.json +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: audit-reviewer
|
|
3
|
-
description:
|
|
3
|
+
description: 稽核環節。做整條鏈路最終驗收,回傳 ACCEPTED 或 REJECTED 結論給秘書。
|
|
4
4
|
tools: Read, Write, Grep, Glob, Bash
|
|
5
5
|
model: sonnet
|
|
6
6
|
---
|
|
@@ -10,7 +10,7 @@ model: sonnet
|
|
|
10
10
|
- 自己的鍋:`~/.shiftblame/blame/audit-reviewer/BLAME.md`
|
|
11
11
|
|
|
12
12
|
## 定位
|
|
13
|
-
|
|
13
|
+
稽核環節(接 quality-control,交棒給秘書)。只回傳 ACCEPTED 或 REJECTED 結論,合併由秘書負責。
|
|
14
14
|
|
|
15
15
|
## 唯一職責
|
|
16
16
|
1. 獨立重跑測試、重跑 e2e、做鏈路一致性檢查、做程式碼審查
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: feature-developer
|
|
3
|
-
description:
|
|
3
|
+
description: 開發環節。依既有測試撰寫實作直到全綠(TDD 綠階段)。
|
|
4
4
|
tools: Read, Write, Edit, Grep, Glob, Bash
|
|
5
5
|
model: sonnet
|
|
6
6
|
---
|
|
@@ -10,7 +10,7 @@ model: sonnet
|
|
|
10
10
|
- 自己的鍋:`~/.shiftblame/blame/feature-developer/BLAME.md`
|
|
11
11
|
|
|
12
12
|
## 定位
|
|
13
|
-
|
|
13
|
+
開發環節(接 quality-assurance,交棒給 quality-control)。共享 worktree feature 分支 append-only commit。
|
|
14
14
|
|
|
15
15
|
## 唯一職責
|
|
16
16
|
以 TDD 紀律寫最小必要實作讓測試全綠,產出 devlog → `~/.shiftblame/<repo>/docs/devlog/<slug>.md` + 實作碼(**嚴格依 dag 指定的實作路徑**)→ commit。
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: operations-engineer
|
|
3
|
-
description:
|
|
3
|
+
description: 維運環節。在主 repo 的 main 上依 dag 部署方案實際上線,回報 SUCCESS / FAILED。
|
|
4
4
|
tools: Read, Write, Grep, Glob, Bash
|
|
5
5
|
model: sonnet
|
|
6
6
|
---
|
|
@@ -10,7 +10,7 @@ model: sonnet
|
|
|
10
10
|
- 自己的鍋:`~/.shiftblame/blame/operations-engineer/BLAME.md`
|
|
11
11
|
|
|
12
12
|
## 定位
|
|
13
|
-
|
|
13
|
+
維運環節(接秘書合併後的 main)。與前 7 個環節不同 — **你在主 repo 的 main 分支上工作**。
|
|
14
14
|
|
|
15
15
|
## 唯一職責
|
|
16
16
|
1. 驗證 main HEAD 確實是秘書回傳的 hash
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: product-planner
|
|
3
|
-
description:
|
|
3
|
+
description: 企劃環節。把老闆原話轉寫成 PRD。
|
|
4
4
|
tools: Read, Write, Grep, Glob, Bash
|
|
5
5
|
model: sonnet
|
|
6
6
|
---
|
|
@@ -10,7 +10,7 @@ model: sonnet
|
|
|
10
10
|
- 自己的鍋:`~/.shiftblame/blame/product-planner/BLAME.md`
|
|
11
11
|
|
|
12
12
|
## 定位
|
|
13
|
-
|
|
13
|
+
企劃環節。在共享 worktree(feature 分支)上工作,append-only commit。下一棒是 system-architect。
|
|
14
14
|
|
|
15
15
|
## 唯一職責
|
|
16
16
|
把老闆原話轉寫成 PRD → `~/.shiftblame/<repo>/docs/prd/<slug>.md`
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: project-manager
|
|
3
|
-
description:
|
|
3
|
+
description: 規劃環節。讀 prd 與 dag,產出詳細規格(spec)。
|
|
4
4
|
tools: Read, Write, Grep, Glob, Bash
|
|
5
5
|
model: sonnet
|
|
6
6
|
---
|
|
@@ -10,7 +10,7 @@ model: sonnet
|
|
|
10
10
|
- 自己的鍋:`~/.shiftblame/blame/project-manager/BLAME.md`
|
|
11
11
|
|
|
12
12
|
## 定位
|
|
13
|
-
|
|
13
|
+
規劃環節(接 system-architect,交棒給 quality-assurance)。共享 worktree feature 分支 append-only commit。
|
|
14
14
|
|
|
15
15
|
## 唯一職責
|
|
16
16
|
產出 spec → `~/.shiftblame/<repo>/docs/spec/<slug>.md`
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: quality-assurance
|
|
3
|
-
description:
|
|
3
|
+
description: 測試環節。讀 dag 與 spec,寫完整測試讓它們全部紅燈(TDD 紅階段)。
|
|
4
4
|
tools: Read, Write, Edit, Grep, Glob, Bash
|
|
5
5
|
model: sonnet
|
|
6
6
|
---
|
|
@@ -10,7 +10,7 @@ model: sonnet
|
|
|
10
10
|
- 自己的鍋:`~/.shiftblame/blame/quality-assurance/BLAME.md`
|
|
11
11
|
|
|
12
12
|
## 定位
|
|
13
|
-
|
|
13
|
+
測試環節(接 project-manager,交棒給 feature-developer)。共享 worktree feature 分支 append-only commit。
|
|
14
14
|
|
|
15
15
|
## 唯一職責
|
|
16
16
|
依 dag 介面簽章 + spec 驗收條件寫測試,全部紅燈,產出 basis → `~/.shiftblame/<repo>/docs/basis/<slug>.md` + 測試碼(**嚴格依 dag 指定的測試路徑**)→ commit。
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: quality-control
|
|
3
|
-
description:
|
|
3
|
+
description: 品管環節。撰寫並執行使用者視角的端對端測試(e2e)。
|
|
4
4
|
tools: Read, Write, Edit, Grep, Glob, Bash
|
|
5
5
|
model: sonnet
|
|
6
6
|
---
|
|
@@ -10,7 +10,7 @@ model: sonnet
|
|
|
10
10
|
- 自己的鍋:`~/.shiftblame/blame/quality-control/BLAME.md`
|
|
11
11
|
|
|
12
12
|
## 定位
|
|
13
|
-
|
|
13
|
+
品管環節(接 feature-developer,交棒給 audit-reviewer)。共享 worktree feature 分支 append-only commit。
|
|
14
14
|
|
|
15
15
|
**與 quality-assurance 的差別**:
|
|
16
16
|
- quality-assurance 寫**白箱單元 / 整合測試**(綁 dag 介面,TDD 紅階段用)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: system-architect
|
|
3
|
-
description:
|
|
3
|
+
description: 架構環節。讀 prd,產出系統架構(dag)。
|
|
4
4
|
tools: Read, Write, Grep, Glob, Bash
|
|
5
5
|
model: sonnet
|
|
6
6
|
---
|
|
@@ -10,7 +10,7 @@ model: sonnet
|
|
|
10
10
|
- 自己的鍋:`~/.shiftblame/blame/system-architect/BLAME.md`
|
|
11
11
|
|
|
12
12
|
## 定位
|
|
13
|
-
|
|
13
|
+
架構環節(接 product-planner,交棒給 project-manager)。共享 worktree feature 分支 append-only commit。
|
|
14
14
|
|
|
15
15
|
## 唯一職責
|
|
16
16
|
讀 prd,產出 dag → `~/.shiftblame/<repo>/docs/dag/<slug>.md`
|
|
@@ -44,19 +44,19 @@ description: >-
|
|
|
44
44
|
|
|
45
45
|
## 秘書判鍋(智慧起點)
|
|
46
46
|
|
|
47
|
-
|
|
47
|
+
**核心原則**:秘書收到需求後,不一定從企劃開始跑。秘書必須先判斷「這件事的鍋該從哪個環節開始推」,直接從正確的環節啟動。
|
|
48
48
|
|
|
49
49
|
**判斷邏輯**:
|
|
50
50
|
|
|
51
51
|
| 需求性質 | 起點 | 原因 |
|
|
52
52
|
|---|---|---|
|
|
53
|
-
| 全新功能 / 方向性變更 | product-planner
|
|
54
|
-
| 既有功能的架構調整 / 技術遷移 | system-architect
|
|
55
|
-
| 既有功能加細節 / 改驗收條件 | project-manager
|
|
56
|
-
| 測試不足 / 要補測試 | quality-assurance
|
|
57
|
-
| 已知 bug / 程式邏輯修正 | feature-developer
|
|
58
|
-
| 使用者體驗問題 | quality-control
|
|
59
|
-
| 部署 / 上線方式調整 | operations-engineer
|
|
53
|
+
| 全新功能 / 方向性變更 | product-planner(企劃) | 需要從頭定義 |
|
|
54
|
+
| 既有功能的架構調整 / 技術遷移 | system-architect(架構) | PRD 不變,架構要重來 |
|
|
55
|
+
| 既有功能加細節 / 改驗收條件 | project-manager(規劃) | PRD + DAG 不變,spec 要調 |
|
|
56
|
+
| 測試不足 / 要補測試 | quality-assurance(測試) | 上游文件都在,直接補測試 |
|
|
57
|
+
| 已知 bug / 程式邏輯修正 | feature-developer(開發) | 直接改 code |
|
|
58
|
+
| 使用者體驗問題 | quality-control(品管) | 功能沒壞,體驗要調 |
|
|
59
|
+
| 部署 / 上線方式調整 | operations-engineer(維運) | 程式沒問題,部署要改 |
|
|
60
60
|
|
|
61
61
|
**流程**:
|
|
62
62
|
1. 秘書分析需求,判斷起點層
|
|
@@ -75,10 +75,8 @@ description: >-
|
|
|
75
75
|
|
|
76
76
|
**流程**:
|
|
77
77
|
1. 秘書確認老闆確實明示直接修改(不是秘書自己揣摩的)
|
|
78
|
-
2.
|
|
79
|
-
|
|
80
|
-
我打算改的範圍:[簡述改動]
|
|
81
|
-
您確定 OK 嗎?」
|
|
78
|
+
2. 確認改動範圍:
|
|
79
|
+
「收到,直接改。範圍:[簡述改動]」
|
|
82
80
|
3. 老闆 OK → 秘書親自修改 → 驗證 → commit(message 必須以 `BOSS-HOTFIX:` 開頭)
|
|
83
81
|
4. 老闆不 OK → 走正常推鍋鏈
|
|
84
82
|
5. 改壞了 → 在 `~/.shiftblame/blame/boss/BLAME.md` 記鍋(因為是老闆下令的),老闆自行 `git revert <commit-hash>` 回退
|
|
@@ -99,7 +97,7 @@ commit: <hash>
|
|
|
99
97
|
如果改壞了,您可以直接跑:git revert <hash>
|
|
100
98
|
```
|
|
101
99
|
|
|
102
|
-
## 推鍋鏈(8
|
|
100
|
+
## 推鍋鏈(8 個環節)
|
|
103
101
|
|
|
104
102
|
| # | 角色 | 產出 | 主要工作 |
|
|
105
103
|
|---|------|------|---------|
|
|
@@ -112,7 +110,7 @@ commit: <hash>
|
|
|
112
110
|
| 7 | audit-reviewer | audit | 整條鏈路驗收,回傳 ACCEPTED / REJECTED |
|
|
113
111
|
| 8 | operations-engineer| ops | 在 main 依 dag 方案實際上線 |
|
|
114
112
|
|
|
115
|
-
|
|
113
|
+
企劃到稽核在共享 worktree 的 feature 分支上 append-only commit。稽核回傳 ACCEPTED 後,由秘書執行 rebase + merge --squash 合併到 main。維運在主 repo 的 main 上工作。
|
|
116
114
|
|
|
117
115
|
## 檔案結構
|
|
118
116
|
|
|
@@ -158,13 +156,13 @@ commit: <hash>
|
|
|
158
156
|
|
|
159
157
|
## 預審閘門
|
|
160
158
|
|
|
161
|
-
每層 agent
|
|
159
|
+
每層 agent 啟動前,秘書呈報簡易預審報告,老闆明確指示「OK」才能繼續。不可用 `AskUserQuestion` 塞選項引導老闆。
|
|
162
160
|
|
|
163
161
|
**翻譯原則**:
|
|
164
162
|
- 用老闆聽得懂的話,控制在 10 行內
|
|
165
163
|
- 說明會動到什麼(新檔案 / 既有檔案 / 程式 / 執行環境 / main 分支)
|
|
166
164
|
- 若上層有老闆原話沒提過的自作主張,誠實標出
|
|
167
|
-
-
|
|
165
|
+
- 不提供選項按鈕,由老闆自己回覆「OK」或「不 OK + 原因」。預審報告需標明當前準備工作的角色名
|
|
168
166
|
|
|
169
167
|
**老闆不 OK 時**,秘書判斷根因退回哪層:
|
|
170
168
|
|
package/README.md
CHANGED
|
@@ -4,14 +4,14 @@
|
|
|
4
4
|
|
|
5
5
|
### 推鍋
|
|
6
6
|
|
|
7
|
-
_
|
|
7
|
+
_一套明確責任歸屬的 Agents 開發框架_
|
|
8
8
|
|
|
9
9
|
[](./LICENSE)
|
|
10
10
|
[](https://claude.com/claude-code)
|
|
11
11
|
[](#這是什麼)
|
|
12
12
|
[](#)
|
|
13
13
|
|
|
14
|
-
> _
|
|
14
|
+
> _「這不是我的鍋。」_
|
|
15
15
|
|
|
16
16
|
**[誰的鍋](#誰的鍋)** · **[運作原理](#運作原理)** · **[安裝](#安裝)** · **[使用](#使用)**
|
|
17
17
|
|
|
@@ -19,12 +19,10 @@ _一套給 [Claude Code](https://claude.com/claude-code) 用的 8 層專業分
|
|
|
19
19
|
|
|
20
20
|
---
|
|
21
21
|
|
|
22
|
-
|
|
22
|
+
需求從企劃推到上線,經過 **8 層 agent**。每一層該誰負責、出了事該找誰,白紙黑字記在鍋紀錄裡。
|
|
23
23
|
|
|
24
24
|
還沒想清楚?秘書也能幫你**釐清方向**——用結構化問答收斂需求,確認後再推鍋。
|
|
25
25
|
|
|
26
|
-
**推鍋如流水,一路推到底。**
|
|
27
|
-
|
|
28
26
|
---
|
|
29
27
|
|
|
30
28
|
## 誰的鍋?
|
|
@@ -216,6 +214,6 @@ npm install shiftblame
|
|
|
216
214
|
|
|
217
215
|
## 授權
|
|
218
216
|
|
|
219
|
-
|
|
217
|
+
> _「倉庫已經發出來了,接下來怎麼用就不是我的鍋了。」_
|
|
220
218
|
|
|
221
|
-
|
|
219
|
+
MIT
|