takt 0.2.2 → 0.3.0

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.
Files changed (210) hide show
  1. package/README.md +223 -166
  2. package/dist/agents/runner.d.ts +2 -4
  3. package/dist/agents/runner.d.ts.map +1 -1
  4. package/dist/agents/runner.js +6 -35
  5. package/dist/agents/runner.js.map +1 -1
  6. package/dist/claude/client.d.ts +31 -6
  7. package/dist/claude/client.d.ts.map +1 -1
  8. package/dist/claude/client.js +78 -30
  9. package/dist/claude/client.js.map +1 -1
  10. package/dist/claude/index.d.ts +1 -1
  11. package/dist/claude/index.d.ts.map +1 -1
  12. package/dist/claude/index.js +1 -1
  13. package/dist/claude/index.js.map +1 -1
  14. package/dist/cli.d.ts +4 -3
  15. package/dist/cli.d.ts.map +1 -1
  16. package/dist/cli.js +41 -20
  17. package/dist/cli.js.map +1 -1
  18. package/dist/codex/client.d.ts +0 -1
  19. package/dist/codex/client.d.ts.map +1 -1
  20. package/dist/codex/client.js +3 -6
  21. package/dist/codex/client.js.map +1 -1
  22. package/dist/commands/addTask.d.ts.map +1 -1
  23. package/dist/commands/addTask.js +23 -7
  24. package/dist/commands/addTask.js.map +1 -1
  25. package/dist/commands/eject.d.ts +13 -0
  26. package/dist/commands/eject.d.ts.map +1 -0
  27. package/dist/commands/eject.js +105 -0
  28. package/dist/commands/eject.js.map +1 -0
  29. package/dist/commands/help.d.ts.map +1 -1
  30. package/dist/commands/help.js +12 -5
  31. package/dist/commands/help.js.map +1 -1
  32. package/dist/commands/index.d.ts +2 -1
  33. package/dist/commands/index.d.ts.map +1 -1
  34. package/dist/commands/index.js +2 -1
  35. package/dist/commands/index.js.map +1 -1
  36. package/dist/commands/listTasks.d.ts +45 -0
  37. package/dist/commands/listTasks.d.ts.map +1 -0
  38. package/dist/commands/{reviewTasks.js → listTasks.js} +93 -73
  39. package/dist/commands/listTasks.js.map +1 -0
  40. package/dist/commands/refreshBuiltin.d.ts +4 -4
  41. package/dist/commands/refreshBuiltin.d.ts.map +1 -1
  42. package/dist/commands/refreshBuiltin.js +13 -29
  43. package/dist/commands/refreshBuiltin.js.map +1 -1
  44. package/dist/commands/taskExecution.d.ts +7 -5
  45. package/dist/commands/taskExecution.d.ts.map +1 -1
  46. package/dist/commands/taskExecution.js +21 -14
  47. package/dist/commands/taskExecution.js.map +1 -1
  48. package/dist/commands/workflowExecution.d.ts.map +1 -1
  49. package/dist/commands/workflowExecution.js +88 -21
  50. package/dist/commands/workflowExecution.js.map +1 -1
  51. package/dist/config/agentLoader.d.ts +3 -1
  52. package/dist/config/agentLoader.d.ts.map +1 -1
  53. package/dist/config/agentLoader.js +17 -24
  54. package/dist/config/agentLoader.js.map +1 -1
  55. package/dist/config/globalConfig.d.ts +2 -0
  56. package/dist/config/globalConfig.d.ts.map +1 -1
  57. package/dist/config/globalConfig.js +18 -0
  58. package/dist/config/globalConfig.js.map +1 -1
  59. package/dist/config/initialization.d.ts +7 -5
  60. package/dist/config/initialization.d.ts.map +1 -1
  61. package/dist/config/initialization.js +23 -21
  62. package/dist/config/initialization.js.map +1 -1
  63. package/dist/config/paths.d.ts +5 -0
  64. package/dist/config/paths.d.ts.map +1 -1
  65. package/dist/config/paths.js +9 -0
  66. package/dist/config/paths.js.map +1 -1
  67. package/dist/config/workflowLoader.d.ts +6 -4
  68. package/dist/config/workflowLoader.d.ts.map +1 -1
  69. package/dist/config/workflowLoader.js +190 -35
  70. package/dist/config/workflowLoader.js.map +1 -1
  71. package/dist/github/issue.d.ts +72 -0
  72. package/dist/github/issue.d.ts.map +1 -0
  73. package/dist/github/issue.js +143 -0
  74. package/dist/github/issue.js.map +1 -0
  75. package/dist/models/index.d.ts +1 -1
  76. package/dist/models/index.d.ts.map +1 -1
  77. package/dist/models/index.js.map +1 -1
  78. package/dist/models/schemas.d.ts +165 -90
  79. package/dist/models/schemas.d.ts.map +1 -1
  80. package/dist/models/schemas.js +79 -51
  81. package/dist/models/schemas.js.map +1 -1
  82. package/dist/models/types.d.ts +53 -20
  83. package/dist/models/types.d.ts.map +1 -1
  84. package/dist/providers/claude.js +2 -2
  85. package/dist/providers/claude.js.map +1 -1
  86. package/dist/providers/codex.d.ts.map +1 -1
  87. package/dist/providers/codex.js +0 -2
  88. package/dist/providers/codex.js.map +1 -1
  89. package/dist/providers/index.d.ts +2 -1
  90. package/dist/providers/index.d.ts.map +1 -1
  91. package/dist/providers/index.js.map +1 -1
  92. package/dist/resources/index.d.ts +3 -22
  93. package/dist/resources/index.d.ts.map +1 -1
  94. package/dist/resources/index.js +9 -76
  95. package/dist/resources/index.js.map +1 -1
  96. package/dist/task/autoCommit.d.ts +9 -6
  97. package/dist/task/autoCommit.d.ts.map +1 -1
  98. package/dist/task/autoCommit.js +21 -12
  99. package/dist/task/autoCommit.js.map +1 -1
  100. package/dist/task/branchList.d.ts +55 -0
  101. package/dist/task/branchList.d.ts.map +1 -0
  102. package/dist/task/branchList.js +131 -0
  103. package/dist/task/branchList.js.map +1 -0
  104. package/dist/task/clone.d.ts +53 -0
  105. package/dist/task/clone.d.ts.map +1 -0
  106. package/dist/task/clone.js +181 -0
  107. package/dist/task/clone.js.map +1 -0
  108. package/dist/task/index.d.ts +3 -2
  109. package/dist/task/index.d.ts.map +1 -1
  110. package/dist/task/index.js +3 -2
  111. package/dist/task/index.js.map +1 -1
  112. package/dist/task/schema.d.ts +4 -4
  113. package/dist/task/schema.js +4 -4
  114. package/dist/task/summarize.d.ts +7 -5
  115. package/dist/task/summarize.d.ts.map +1 -1
  116. package/dist/task/summarize.js +62 -29
  117. package/dist/task/summarize.js.map +1 -1
  118. package/dist/utils/session.d.ts +74 -10
  119. package/dist/utils/session.d.ts.map +1 -1
  120. package/dist/utils/session.js +101 -51
  121. package/dist/utils/session.js.map +1 -1
  122. package/dist/utils/updateNotifier.d.ts +6 -0
  123. package/dist/utils/updateNotifier.d.ts.map +1 -0
  124. package/dist/utils/updateNotifier.js +17 -0
  125. package/dist/utils/updateNotifier.js.map +1 -0
  126. package/dist/workflow/engine.d.ts +35 -2
  127. package/dist/workflow/engine.d.ts.map +1 -1
  128. package/dist/workflow/engine.js +238 -38
  129. package/dist/workflow/engine.js.map +1 -1
  130. package/dist/workflow/index.d.ts +1 -1
  131. package/dist/workflow/index.d.ts.map +1 -1
  132. package/dist/workflow/index.js +1 -1
  133. package/dist/workflow/index.js.map +1 -1
  134. package/dist/workflow/instruction-builder.d.ts +89 -20
  135. package/dist/workflow/instruction-builder.d.ts.map +1 -1
  136. package/dist/workflow/instruction-builder.js +404 -61
  137. package/dist/workflow/instruction-builder.js.map +1 -1
  138. package/dist/workflow/parallel-logger.d.ts +76 -0
  139. package/dist/workflow/parallel-logger.d.ts.map +1 -0
  140. package/dist/workflow/parallel-logger.js +173 -0
  141. package/dist/workflow/parallel-logger.js.map +1 -0
  142. package/dist/workflow/phase-runner.d.ts +40 -0
  143. package/dist/workflow/phase-runner.d.ts.map +1 -0
  144. package/dist/workflow/phase-runner.js +69 -0
  145. package/dist/workflow/phase-runner.js.map +1 -0
  146. package/dist/workflow/rule-evaluator.d.ts +64 -0
  147. package/dist/workflow/rule-evaluator.d.ts.map +1 -0
  148. package/dist/workflow/rule-evaluator.js +178 -0
  149. package/dist/workflow/rule-evaluator.js.map +1 -0
  150. package/dist/workflow/rule-utils.d.ts +13 -0
  151. package/dist/workflow/rule-utils.d.ts.map +1 -0
  152. package/dist/workflow/rule-utils.js +17 -0
  153. package/dist/workflow/rule-utils.js.map +1 -0
  154. package/dist/workflow/transitions.d.ts +5 -13
  155. package/dist/workflow/transitions.d.ts.map +1 -1
  156. package/dist/workflow/transitions.js +8 -78
  157. package/dist/workflow/transitions.js.map +1 -1
  158. package/dist/workflow/types.d.ts +2 -1
  159. package/dist/workflow/types.d.ts.map +1 -1
  160. package/package.json +4 -1
  161. package/resources/global/en/agents/default/ai-antipattern-reviewer.md +193 -0
  162. package/resources/global/en/agents/default/{architect.md → architecture-reviewer.md} +144 -44
  163. package/resources/global/en/agents/default/coder.md +7 -7
  164. package/resources/global/en/agents/default/planner.md +29 -9
  165. package/resources/global/en/agents/default/{security.md → security-reviewer.md} +23 -5
  166. package/resources/global/en/agents/default/supervisor.md +13 -2
  167. package/resources/global/en/agents/expert/frontend-reviewer.md +0 -17
  168. package/resources/global/en/agents/expert/qa-reviewer.md +0 -16
  169. package/resources/global/en/agents/expert/security-reviewer.md +0 -16
  170. package/resources/global/en/agents/expert-cqrs/cqrs-es-reviewer.md +0 -17
  171. package/resources/global/en/agents/templates/coder.md +128 -0
  172. package/resources/global/en/agents/templates/planner.md +44 -0
  173. package/resources/global/en/agents/templates/reviewer.md +57 -0
  174. package/resources/global/en/agents/templates/supervisor.md +64 -0
  175. package/resources/global/en/workflows/default.yaml +235 -770
  176. package/resources/global/en/workflows/expert-cqrs.yaml +325 -697
  177. package/resources/global/en/workflows/expert.yaml +354 -722
  178. package/resources/global/en/workflows/magi.yaml +45 -52
  179. package/resources/global/en/workflows/research.yaml +18 -99
  180. package/resources/global/en/workflows/simple.yaml +156 -421
  181. package/resources/global/ja/agents/default/{ai-reviewer.md → ai-antipattern-reviewer.md} +92 -15
  182. package/resources/global/ja/agents/default/{architect.md → architecture-reviewer.md} +148 -48
  183. package/resources/global/ja/agents/default/coder.md +7 -7
  184. package/resources/global/ja/agents/default/planner.md +29 -9
  185. package/resources/global/ja/agents/default/{security.md → security-reviewer.md} +23 -5
  186. package/resources/global/ja/agents/default/supervisor.md +13 -2
  187. package/resources/global/ja/agents/expert/frontend-reviewer.md +0 -18
  188. package/resources/global/ja/agents/expert/qa-reviewer.md +0 -16
  189. package/resources/global/ja/agents/expert/security-reviewer.md +0 -16
  190. package/resources/global/ja/agents/expert-cqrs/cqrs-es-reviewer.md +0 -18
  191. package/resources/global/ja/agents/templates/coder.md +128 -0
  192. package/resources/global/ja/agents/templates/planner.md +44 -0
  193. package/resources/global/ja/agents/templates/reviewer.md +57 -0
  194. package/resources/global/ja/agents/templates/supervisor.md +64 -0
  195. package/resources/global/ja/workflows/default.yaml +230 -771
  196. package/resources/global/ja/workflows/expert-cqrs.yaml +316 -832
  197. package/resources/global/ja/workflows/expert.yaml +331 -711
  198. package/resources/global/ja/workflows/magi.yaml +45 -52
  199. package/resources/global/ja/workflows/research.yaml +18 -99
  200. package/resources/global/ja/workflows/simple.yaml +149 -415
  201. package/resources/project/dotgitignore +10 -0
  202. package/resources/project/tasks/TASK-FORMAT +37 -0
  203. package/dist/commands/reviewTasks.d.ts +0 -43
  204. package/dist/commands/reviewTasks.d.ts.map +0 -1
  205. package/dist/commands/reviewTasks.js.map +0 -1
  206. package/dist/task/worktree.d.ts +0 -70
  207. package/dist/task/worktree.d.ts.map +0 -1
  208. package/dist/task/worktree.js +0 -221
  209. package/dist/task/worktree.js.map +0 -1
  210. package/resources/global/en/agents/default/ai-reviewer.md +0 -116
