takt 0.2.3 → 0.3.1

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