[#320] move-allowed-tools-claude (#469)

* takt: move-allowed-tools-claude

* fix: E2Eフィクスチャの allowed_tools を provider_options.claude に移行

PR #469 で allowed_tools がムーブメント直下から provider_options.claude.allowed_tools に
移動されたが、E2Eフィクスチャとインラインピース定義が旧形式のままだった。
This commit is contained in:
nrs 2026-03-05 11:27:48 +09:00 committed by GitHub
parent 2ce51affd1
commit 2f268f6d43
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
95 changed files with 5195 additions and 3847 deletions

View File

@ -30,13 +30,15 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: Requirements are clear and implementation is possible
next: implement
@ -60,15 +62,17 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
instruction: implement
rules:
@ -94,12 +98,14 @@ movements:
policy:
- review
- ai-antipattern
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-ai
rules:
- condition: No AI-specific issues
@ -117,13 +123,15 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: supervise
rules:
- condition: All checks passed
@ -157,14 +165,16 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
rules:
- condition: AI Reviewer's issues fixed
@ -182,14 +192,16 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
rules:
- condition: Supervisor's issues fixed
@ -211,15 +223,17 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:
@ -241,15 +255,17 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:

View File

@ -26,13 +26,15 @@ movements:
- name: gather
edit: false
persona: planner
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: gather-review
output_contracts:
report:
@ -53,12 +55,14 @@ movements:
knowledge:
- architecture
- backend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-arch
output_contracts:
report:
@ -75,12 +79,14 @@ movements:
knowledge:
- cqrs-es
- backend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-cqrs-es
output_contracts:
report:
@ -95,12 +101,14 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-security
output_contracts:
report:
@ -116,12 +124,14 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-qa
output_contracts:
report:
@ -148,15 +158,17 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
instruction: fix
@ -170,12 +182,14 @@ movements:
edit: false
persona: dual-supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: supervise
pass_previous_response: false
rules:
@ -202,15 +216,17 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: fix-supervisor
pass_previous_response: false
rules:

View File

@ -13,13 +13,15 @@ movements:
- name: gather
edit: false
persona: planner
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: gather-review
output_contracts:
report:
@ -40,12 +42,14 @@ movements:
knowledge:
- architecture
- backend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-arch
output_contracts:
report:
@ -62,12 +66,14 @@ movements:
knowledge:
- cqrs-es
- backend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-cqrs-es
output_contracts:
report:
@ -82,12 +88,14 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-security
output_contracts:
report:
@ -103,12 +111,14 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-qa
output_contracts:
report:
@ -128,12 +138,14 @@ movements:
edit: false
persona: supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
pass_previous_response: false
instruction: supervise
output_contracts:

View File

@ -29,13 +29,15 @@ movements:
- backend
- cqrs-es
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: plan
rules:
- condition: Task analysis and planning is complete
@ -58,15 +60,17 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: implement
rules:
- condition: Implementation is complete
@ -91,12 +95,14 @@ movements:
policy:
- review
- ai-antipattern
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: ai-review
rules:
- condition: No AI-specific issues found
@ -119,15 +125,17 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: ai-fix
pass_previous_response: false
rules:
@ -141,10 +149,12 @@ movements:
edit: false
persona: architecture-reviewer
policy: review
allowed_tools:
- Read
- Glob
- Grep
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
rules:
- condition: ai_review's findings are valid (fix required)
next: ai_fix
@ -160,12 +170,14 @@ movements:
knowledge:
- cqrs-es
- backend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -179,12 +191,14 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -199,12 +213,14 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -229,15 +245,17 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:
@ -250,12 +268,14 @@ movements:
edit: false
persona: dual-supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: supervise
pass_previous_response: false
rules:
@ -281,15 +301,17 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: fix-supervisor
pass_previous_response: false
rules:

View File

@ -29,13 +29,15 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: Requirements are clear and implementation is possible
next: implement
@ -58,15 +60,17 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
instruction: implement
rules:
@ -92,12 +96,14 @@ movements:
policy:
- review
- ai-antipattern
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-ai
rules:
- condition: No AI-specific issues
@ -114,13 +120,15 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: supervise
rules:
- condition: All checks passed
@ -153,14 +161,16 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
rules:
- condition: AI Reviewer's issues fixed
@ -177,14 +187,16 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
rules:
- condition: Supervisor's issues fixed
@ -205,15 +217,17 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:
@ -234,15 +248,17 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:

View File

@ -26,13 +26,15 @@ movements:
- name: gather
edit: false
persona: planner
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: gather-review
output_contracts:
report:
@ -53,12 +55,14 @@ movements:
knowledge:
- architecture
- backend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-arch
output_contracts:
report:
@ -73,12 +77,14 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-security
output_contracts:
report:
@ -94,12 +100,14 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-qa
output_contracts:
report:
@ -125,15 +133,17 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
instruction: fix
@ -147,12 +157,14 @@ movements:
edit: false
persona: dual-supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: supervise
pass_previous_response: false
rules:
@ -178,15 +190,17 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: fix-supervisor
pass_previous_response: false
rules:

View File

@ -13,13 +13,15 @@ movements:
- name: gather
edit: false
persona: planner
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: gather-review
output_contracts:
report:
@ -40,12 +42,14 @@ movements:
knowledge:
- architecture
- backend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-arch
output_contracts:
report:
@ -60,12 +64,14 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-security
output_contracts:
report:
@ -81,12 +87,14 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-qa
output_contracts:
report:
@ -106,12 +114,14 @@ movements:
edit: false
persona: supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
pass_previous_response: false
instruction: supervise
output_contracts:

View File

@ -28,13 +28,15 @@ movements:
knowledge:
- backend
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: plan
rules:
- condition: Task analysis and planning is complete
@ -56,15 +58,17 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: implement
rules:
- condition: Implementation is complete
@ -89,12 +93,14 @@ movements:
policy:
- review
- ai-antipattern
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: ai-review
rules:
- condition: No AI-specific issues found
@ -116,15 +122,17 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: ai-fix
pass_previous_response: false
rules:
@ -138,10 +146,12 @@ movements:
edit: false
persona: architecture-reviewer
policy: review
allowed_tools:
- Read
- Glob
- Grep
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
rules:
- condition: ai_review's findings are valid (fix required)
next: ai_fix
@ -157,12 +167,14 @@ movements:
knowledge:
- architecture
- backend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -176,12 +188,14 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -196,12 +210,14 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -225,15 +241,17 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:
@ -246,12 +264,14 @@ movements:
edit: false
persona: dual-supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: supervise
pass_previous_response: false
rules:
@ -276,15 +296,17 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: fix-supervisor
pass_previous_response: false
rules:

View File

@ -17,13 +17,15 @@ movements:
provider: claude
session: refresh
knowledge: architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: done
- condition: failed
@ -56,13 +58,15 @@ movements:
provider: codex
session: refresh
knowledge: architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: done
- condition: failed
@ -95,10 +99,12 @@ movements:
- name: synthesize
edit: false
persona: supervisor
allowed_tools:
- Read
- Glob
- Grep
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
rules:
- condition: synthesis complete
next: COMPLETE

View File

@ -14,12 +14,14 @@ movements:
policy: research
knowledge: research
instruction: research-plan
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: Planning is complete
next: dig
@ -43,14 +45,16 @@ movements:
- Grep
- WebSearch
- WebFetch
allowed_tools:
- Read
- Write
- Bash
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Write
- Bash
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: Research is complete
next: analyze
@ -62,13 +66,15 @@ movements:
knowledge: research
instruction: research-analyze
edit: true
allowed_tools:
- Read
- Write
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Write
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: New questions exist and additional research is needed
next: dig
@ -79,12 +85,14 @@ movements:
policy: research
knowledge: research
instruction: research-supervise
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
output_contracts:
report:
- name: research-report.md

View File

@ -50,13 +50,15 @@ movements:
edit: false
persona: planner
knowledge: architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: Requirements are clear and implementable
next: write_tests
@ -81,15 +83,17 @@ movements:
- testing
knowledge:
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
instruction: write-tests-first
rules:
@ -118,15 +122,17 @@ movements:
session: refresh
knowledge:
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
instruction: implement-after-tests
rules:
@ -152,12 +158,14 @@ movements:
policy:
- review
- ai-antipattern
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: ai-review
rules:
- condition: No AI-specific issues
@ -177,15 +185,17 @@ movements:
session: refresh
knowledge:
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
instruction: ai-fix
pass_previous_response: false
@ -203,12 +213,14 @@ movements:
persona: architecture-reviewer
policy: review
knowledge: architecture
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -221,13 +233,15 @@ movements:
edit: false
persona: supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: supervise
rules:
- condition: All checks passed
@ -252,15 +266,17 @@ movements:
- testing
knowledge:
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
instruction: fix
pass_previous_response: false

View File

@ -31,13 +31,15 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: Requirements are clear and implementation is possible
next: implement
@ -62,15 +64,17 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
instruction: implement
rules:
@ -96,12 +100,14 @@ movements:
policy:
- review
- ai-antipattern
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-ai
rules:
- condition: No AI-specific issues
@ -120,13 +126,15 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: supervise
rules:
- condition: All checks passed
@ -161,14 +169,16 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
rules:
- condition: AI Reviewer's issues fixed
@ -187,14 +197,16 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
rules:
- condition: Supervisor's issues fixed
@ -217,15 +229,17 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:
@ -248,15 +262,17 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:

View File

@ -26,13 +26,15 @@ movements:
- name: gather
edit: false
persona: planner
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: gather-review
output_contracts:
report:
@ -54,12 +56,14 @@ movements:
- architecture
- frontend
- backend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-arch
output_contracts:
report:
@ -76,12 +80,14 @@ movements:
knowledge:
- cqrs-es
- backend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-cqrs-es
output_contracts:
report:
@ -96,12 +102,14 @@ movements:
persona: frontend-reviewer
policy: review
knowledge: frontend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-frontend
output_contracts:
report:
@ -116,12 +124,14 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-security
output_contracts:
report:
@ -137,12 +147,14 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-qa
output_contracts:
report:
@ -170,15 +182,17 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
instruction: fix
@ -192,12 +206,14 @@ movements:
edit: false
persona: dual-supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: supervise
pass_previous_response: false
rules:
@ -225,15 +241,17 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: fix-supervisor
pass_previous_response: false
rules:

View File

@ -13,13 +13,15 @@ movements:
- name: gather
edit: false
persona: planner
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: gather-review
output_contracts:
report:
@ -41,12 +43,14 @@ movements:
- architecture
- frontend
- backend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-arch
output_contracts:
report:
@ -63,12 +67,14 @@ movements:
knowledge:
- cqrs-es
- backend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-cqrs-es
output_contracts:
report:
@ -83,12 +89,14 @@ movements:
persona: frontend-reviewer
policy: review
knowledge: frontend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-frontend
output_contracts:
report:
@ -103,12 +111,14 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-security
output_contracts:
report:
@ -124,12 +134,14 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-qa
output_contracts:
report:
@ -149,12 +161,14 @@ movements:
edit: false
persona: supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
pass_previous_response: false
instruction: supervise
output_contracts:

View File

@ -42,13 +42,15 @@ movements:
- backend
- cqrs-es
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: plan
rules:
- condition: Task analysis and planning is complete
@ -72,15 +74,17 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: implement
rules:
- condition: Implementation is complete
@ -105,12 +109,14 @@ movements:
policy:
- review
- ai-antipattern
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: ai-review
rules:
- condition: No AI-specific issues found
@ -134,15 +140,17 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: ai-fix
pass_previous_response: false
rules:
@ -156,10 +164,12 @@ movements:
edit: false
persona: architecture-reviewer
policy: review
allowed_tools:
- Read
- Glob
- Grep
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
rules:
- condition: ai_review's findings are valid (fix required)
next: ai_fix
@ -175,12 +185,14 @@ movements:
knowledge:
- cqrs-es
- backend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -194,12 +206,14 @@ movements:
persona: frontend-reviewer
policy: review
knowledge: frontend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -213,12 +227,14 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -233,12 +249,14 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -264,15 +282,17 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:
@ -285,12 +305,14 @@ movements:
edit: false
persona: dual-supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: supervise
pass_previous_response: false
rules:
@ -317,15 +339,17 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: fix-supervisor
pass_previous_response: false
rules:

View File

@ -30,13 +30,15 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: Requirements are clear and implementation is possible
next: implement
@ -60,15 +62,17 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
instruction: implement
rules:
@ -94,12 +98,14 @@ movements:
policy:
- review
- ai-antipattern
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-ai
rules:
- condition: No AI-specific issues
@ -117,13 +123,15 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: supervise
rules:
- condition: All checks passed
@ -157,14 +165,16 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
rules:
- condition: AI Reviewer's issues fixed
@ -182,14 +192,16 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
rules:
- condition: Supervisor's issues fixed
@ -211,15 +223,17 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:
@ -241,15 +255,17 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:

View File

@ -26,13 +26,15 @@ movements:
- name: gather
edit: false
persona: planner
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: gather-review
output_contracts:
report:
@ -54,12 +56,14 @@ movements:
- architecture
- frontend
- backend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-arch
output_contracts:
report:
@ -74,12 +78,14 @@ movements:
persona: frontend-reviewer
policy: review
knowledge: frontend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-frontend
output_contracts:
report:
@ -94,12 +100,14 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-security
output_contracts:
report:
@ -115,12 +123,14 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-qa
output_contracts:
report:
@ -147,15 +157,17 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
instruction: fix
@ -169,12 +181,14 @@ movements:
edit: false
persona: dual-supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: supervise
pass_previous_response: false
rules:
@ -201,15 +215,17 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: fix-supervisor
pass_previous_response: false
rules:

View File

@ -13,13 +13,15 @@ movements:
- name: gather
edit: false
persona: planner
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: gather-review
output_contracts:
report:
@ -41,12 +43,14 @@ movements:
- architecture
- frontend
- backend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-arch
output_contracts:
report:
@ -61,12 +65,14 @@ movements:
persona: frontend-reviewer
policy: review
knowledge: frontend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-frontend
output_contracts:
report:
@ -81,12 +87,14 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-security
output_contracts:
report:
@ -102,12 +110,14 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-qa
output_contracts:
report:
@ -127,12 +137,14 @@ movements:
edit: false
persona: supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
pass_previous_response: false
instruction: supervise
output_contracts:

View File

@ -41,13 +41,15 @@ movements:
- frontend
- backend
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: plan
rules:
- condition: Task analysis and planning is complete
@ -70,15 +72,17 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: implement
rules:
- condition: Implementation is complete
@ -103,12 +107,14 @@ movements:
policy:
- review
- ai-antipattern
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: ai-review
rules:
- condition: No AI-specific issues found
@ -131,15 +137,17 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: ai-fix
pass_previous_response: false
rules:
@ -153,10 +161,12 @@ movements:
edit: false
persona: architecture-reviewer
policy: review
allowed_tools:
- Read
- Glob
- Grep
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
rules:
- condition: ai_review's findings are valid (fix required)
next: ai_fix
@ -172,12 +182,14 @@ movements:
knowledge:
- architecture
- backend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -191,12 +203,14 @@ movements:
persona: frontend-reviewer
policy: review
knowledge: frontend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -210,12 +224,14 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -230,12 +246,14 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -260,15 +278,17 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:
@ -281,12 +301,14 @@ movements:
edit: false
persona: dual-supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: supervise
pass_previous_response: false
rules:
@ -312,15 +334,17 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: fix-supervisor
pass_previous_response: false
rules:

View File

@ -41,13 +41,15 @@ movements:
knowledge:
- architecture
- backend
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: Test plan complete
next: implement_test
@ -74,15 +76,17 @@ movements:
knowledge:
- backend
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
rules:
- condition: Test implementation complete
@ -108,12 +112,14 @@ movements:
policy:
- review
- ai-antipattern
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: No AI-specific issues
next: review_test
@ -134,15 +140,17 @@ movements:
knowledge:
- backend
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:
@ -157,10 +165,12 @@ movements:
edit: false
persona: architecture-reviewer
policy: review
allowed_tools:
- Read
- Glob
- Grep
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
rules:
- condition: ai_review's findings are valid (fix required)
next: ai_fix
@ -173,12 +183,14 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
next: supervise
@ -199,15 +211,17 @@ movements:
knowledge:
- backend
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:
@ -220,13 +234,15 @@ movements:
edit: false
persona: supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
pass_previous_response: false
rules:
- condition: All checks passed

View File

@ -29,13 +29,15 @@ movements:
- frontend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: Requirements are clear and implementation is possible
next: implement
@ -58,15 +60,17 @@ movements:
- frontend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
instruction: implement
rules:
@ -92,12 +96,14 @@ movements:
policy:
- review
- ai-antipattern
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-ai
rules:
- condition: No AI-specific issues
@ -114,13 +120,15 @@ movements:
- frontend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: supervise
rules:
- condition: All checks passed
@ -153,14 +161,16 @@ movements:
- frontend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
rules:
- condition: AI Reviewer's issues fixed
@ -177,14 +187,16 @@ movements:
- frontend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
rules:
- condition: Supervisor's issues fixed
@ -205,15 +217,17 @@ movements:
- frontend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:
@ -234,15 +248,17 @@ movements:
- frontend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:

View File

@ -26,13 +26,15 @@ movements:
- name: gather
edit: false
persona: planner
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: gather-review
output_contracts:
report:
@ -53,12 +55,14 @@ movements:
knowledge:
- architecture
- frontend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-arch
output_contracts:
report:
@ -73,12 +77,14 @@ movements:
persona: frontend-reviewer
policy: review
knowledge: frontend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-frontend
output_contracts:
report:
@ -93,12 +99,14 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-security
output_contracts:
report:
@ -114,12 +122,14 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-qa
output_contracts:
report:
@ -145,15 +155,17 @@ movements:
- frontend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
instruction: fix
@ -167,12 +179,14 @@ movements:
edit: false
persona: dual-supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: supervise
pass_previous_response: false
rules:
@ -198,15 +212,17 @@ movements:
- frontend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: fix-supervisor
pass_previous_response: false
rules:

View File

@ -13,13 +13,15 @@ movements:
- name: gather
edit: false
persona: planner
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: gather-review
output_contracts:
report:
@ -40,12 +42,14 @@ movements:
knowledge:
- architecture
- frontend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-arch
output_contracts:
report:
@ -60,12 +64,14 @@ movements:
persona: frontend-reviewer
policy: review
knowledge: frontend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-frontend
output_contracts:
report:
@ -80,12 +86,14 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-security
output_contracts:
report:
@ -101,12 +109,14 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-qa
output_contracts:
report:
@ -126,12 +136,14 @@ movements:
edit: false
persona: supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
pass_previous_response: false
instruction: supervise
output_contracts:

View File

@ -28,13 +28,15 @@ movements:
knowledge:
- frontend
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: plan
rules:
- condition: Task analysis and planning is complete
@ -56,15 +58,17 @@ movements:
- frontend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: implement
rules:
- condition: Implementation is complete
@ -89,12 +93,14 @@ movements:
policy:
- review
- ai-antipattern
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: ai-review
rules:
- condition: No AI-specific issues found
@ -116,15 +122,17 @@ movements:
- frontend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: ai-fix
pass_previous_response: false
rules:
@ -138,10 +146,12 @@ movements:
edit: false
persona: architecture-reviewer
policy: review
allowed_tools:
- Read
- Glob
- Grep
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
rules:
- condition: ai_review's findings are valid (fix required)
next: ai_fix
@ -157,12 +167,14 @@ movements:
knowledge:
- architecture
- frontend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -176,12 +188,14 @@ movements:
persona: frontend-reviewer
policy: review
knowledge: frontend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -195,12 +209,14 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -215,12 +231,14 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -244,15 +262,17 @@ movements:
- frontend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:
@ -265,12 +285,14 @@ movements:
edit: false
persona: dual-supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: supervise
pass_previous_response: false
rules:
@ -295,15 +317,17 @@ movements:
- frontend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: fix-supervisor
pass_previous_response: false
rules:

View File

@ -2,6 +2,13 @@ name: magi
description: MAGI Deliberation System - Analyze from 3 perspectives and decide by majority
piece_config:
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
codex:
network_access: true
opencode:
@ -11,12 +18,6 @@ initial_movement: melchior
movements:
- name: melchior
persona: melchior
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction_template: |
# MAGI System Initiated
@ -47,12 +48,6 @@ movements:
next: balthasar
- name: balthasar
persona: balthasar
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction_template: |
# MAGI System Continuing
@ -87,12 +82,6 @@ movements:
next: casper
- name: casper
persona: casper
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction_template: |
# MAGI System Final Deliberation

View File

@ -2,6 +2,13 @@ name: research
description: Research piece - autonomously executes research without asking questions
piece_config:
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
codex:
network_access: true
opencode:
@ -14,12 +21,6 @@ movements:
policy: research
knowledge: research
instruction: research-plan
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: Planning is complete
next: dig
@ -30,12 +31,6 @@ movements:
policy: research
knowledge: research
instruction: research-dig
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: Research is complete
next: supervise
@ -46,12 +41,6 @@ movements:
policy: research
knowledge: research
instruction: research-supervise
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: Research results adequately answer the original request
next: COMPLETE

View File

@ -26,13 +26,15 @@ movements:
- name: gather
edit: false
persona: planner
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: gather-review
output_contracts:
report:
@ -55,13 +57,15 @@ movements:
persona: architecture-reviewer
policy: review
knowledge: architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: review-arch
output_contracts:
report:
@ -76,13 +80,15 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: review-security
output_contracts:
report:
@ -98,13 +104,15 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: review-qa
output_contracts:
report:
@ -120,13 +128,15 @@ movements:
policy:
- review
- testing
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: review-test
output_contracts:
report:
@ -140,13 +150,15 @@ movements:
edit: false
persona: requirements-reviewer
policy: review
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: review-requirements
output_contracts:
report:
@ -171,15 +183,17 @@ movements:
knowledge:
- architecture
- security
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
instruction: fix
@ -193,12 +207,14 @@ movements:
edit: false
persona: supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: supervise
pass_previous_response: false
rules:
@ -223,15 +239,17 @@ movements:
knowledge:
- architecture
- security
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: fix-supervisor
pass_previous_response: false
rules:

View File

@ -13,13 +13,15 @@ movements:
- name: gather
edit: false
persona: planner
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: gather-review
output_contracts:
report:
@ -42,13 +44,15 @@ movements:
persona: architecture-reviewer
policy: review
knowledge: architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: review-arch
output_contracts:
report:
@ -63,13 +67,15 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: review-security
output_contracts:
report:
@ -85,13 +91,15 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: review-qa
output_contracts:
report:
@ -107,13 +115,15 @@ movements:
policy:
- review
- testing
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: review-test
output_contracts:
report:
@ -127,13 +137,15 @@ movements:
edit: false
persona: requirements-reviewer
policy: review
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: review-requirements
output_contracts:
report:
@ -153,12 +165,14 @@ movements:
edit: false
persona: supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
pass_previous_response: false
rules:
- condition: Review synthesis complete

View File

@ -26,13 +26,15 @@ movements:
- name: gather
edit: false
persona: planner
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: gather-review
output_contracts:
report:
@ -57,13 +59,15 @@ movements:
knowledge:
- architecture
- takt
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: review-arch
output_contracts:
report:
@ -78,13 +82,15 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: review-security
output_contracts:
report:
@ -100,13 +106,15 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: review-qa
output_contracts:
report:
@ -122,13 +130,15 @@ movements:
policy:
- review
- testing
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: review-test
output_contracts:
report:
@ -142,13 +152,15 @@ movements:
edit: false
persona: requirements-reviewer
policy: review
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: review-requirements
output_contracts:
report:
@ -174,15 +186,17 @@ movements:
- takt
- architecture
- security
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
instruction: fix
@ -196,13 +210,15 @@ movements:
edit: false
persona: supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: supervise
pass_previous_response: false
rules:

View File

@ -50,13 +50,15 @@ movements:
edit: false
persona: planner
knowledge: architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: Requirements are clear and implementable
next: write_tests
@ -82,15 +84,17 @@ movements:
knowledge:
- takt
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
instruction: write-tests-first
rules:
@ -120,15 +124,17 @@ movements:
knowledge:
- takt
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
team_leader:
max_parts: 2
@ -168,12 +174,14 @@ movements:
policy:
- review
- ai-antipattern
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: No AI-specific issues
next: reviewers
@ -194,15 +202,17 @@ movements:
knowledge:
- takt
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:
@ -217,10 +227,12 @@ movements:
edit: false
persona: architecture-reviewer
policy: review
allowed_tools:
- Read
- Glob
- Grep
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
rules:
- condition: ai_review's findings are valid (fix required)
next: ai_fix
@ -236,13 +248,15 @@ movements:
knowledge:
- architecture
- takt
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -256,13 +270,15 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -277,13 +293,15 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -298,13 +316,15 @@ movements:
policy:
- review
- testing
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -317,13 +337,15 @@ movements:
edit: false
persona: requirements-reviewer
policy: review
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -346,15 +368,17 @@ movements:
knowledge:
- takt
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:
@ -367,13 +391,15 @@ movements:
edit: false
persona: supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
pass_previous_response: false
rules:
- condition: All checks passed

View File

@ -50,13 +50,15 @@ movements:
edit: false
persona: planner
knowledge: architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: Requirements are clear and implementable
next: write_tests
@ -82,15 +84,17 @@ movements:
knowledge:
- takt
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
instruction: write-tests-first
rules:
@ -120,15 +124,17 @@ movements:
knowledge:
- takt
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
rules:
- condition: Implementation complete
@ -154,12 +160,14 @@ movements:
policy:
- review
- ai-antipattern
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: No AI-specific issues
next: reviewers
@ -180,15 +188,17 @@ movements:
knowledge:
- takt
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:
@ -203,10 +213,12 @@ movements:
edit: false
persona: architecture-reviewer
policy: review
allowed_tools:
- Read
- Glob
- Grep
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
rules:
- condition: ai_review's findings are valid (fix required)
next: ai_fix
@ -222,13 +234,15 @@ movements:
knowledge:
- architecture
- takt
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -242,13 +256,15 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -263,13 +279,15 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -284,13 +302,15 @@ movements:
policy:
- review
- testing
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -303,13 +323,15 @@ movements:
edit: false
persona: requirements-reviewer
policy: review
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -332,15 +354,17 @@ movements:
knowledge:
- takt
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:
@ -353,13 +377,15 @@ movements:
edit: false
persona: supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
pass_previous_response: false
rules:
- condition: All checks passed

View File

@ -13,13 +13,15 @@ movements:
edit: false
persona: planner
knowledge: terraform-aws
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: Requirements are clear and implementable
next: implement
@ -38,15 +40,17 @@ movements:
policy:
- terraform
knowledge: terraform-aws
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: full
quality_gates:
- terraform fmt -check passes without errors
@ -77,13 +81,15 @@ movements:
- review
- terraform
knowledge: terraform-aws
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: review-terraform
rules:
- condition: Complies with Terraform conventions
@ -98,12 +104,14 @@ movements:
policy:
- review
- ai-antipattern
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-ai
rules:
- condition: No AI-specific issues
@ -122,13 +130,15 @@ movements:
persona: supervisor
policy: review
knowledge: terraform-aws
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: supervise
rules:
- condition: All reviewers approved and task requirements met
@ -156,14 +166,16 @@ movements:
policy:
- terraform
knowledge: terraform-aws
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
required_permission_mode: full
rules:
- condition: AI issue fix complete
@ -176,14 +188,16 @@ movements:
policy:
- terraform
knowledge: terraform-aws
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
required_permission_mode: full
rules:
- condition: Supervisor's findings have been fixed
@ -200,15 +214,17 @@ movements:
policy:
- terraform
knowledge: terraform-aws
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: full
pass_previous_response: false
rules:
@ -225,15 +241,17 @@ movements:
policy:
- terraform
knowledge: terraform-aws
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: full
pass_previous_response: false
rules:

View File

@ -41,13 +41,15 @@ movements:
knowledge:
- architecture
- backend
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: Test plan complete
next: implement_test
@ -74,15 +76,17 @@ movements:
knowledge:
- backend
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
rules:
- condition: Test implementation complete
@ -108,12 +112,14 @@ movements:
policy:
- review
- ai-antipattern
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: No AI-specific issues
next: review_test
@ -134,15 +140,17 @@ movements:
knowledge:
- backend
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:
@ -157,10 +165,12 @@ movements:
edit: false
persona: architecture-reviewer
policy: review
allowed_tools:
- Read
- Glob
- Grep
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
rules:
- condition: ai_review's findings are valid (fix required)
next: ai_fix
@ -173,12 +183,14 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
next: supervise
@ -199,15 +211,17 @@ movements:
knowledge:
- backend
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:
@ -220,13 +234,15 @@ movements:
edit: false
persona: supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
pass_previous_response: false
rules:
- condition: All checks passed

View File

@ -30,13 +30,15 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: 要件が明確で実装可能
next: implement
@ -60,15 +62,17 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
instruction: implement
rules:
@ -94,12 +98,14 @@ movements:
policy:
- review
- ai-antipattern
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-ai
rules:
- condition: AI特有の問題なし
@ -117,13 +123,15 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: supervise
rules:
- condition: すべて問題なし
@ -157,14 +165,16 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
rules:
- condition: AI問題の修正完了
@ -182,14 +192,16 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
rules:
- condition: 監督者の指摘に対する修正が完了した
@ -211,15 +223,17 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:
@ -241,15 +255,17 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:

View File

@ -26,13 +26,15 @@ movements:
- name: gather
edit: false
persona: planner
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: gather-review
output_contracts:
report:
@ -53,12 +55,14 @@ movements:
knowledge:
- architecture
- backend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-arch
output_contracts:
report:
@ -75,12 +79,14 @@ movements:
knowledge:
- cqrs-es
- backend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-cqrs-es
output_contracts:
report:
@ -95,12 +101,14 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-security
output_contracts:
report:
@ -116,12 +124,14 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-qa
output_contracts:
report:
@ -148,15 +158,17 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
instruction: fix
@ -170,12 +182,14 @@ movements:
edit: false
persona: dual-supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: supervise
pass_previous_response: false
rules:
@ -202,15 +216,17 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: fix-supervisor
pass_previous_response: false
rules:

View File

@ -13,13 +13,15 @@ movements:
- name: gather
edit: false
persona: planner
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: gather-review
output_contracts:
report:
@ -40,12 +42,14 @@ movements:
knowledge:
- architecture
- backend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-arch
output_contracts:
report:
@ -62,12 +66,14 @@ movements:
knowledge:
- cqrs-es
- backend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-cqrs-es
output_contracts:
report:
@ -82,12 +88,14 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-security
output_contracts:
report:
@ -103,12 +111,14 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-qa
output_contracts:
report:
@ -128,12 +138,14 @@ movements:
edit: false
persona: supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
pass_previous_response: false
instruction: supervise
output_contracts:

View File

@ -29,13 +29,15 @@ movements:
- backend
- cqrs-es
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: plan
rules:
- condition: タスク分析と計画が完了した
@ -58,15 +60,17 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: implement
rules:
- condition: 実装が完了した
@ -91,12 +95,14 @@ movements:
policy:
- review
- ai-antipattern
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: ai-review
rules:
- condition: AI特有の問題が見つからない
@ -119,15 +125,17 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: ai-fix
pass_previous_response: false
rules:
@ -141,10 +149,12 @@ movements:
edit: false
persona: architecture-reviewer
policy: review
allowed_tools:
- Read
- Glob
- Grep
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
rules:
- condition: ai_reviewの指摘が妥当修正すべき
next: ai_fix
@ -160,12 +170,14 @@ movements:
knowledge:
- cqrs-es
- backend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -179,12 +191,14 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -199,12 +213,14 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -229,15 +245,17 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:
@ -250,12 +268,14 @@ movements:
edit: false
persona: dual-supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: supervise
pass_previous_response: false
rules:
@ -281,15 +301,17 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: fix-supervisor
pass_previous_response: false
rules:

View File

@ -29,13 +29,15 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: 要件が明確で実装可能
next: implement
@ -58,15 +60,17 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
instruction: implement
rules:
@ -92,12 +96,14 @@ movements:
policy:
- review
- ai-antipattern
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-ai
rules:
- condition: AI特有の問題なし
@ -114,13 +120,15 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: supervise
rules:
- condition: すべて問題なし
@ -153,14 +161,16 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
rules:
- condition: AI問題の修正完了
@ -177,14 +187,16 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
rules:
- condition: 監督者の指摘に対する修正が完了した
@ -205,15 +217,17 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:
@ -234,15 +248,17 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:

View File

@ -26,13 +26,15 @@ movements:
- name: gather
edit: false
persona: planner
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: gather-review
output_contracts:
report:
@ -53,12 +55,14 @@ movements:
knowledge:
- architecture
- backend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-arch
output_contracts:
report:
@ -73,12 +77,14 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-security
output_contracts:
report:
@ -94,12 +100,14 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-qa
output_contracts:
report:
@ -125,15 +133,17 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
instruction: fix
@ -147,12 +157,14 @@ movements:
edit: false
persona: dual-supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: supervise
pass_previous_response: false
rules:
@ -178,15 +190,17 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: fix-supervisor
pass_previous_response: false
rules:

View File

@ -13,13 +13,15 @@ movements:
- name: gather
edit: false
persona: planner
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: gather-review
output_contracts:
report:
@ -40,12 +42,14 @@ movements:
knowledge:
- architecture
- backend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-arch
output_contracts:
report:
@ -60,12 +64,14 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-security
output_contracts:
report:
@ -81,12 +87,14 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-qa
output_contracts:
report:
@ -106,12 +114,14 @@ movements:
edit: false
persona: supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
pass_previous_response: false
instruction: supervise
output_contracts:

View File

@ -28,13 +28,15 @@ movements:
knowledge:
- backend
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: plan
rules:
- condition: タスク分析と計画が完了した
@ -56,15 +58,17 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: implement
rules:
- condition: 実装が完了した
@ -89,12 +93,14 @@ movements:
policy:
- review
- ai-antipattern
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: ai-review
rules:
- condition: AI特有の問題が見つからない
@ -116,15 +122,17 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: ai-fix
pass_previous_response: false
rules:
@ -138,10 +146,12 @@ movements:
edit: false
persona: architecture-reviewer
policy: review
allowed_tools:
- Read
- Glob
- Grep
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
rules:
- condition: ai_reviewの指摘が妥当修正すべき
next: ai_fix
@ -157,12 +167,14 @@ movements:
knowledge:
- architecture
- backend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -176,12 +188,14 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -196,12 +210,14 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -225,15 +241,17 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:
@ -246,12 +264,14 @@ movements:
edit: false
persona: dual-supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: supervise
pass_previous_response: false
rules:
@ -276,15 +296,17 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: fix-supervisor
pass_previous_response: false
rules:

View File

@ -16,13 +16,15 @@ movements:
persona: coder
provider: claude
knowledge: architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: done
- condition: failed
@ -54,13 +56,15 @@ movements:
persona: coder
provider: codex
knowledge: architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: done
- condition: failed
@ -93,10 +97,12 @@ movements:
- name: synthesize
edit: false
persona: supervisor
allowed_tools:
- Read
- Glob
- Grep
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
rules:
- condition: 統合完了
next: COMPLETE

View File

@ -14,12 +14,14 @@ movements:
policy: research
knowledge: research
instruction: research-plan
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: 計画が完了した
next: dig
@ -43,14 +45,16 @@ movements:
- Grep
- WebSearch
- WebFetch
allowed_tools:
- Read
- Write
- Bash
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Write
- Bash
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: 調査が完了した
next: analyze
@ -62,13 +66,15 @@ movements:
knowledge: research
instruction: research-analyze
edit: true
allowed_tools:
- Read
- Write
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Write
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: 新たな問いがあり追加調査が必要
next: dig
@ -79,12 +85,14 @@ movements:
policy: research
knowledge: research
instruction: research-supervise
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
output_contracts:
report:
- name: research-report.md

View File

@ -50,13 +50,15 @@ movements:
edit: false
persona: planner
knowledge: architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: 要件が明確で実装可能
next: write_tests
@ -81,15 +83,17 @@ movements:
- testing
knowledge:
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
instruction: write-tests-first
rules:
@ -118,15 +122,17 @@ movements:
session: refresh
knowledge:
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
instruction: implement-after-tests
rules:
@ -152,12 +158,14 @@ movements:
policy:
- review
- ai-antipattern
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: ai-review
rules:
- condition: AI特有の問題なし
@ -177,15 +185,17 @@ movements:
session: refresh
knowledge:
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
instruction: ai-fix
pass_previous_response: false
@ -203,12 +213,14 @@ movements:
persona: architecture-reviewer
policy: review
knowledge: architecture
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -221,13 +233,15 @@ movements:
edit: false
persona: supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: supervise
rules:
- condition: すべて問題なし
@ -252,15 +266,17 @@ movements:
- testing
knowledge:
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
instruction: fix
pass_previous_response: false

View File

@ -31,13 +31,15 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: 要件が明確で実装可能
next: implement
@ -62,15 +64,17 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
instruction: implement
rules:
@ -96,12 +100,14 @@ movements:
policy:
- review
- ai-antipattern
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-ai
rules:
- condition: AI特有の問題なし
@ -120,13 +126,15 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: supervise
rules:
- condition: すべて問題なし
@ -161,14 +169,16 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
rules:
- condition: AI問題の修正完了
@ -187,14 +197,16 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
rules:
- condition: 監督者の指摘に対する修正が完了した
@ -217,15 +229,17 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:
@ -248,15 +262,17 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:

View File

@ -26,13 +26,15 @@ movements:
- name: gather
edit: false
persona: planner
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: gather-review
output_contracts:
report:
@ -54,12 +56,14 @@ movements:
- architecture
- frontend
- backend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-arch
output_contracts:
report:
@ -76,12 +80,14 @@ movements:
knowledge:
- cqrs-es
- backend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-cqrs-es
output_contracts:
report:
@ -96,12 +102,14 @@ movements:
persona: frontend-reviewer
policy: review
knowledge: frontend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-frontend
output_contracts:
report:
@ -116,12 +124,14 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-security
output_contracts:
report:
@ -137,12 +147,14 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-qa
output_contracts:
report:
@ -170,15 +182,17 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
instruction: fix
@ -192,12 +206,14 @@ movements:
edit: false
persona: dual-supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: supervise
pass_previous_response: false
rules:
@ -225,15 +241,17 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: fix-supervisor
pass_previous_response: false
rules:

View File

@ -13,13 +13,15 @@ movements:
- name: gather
edit: false
persona: planner
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: gather-review
output_contracts:
report:
@ -41,12 +43,14 @@ movements:
- architecture
- frontend
- backend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-arch
output_contracts:
report:
@ -63,12 +67,14 @@ movements:
knowledge:
- cqrs-es
- backend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-cqrs-es
output_contracts:
report:
@ -83,12 +89,14 @@ movements:
persona: frontend-reviewer
policy: review
knowledge: frontend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-frontend
output_contracts:
report:
@ -103,12 +111,14 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-security
output_contracts:
report:
@ -124,12 +134,14 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-qa
output_contracts:
report:
@ -149,12 +161,14 @@ movements:
edit: false
persona: supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
pass_previous_response: false
instruction: supervise
output_contracts:

View File

@ -42,13 +42,15 @@ movements:
- backend
- cqrs-es
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: plan
rules:
- condition: タスク分析と計画が完了した
@ -72,15 +74,17 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: implement
rules:
- condition: 実装が完了した
@ -105,12 +109,14 @@ movements:
policy:
- review
- ai-antipattern
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: ai-review
rules:
- condition: AI特有の問題が見つからない
@ -134,15 +140,17 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: ai-fix
pass_previous_response: false
rules:
@ -156,10 +164,12 @@ movements:
edit: false
persona: architecture-reviewer
policy: review
allowed_tools:
- Read
- Glob
- Grep
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
rules:
- condition: ai_reviewの指摘が妥当修正すべき
next: ai_fix
@ -175,12 +185,14 @@ movements:
knowledge:
- cqrs-es
- backend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -194,12 +206,14 @@ movements:
persona: frontend-reviewer
policy: review
knowledge: frontend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -213,12 +227,14 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -233,12 +249,14 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -264,15 +282,17 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:
@ -285,12 +305,14 @@ movements:
edit: false
persona: dual-supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: supervise
pass_previous_response: false
rules:
@ -317,15 +339,17 @@ movements:
- cqrs-es
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: fix-supervisor
pass_previous_response: false
rules:

View File

@ -30,13 +30,15 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: 要件が明確で実装可能
next: implement
@ -60,15 +62,17 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
instruction: implement
rules:
@ -94,12 +98,14 @@ movements:
policy:
- review
- ai-antipattern
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-ai
rules:
- condition: AI特有の問題なし
@ -117,13 +123,15 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: supervise
rules:
- condition: すべて問題なし
@ -157,14 +165,16 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
rules:
- condition: AI問題の修正完了
@ -182,14 +192,16 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
rules:
- condition: 監督者の指摘に対する修正が完了した
@ -211,15 +223,17 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:
@ -241,15 +255,17 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:

View File

@ -26,13 +26,15 @@ movements:
- name: gather
edit: false
persona: planner
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: gather-review
output_contracts:
report:
@ -54,12 +56,14 @@ movements:
- architecture
- frontend
- backend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-arch
output_contracts:
report:
@ -74,12 +78,14 @@ movements:
persona: frontend-reviewer
policy: review
knowledge: frontend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-frontend
output_contracts:
report:
@ -94,12 +100,14 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-security
output_contracts:
report:
@ -115,12 +123,14 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-qa
output_contracts:
report:
@ -147,15 +157,17 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
instruction: fix
@ -169,12 +181,14 @@ movements:
edit: false
persona: dual-supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: supervise
pass_previous_response: false
rules:
@ -201,15 +215,17 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: fix-supervisor
pass_previous_response: false
rules:

View File

@ -13,13 +13,15 @@ movements:
- name: gather
edit: false
persona: planner
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: gather-review
output_contracts:
report:
@ -41,12 +43,14 @@ movements:
- architecture
- frontend
- backend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-arch
output_contracts:
report:
@ -61,12 +65,14 @@ movements:
persona: frontend-reviewer
policy: review
knowledge: frontend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-frontend
output_contracts:
report:
@ -81,12 +87,14 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-security
output_contracts:
report:
@ -102,12 +110,14 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-qa
output_contracts:
report:
@ -127,12 +137,14 @@ movements:
edit: false
persona: supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
pass_previous_response: false
instruction: supervise
output_contracts:

View File

@ -41,13 +41,15 @@ movements:
- frontend
- backend
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: plan
rules:
- condition: タスク分析と計画が完了した
@ -70,15 +72,17 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: implement
rules:
- condition: 実装が完了した
@ -103,12 +107,14 @@ movements:
policy:
- review
- ai-antipattern
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: ai-review
rules:
- condition: AI特有の問題が見つからない
@ -131,15 +137,17 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: ai-fix
pass_previous_response: false
rules:
@ -153,10 +161,12 @@ movements:
edit: false
persona: architecture-reviewer
policy: review
allowed_tools:
- Read
- Glob
- Grep
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
rules:
- condition: ai_reviewの指摘が妥当修正すべき
next: ai_fix
@ -172,12 +182,14 @@ movements:
knowledge:
- architecture
- backend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -191,12 +203,14 @@ movements:
persona: frontend-reviewer
policy: review
knowledge: frontend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -210,12 +224,14 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -230,12 +246,14 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -260,15 +278,17 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:
@ -281,12 +301,14 @@ movements:
edit: false
persona: dual-supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: supervise
pass_previous_response: false
rules:
@ -312,15 +334,17 @@ movements:
- backend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: fix-supervisor
pass_previous_response: false
rules:

View File

@ -41,13 +41,15 @@ movements:
knowledge:
- architecture
- backend
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: テスト計画が完了
next: implement_test
@ -74,15 +76,17 @@ movements:
knowledge:
- backend
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
rules:
- condition: テスト実装完了
@ -108,12 +112,14 @@ movements:
policy:
- review
- ai-antipattern
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: AI特有の問題なし
next: review_test
@ -134,15 +140,17 @@ movements:
knowledge:
- backend
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:
@ -157,10 +165,12 @@ movements:
edit: false
persona: architecture-reviewer
policy: review
allowed_tools:
- Read
- Glob
- Grep
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
rules:
- condition: ai_reviewの指摘が妥当修正すべき
next: ai_fix
@ -173,12 +183,14 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
next: supervise
@ -199,15 +211,17 @@ movements:
knowledge:
- backend
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:
@ -220,13 +234,15 @@ movements:
edit: false
persona: supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
pass_previous_response: false
rules:
- condition: すべて問題なし

View File

@ -29,13 +29,15 @@ movements:
- frontend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: 要件が明確で実装可能
next: implement
@ -58,15 +60,17 @@ movements:
- frontend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
instruction: implement
rules:
@ -92,12 +96,14 @@ movements:
policy:
- review
- ai-antipattern
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-ai
rules:
- condition: AI特有の問題なし
@ -114,13 +120,15 @@ movements:
- frontend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: supervise
rules:
- condition: すべて問題なし
@ -153,14 +161,16 @@ movements:
- frontend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
rules:
- condition: AI問題の修正完了
@ -177,14 +187,16 @@ movements:
- frontend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
rules:
- condition: 監督者の指摘に対する修正が完了した
@ -205,15 +217,17 @@ movements:
- frontend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:
@ -234,15 +248,17 @@ movements:
- frontend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:

View File

@ -26,13 +26,15 @@ movements:
- name: gather
edit: false
persona: planner
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: gather-review
output_contracts:
report:
@ -53,12 +55,14 @@ movements:
knowledge:
- architecture
- frontend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-arch
output_contracts:
report:
@ -73,12 +77,14 @@ movements:
persona: frontend-reviewer
policy: review
knowledge: frontend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-frontend
output_contracts:
report:
@ -93,12 +99,14 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-security
output_contracts:
report:
@ -114,12 +122,14 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-qa
output_contracts:
report:
@ -145,15 +155,17 @@ movements:
- frontend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
instruction: fix
@ -167,12 +179,14 @@ movements:
edit: false
persona: dual-supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: supervise
pass_previous_response: false
rules:
@ -198,15 +212,17 @@ movements:
- frontend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: fix-supervisor
pass_previous_response: false
rules:

View File

@ -13,13 +13,15 @@ movements:
- name: gather
edit: false
persona: planner
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: gather-review
output_contracts:
report:
@ -40,12 +42,14 @@ movements:
knowledge:
- architecture
- frontend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-arch
output_contracts:
report:
@ -60,12 +64,14 @@ movements:
persona: frontend-reviewer
policy: review
knowledge: frontend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-frontend
output_contracts:
report:
@ -80,12 +86,14 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-security
output_contracts:
report:
@ -101,12 +109,14 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-qa
output_contracts:
report:
@ -126,12 +136,14 @@ movements:
edit: false
persona: supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
pass_previous_response: false
instruction: supervise
output_contracts:

View File

@ -28,13 +28,15 @@ movements:
knowledge:
- frontend
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: plan
rules:
- condition: タスク分析と計画が完了した
@ -56,15 +58,17 @@ movements:
- frontend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: implement
rules:
- condition: 実装が完了した
@ -89,12 +93,14 @@ movements:
policy:
- review
- ai-antipattern
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: ai-review
rules:
- condition: AI特有の問題が見つからない
@ -116,15 +122,17 @@ movements:
- frontend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: ai-fix
pass_previous_response: false
rules:
@ -138,10 +146,12 @@ movements:
edit: false
persona: architecture-reviewer
policy: review
allowed_tools:
- Read
- Glob
- Grep
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
rules:
- condition: ai_reviewの指摘が妥当修正すべき
next: ai_fix
@ -157,12 +167,14 @@ movements:
knowledge:
- architecture
- frontend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -176,12 +188,14 @@ movements:
persona: frontend-reviewer
policy: review
knowledge: frontend
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -195,12 +209,14 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -215,12 +231,14 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -244,15 +262,17 @@ movements:
- frontend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:
@ -265,12 +285,14 @@ movements:
edit: false
persona: dual-supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: supervise
pass_previous_response: false
rules:
@ -295,15 +317,17 @@ movements:
- frontend
- security
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: fix-supervisor
pass_previous_response: false
rules:

View File

@ -2,6 +2,13 @@ name: magi
description: MAGI合議システム - 3つの観点から分析し多数決で判定
piece_config:
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
codex:
network_access: true
opencode:
@ -11,12 +18,6 @@ initial_movement: melchior
movements:
- name: melchior
persona: melchior
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction_template: |
# MAGI System 起動
@ -47,12 +48,6 @@ movements:
next: balthasar
- name: balthasar
persona: balthasar
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction_template: |
# MAGI System 継続
@ -87,12 +82,6 @@ movements:
next: casper
- name: casper
persona: casper
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction_template: |
# MAGI System 最終審議

View File

@ -2,6 +2,13 @@ name: research
description: 調査ピース - 質問せずに自律的に調査を実行
piece_config:
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
codex:
network_access: true
opencode:
@ -14,12 +21,6 @@ movements:
policy: research
knowledge: research
instruction: research-plan
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: 計画が完了した
next: dig
@ -30,12 +31,6 @@ movements:
policy: research
knowledge: research
instruction: research-dig
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: 調査が完了した
next: supervise
@ -46,12 +41,6 @@ movements:
policy: research
knowledge: research
instruction: research-supervise
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: 調査結果が元の依頼に対して十分である
next: COMPLETE

View File

@ -26,13 +26,15 @@ movements:
- name: gather
edit: false
persona: planner
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: gather-review
output_contracts:
report:
@ -55,13 +57,15 @@ movements:
persona: architecture-reviewer
policy: review
knowledge: architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: review-arch
output_contracts:
report:
@ -76,13 +80,15 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: review-security
output_contracts:
report:
@ -98,13 +104,15 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: review-qa
output_contracts:
report:
@ -120,13 +128,15 @@ movements:
policy:
- review
- testing
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: review-test
output_contracts:
report:
@ -140,13 +150,15 @@ movements:
edit: false
persona: requirements-reviewer
policy: review
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: review-requirements
output_contracts:
report:
@ -171,15 +183,17 @@ movements:
knowledge:
- architecture
- security
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
instruction: fix
@ -193,12 +207,14 @@ movements:
edit: false
persona: supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: supervise
pass_previous_response: false
rules:
@ -223,15 +239,17 @@ movements:
knowledge:
- architecture
- security
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
instruction: fix-supervisor
pass_previous_response: false
rules:

View File

@ -13,13 +13,15 @@ movements:
- name: gather
edit: false
persona: planner
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: gather-review
output_contracts:
report:
@ -42,13 +44,15 @@ movements:
persona: architecture-reviewer
policy: review
knowledge: architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: review-arch
output_contracts:
report:
@ -63,13 +67,15 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: review-security
output_contracts:
report:
@ -85,13 +91,15 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: review-qa
output_contracts:
report:
@ -107,13 +115,15 @@ movements:
policy:
- review
- testing
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: review-test
output_contracts:
report:
@ -127,13 +137,15 @@ movements:
edit: false
persona: requirements-reviewer
policy: review
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: review-requirements
output_contracts:
report:
@ -153,12 +165,14 @@ movements:
edit: false
persona: supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
pass_previous_response: false
rules:
- condition: レビュー統合完了

View File

@ -26,13 +26,15 @@ movements:
- name: gather
edit: false
persona: planner
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: gather-review
output_contracts:
report:
@ -57,13 +59,15 @@ movements:
knowledge:
- architecture
- takt
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: review-arch
output_contracts:
report:
@ -78,13 +82,15 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: review-security
output_contracts:
report:
@ -100,13 +106,15 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: review-qa
output_contracts:
report:
@ -122,13 +130,15 @@ movements:
policy:
- review
- testing
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: review-test
output_contracts:
report:
@ -142,13 +152,15 @@ movements:
edit: false
persona: requirements-reviewer
policy: review
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: review-requirements
output_contracts:
report:
@ -174,15 +186,17 @@ movements:
- takt
- architecture
- security
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
instruction: fix
@ -196,13 +210,15 @@ movements:
edit: false
persona: supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: supervise
pass_previous_response: false
rules:

View File

@ -50,13 +50,15 @@ movements:
edit: false
persona: planner
knowledge: architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: 要件が明確で実装可能
next: write_tests
@ -82,15 +84,17 @@ movements:
knowledge:
- takt
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
instruction: write-tests-first
rules:
@ -120,15 +124,17 @@ movements:
knowledge:
- takt
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
team_leader:
max_parts: 2
@ -168,12 +174,14 @@ movements:
policy:
- review
- ai-antipattern
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: AI特有の問題なし
next: reviewers
@ -194,15 +202,17 @@ movements:
knowledge:
- takt
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:
@ -217,10 +227,12 @@ movements:
edit: false
persona: architecture-reviewer
policy: review
allowed_tools:
- Read
- Glob
- Grep
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
rules:
- condition: ai_reviewの指摘が妥当修正すべき
next: ai_fix
@ -236,13 +248,15 @@ movements:
knowledge:
- architecture
- takt
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -256,13 +270,15 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -277,13 +293,15 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -298,13 +316,15 @@ movements:
policy:
- review
- testing
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -317,13 +337,15 @@ movements:
edit: false
persona: requirements-reviewer
policy: review
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -346,15 +368,17 @@ movements:
knowledge:
- takt
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:
@ -367,13 +391,15 @@ movements:
edit: false
persona: supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
pass_previous_response: false
rules:
- condition: すべて問題なし

View File

@ -50,13 +50,15 @@ movements:
edit: false
persona: planner
knowledge: architecture
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: 要件が明確で実装可能
next: write_tests
@ -82,15 +84,17 @@ movements:
knowledge:
- takt
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
instruction: write-tests-first
rules:
@ -120,15 +124,17 @@ movements:
knowledge:
- takt
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
rules:
- condition: 実装完了
@ -154,12 +160,14 @@ movements:
policy:
- review
- ai-antipattern
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: AI特有の問題なし
next: reviewers
@ -180,15 +188,17 @@ movements:
knowledge:
- takt
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:
@ -203,10 +213,12 @@ movements:
edit: false
persona: architecture-reviewer
policy: review
allowed_tools:
- Read
- Glob
- Grep
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
rules:
- condition: ai_reviewの指摘が妥当修正すべき
next: ai_fix
@ -222,13 +234,15 @@ movements:
knowledge:
- architecture
- takt
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -242,13 +256,15 @@ movements:
persona: security-reviewer
policy: review
knowledge: security
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -263,13 +279,15 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -284,13 +302,15 @@ movements:
policy:
- review
- testing
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -303,13 +323,15 @@ movements:
edit: false
persona: requirements-reviewer
policy: review
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: approved
- condition: needs_fix
@ -332,15 +354,17 @@ movements:
knowledge:
- takt
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:
@ -353,13 +377,15 @@ movements:
edit: false
persona: supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
pass_previous_response: false
rules:
- condition: すべて問題なし

View File

@ -13,13 +13,15 @@ movements:
edit: false
persona: planner
knowledge: terraform-aws
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: 要件が明確で実装可能
next: implement
@ -38,15 +40,17 @@ movements:
policy:
- terraform
knowledge: terraform-aws
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: full
quality_gates:
- terraform fmt -check がエラーなし
@ -77,13 +81,15 @@ movements:
- review
- terraform
knowledge: terraform-aws
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: review-terraform
rules:
- condition: Terraform規約に準拠
@ -98,12 +104,14 @@ movements:
policy:
- review
- ai-antipattern
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
instruction: review-ai
rules:
- condition: AI特有の問題なし
@ -122,13 +130,15 @@ movements:
persona: supervisor
policy: review
knowledge: terraform-aws
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
instruction: supervise
rules:
- condition: レビュアー全員承認かつタスク要件充足
@ -156,14 +166,16 @@ movements:
policy:
- terraform
knowledge: terraform-aws
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
required_permission_mode: full
rules:
- condition: AI問題の修正完了
@ -176,14 +188,16 @@ movements:
policy:
- terraform
knowledge: terraform-aws
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Bash
- WebSearch
- WebFetch
required_permission_mode: full
rules:
- condition: 監督者の指摘に対する修正が完了した
@ -200,15 +214,17 @@ movements:
policy:
- terraform
knowledge: terraform-aws
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: full
pass_previous_response: false
rules:
@ -225,15 +241,17 @@ movements:
policy:
- terraform
knowledge: terraform-aws
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: full
pass_previous_response: false
rules:

View File

@ -41,13 +41,15 @@ movements:
knowledge:
- architecture
- backend
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
rules:
- condition: テスト計画が完了
next: implement_test
@ -74,15 +76,17 @@ movements:
knowledge:
- backend
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
rules:
- condition: テスト実装完了
@ -108,12 +112,14 @@ movements:
policy:
- review
- ai-antipattern
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: AI特有の問題なし
next: review_test
@ -134,15 +140,17 @@ movements:
knowledge:
- backend
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:
@ -157,10 +165,12 @@ movements:
edit: false
persona: architecture-reviewer
policy: review
allowed_tools:
- Read
- Glob
- Grep
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
rules:
- condition: ai_reviewの指摘が妥当修正すべき
next: ai_fix
@ -173,12 +183,14 @@ movements:
policy:
- review
- qa
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- WebSearch
- WebFetch
rules:
- condition: approved
next: supervise
@ -199,15 +211,17 @@ movements:
knowledge:
- backend
- architecture
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Edit
- Write
- Bash
- WebSearch
- WebFetch
required_permission_mode: edit
pass_previous_response: false
rules:
@ -220,13 +234,15 @@ movements:
edit: false
persona: supervisor
policy: review
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
provider_options:
claude:
allowed_tools:
- Read
- Glob
- Grep
- Bash
- WebSearch
- WebFetch
pass_previous_response: false
rules:
- condition: すべて問題なし

View File

@ -11,10 +11,12 @@ movements:
- name: execute
edit: true
persona: ../agents/test-coder.md
allowed_tools:
- Read
- Write
- Edit
provider_options:
claude:
allowed_tools:
- Read
- Write
- Edit
required_permission_mode: edit
instruction_template: |
{task}

View File

@ -11,10 +11,12 @@ movements:
- name: execute
edit: true
persona: ../agents/test-reporter.md
allowed_tools:
- Read
- Write
- Edit
provider_options:
claude:
allowed_tools:
- Read
- Write
- Edit
required_permission_mode: edit
output_contracts:
report:

View File

@ -11,10 +11,12 @@ movements:
- name: execute
edit: true
persona: ../agents/test-coder.md
allowed_tools:
- Read
- Write
- Edit
provider_options:
claude:
allowed_tools:
- Read
- Write
- Edit
required_permission_mode: edit
instruction_template: |
{task}

View File

@ -25,8 +25,10 @@ describe('E2E: Codex permission mode readonly/full', () => {
'movements:',
' - name: write_check',
' agent: codex',
' allowed_tools:',
' - Bash',
' provider_options:',
' claude:',
' allowed_tools:',
' - Bash',
' required_permission_mode: readonly',
' instruction_template: |',
' Run this exact command in repository root:',

View File

@ -32,10 +32,12 @@ function writeMinimalPiece(piecePath: string): void {
' - name: execute',
' edit: true',
' persona: ../agents/test-coder.md',
' allowed_tools:',
' - Read',
' - Write',
' - Edit',
' provider_options:',
' claude:',
' allowed_tools:',
' - Read',
' - Write',
' - Edit',
' required_permission_mode: edit',
' instruction_template: |',
' {task}',

View File

@ -78,9 +78,11 @@ describe('E2E: runtime.prepare with provider', () => {
' - name: execute',
' edit: false',
' persona: ../fixtures/agents/test-coder.md',
' allowed_tools:',
' - Read',
' - Bash',
' provider_options:',
' claude:',
' allowed_tools:',
' - Read',
' - Bash',
' required_permission_mode: edit',
' instruction_template: |',
' {task}',

View File

@ -7,6 +7,7 @@ describe('denormalizeProviderOptions', () => {
codex: { networkAccess: true },
opencode: { networkAccess: false },
claude: {
allowedTools: ['Read', 'Edit'],
sandbox: {
allowUnsandboxedCommands: true,
excludedCommands: ['npm test'],
@ -18,6 +19,7 @@ describe('denormalizeProviderOptions', () => {
codex: { network_access: true },
opencode: { network_access: false },
claude: {
allowed_tools: ['Read', 'Edit'],
sandbox: {
allow_unsandboxed_commands: true,
excluded_commands: ['npm test'],
@ -33,4 +35,14 @@ describe('denormalizeProviderOptions', () => {
expect(result).toBeUndefined();
});
it('should persist claude allowedTools even when sandbox is omitted', () => {
const result = denormalizeProviderOptions({
claude: { allowedTools: ['Read', 'Bash'] },
});
expect(result).toEqual({
claude: { allowed_tools: ['Read', 'Bash'] },
});
});
});

View File

@ -133,4 +133,38 @@ describe('PieceEngine provider_options resolution', () => {
codex: { networkAccess: true },
});
});
it('should propagate merged claude allowedTools to runAgent options.allowedTools', async () => {
const movement = makeMovement('implement', {
providerOptions: {
claude: { allowedTools: ['Read', 'Edit', 'Bash'] },
},
rules: [makeRule('done', 'COMPLETE')],
});
const config: PieceConfig = {
name: 'provider-options-allowed-tools',
movements: [movement],
initialMovement: 'implement',
maxMovements: 1,
};
mockRunAgentSequence([
makeResponse({ persona: movement.persona, content: 'done' }),
]);
mockDetectMatchedRuleSequence([{ index: 0, method: 'phase1_tag' }]);
engine = new PieceEngine(config, tmpDir, 'test task', {
projectCwd: tmpDir,
provider: 'claude',
providerOptions: {
claude: { allowedTools: ['Read', 'Glob'] },
},
});
await engine.run();
const options = vi.mocked(runAgent).mock.calls[0]?.[2];
expect(options?.allowedTools).toEqual(['Read', 'Edit', 'Bash']);
});
});

View File

@ -529,10 +529,12 @@ movements:
playwright:
command: npx
args: ["-y", "@anthropic-ai/mcp-server-playwright"]
allowed_tools:
- Read
- Bash
- mcp__playwright__*
provider_options:
claude:
allowed_tools:
- Read
- Bash
- mcp__playwright__*
rules:
- condition: Done
next: COMPLETE

View File

@ -8,6 +8,7 @@ import {
StatusSchema,
PermissionModeSchema,
PieceConfigRawSchema,
PieceMovementRawSchema,
McpServerConfigSchema,
CustomAgentConfigSchema,
GlobalConfigSchema,
@ -69,7 +70,11 @@ describe('PieceConfigRawSchema', () => {
{
name: 'step1',
persona: 'coder',
allowed_tools: ['Read', 'Grep'],
provider_options: {
claude: {
allowed_tools: ['Read', 'Grep'],
},
},
instruction: '{task}',
rules: [
{ condition: 'Task completed', next: 'COMPLETE' },
@ -81,7 +86,11 @@ describe('PieceConfigRawSchema', () => {
const result = PieceConfigRawSchema.parse(config);
expect(result.name).toBe('test-piece');
expect(result.movements).toHaveLength(1);
expect(result.movements![0]?.allowed_tools).toEqual(['Read', 'Grep']);
expect(result.movements![0]?.provider_options).toEqual({
claude: {
allowed_tools: ['Read', 'Grep'],
},
});
expect(result.max_movements).toBe(10);
});
@ -92,7 +101,11 @@ describe('PieceConfigRawSchema', () => {
{
name: 'implement',
persona: 'coder',
allowed_tools: ['Read', 'Edit', 'Write', 'Bash'],
provider_options: {
claude: {
allowed_tools: ['Read', 'Edit', 'Write', 'Bash'],
},
},
required_permission_mode: 'edit',
instruction: '{task}',
rules: [
@ -340,7 +353,11 @@ describe('PieceConfigRawSchema', () => {
args: ['-y', '@anthropic-ai/mcp-server-playwright'],
},
},
allowed_tools: ['mcp__playwright__*'],
provider_options: {
claude: {
allowed_tools: ['mcp__playwright__*'],
},
},
instruction: '{task}',
},
],
@ -462,6 +479,18 @@ describe('PieceConfigRawSchema', () => {
expect(() => PieceConfigRawSchema.parse(config)).toThrow();
});
it('should reject movement-level allowed_tools', () => {
const movement = {
name: 'step1',
persona: 'coder',
allowed_tools: ['Read'],
instruction: '{task}',
};
const result = PieceMovementRawSchema.safeParse(movement);
expect(result.success).toBe(false);
});
});
describe('McpServerConfigSchema', () => {

View File

@ -263,6 +263,34 @@ describe('option resolution order', () => {
);
});
it('should use custom agent allowedTools when run options do not provide allowedTools', async () => {
loadProjectConfigMock.mockReturnValue({ provider: 'claude' });
loadCustomAgentsMock.mockReturnValue(new Map([
['custom', { name: 'custom', prompt: 'agent prompt', allowedTools: ['Read', 'Grep'] }],
]));
await runAgent('custom', 'task', { cwd: '/repo' });
expect(providerCallMock).toHaveBeenLastCalledWith(
'task',
expect.objectContaining({ allowedTools: ['Read', 'Grep'] }),
);
});
it('should prioritize run options allowedTools over custom agent allowedTools', async () => {
loadProjectConfigMock.mockReturnValue({ provider: 'claude' });
loadCustomAgentsMock.mockReturnValue(new Map([
['custom', { name: 'custom', prompt: 'agent prompt', allowedTools: ['Read', 'Grep'] }],
]));
await runAgent('custom', 'task', { cwd: '/repo', allowedTools: ['Write'] });
expect(providerCallMock).toHaveBeenLastCalledWith(
'task',
expect.objectContaining({ allowedTools: ['Write'] }),
);
});
it('should resolve permission mode after provider resolution using provider profiles', async () => {
loadProjectConfigMock.mockReturnValue({});
loadGlobalConfigMock.mockReturnValue({

View File

@ -89,14 +89,17 @@ describe('OptionsBuilder.buildBaseOptions', () => {
const step = createMovement({
providerOptions: {
codex: { networkAccess: false },
claude: { sandbox: { excludedCommands: ['./gradlew'] } },
claude: {
sandbox: { excludedCommands: ['./gradlew'] },
allowedTools: ['Read', 'Edit', 'Bash'],
},
},
});
const builder = createBuilder(step, {
providerOptionsSource: 'project',
providerOptions: {
codex: { networkAccess: true },
claude: { sandbox: { allowUnsandboxedCommands: true } },
claude: { sandbox: { allowUnsandboxedCommands: true }, allowedTools: ['Read', 'Glob'] },
opencode: { networkAccess: true },
},
});
@ -111,6 +114,7 @@ describe('OptionsBuilder.buildBaseOptions', () => {
excludedCommands: ['./gradlew'],
allowUnsandboxedCommands: true,
},
allowedTools: ['Read', 'Edit', 'Bash'],
},
});
});
@ -227,3 +231,43 @@ describe('OptionsBuilder.buildResumeOptions', () => {
expect(options.sessionId).toBe('session-123');
});
});
describe('OptionsBuilder.buildAgentOptions', () => {
it('uses merged providerOptions.claude.allowedTools when movement.allowedTools is absent', () => {
// Given
const step = createMovement({
providerOptions: {
claude: { allowedTools: ['Read', 'Edit', 'Bash'] },
},
});
const builder = createBuilder(step, {
providerOptions: {
claude: { allowedTools: ['Read', 'Glob'] },
},
});
// When
const options = builder.buildAgentOptions(step);
// Then
expect(options.allowedTools).toEqual(['Read', 'Edit', 'Bash']);
});
it('removes Write when output contracts exist and edit is not enabled', () => {
// Given
const step = createMovement({
outputContracts: [{ name: 'report.md', format: 'markdown', useJudge: true }],
providerOptions: {
claude: { allowedTools: ['Read', 'Write', 'Bash'] },
},
edit: false,
});
const builder = createBuilder(step);
// When
const options = builder.buildAgentOptions(step);
// Then
expect(options.allowedTools).toEqual(['Read', 'Bash']);
});
});

View File

@ -37,7 +37,11 @@ describe('ParallelSubMovementRawSchema', () => {
name: 'full-sub-step',
persona: '~/.takt/agents/default/coder.md',
persona_name: 'Coder',
allowed_tools: ['Read', 'Grep'],
provider_options: {
claude: {
allowed_tools: ['Read', 'Grep'],
},
},
model: 'haiku',
edit: false,
instruction_template: 'Do work',
@ -49,7 +53,7 @@ describe('ParallelSubMovementRawSchema', () => {
expect(result.success).toBe(true);
if (result.success) {
expect(result.data.persona_name).toBe('Coder');
expect(result.data.allowed_tools).toEqual(['Read', 'Grep']);
expect(result.data.provider_options?.claude?.allowed_tools).toEqual(['Read', 'Grep']);
expect(result.data.edit).toBe(false);
}
});
@ -100,6 +104,17 @@ describe('ParallelSubMovementRawSchema', () => {
expect(result.data.rules).toHaveLength(2);
}
});
it('should reject movement-level allowed_tools on sub-movement', () => {
const raw = {
name: 'invalid-sub-step',
allowed_tools: ['Read'],
instruction_template: 'Review',
};
const result = ParallelSubMovementRawSchema.safeParse(raw);
expect(result.success).toBe(false);
});
});
describe('PieceMovementRawSchema with parallel', () => {

View File

@ -181,9 +181,11 @@ movements:
description: Planning
persona: Plan the task
instruction: "Create a plan for {task}"
allowed_tools:
- Read
- Glob
provider_options:
claude:
allowed_tools:
- Read
- Glob
rules:
- condition: plan complete
next: implement
@ -192,10 +194,12 @@ movements:
persona: Implement the code
instruction: "Implement according to plan"
edit: true
allowed_tools:
- Read
- Edit
- Bash
provider_options:
claude:
allowed_tools:
- Read
- Edit
- Bash
rules:
- condition: done
next: review
@ -658,9 +662,11 @@ movements:
persona: You are a planner.
persona_name: Planner
instruction: "Plan the task"
allowed_tools:
- Read
- Glob
provider_options:
claude:
allowed_tools:
- Read
- Glob
`;
const piecePath = join(tempDir, 'test-first.yaml');

View File

@ -93,6 +93,46 @@ describe('normalizePieceConfig provider_options', () => {
});
});
it('claude allowed_tools を piece-level で設定し movement で上書きできる', () => {
const raw = {
name: 'claude-allowed-tools',
piece_config: {
provider_options: {
claude: {
allowed_tools: ['Read', 'Glob'],
},
},
},
movements: [
{
name: 'inherit',
instruction: '{task}',
},
{
name: 'override',
provider_options: {
claude: {
allowed_tools: ['Read', 'Edit', 'Bash'],
},
},
instruction: '{task}',
},
],
};
const config = normalizePieceConfig(raw, process.cwd());
expect(config.providerOptions).toEqual({
claude: { allowedTools: ['Read', 'Glob'] },
});
expect(config.movements[0]?.providerOptions).toEqual({
claude: { allowedTools: ['Read', 'Glob'] },
});
expect(config.movements[1]?.providerOptions).toEqual({
claude: { allowedTools: ['Read', 'Edit', 'Bash'] },
});
});
it('piece-level runtime.prepare を正規化し重複を除去する', () => {
const raw = {
name: 'runtime-prepare',
@ -306,20 +346,27 @@ describe('normalizePieceConfig provider_options', () => {
describe('mergeProviderOptions', () => {
it('複数層を正しくマージする(後の層が優先)', () => {
const global = {
claude: { sandbox: { allowUnsandboxedCommands: false, excludedCommands: ['./gradlew'] } },
claude: {
sandbox: { allowUnsandboxedCommands: false, excludedCommands: ['./gradlew'] },
allowedTools: ['Read'],
},
codex: { networkAccess: true },
};
const local = {
claude: { sandbox: { allowUnsandboxedCommands: true } },
};
const step = {
claude: { allowedTools: ['Read', 'Edit'] },
codex: { networkAccess: false },
};
const result = mergeProviderOptions(global, local, step);
expect(result).toEqual({
claude: { sandbox: { allowUnsandboxedCommands: true, excludedCommands: ['./gradlew'] } },
claude: {
sandbox: { allowUnsandboxedCommands: true, excludedCommands: ['./gradlew'] },
allowedTools: ['Read', 'Edit'],
},
codex: { networkAccess: false },
});
});

View File

@ -63,19 +63,21 @@ describe('detectEditPieces', () => {
expect(detectEditPieces([])).toEqual([]);
});
it('should return empty array when piece has edit: false, no allowed_tools, and no required_permission_mode', () => {
it('should return empty array when piece has edit: false, no provider_options.claude.allowed_tools, and no required_permission_mode', () => {
const pieces = [
{ name: 'simple.yaml', content: 'movements:\n - name: run\n edit: false\n' },
];
expect(detectEditPieces(pieces)).toEqual([]);
});
it('should detect piece with edit: true and collect allowed_tools', () => {
it('should detect piece with edit: true and collect provider_options.claude.allowed_tools', () => {
const content = `
movements:
- name: implement
edit: true
allowed_tools: [Bash, Write, Edit]
provider_options:
claude:
allowed_tools: [Bash, Write, Edit]
`.trim();
const result = detectEditPieces([{ name: 'coder.yaml', content }]);
expect(result).toHaveLength(1);
@ -84,15 +86,19 @@ movements:
expect(result[0]!.allowedTools).toHaveLength(3);
});
it('should merge allowed_tools from multiple edit movements', () => {
it('should merge provider_options.claude.allowed_tools from multiple edit movements', () => {
const content = `
movements:
- name: implement
edit: true
allowed_tools: [Bash, Write]
provider_options:
claude:
allowed_tools: [Bash, Write]
- name: fix
edit: true
allowed_tools: [Edit, Bash]
provider_options:
claude:
allowed_tools: [Edit, Bash]
`.trim();
const result = detectEditPieces([{ name: 'coder.yaml', content }]);
expect(result).toHaveLength(1);
@ -100,7 +106,7 @@ movements:
expect(result[0]!.allowedTools).toHaveLength(3);
});
it('should detect piece with edit: true and no allowed_tools', () => {
it('should detect piece with edit: true and no provider_options.claude.allowed_tools', () => {
const content = `
movements:
- name: implement
@ -133,7 +139,7 @@ movements:
const pieces = [
{
name: 'coder.yaml',
content: 'movements:\n - name: impl\n edit: true\n allowed_tools: [Write]\n',
content: 'movements:\n - name: impl\n edit: true\n provider_options:\n claude:\n allowed_tools: [Write]\n',
},
{
name: 'reviewer.yaml',
@ -141,7 +147,7 @@ movements:
},
{
name: 'fixer.yaml',
content: 'movements:\n - name: fix\n edit: true\n allowed_tools: [Edit]\n',
content: 'movements:\n - name: fix\n edit: true\n provider_options:\n claude:\n allowed_tools: [Edit]\n',
},
];
const result = detectEditPieces(pieces);
@ -150,7 +156,7 @@ movements:
});
it('should set hasEdit: true for pieces with edit: true', () => {
const content = 'movements:\n - name: impl\n edit: true\n allowed_tools: [Write]\n';
const content = 'movements:\n - name: impl\n edit: true\n provider_options:\n claude:\n allowed_tools: [Write]\n';
const result = detectEditPieces([{ name: 'coder.yaml', content }]);
expect(result).toHaveLength(1);
expect(result[0]!.hasEdit).toBe(true);
@ -176,7 +182,9 @@ movements:
movements:
- name: implement
edit: true
allowed_tools: [Write, Edit]
provider_options:
claude:
allowed_tools: [Write, Edit]
- name: plan
required_permission_mode: bypassPermissions
`.trim();
@ -200,17 +208,19 @@ movements:
expect(result[0]!.requiredPermissionModes).toEqual(['bypassPermissions']);
});
it('should return empty array when piece has edit: false, empty allowed_tools, and no required_permission_mode', () => {
it('should return empty array when piece has edit: false, empty provider_options.claude.allowed_tools, and no required_permission_mode', () => {
const content = 'movements:\n - name: review\n edit: false\n';
expect(detectEditPieces([{ name: 'reviewer.yaml', content }])).toEqual([]);
});
it('should detect piece with edit: false and non-empty allowed_tools', () => {
it('should detect piece with edit: false and non-empty provider_options.claude.allowed_tools', () => {
const content = `
movements:
- name: run
edit: false
allowed_tools: [Bash]
provider_options:
claude:
allowed_tools: [Bash]
`.trim();
const result = detectEditPieces([{ name: 'runner.yaml', content }]);
expect(result).toHaveLength(1);
@ -220,12 +230,34 @@ movements:
expect(result[0]!.requiredPermissionModes).toEqual([]);
});
it('should exclude piece with edit: false and empty allowed_tools', () => {
it('should detect piece using piece_config provider_options.claude.allowed_tools when movement does not define tools', () => {
const content = `
piece_config:
provider_options:
claude:
allowed_tools: [Read, Grep]
movements:
- name: plan
edit: false
- name: supervise
edit: true
`.trim();
const result = detectEditPieces([{ name: 'piece-level.yaml', content }]);
expect(result).toHaveLength(1);
expect(result[0]!.name).toBe('piece-level.yaml');
expect(result[0]!.hasEdit).toBe(true);
expect(result[0]!.allowedTools).toEqual(expect.arrayContaining(['Read', 'Grep']));
expect(result[0]!.allowedTools).toHaveLength(2);
});
it('should exclude piece with edit: false and empty provider_options.claude.allowed_tools', () => {
const content = `
movements:
- name: run
edit: false
allowed_tools: []
provider_options:
claude:
allowed_tools: []
`.trim();
expect(detectEditPieces([{ name: 'runner.yaml', content }])).toEqual([]);
});
@ -250,7 +282,7 @@ movements:
// ---------------------------------------------------------------------------
describe('formatEditPieceWarnings', () => {
it('should format edit:true warning without allowed_tools', () => {
it('should format edit:true warning without provider_options.claude.allowed_tools', () => {
const warnings = formatEditPieceWarnings({
name: 'piece.yaml',
hasEdit: true,
@ -260,27 +292,27 @@ describe('formatEditPieceWarnings', () => {
expect(warnings).toEqual(['\n ⚠ piece.yaml: edit: true']);
});
it('should format edit:true warning with allowed_tools appended inline', () => {
it('should format edit:true warning with provider_options.claude.allowed_tools appended inline', () => {
const warnings = formatEditPieceWarnings({
name: 'piece.yaml',
hasEdit: true,
allowedTools: ['Bash', 'Edit'],
requiredPermissionModes: [],
});
expect(warnings).toEqual(['\n ⚠ piece.yaml: edit: true, allowed_tools: [Bash, Edit]']);
expect(warnings).toEqual(['\n ⚠ piece.yaml: edit: true, provider_options.claude.allowed_tools: [Bash, Edit]']);
});
it('should format allowed_tools-only warning when edit:false', () => {
it('should format provider_options.claude.allowed_tools-only warning when edit:false', () => {
const warnings = formatEditPieceWarnings({
name: 'runner.yaml',
hasEdit: false,
allowedTools: ['Bash'],
requiredPermissionModes: [],
});
expect(warnings).toEqual(['\n ⚠ runner.yaml: allowed_tools: [Bash]']);
expect(warnings).toEqual(['\n ⚠ runner.yaml: provider_options.claude.allowed_tools: [Bash]']);
});
it('should return empty array when edit:false and no allowed_tools and no required_permission_mode', () => {
it('should return empty array when edit:false and no provider_options.claude.allowed_tools and no required_permission_mode', () => {
const warnings = formatEditPieceWarnings({
name: 'review.yaml',
hasEdit: false,
@ -300,7 +332,7 @@ describe('formatEditPieceWarnings', () => {
expect(warnings).toEqual(['\n ⚠ planner.yaml: required_permission_mode: bypassPermissions']);
});
it('should combine allowed_tools and required_permission_mode warnings when edit:false', () => {
it('should combine provider_options.claude.allowed_tools and required_permission_mode warnings when edit:false', () => {
const warnings = formatEditPieceWarnings({
name: 'combo.yaml',
hasEdit: false,
@ -308,7 +340,7 @@ describe('formatEditPieceWarnings', () => {
requiredPermissionModes: ['bypassPermissions'],
});
expect(warnings).toEqual([
'\n ⚠ combo.yaml: allowed_tools: [Bash]',
'\n ⚠ combo.yaml: provider_options.claude.allowed_tools: [Bash]',
'\n ⚠ combo.yaml: required_permission_mode: bypassPermissions',
]);
});

View File

@ -5,7 +5,7 @@
* - Piece YAML files (EN/JA) load and pass schema validation
* - Piece structure: gather -> reviewers (parallel 5) -> supervise -> COMPLETE
* - All movements have edit: false
* - All 5 reviewers have Bash in allowed_tools
* - All 5 reviewers have Bash in provider_options.claude.allowed_tools
* - Routing rules for gather and reviewers
*/
@ -112,10 +112,10 @@ describe('review piece (EN)', () => {
}
});
it('should have Bash in allowed_tools for all 5 reviewers', () => {
it('should have Bash in provider_options.claude.allowed_tools for all 5 reviewers', () => {
const reviewers = raw.movements.find((s: { name: string }) => s.name === 'reviewers');
for (const sub of reviewers.parallel) {
expect(sub.allowed_tools).toContain('Bash');
expect(sub.provider_options?.claude?.allowed_tools).toContain('Bash');
}
});
@ -169,10 +169,10 @@ describe('review piece (JA)', () => {
}
});
it('should have Bash in allowed_tools for all 5 reviewers', () => {
it('should have Bash in provider_options.claude.allowed_tools for all 5 reviewers', () => {
const reviewers = raw.movements.find((s: { name: string }) => s.name === 'reviewers');
for (const sub of reviewers.parallel) {
expect(sub.allowed_tools).toContain('Bash');
expect(sub.provider_options?.claude?.allowed_tools).toContain('Bash');
}
});

View File

@ -0,0 +1,38 @@
import { describe, expect, it } from 'vitest';
import type { PartDefinition, PieceMovement } from '../core/models/types.js';
import { createPartMovement } from '../core/piece/engine/team-leader-common.js';
describe('createPartMovement', () => {
it('uses step.providerOptions.claude.allowedTools when part_allowed_tools is omitted', () => {
// Given
const step: PieceMovement = {
name: 'implement',
persona: 'coder',
personaDisplayName: 'Coder',
instructionTemplate: 'do work',
passPreviousResponse: false,
providerOptions: {
claude: {
allowedTools: ['Read', 'Edit', 'Bash'],
},
},
teamLeader: {
persona: 'leader',
maxParts: 3,
refillThreshold: 0,
timeoutMs: 600000,
},
};
const part: PartDefinition = {
id: 'part-1',
title: 'API',
instruction: 'implement api',
};
// When
const partMovement = createPartMovement(step, part);
// Then
expect(partMovement.providerOptions?.claude?.allowedTools).toEqual(['Read', 'Edit', 'Bash']);
});
});

View File

@ -101,7 +101,6 @@ export class AgentRunner {
options: RunAgentOptions,
localConfig: ReturnType<typeof loadProjectConfig>,
globalConfig: ReturnType<typeof loadGlobalConfig>,
agentConfig?: CustomAgentConfig,
): ProviderCallOptions {
const permissionMode = AgentRunner.resolvePermissionMode(
resolvedProvider,
@ -114,7 +113,7 @@ export class AgentRunner {
cwd: options.cwd,
abortSignal: options.abortSignal,
sessionId: options.sessionId,
allowedTools: options.allowedTools ?? agentConfig?.allowedTools,
allowedTools: options.allowedTools,
mcpServers: options.mcpServers,
maxTurns: options.maxTurns,
model: resolvedModel,
@ -174,13 +173,17 @@ export class AgentRunner {
claudeSkill: agentConfig.claudeSkill,
});
const customOptions: RunAgentOptions = {
...options,
allowedTools: options.allowedTools ?? agentConfig.allowedTools,
};
return agent.call(task, AgentRunner.buildCallOptions(
resolved.model,
providerType,
options,
customOptions,
resolved.localConfig,
resolved.globalConfig,
agentConfig,
));
}

View File

@ -107,6 +107,7 @@ export interface ClaudeSandboxSettings {
/** Claude provider-specific options */
export interface ClaudeProviderOptions {
allowedTools?: string[];
sandbox?: ClaudeSandboxSettings;
}
@ -128,8 +129,6 @@ export interface PieceMovement {
session?: 'continue' | 'refresh';
/** Display name for the persona (shown in output). Falls back to persona basename if not specified */
personaDisplayName: string;
/** Allowed tools for this movement (optional, passed to agent execution) */
allowedTools?: string[];
/** MCP servers configuration for this movement */
mcpServers?: Record<string, McpServerConfig>;
/** Resolved absolute path to persona prompt file (set by loader) */

View File

@ -74,6 +74,7 @@ export const MovementProviderOptionsSchema = z.object({
network_access: z.boolean().optional(),
}).optional(),
claude: z.object({
allowed_tools: z.array(z.string()).optional(),
sandbox: ClaudeSandboxSchema,
}).optional(),
}).optional();
@ -303,7 +304,7 @@ export const ParallelSubMovementRawSchema = z.object({
policy: z.union([z.string(), z.array(z.string())]).optional(),
/** Knowledge reference(s) — key name(s) from piece-level knowledge map */
knowledge: z.union([z.string(), z.array(z.string())]).optional(),
allowed_tools: z.array(z.string()).optional(),
allowed_tools: z.never().optional(),
mcp_servers: McpServersSchema,
provider: ProviderReferenceSchema.optional(),
model: z.string().optional(),
@ -336,7 +337,7 @@ export const PieceMovementRawSchema = z.object({
policy: z.union([z.string(), z.array(z.string())]).optional(),
/** Knowledge reference(s) — key name(s) from piece-level knowledge map */
knowledge: z.union([z.string(), z.array(z.string())]).optional(),
allowed_tools: z.array(z.string()).optional(),
allowed_tools: z.never().optional(),
mcp_servers: McpServersSchema,
provider: ProviderReferenceSchema.optional(),
model: z.string().optional(),

View File

@ -19,9 +19,12 @@ function mergeProviderOptions(
if (layer.opencode) {
result.opencode = { ...result.opencode, ...layer.opencode };
}
if (layer.claude?.sandbox) {
if (layer.claude?.sandbox || layer.claude?.allowedTools) {
result.claude = {
sandbox: { ...result.claude?.sandbox, ...layer.claude.sandbox },
sandbox: layer.claude.sandbox
? { ...result.claude?.sandbox, ...layer.claude.sandbox }
: result.claude?.sandbox,
allowedTools: layer.claude.allowedTools ?? result.claude?.allowedTools,
};
}
}
@ -64,7 +67,7 @@ export class OptionsBuilder {
}
/** Build common RunAgentOptions shared by all phases */
buildBaseOptions(step: PieceMovement): RunAgentOptions {
buildBaseOptions(step: PieceMovement, mergedProviderOptions?: MovementProviderOptions): RunAgentOptions {
const movements = this.getPieceMovements();
const currentIndex = movements.findIndex((m) => m.name === step.name);
const currentPosition = currentIndex >= 0 ? `${currentIndex + 1}/${movements.length}` : '?/?';
@ -83,7 +86,7 @@ export class OptionsBuilder {
requiredPermissionMode: step.requiredPermissionMode,
providerProfiles: this.engineOptions.providerProfiles,
},
providerOptions: resolveMovementProviderOptions(
providerOptions: mergedProviderOptions ?? resolveMovementProviderOptions(
this.engineOptions.providerOptionsSource,
this.engineOptions.providerOptions,
step.providerOptions,
@ -105,19 +108,26 @@ export class OptionsBuilder {
/** Build RunAgentOptions for Phase 1 (main execution) */
buildAgentOptions(step: PieceMovement): RunAgentOptions {
const mergedProviderOptions = resolveMovementProviderOptions(
this.engineOptions.providerOptionsSource,
this.engineOptions.providerOptions,
step.providerOptions,
);
// Phase 1: exclude Write from allowedTools when movement has output contracts AND edit is NOT enabled
// (If edit is enabled, Write is needed for code implementation even if output contracts exist)
// Note: edit defaults to undefined, so check !== true to catch both false and undefined
const hasOutputContracts = step.outputContracts && step.outputContracts.length > 0;
const resolvedAllowedTools = mergedProviderOptions?.claude?.allowedTools;
const allowedTools = hasOutputContracts && step.edit !== true
? step.allowedTools?.filter((t) => t !== 'Write')
: step.allowedTools;
? resolvedAllowedTools?.filter((t) => t !== 'Write')
: resolvedAllowedTools;
// Skip session resume when cwd !== projectCwd (worktree execution) to avoid cross-directory contamination
const shouldResumeSession = step.session !== 'refresh' && this.getCwd() === this.getProjectCwd();
return {
...this.buildBaseOptions(step),
...this.buildBaseOptions(step, mergedProviderOptions),
sessionId: shouldResumeSession ? this.getSessionId(buildSessionKey(step)) : undefined,
allowedTools,
mcpServers: step.mcpServers,

View File

@ -518,13 +518,17 @@ export class PieceEngine extends EventEmitter {
personaPath: monitor.judge.personaPath,
personaDisplayName: 'loop-judge',
edit: false,
providerOptions: {
claude: {
allowedTools: ['Read', 'Glob', 'Grep'],
},
},
instructionTemplate: processedTemplate,
rules: monitor.judge.rules.map((r) => ({
condition: r.condition,
next: r.next,
})),
passPreviousResponse: true,
allowedTools: ['Read', 'Glob', 'Grep'],
};
log.info('Running loop monitor judge', {

View File

@ -21,6 +21,17 @@ export function createPartMovement(step: PieceMovement, part: PartDefinition): P
throw new Error(`Movement "${step.name}" has no teamLeader configuration`);
}
const partAllowedTools = step.teamLeader.partAllowedTools ?? step.providerOptions?.claude?.allowedTools;
const partProviderOptions = partAllowedTools
? {
...step.providerOptions,
claude: {
...step.providerOptions?.claude,
allowedTools: partAllowedTools,
},
}
: step.providerOptions;
return {
name: `${step.name}.${part.id}`,
description: part.title,
@ -28,7 +39,7 @@ export function createPartMovement(step: PieceMovement, part: PartDefinition): P
personaPath: step.teamLeader.partPersonaPath ?? step.personaPath,
personaDisplayName: `${step.name}:${part.id}`,
session: 'refresh',
allowedTools: step.teamLeader.partAllowedTools ?? step.allowedTools,
providerOptions: partProviderOptions,
mcpServers: step.mcpServers,
provider: step.provider,
model: step.model,

View File

@ -41,7 +41,7 @@ export function summarizeFacetsByType(facetRelativePaths: string[]): string {
*
* A movement is considered permission-relevant when any of:
* - `edit: true` is set
* - `allowed_tools` has at least one entry
* - `provider_options.claude.allowed_tools` has at least one entry
* - `required_permission_mode` is set
*
* @param pieceYamls - Pre-read YAML content pairs. Invalid YAML is skipped (debug-logged).
@ -49,7 +49,16 @@ export function summarizeFacetsByType(facetRelativePaths: string[]): string {
export function detectEditPieces(pieceYamls: Array<{ name: string; content: string }>): EditPieceInfo[] {
const result: EditPieceInfo[] = [];
for (const { name, content } of pieceYamls) {
let raw: { movements?: { edit?: boolean; allowed_tools?: string[]; required_permission_mode?: string }[] } | null;
let raw: {
piece_config?: {
provider_options?: { claude?: { allowed_tools?: string[] } };
};
movements?: {
edit?: boolean;
provider_options?: { claude?: { allowed_tools?: string[] } };
required_permission_mode?: string;
}[];
} | null;
try {
raw = parseYaml(content) as typeof raw;
} catch (e) {
@ -57,15 +66,19 @@ export function detectEditPieces(pieceYamls: Array<{ name: string; content: stri
continue;
}
const movements = raw?.movements ?? [];
const pieceAllowedTools = raw?.piece_config?.provider_options?.claude?.allowed_tools;
const resolveAllowedTools = (movement: typeof movements[number]): string[] =>
movement.provider_options?.claude?.allowed_tools ?? pieceAllowedTools ?? [];
const hasEditMovement = movements.some(m => m.edit === true);
const hasToolMovements = movements.some(m => (m.allowed_tools?.length ?? 0) > 0);
const hasToolMovements = movements.some(m => resolveAllowedTools(m).length > 0);
const hasPermissionMovements = movements.some(m => m.required_permission_mode != null);
if (!hasEditMovement && !hasToolMovements && !hasPermissionMovements) continue;
const allTools = new Set<string>();
for (const m of movements) {
if (m.allowed_tools) {
for (const t of m.allowed_tools) allTools.add(t);
for (const t of resolveAllowedTools(m)) {
allTools.add(t);
}
}
const requiredPermissionModes: string[] = [];
@ -89,15 +102,17 @@ export function detectEditPieces(pieceYamls: Array<{ name: string; content: stri
/**
* Format warning lines for a single permission-relevant piece.
* Returns one line per warning (edit, allowed_tools, required_permission_mode).
* Returns one line per warning (edit, provider_options.claude.allowed_tools, required_permission_mode).
*/
export function formatEditPieceWarnings(ep: EditPieceInfo): string[] {
const warnings: string[] = [];
if (ep.hasEdit) {
const toolStr = ep.allowedTools.length > 0 ? `, allowed_tools: [${ep.allowedTools.join(', ')}]` : '';
const toolStr = ep.allowedTools.length > 0
? `, provider_options.claude.allowed_tools: [${ep.allowedTools.join(', ')}]`
: '';
warnings.push(`\n ⚠ ${ep.name}: edit: true${toolStr}`);
} else if (ep.allowedTools.length > 0) {
warnings.push(`\n ⚠ ${ep.name}: allowed_tools: [${ep.allowedTools.join(', ')}]`);
warnings.push(`\n ⚠ ${ep.name}: provider_options.claude.allowed_tools: [${ep.allowedTools.join(', ')}]`);
}
for (const mode of ep.requiredPermissionModes) {
warnings.push(`\n ⚠ ${ep.name}: required_permission_mode: ${mode}`);

View File

@ -142,16 +142,23 @@ export function denormalizeProviderOptions(
if (providerOptions.opencode?.networkAccess !== undefined) {
raw.opencode = { network_access: providerOptions.opencode.networkAccess };
}
if (providerOptions.claude?.sandbox) {
if (providerOptions.claude) {
const claude: Record<string, unknown> = {};
if (providerOptions.claude.allowedTools !== undefined) {
claude.allowed_tools = providerOptions.claude.allowedTools;
}
const sandbox: Record<string, unknown> = {};
if (providerOptions.claude.sandbox.allowUnsandboxedCommands !== undefined) {
if (providerOptions.claude.sandbox?.allowUnsandboxedCommands !== undefined) {
sandbox.allow_unsandboxed_commands = providerOptions.claude.sandbox.allowUnsandboxedCommands;
}
if (providerOptions.claude.sandbox.excludedCommands !== undefined) {
if (providerOptions.claude.sandbox?.excludedCommands !== undefined) {
sandbox.excluded_commands = providerOptions.claude.sandbox.excludedCommands;
}
if (Object.keys(sandbox).length > 0) {
raw.claude = { sandbox };
claude.sandbox = sandbox;
}
if (Object.keys(claude).length > 0) {
raw.claude = claude;
}
}

View File

@ -267,7 +267,6 @@ function normalizeStepFromRaw(
session: step.session,
personaDisplayName: displayName || (personaSpec ? extractPersonaDisplayName(personaSpec) : step.name),
personaPath,
allowedTools: step.allowed_tools,
mcpServers: step.mcp_servers,
provider: normalizedProvider.provider ?? inheritedProvider,
model: normalizedProvider.model ?? (normalizedProvider.providerSpecified ? undefined : inheritedModel),

View File

@ -230,7 +230,7 @@ function buildMovementPreviews(piece: PieceConfig, maxCount: number): MovementPr
personaDisplayName: movement.personaDisplayName,
personaContent: readMovementPersona(movement),
instructionContent: movement.instructionTemplate,
allowedTools: movement.allowedTools ?? [],
allowedTools: movement.providerOptions?.claude?.allowedTools ?? [],
canEdit: movement.edit === true,
});
@ -321,7 +321,7 @@ function buildFirstMovementInfo(piece: PieceConfig): FirstMovementInfo | undefin
return {
personaContent: readMovementPersona(movement),
personaDisplayName: movement.personaDisplayName,
allowedTools: movement.allowedTools ?? [],
allowedTools: movement.providerOptions?.claude?.allowedTools ?? [],
};
}

View File

@ -8,6 +8,7 @@ type RawProviderOptions = {
network_access?: boolean;
};
claude?: {
allowed_tools?: string[];
sandbox?: {
allow_unsandboxed_commands?: boolean;
excluded_commands?: string[];
@ -31,17 +32,22 @@ export function normalizeProviderOptions(
if (options.opencode?.network_access !== undefined) {
result.opencode = { networkAccess: options.opencode.network_access };
}
if (options.claude?.sandbox) {
result.claude = {
sandbox: {
if (options.claude?.allowed_tools !== undefined || options.claude?.sandbox) {
const claude: NonNullable<MovementProviderOptions['claude']> = {};
if (options.claude.allowed_tools !== undefined) {
claude.allowedTools = options.claude.allowed_tools;
}
if (options.claude.sandbox) {
claude.sandbox = {
...(options.claude.sandbox.allow_unsandboxed_commands !== undefined
? { allowUnsandboxedCommands: options.claude.sandbox.allow_unsandboxed_commands }
: {}),
...(options.claude.sandbox.excluded_commands !== undefined
? { excludedCommands: options.claude.sandbox.excluded_commands }
: {}),
},
};
};
}
result.claude = claude;
}
return Object.keys(result).length > 0 ? result : undefined;
}
@ -60,9 +66,15 @@ export function mergeProviderOptions(
if (layer.opencode) {
result.opencode = { ...result.opencode, ...layer.opencode };
}
if (layer.claude?.sandbox) {
if (layer.claude) {
result.claude = {
sandbox: { ...result.claude?.sandbox, ...layer.claude.sandbox },
...result.claude,
...(layer.claude.allowedTools !== undefined
? { allowedTools: layer.claude.allowedTools }
: {}),
...(layer.claude.sandbox
? { sandbox: { ...result.claude?.sandbox, ...layer.claude.sandbox } }
: {}),
};
}
}