@@ -2,9 +2,9 @@
2
2
  # アーキテクチャ、フロントエンド、セキュリティ、QAの専門家によるレビューワークフロー
3
3
  #
4
4
  # フロー:
5
- # plan -> implement -> architect_review -> frontend_review -> ai_review -> security_review -> qa_review -> supervise -> COMPLETE
6
- # ↓ ↓ ↓ ↓ ↓
7
- # fix_architect fix_frontend ai_fix fix_security fix_qa fix_supervisor
5
+ # plan -> implement -> ai_review -> architect_review -> frontend_review -> security_review -> qa_review -> supervise -> COMPLETE
6
+ # ↓ ↓ ↓ ↓
7
+ # ai_fix fix_architect fix_frontend fix_security fix_qa fix_supervisor
8
8
  #
9
9
  # 修正時の戻り先はCoderが判断:
10
10
  # - fix_security: MINOR→security_review, MAJOR→architect_review
@@ -16,14 +16,13 @@
16
16
  # {step_iteration} - ステップごとのイテレーション数(このステップが何回実行されたか)
17
17
  # {task} - 元のユーザー要求
18
18
  # {previous_response} - 前のステップの出力
19
- # {git_diff} - 現在のコミットされていない変更(git diff)
20
19
  # {user_inputs} - ワークフロー中に蓄積されたユーザー入力
21
20
  # {report_dir} - レポートディレクトリ名(例: "20250126-143052-task-summary")
22
21
 
23
22
  name: expert
24
23
  description: アーキテクチャ・フロントエンド・セキュリティ・QA専門家レビュー
25
24
 
26
- max_iterations: 20
25
+ max_iterations: 30
27
26
 
28
27
  initial_step: plan
29
28
 
@@ -32,38 +31,43 @@ steps:
32
31
  # Phase 0: Planning
33
32
  # ===========================================
34
33
  - name: plan
35
- agent: ~/.takt/agents/default/planner.md
34
+ edit: false
35
+ agent: ../agents/default/planner.md
36
+ report:
37
+ name: 00-plan.md
38
+ format: |
39
+ ```markdown
40
+ # タスク計画
41
+
42
+ ## 元の要求
43
+ {ユーザーの要求をそのまま記載}
44
+
45
+ ## 分析結果
46
+
47
+ ### 目的
48
+ {達成すべきこと}
49
+
50
+ ### スコープ
51
+ {影響範囲}
52
+
53
+ ### 実装アプローチ
54
+ {どう進めるか}
55
+
56
+ ## 確認事項(あれば)
57
+ - {不明点や確認が必要な点}
58
+ ```
36
59
  allowed_tools:
37
60
  - Read
38
61
  - Glob
39
62
  - Grep
63
+ - Write
40
64
  - Bash
41
65
  - WebSearch
42
66
  - WebFetch
43
- status_rules_prompt: |
44
-
45
-
46
- ## 出力フォーマット
47
-
48
- | 状況 | タグ |
49
- |------|------|
50
- | 分析完了 | `[PLANNER:DONE]` |
51
- | 要件不明確 | `[PLANNER:BLOCKED]` |
52
67
  instruction_template: |
53
- ## Workflow Context
54
- - Iteration: {iteration}/{max_iterations}(ワークフロー全体)
55
- - Step Iteration: {step_iteration}(このステップの実行回数)
56
- - Step: plan (タスク分析)
57
- - Report Directory: .takt/reports/{report_dir}/
58
- - Report File: .takt/reports/{report_dir}/00-plan.md
59
-
60
- ## User Request
61
- {task}
62
-
63
68
  ## Previous Response (implementからの差し戻し時)
64
69
  {previous_response}
65
70
 
66
- ## Instructions
67
71
  タスクを分析し、実装方針を立ててください。
68
72
 
69
73
  **注意:** Previous Responseがある場合は差し戻しのため、
@@ -73,47 +77,22 @@ steps:
73
77
  1. タスクの要件を理解する
74
78
  2. 影響範囲を特定する
75
79
  3. 実装アプローチを決める
76
-
77
- **レポート出力:** 上記の `Report File` に出力してください。
78
- - ファイルが存在しない場合: 新規作成
79
- - ファイルが存在する場合: `## Iteration {step_iteration}` セクションを追記
80
-
81
- **レポートフォーマット:**
82
- ```markdown
83
- # タスク計画
84
-
85
- ## 元の要求
86
- {ユーザーの要求をそのまま記載}
87
-
88
- ## 分析結果
89
-
90
- ### 目的
91
- {達成すべきこと}
92
-
93
- ### スコープ
94
- {影響範囲}
95
-
96
- ### 実装アプローチ
97
- {どう進めるか}
98
-
99
- ## 確認事項(あれば)
100
- - {不明点や確認が必要な点}
101
- ```
102
-
103
- 完了したら [PLANNER:DONE] を出力。
104
- 要件が不明確な場合は [PLANNER:BLOCKED] を出力。
105
80
  pass_previous_response: true
106
- transitions:
107
- - condition: done
108
- next_step: implement
109
- - condition: blocked
110
- next_step: ABORT
81
+ rules:
82
+ - condition: タスク分析と計画が完了した
83
+ next: implement
84
+ - condition: 要件が不明確で計画を立てられない
85
+ next: ABORT
111
86
 
112
87
  # ===========================================
113
88
  # Phase 1: Implementation
114
89
  # ===========================================
115
90
  - name: implement
116
- agent: ~/.takt/agents/default/coder.md
91
+ edit: true
92
+ agent: ../agents/default/coder.md
93
+ report:
94
+ - Scope: 01-coder-scope.md
95
+ - Decisions: 02-coder-decisions.md
117
96
  allowed_tools:
118
97
  - Read
119
98
  - Glob
@@ -123,39 +102,10 @@ steps:
123
102
  - Bash
124
103
  - WebSearch
125
104
  - WebFetch
126
- status_rules_prompt: |
127
-
128
-
129
- ## 出力フォーマット
130
-
131
- | 状況 | タグ |
132
- |------|------|
133
- | 実装完了 | `[CODER:DONE]` |
134
- | 進行不可 | `[CODER:BLOCKED]` |
135
105
  instruction_template: |
136
- ## Workflow Context
137
- - Iteration: {iteration}/{max_iterations}(ワークフロー全体)
138
- - Step Iteration: {step_iteration}(このステップの実行回数)
139
- - Step: implement
140
- - Report Directory: .takt/reports/{report_dir}/
141
- - Report Files:
142
- - Scope: .takt/reports/{report_dir}/01-coder-scope.md
143
- - Decisions: .takt/reports/{report_dir}/02-coder-decisions.md
144
-
145
- ## User Request
146
- {task}
147
-
148
- ## Additional User Inputs
149
- {user_inputs}
150
-
151
- ## Instructions
152
106
  planステップで立てた計画に従って実装してください。
153
107
  計画レポート(00-plan.md)を参照し、実装を進めてください。
154
108
 
155
- **レポート出力:** 上記の `Report Files` に出力してください。
156
- - ファイルが存在しない場合: 新規作成
157
- - ファイルが存在する場合: `## Iteration {step_iteration}` セクションを追記
158
-
159
109
  **Scopeレポートフォーマット(実装開始時に作成):**
160
110
  ```markdown
161
111
  # 変更スコープ宣言
@@ -185,64 +135,140 @@ steps:
185
135
  - **検討した選択肢**: {選択肢リスト}
186
136
  - **理由**: {選んだ理由}
187
137
  ```
188
-
189
- 完了時は [CODER:DONE] を含めてください。
190
- 進行できない場合は [CODER:BLOCKED] を出力し、planに戻ります。
191
- transitions:
192
- - condition: done
193
- next_step: architect_review
194
- - condition: blocked
195
- next_step: plan
138
+ rules:
139
+ - condition: 実装が完了した
140
+ next: ai_review
141
+ - condition: 実装を進行できない
142
+ next: plan
196
143
 
197
144
  # ===========================================
198
- # Phase 2: Architecture Review
145
+ # Phase 2: AI Review
199
146
  # ===========================================
200
- - name: architect_review
201
- agent: ~/.takt/agents/default/architect.md
147
+ - name: ai_review
148
+ edit: false
149
+ agent: ../agents/default/ai-antipattern-reviewer.md
150
+ report:
151
+ name: 03-ai-review.md
152
+ format: |
153
+ ```markdown
154
+ # AI生成コードレビュー
155
+
156
+ ## 結果: APPROVE / REJECT
157
+
158
+ ## サマリー
159
+ {1文で結果を要約}
160
+
161
+ ## 検証した項目
162
+ | 観点 | 結果 | 備考 |
163
+ |------|------|------|
164
+ | 仮定の妥当性 | ✅ | - |
165
+ | API/ライブラリの実在 | ✅ | - |
166
+ | コンテキスト適合 | ✅ | - |
167
+ | スコープ | ✅ | - |
168
+
169
+ ## 問題点(REJECTの場合)
170
+ | # | カテゴリ | 場所 | 問題 |
171
+ |---|---------|------|------|
172
+ | 1 | 幻覚API | `src/file.ts:23` | 存在しないメソッド |
173
+ ```
174
+
175
+ **認知負荷軽減ルール:**
176
+ - 問題なし → サマリー1文 + チェック表のみ(10行以内)
177
+ - 問題あり → + 問題を表形式で(25行以内)
202
178
  allowed_tools:
203
179
  - Read
204
180
  - Glob
205
181
  - Grep
182
+ - Write
206
183
  - WebSearch
207
184
  - WebFetch
208
- status_rules_prompt: |
209
-
210
-
211
- ## 判定基準
185
+ instruction_template: |
186
+ AI特有の問題についてコードをレビューしてください:
187
+ - 仮定の検証
188
+ - もっともらしいが間違っているパターン
189
+ - 既存コードベースとの適合性
190
+ - スコープクリープの検出
191
+ rules:
192
+ - condition: AI特有の問題が見つからない
193
+ next: architect_review
194
+ - condition: AI特有の問題が検出された
195
+ next: ai_fix
212
196
 
213
- | 状況 | 判定 |
214
- |------|------|
215
- | 構造に問題がある | REJECT |
216
- | 設計原則違反がある | REJECT |
217
- | 呼び出しチェーンの配線漏れ | REJECT |
218
- | テストが不十分 | REJECT |
219
- | 改善すべき点がある(軽微) | IMPROVE |
220
- | 問題なし | APPROVE |
197
+ - name: ai_fix
198
+ edit: true
199
+ agent: ../agents/default/coder.md
200
+ allowed_tools:
201
+ - Read
202
+ - Glob
203
+ - Grep
204
+ - Edit
205
+ - Write
206
+ - Bash
207
+ - WebSearch
208
+ - WebFetch
209
+ instruction_template: |
210
+ ## AI Review Feedback (これが最新の指示です - 優先して対応してください)
211
+ {previous_response}
221
212
 
222
- ## 出力フォーマット
213
+ **重要**: AI Reviewerのフィードバックに対応してください。
214
+ 以下に集中してください:
215
+ - 間違った仮定の修正
216
+ - もっともらしいが間違っている実装の修正
217
+ - 既存コードベースのパターンとの整合
218
+ - スコープクリープの除去
219
+ pass_previous_response: true
220
+ rules:
221
+ - condition: AI Reviewerの指摘に対する修正が完了した
222
+ next: ai_review
223
+ - condition: 修正を進行できない
224
+ next: plan
223
225
 
224
- | 状況 | タグ |
225
- |------|------|
226
- | 問題なし | `[ARCHITECT:APPROVE]` |
227
- | 軽微な改善必要 | `[ARCHITECT:IMPROVE]` |
228
- | 構造的な修正必要 | `[ARCHITECT:REJECT]` |
226
+ # ===========================================
227
+ # Phase 3: Architecture Review
228
+ # ===========================================
229
+ - name: architect_review
230
+ edit: false
231
+ agent: ../agents/default/architecture-reviewer.md
232
+ report:
233
+ name: 04-architect-review.md
234
+ format: |
235
+ ```markdown
236
+ # アーキテクチャレビュー
237
+
238
+ ## 結果: APPROVE / IMPROVE / REJECT
239
+
240
+ ## サマリー
241
+ {1-2文で結果を要約}
242
+
243
+ ## 確認した観点
244
+ - [x] 構造・設計
245
+ - [x] コード品質
246
+ - [x] 変更スコープ
247
+ - [x] テストカバレッジ
248
+ - [x] デッドコード
249
+ - [x] 呼び出しチェーン検証
250
+
251
+ ## 問題点(REJECTの場合)
252
+ | # | 場所 | 問題 | 修正案 |
253
+ |---|------|------|--------|
254
+ | 1 | `src/file.ts:42` | 問題の説明 | 修正方法 |
255
+
256
+ ## 改善提案(任意・ブロッキングではない)
257
+ - {将来的な改善提案}
258
+ ```
259
+
260
+ **認知負荷軽減ルール:**
261
+ - APPROVE + 問題なし → サマリーのみ(5行以内)
262
+ - APPROVE + 軽微な提案 → サマリー + 改善提案(15行以内)
263
+ - REJECT → 問題点を表形式で(30行以内)
264
+ allowed_tools:
265
+ - Read
266
+ - Glob
267
+ - Grep
268
+ - Write
269
+ - WebSearch
270
+ - WebFetch
229
271
  instruction_template: |
230
- ## Workflow Context
231
- - Iteration: {iteration}/{max_iterations}(ワークフロー全体)
232
- - Step Iteration: {step_iteration}(このステップの実行回数)
233
- - Step: architect_review (アーキテクチャレビュー)
234
- - Report Directory: .takt/reports/{report_dir}/
235
- - Report File: .takt/reports/{report_dir}/03-architect-review.md
236
-
237
- ## Original User Request (ワークフロー開始時の元の要求)
238
- {task}
239
-
240
- ## Git Diff
241
- ```diff
242
- {git_diff}
243
- ```
244
-
245
- ## Instructions
246
272
  **アーキテクチャと設計**のレビューに集中してください。
247
273
 
248
274
  **レビュー観点:**
@@ -252,51 +278,17 @@ steps:
252
278
  - テストカバレッジ
253
279
  - デッドコード
254
280
  - 呼び出しチェーン検証
255
-
256
- **レポート出力:** 上記の `Report File` に出力してください。
257
- - ファイルが存在しない場合: 新規作成
258
- - ファイルが存在する場合: `## Iteration {step_iteration}` セクションを追記
259
-
260
- **レポートフォーマット:**
261
- ```markdown
262
- # アーキテクチャレビュー
263
-
264
- ## 結果: APPROVE / IMPROVE / REJECT
265
-
266
- ## サマリー
267
- {1-2文で結果を要約}
268
-
269
- ## 確認した観点
270
- - [x] 構造・設計
271
- - [x] コード品質
272
- - [x] 変更スコープ
273
- - [x] テストカバレッジ
274
- - [x] デッドコード
275
- - [x] 呼び出しチェーン検証
276
-
277
- ## 問題点(REJECTの場合)
278
- | # | 場所 | 問題 | 修正案 |
279
- |---|------|------|--------|
280
- | 1 | `src/file.ts:42` | 問題の説明 | 修正方法 |
281
-
282
- ## 改善提案(任意・ブロッキングではない)
283
- - {将来的な改善提案}
284
- ```
285
-
286
- **認知負荷軽減ルール:**
287
- - APPROVE + 問題なし → サマリーのみ(5行以内)
288
- - APPROVE + 軽微な提案 → サマリー + 改善提案(15行以内)
289
- - REJECT → 問題点を表形式で(30行以内)
290
- transitions:
291
- - condition: approved
292
- next_step: frontend_review
293
- - condition: improve
294
- next_step: fix_architect
295
- - condition: rejected
296
- next_step: fix_architect
281
+ rules:
282
+ - condition: アーキテクチャと設計に問題がない
283
+ next: frontend_review
284
+ - condition: 軽微な改善が必要だが構造的な問題はない
285
+ next: fix_architect
286
+ - condition: 構造的な問題があり修正が必要
287
+ next: fix_architect
297
288
 
298
289
  - name: fix_architect
299
- agent: ~/.takt/agents/default/coder.md
290
+ edit: true
291
+ agent: ../agents/default/coder.md
300
292
  allowed_tools:
301
293
  - Read
302
294
  - Glob
@@ -307,81 +299,59 @@ steps:
307
299
  - WebSearch
308
300
  - WebFetch
309
301
  permission_mode: acceptEdits
310
- status_rules_prompt: |
311
-
312
-
313
- ## 出力フォーマット
314
-
315
- | 状況 | タグ |
316
- |------|------|
317
- | 修正完了 | `[CODER:DONE]` |
318
- | 進行不可 | `[CODER:BLOCKED]` |
319
302
  instruction_template: |
320
- ## Workflow Context
321
- - Iteration: {iteration}/{max_iterations}(ワークフロー全体)
322
- - Step Iteration: {step_iteration}(このステップの実行回数)
323
- - Step: fix_architect
324
-
325
303
  ## Architect Feedback (これが最新の指示です - 優先して対応してください)
326
304
  {previous_response}
327
305
 
328
- ## Original User Request (ワークフロー開始時の元の要求 - 参考情報)
329
- {task}
330
-
331
- ## Additional User Inputs
332
- {user_inputs}
333
-
334
- ## Instructions
335
306
  **重要**: Architectのフィードバックに対応してください。
336
307
  「Original User Request」は参考情報であり、最新の指示ではありません。
337
308
  セッションの会話履歴を確認し、Architectの指摘事項を修正してください。
338
-
339
- 完了時は [CODER:DONE] を含めてください。
340
- 進行できない場合は [CODER:BLOCKED] を含めてください。
341
309
  pass_previous_response: true
342
- transitions:
343
- - condition: done
344
- next_step: architect_review
345
- - condition: blocked
346
- next_step: plan
310
+ rules:
311
+ - condition: Architectの指摘に対する修正が完了した
312
+ next: architect_review
313
+ - condition: 修正を進行できない
314
+ next: plan
347
315
 
348
316
  # ===========================================
349
- # Phase 3: Frontend Review
317
+ # Phase 4: Frontend Review
350
318
  # ===========================================
351
319
  - name: frontend_review
352
- agent: ~/.takt/agents/expert/frontend-reviewer.md
320
+ edit: false
321
+ agent: ../agents/expert/frontend-reviewer.md
322
+ report:
323
+ name: 05-frontend-review.md
324
+ format: |
325
+ ```markdown
326
+ # フロントエンドレビュー
327
+
328
+ ## 結果: APPROVE / REJECT
329
+
330
+ ## サマリー
331
+ {1-2文で結果を要約}
332
+
333
+ ## 確認した観点
334
+ | 観点 | 結果 | 備考 |
335
+ |------|------|------|
336
+ | コンポーネント設計 | ✅ | - |
337
+ | 状態管理 | ✅ | - |
338
+ | パフォーマンス | ✅ | - |
339
+ | アクセシビリティ | ✅ | - |
340
+ | 型安全性 | ✅ | - |
341
+
342
+ ## 問題点(REJECTの場合)
343
+ | # | 場所 | 問題 | 修正案 |
344
+ |---|------|------|--------|
345
+ | 1 | `src/file.tsx:42` | 問題の説明 | 修正方法 |
346
+ ```
353
347
  allowed_tools:
354
348
  - Read
355
349
  - Glob
356
350
  - Grep
351
+ - Write
357
352
  - WebSearch
358
353
  - WebFetch
359
- status_rules_prompt: |
360
-
361
-
362
- ## 出力フォーマット
363
-
364
- | 状況 | タグ |
365
- |------|------|
366
- | フロントエンド設計に問題なし | `[FRONTEND:APPROVE]` |
367
- | フロントエンド設計に問題あり | `[FRONTEND:REJECT]` |
368
354
  instruction_template: |
369
- ## Workflow Context
370
- - Iteration: {iteration}/{max_iterations}(ワークフロー全体)
371
- - Step Iteration: {step_iteration}(このステップの実行回数)
372
- - Step: frontend_review (フロントエンド専門レビュー)
373
- - Report Directory: .takt/reports/{report_dir}/
374
- - Report File: .takt/reports/{report_dir}/04-frontend-review.md
375
-
376
- ## Original User Request
377
- {task}
378
-
379
- ## Git Diff
380
- ```diff
381
- {git_diff}
382
- ```
383
-
384
- ## Instructions
385
355
  フロントエンド開発の観点から上記の変更をレビューしてください。
386
356
 
387
357
  **レビュー観点:**
@@ -393,47 +363,16 @@ steps:
393
363
  - TypeScript型安全性
394
364
 
395
365
  **注意**: このプロジェクトがフロントエンドを含まない場合は、
396
- [FRONTEND:APPROVE] として次に進んでください。
397
-
398
- **レポート出力:** 上記の `Report File` に出力してください。
399
- - ファイルが存在しない場合: 新規作成
400
- - ファイルが存在する場合: `## Iteration {step_iteration}` セクションを追記
401
-
402
- **レポートフォーマット:**
403
- ```markdown
404
- # フロントエンドレビュー
405
-
406
- ## 結果: APPROVE / REJECT
407
-
408
- ## サマリー
409
- {1-2文で結果を要約}
410
-
411
- ## 確認した観点
412
- | 観点 | 結果 | 備考 |
413
- |------|------|------|
414
- | コンポーネント設計 | ✅ | - |
415
- | 状態管理 | ✅ | - |
416
- | パフォーマンス | ✅ | - |
417
- | アクセシビリティ | ✅ | - |
418
- | 型安全性 | ✅ | - |
419
-
420
- ## 問題点(REJECTの場合)
421
- | # | 場所 | 問題 | 修正案 |
422
- |---|------|------|--------|
423
- | 1 | `src/file.tsx:42` | 問題の説明 | 修正方法 |
424
- ```
425
-
426
- Include:
427
- - [FRONTEND:APPROVE] if frontend design is sound
428
- - [FRONTEND:REJECT] if design issues found (list specific issues)
429
- transitions:
430
- - condition: approved
431
- next_step: ai_review
432
- - condition: rejected
433
- next_step: fix_frontend
366
+ 問題なしとして次に進んでください。
367
+ rules:
368
+ - condition: フロントエンド設計に問題がない
369
+ next: security_review
370
+ - condition: フロントエンド設計に問題がある
371
+ next: fix_frontend
434
372
 
435
373
  - name: fix_frontend
436
- agent: ~/.takt/agents/default/coder.md
374
+ edit: true
375
+ agent: ../agents/default/coder.md
437
376
  allowed_tools:
438
377
  - Read
439
378
  - Glob
@@ -443,31 +382,10 @@ steps:
443
382
  - Bash
444
383
  - WebSearch
445
384
  - WebFetch
446
- status_rules_prompt: |
447
-
448
-
449
- ## 出力フォーマット
450
-
451
- | 状況 | タグ |
452
- |------|------|
453
- | 修正完了 | `[CODER:DONE]` |
454
- | 進行不可 | `[CODER:BLOCKED]` |
455
385
  instruction_template: |
456
- ## Workflow Context
457
- - Iteration: {iteration}/{max_iterations}(ワークフロー全体)
458
- - Step Iteration: {step_iteration}(このステップの実行回数)
459
- - Step: fix_frontend
460
-
461
386
  ## Frontend Review Feedback (これが最新の指示です - 優先して対応してください)
462
387
  {previous_response}
463
388
 
464
- ## Original User Request (ワークフロー開始時の元の要求 - 参考情報)
465
- {task}
466
-
467
- ## Additional User Inputs
468
- {user_inputs}
469
-
470
- ## Instructions
471
389
  **重要**: フロントエンド専門家からの指摘を修正してください。
472
390
 
473
391
  指摘されたポイント:
@@ -476,188 +394,53 @@ steps:
476
394
  - パフォーマンス
477
395
  - アクセシビリティ
478
396
  - 型安全性
479
-
480
- 完了時は [CODER:DONE] を含めてください。
481
- 進行できない場合は [CODER:BLOCKED] を含めてください。
482
- pass_previous_response: true
483
- transitions:
484
- - condition: done
485
- next_step: frontend_review
486
- - condition: blocked
487
- next_step: plan
488
-
489
- # ===========================================
490
- # Phase 4: AI Review
491
- # ===========================================
492
- - name: ai_review
493
- agent: ~/.takt/agents/default/ai-reviewer.md
494
- allowed_tools:
495
- - Read
496
- - Glob
497
- - Grep
498
- - WebSearch
499
- - WebFetch
500
- status_rules_prompt: |
501
-
502
-
503
- ## 出力フォーマット
504
-
505
- | 状況 | タグ |
506
- |------|------|
507
- | AI特有の問題なし | `[AI_REVIEW:APPROVE]` |
508
- | 問題あり | `[AI_REVIEW:REJECT]` |
509
- instruction_template: |
510
- ## Workflow Context
511
- - Iteration: {iteration}/{max_iterations}(ワークフロー全体)
512
- - Step Iteration: {step_iteration}(このステップの実行回数)
513
- - Step: ai_review (AI生成コードレビュー)
514
- - Report Directory: .takt/reports/{report_dir}/
515
- - Report File: .takt/reports/{report_dir}/05-ai-review.md
516
-
517
- ## Original User Request (ワークフロー開始時の元の要求)
518
- {task}
519
-
520
- ## Git Diff
521
- ```diff
522
- {git_diff}
523
- ```
524
-
525
- ## Instructions
526
- AI特有の問題についてコードをレビューしてください:
527
- - 仮定の検証
528
- - もっともらしいが間違っているパターン
529
- - 既存コードベースとの適合性
530
- - スコープクリープの検出
531
-
532
- **レポート出力:** 上記の `Report File` に出力してください。
533
- - ファイルが存在しない場合: 新規作成
534
- - ファイルが存在する場合: `## Iteration {step_iteration}` セクションを追記
535
-
536
- **レポートフォーマット:**
537
- ```markdown
538
- # AI生成コードレビュー
539
-
540
- ## 結果: APPROVE / REJECT
541
-
542
- ## サマリー
543
- {1文で結果を要約}
544
-
545
- ## 検証した項目
546
- | 観点 | 結果 | 備考 |
547
- |------|------|------|
548
- | 仮定の妥当性 | ✅ | - |
549
- | API/ライブラリの実在 | ✅ | - |
550
- | コンテキスト適合 | ✅ | - |
551
- | スコープ | ✅ | - |
552
-
553
- ## 問題点(REJECTの場合)
554
- | # | カテゴリ | 場所 | 問題 |
555
- |---|---------|------|------|
556
- | 1 | 幻覚API | `src/file.ts:23` | 存在しないメソッド |
557
- ```
558
-
559
- **認知負荷軽減ルール:**
560
- - 問題なし → サマリー1文 + チェック表のみ(10行以内)
561
- - 問題あり → + 問題を表形式で(25行以内)
562
-
563
- 以下を含めてください:
564
- - [AI_REVIEW:APPROVE] AI特有の問題が見つからない場合
565
- - [AI_REVIEW:REJECT] 問題が検出された場合(具体的な問題をリスト)
566
- transitions:
567
- - condition: approved
568
- next_step: security_review
569
- - condition: rejected
570
- next_step: ai_fix
571
-
572
- - name: ai_fix
573
- agent: ~/.takt/agents/default/coder.md
574
- allowed_tools:
575
- - Read
576
- - Glob
577
- - Grep
578
- - Edit
579
- - Write
580
- - Bash
581
- - WebSearch
582
- - WebFetch
583
- status_rules_prompt: |
584
-
585
-
586
- ## 出力フォーマット
587
-
588
- | 状況 | タグ |
589
- |------|------|
590
- | 修正完了 | `[CODER:DONE]` |
591
- | 進行不可 | `[CODER:BLOCKED]` |
592
- instruction_template: |
593
- ## Workflow Context
594
- - Iteration: {iteration}/{max_iterations}(ワークフロー全体)
595
- - Step Iteration: {step_iteration}(このステップの実行回数)
596
- - Step: ai_fix
597
-
598
- ## AI Review Feedback (これが最新の指示です - 優先して対応してください)
599
- {previous_response}
600
-
601
- ## Original User Request (ワークフロー開始時の元の要求 - 参考情報)
602
- {task}
603
-
604
- ## Additional User Inputs
605
- {user_inputs}
606
-
607
- ## Instructions
608
- **重要**: AI Reviewerのフィードバックに対応してください。
609
- 以下に集中してください:
610
- - 間違った仮定の修正
611
- - もっともらしいが間違っている実装の修正
612
- - 既存コードベースのパターンとの整合
613
- - スコープクリープの除去
614
-
615
- 完了時は [CODER:DONE] を含めてください。
616
- 進行できない場合は [CODER:BLOCKED] を含めてください。
617
397
  pass_previous_response: true
618
- transitions:
619
- - condition: done
620
- next_step: ai_review
621
- - condition: blocked
622
- next_step: plan
398
+ rules:
399
+ - condition: フロントエンドの指摘に対する修正が完了した
400
+ next: frontend_review
401
+ - condition: 修正を進行できない
402
+ next: plan
623
403
 
624
404
  # ===========================================
625
405
  # Phase 5: Security Review
626
406
  # ===========================================
627
407
  - name: security_review
628
- agent: ~/.takt/agents/expert/security-reviewer.md
408
+ edit: false
409
+ agent: ../agents/expert/security-reviewer.md
410
+ report:
411
+ name: 06-security-review.md
412
+ format: |
413
+ ```markdown
414
+ # セキュリティレビュー
415
+
416
+ ## 結果: APPROVE / REJECT
417
+
418
+ ## 重大度: None / Low / Medium / High / Critical
419
+
420
+ ## チェック結果
421
+ | カテゴリ | 結果 | 備考 |
422
+ |---------|------|------|
423
+ | インジェクション | ✅ | - |
424
+ | 認証・認可 | ✅ | - |
425
+ | データ保護 | ✅ | - |
426
+ | 依存関係 | ✅ | - |
427
+
428
+ ## 脆弱性(REJECTの場合)
429
+ | # | 重大度 | 種類 | 場所 | 修正案 |
430
+ |---|--------|------|------|--------|
431
+ | 1 | High | SQLi | `src/db.ts:42` | パラメータ化クエリを使用 |
432
+
433
+ ## 警告(ブロッキングではない)
434
+ - {セキュリティに関する推奨事項}
435
+ ```
629
436
  allowed_tools:
630
437
  - Read
631
438
  - Glob
632
439
  - Grep
440
+ - Write
633
441
  - WebSearch
634
442
  - WebFetch
635
- status_rules_prompt: |
636
-
637
-
638
- ## 出力フォーマット
639
-
640
- | 状況 | タグ |
641
- |------|------|
642
- | セキュリティ問題なし | `[SECURITY:APPROVE]` |
643
- | 脆弱性あり | `[SECURITY:REJECT]` |
644
443
  instruction_template: |
645
- ## Workflow Context
646
- - Iteration: {iteration}/{max_iterations}(ワークフロー全体)
647
- - Step Iteration: {step_iteration}(このステップの実行回数)
648
- - Step: security_review (セキュリティ専門レビュー)
649
- - Report Directory: .takt/reports/{report_dir}/
650
- - Report File: .takt/reports/{report_dir}/06-security-review.md
651
-
652
- ## Original User Request
653
- {task}
654
-
655
- ## Git Diff
656
- ```diff
657
- {git_diff}
658
- ```
659
-
660
- ## Instructions
661
444
  セキュリティの観点から上記の変更をレビューしてください。
662
445
 
663
446
  **レビュー観点:**
@@ -666,47 +449,15 @@ steps:
666
449
  - 機密情報の取り扱い
667
450
  - 暗号化の適切性
668
451
  - OWASP Top 10
669
-
670
- **レポート出力:** 上記の `Report File` に出力してください。
671
- - ファイルが存在しない場合: 新規作成
672
- - ファイルが存在する場合: `## Iteration {step_iteration}` セクションを追記
673
-
674
- **レポートフォーマット:**
675
- ```markdown
676
- # セキュリティレビュー
677
-
678
- ## 結果: APPROVE / REJECT
679
-
680
- ## 重大度: None / Low / Medium / High / Critical
681
-
682
- ## チェック結果
683
- | カテゴリ | 結果 | 備考 |
684
- |---------|------|------|
685
- | インジェクション | ✅ | - |
686
- | 認証・認可 | ✅ | - |
687
- | データ保護 | ✅ | - |
688
- | 依存関係 | ✅ | - |
689
-
690
- ## 脆弱性(REJECTの場合)
691
- | # | 重大度 | 種類 | 場所 | 修正案 |
692
- |---|--------|------|------|--------|
693
- | 1 | High | SQLi | `src/db.ts:42` | パラメータ化クエリを使用 |
694
-
695
- ## 警告(ブロッキングではない)
696
- - {セキュリティに関する推奨事項}
697
- ```
698
-
699
- Include:
700
- - [SECURITY:APPROVE] if no security issues found
701
- - [SECURITY:REJECT] if vulnerabilities found (list specific issues with severity)
702
- transitions:
703
- - condition: approved
704
- next_step: qa_review
705
- - condition: rejected
706
- next_step: fix_security
452
+ rules:
453
+ - condition: セキュリティ上の問題がない
454
+ next: qa_review
455
+ - condition: セキュリティ上の脆弱性が検出された
456
+ next: fix_security
707
457
 
708
458
  - name: fix_security
709
- agent: ~/.takt/agents/default/coder.md
459
+ edit: true
460
+ agent: ../agents/default/coder.md
710
461
  allowed_tools:
711
462
  - Read
712
463
  - Glob
@@ -716,32 +467,10 @@ steps:
716
467
  - Bash
717
468
  - WebSearch
718
469
  - WebFetch
719
- status_rules_prompt: |
720
-
721
-
722
- ## 出力フォーマット
723
-
724
- | 状況 | タグ |
725
- |------|------|
726
- | 軽微な修正完了 | `[CODER:DONE]` |
727
- | 大きな修正(アーキテクチャからやり直し) | `[CODER:REJECT]` |
728
- | 進行不可 | `[CODER:BLOCKED]` |
729
470
  instruction_template: |
730
- ## Workflow Context
731
- - Iteration: {iteration}/{max_iterations}(ワークフロー全体)
732
- - Step Iteration: {step_iteration}(このステップの実行回数)
733
- - Step: fix_security
734
-
735
471
  ## Security Review Feedback (これが最新の指示です - 優先して対応してください)
736
472
  {previous_response}
737
473
 
738
- ## Original User Request (ワークフロー開始時の元の要求 - 参考情報)
739
- {task}
740
-
741
- ## Additional User Inputs
742
- {user_inputs}
743
-
744
- ## Instructions
745
474
  **重要**: セキュリティ専門家からの指摘を修正してください。
746
475
  セキュリティ問題は最優先で対応してください。
747
476
 
@@ -752,60 +481,60 @@ steps:
752
481
  - 暗号化の問題
753
482
 
754
483
  ## 修正完了時の判断
755
- 修正が完了したら、**変更の影響範囲**を判断して適切なタグを出力してください:
484
+ 修正が完了したら、**変更の影響範囲**を判断してください:
756
485
 
757
- - `[CODER:DONE]` - 軽微な修正(セキュリティレビューのみ再実施)
486
+ - 軽微な修正(セキュリティレビューのみ再実施)
758
487
  - 例: バリデーション追加、エスケープ処理追加、設定変更
759
- - `[CODER:REJECT]` - 大きな修正(アーキテクチャレビューからやり直し)
488
+ - 大きな修正(アーキテクチャレビューからやり直し)
760
489
  - 例: データフロー変更、API設計変更、認証方式変更、ドメインモデル変更
761
-
762
- 進行できない場合は [CODER:BLOCKED] を含めてください。
763
490
  pass_previous_response: true
764
- transitions:
765
- - condition: done
766
- next_step: security_review
767
- - condition: rejected
768
- next_step: architect_review
769
- - condition: blocked
770
- next_step: plan
491
+ rules:
492
+ - condition: 軽微なセキュリティ修正が完了した
493
+ next: security_review
494
+ - condition: 大きな修正を行い、アーキテクチャレビューからやり直す必要がある
495
+ next: architect_review
496
+ - condition: 修正を進行できない
497
+ next: plan
771
498
 
772
499
  # ===========================================
773
500
  # Phase 6: QA Review
774
501
  # ===========================================
775
502
  - name: qa_review
776
- agent: ~/.takt/agents/expert/qa-reviewer.md
503
+ edit: false
504
+ agent: ../agents/expert/qa-reviewer.md
505
+ report:
506
+ name: 07-qa-review.md
507
+ format: |
508
+ ```markdown
509
+ # QAレビュー
510
+
511
+ ## 結果: APPROVE / REJECT
512
+
513
+ ## サマリー
514
+ {1-2文で結果を要約}
515
+
516
+ ## 確認した観点
517
+ | 観点 | 結果 | 備考 |
518
+ |------|------|------|
519
+ | テストカバレッジ | ✅ | - |
520
+ | テスト品質 | ✅ | - |
521
+ | エラーハンドリング | ✅ | - |
522
+ | ドキュメント | ✅ | - |
523
+ | 保守性 | ✅ | - |
524
+
525
+ ## 問題点(REJECTの場合)
526
+ | # | カテゴリ | 問題 | 修正案 |
527
+ |---|---------|------|--------|
528
+ | 1 | テスト | 問題の説明 | 修正方法 |
529
+ ```
777
530
  allowed_tools:
778
531
  - Read
779
532
  - Glob
780
533
  - Grep
534
+ - Write
781
535
  - WebSearch
782
536
  - WebFetch
783
- status_rules_prompt: |
784
-
785
-
786
- ## 出力フォーマット
787
-
788
- | 状況 | タグ |
789
- |------|------|
790
- | 品質基準を満たす | `[QA:APPROVE]` |
791
- | 品質問題あり | `[QA:REJECT]` |
792
537
  instruction_template: |
793
- ## Workflow Context
794
- - Iteration: {iteration}/{max_iterations}(ワークフロー全体)
795
- - Step Iteration: {step_iteration}(このステップの実行回数)
796
- - Step: qa_review (QA専門レビュー)
797
- - Report Directory: .takt/reports/{report_dir}/
798
- - Report File: .takt/reports/{report_dir}/07-qa-review.md
799
-
800
- ## Original User Request
801
- {task}
802
-
803
- ## Git Diff
804
- ```diff
805
- {git_diff}
806
- ```
807
-
808
- ## Instructions
809
538
  品質保証の観点から上記の変更をレビューしてください。
810
539
 
811
540
  **レビュー観点:**
@@ -815,46 +544,15 @@ steps:
815
544
  - エラーハンドリング
816
545
  - ログとモニタリング
817
546
  - 保守性
818
-
819
- **レポート出力:** 上記の `Report File` に出力してください。
820
- - ファイルが存在しない場合: 新規作成
821
- - ファイルが存在する場合: `## Iteration {step_iteration}` セクションを追記
822
-
823
- **レポートフォーマット:**
824
- ```markdown
825
- # QAレビュー
826
-
827
- ## 結果: APPROVE / REJECT
828
-
829
- ## サマリー
830
- {1-2文で結果を要約}
831
-
832
- ## 確認した観点
833
- | 観点 | 結果 | 備考 |
834
- |------|------|------|
835
- | テストカバレッジ | ✅ | - |
836
- | テスト品質 | ✅ | - |
837
- | エラーハンドリング | ✅ | - |
838
- | ドキュメント | ✅ | - |
839
- | 保守性 | ✅ | - |
840
-
841
- ## 問題点(REJECTの場合)
842
- | # | カテゴリ | 問題 | 修正案 |
843
- |---|---------|------|--------|
844
- | 1 | テスト | 問題の説明 | 修正方法 |
845
- ```
846
-
847
- Include:
848
- - [QA:APPROVE] if quality standards are met
849
- - [QA:REJECT] if quality issues found (list specific issues)
850
- transitions:
851
- - condition: approved
852
- next_step: supervise
853
- - condition: rejected
854
- next_step: fix_qa
547
+ rules:
548
+ - condition: 品質基準を満たしている
549
+ next: supervise
550
+ - condition: 品質に問題がある
551
+ next: fix_qa
855
552
 
856
553
  - name: fix_qa
857
- agent: ~/.takt/agents/default/coder.md
554
+ edit: true
555
+ agent: ../agents/default/coder.md
858
556
  allowed_tools:
859
557
  - Read
860
558
  - Glob
@@ -864,33 +562,10 @@ steps:
864
562
  - Bash
865
563
  - WebSearch
866
564
  - WebFetch
867
- status_rules_prompt: |
868
-
869
-
870
- ## 出力フォーマット
871
-
872
- | 状況 | タグ |
873
- |------|------|
874
- | 軽微な修正完了 | `[CODER:DONE]` |
875
- | セキュリティ影響あり | `[CODER:IMPROVE]` |
876
- | 大きな修正(アーキテクチャからやり直し) | `[CODER:REJECT]` |
877
- | 進行不可 | `[CODER:BLOCKED]` |
878
565
  instruction_template: |
879
- ## Workflow Context
880
- - Iteration: {iteration}/{max_iterations}(ワークフロー全体)
881
- - Step Iteration: {step_iteration}(このステップの実行回数)
882
- - Step: fix_qa
883
-
884
566
  ## QA Review Feedback (これが最新の指示です - 優先して対応してください)
885
567
  {previous_response}
886
568
 
887
- ## Original User Request (ワークフロー開始時の元の要求 - 参考情報)
888
- {task}
889
-
890
- ## Additional User Inputs
891
- {user_inputs}
892
-
893
- ## Instructions
894
569
  **重要**: QA専門家からの指摘を修正してください。
895
570
 
896
571
  指摘されたポイント:
@@ -901,74 +576,50 @@ steps:
901
576
  - コード品質
902
577
 
903
578
  ## 修正完了時の判断
904
- 修正が完了したら、**変更の影響範囲**を判断して適切なタグを出力してください:
579
+ 修正が完了したら、**変更の影響範囲**を判断してください:
905
580
 
906
- - `[CODER:DONE]` - 軽微な修正(QAレビューのみ再実施)
581
+ - 軽微な修正(QAレビューのみ再実施)
907
582
  - 例: テスト追加、ドキュメント追加、ログ追加、コメント追加
908
- - `[CODER:IMPROVE]` - セキュリティに影響する修正(セキュリティレビューからやり直し)
583
+ - セキュリティに影響する修正(セキュリティレビューからやり直し)
909
584
  - 例: エラーハンドリング変更(エラーメッセージの内容変更)、入力検証の変更
910
- - `[CODER:REJECT]` - 大きな修正(アーキテクチャレビューからやり直し)
585
+ - 大きな修正(アーキテクチャレビューからやり直し)
911
586
  - 例: ビジネスロジック変更、データモデル変更、API変更
912
-
913
- 進行できない場合は [CODER:BLOCKED] を含めてください。
914
587
  pass_previous_response: true
915
- transitions:
916
- - condition: done
917
- next_step: qa_review
918
- - condition: improve
919
- next_step: security_review
920
- - condition: rejected
921
- next_step: architect_review
922
- - condition: blocked
923
- next_step: plan
588
+ rules:
589
+ - condition: 軽微なQA修正が完了した
590
+ next: qa_review
591
+ - condition: セキュリティに影響する修正を行った
592
+ next: security_review
593
+ - condition: 大きな修正を行い、アーキテクチャレビューからやり直す必要がある
594
+ next: architect_review
595
+ - condition: 修正を進行できない
596
+ next: plan
924
597
 
925
598
  # ===========================================
926
599
  # Phase 7: Supervision
927
600
  # ===========================================
928
601
  - name: supervise
929
- agent: ~/.takt/agents/expert/supervisor.md
602
+ edit: false
603
+ agent: ../agents/expert/supervisor.md
604
+ report:
605
+ - Validation: 08-supervisor-validation.md
606
+ - Summary: summary.md
930
607
  allowed_tools:
931
608
  - Read
932
609
  - Glob
933
610
  - Grep
611
+ - Write
934
612
  - WebSearch
935
613
  - WebFetch
936
- status_rules_prompt: |
937
-
938
-
939
- ## 出力フォーマット
940
-
941
- | 状況 | タグ |
942
- |------|------|
943
- | 最終承認 | `[SUPERVISOR:APPROVE]` |
944
- | 問題あり | `[SUPERVISOR:REJECT]` |
945
614
  instruction_template: |
946
- ## Workflow Context
947
- - Iteration: {iteration}/{max_iterations}(ワークフロー全体)
948
- - Step Iteration: {step_iteration}(このステップの実行回数)
949
- - Step: supervise (最終確認)
950
- - Report Directory: .takt/reports/{report_dir}/
951
- - Report Files:
952
- - Validation: .takt/reports/{report_dir}/08-supervisor-validation.md
953
- - Summary: .takt/reports/{report_dir}/summary.md
954
-
955
- ## Original User Request
956
- {task}
957
-
958
- ## Git Diff
959
- ```diff
960
- {git_diff}
961
- ```
962
-
963
615
  ## Previous Reviews Summary
964
616
  このステップに到達したということは、以下のレビューがすべてAPPROVEされています:
617
+ - AI Review: APPROVED
965
618
  - Architecture Review: APPROVED
966
619
  - Frontend Review: APPROVED
967
- - AI Review: APPROVED
968
620
  - Security Review: APPROVED
969
621
  - QA Review: APPROVED
970
622
 
971
- ## Instructions
972
623
  テスト実行、ビルド確認、最終承認を行ってください。
973
624
 
974
625
  **ワークフロー全体の確認:**
@@ -979,10 +630,6 @@ steps:
979
630
  **レポートの確認:** Report Directory内の全レポートを読み、
980
631
  未対応の改善提案がないか確認してください。
981
632
 
982
- **レポート出力:** 上記の `Report Files` に出力してください。
983
- - ファイルが存在しない場合: 新規作成
984
- - ファイルが存在する場合: `## Iteration {step_iteration}` セクションを追記
985
-
986
633
  **Validationレポートフォーマット:**
987
634
  ```markdown
988
635
  # 最終検証結果
@@ -1025,9 +672,9 @@ steps:
1025
672
  ## レビュー結果
1026
673
  | レビュー | 結果 |
1027
674
  |---------|------|
675
+ | AI Review | ✅ APPROVE |
1028
676
  | Architecture | ✅ APPROVE |
1029
677
  | Frontend | ✅ APPROVE |
1030
- | AI Review | ✅ APPROVE |
1031
678
  | Security | ✅ APPROVE |
1032
679
  | QA | ✅ APPROVE |
1033
680
  | Supervisor | ✅ APPROVE |
@@ -1038,18 +685,15 @@ steps:
1038
685
  npm run build
1039
686
  ```
1040
687
  ```
1041
-
1042
- 出力:
1043
- - [SUPERVISOR:APPROVE] すべて完了、マージ可能
1044
- - [SUPERVISOR:REJECT] 問題あり(具体的な問題を記載)
1045
- transitions:
1046
- - condition: approved
1047
- next_step: COMPLETE
1048
- - condition: rejected
1049
- next_step: fix_supervisor
688
+ rules:
689
+ - condition: すべての検証が完了し、マージ可能な状態である
690
+ next: COMPLETE
691
+ - condition: 問題が検出された
692
+ next: fix_supervisor
1050
693
 
1051
694
  - name: fix_supervisor
1052
- agent: ~/.takt/agents/default/coder.md
695
+ edit: true
696
+ agent: ../agents/default/coder.md
1053
697
  allowed_tools:
1054
698
  - Read
1055
699
  - Glob
@@ -1059,41 +703,17 @@ steps:
1059
703
  - Bash
1060
704
  - WebSearch
1061
705
  - WebFetch
1062
- status_rules_prompt: |
1063
-
1064
-
1065
- ## 出力フォーマット
1066
-
1067
- | 状況 | タグ |
1068
- |------|------|
1069
- | 修正完了 | `[CODER:DONE]` |
1070
- | 進行不可 | `[CODER:BLOCKED]` |
1071
706
  instruction_template: |
1072
- ## Workflow Context
1073
- - Iteration: {iteration}/{max_iterations}(ワークフロー全体)
1074
- - Step Iteration: {step_iteration}(このステップの実行回数)
1075
- - Step: fix_supervisor
1076
-
1077
707
  ## Supervisor Feedback (これが最新の指示です - 優先して対応してください)
1078
708
  {previous_response}
1079
709
 
1080
- ## Original User Request (ワークフロー開始時の元の要求 - 参考情報)
1081
- {task}
1082
-
1083
- ## Additional User Inputs
1084
- {user_inputs}
1085
-
1086
- ## Instructions
1087
710
  **重要**: 監督者からの指摘を修正してください。
1088
711
 
1089
712
  監督者は全体を俯瞰した視点から問題を指摘しています。
1090
713
  優先度の高い項目から順に対応してください。
1091
-
1092
- 完了時は [CODER:DONE] を含めてください。
1093
- 進行できない場合は [CODER:BLOCKED] を含めてください。
1094
714
  pass_previous_response: true
1095
- transitions:
1096
- - condition: done
1097
- next_step: supervise
1098
- - condition: blocked
1099
- next_step: plan
715
+ rules:
716
+ - condition: 監督者の指摘に対する修正が完了した
717
+ next: supervise
718
+ - condition: 修正を進行できない
719
+ next: plan