name: takt-default description: TAKT development piece (plan → write tests → implement → AI antipattern review → 5-parallel review → fix → supervise → complete) piece_config: provider_options: codex: network_access: true opencode: network_access: true max_movements: 30 initial_movement: plan loop_monitors: - cycle: - ai_review - ai_fix threshold: 3 judge: persona: supervisor instruction_template: | The ai_review ↔ ai_fix loop has repeated {cycle_count} times. Review the reports from each cycle and determine whether this loop is healthy (making progress) or unproductive (repeating the same issues). **Reports to reference:** - AI Review results: {report:ai-review.md} **Judgment criteria:** - Are new issues being found/fixed in each cycle? - Are the same findings being repeated? - Are fixes actually being applied? rules: - condition: Healthy (making progress) next: ai_review - condition: Unproductive (no improvement) next: reviewers movements: - name: plan edit: false persona: planner knowledge: architecture allowed_tools: - Read - Glob - Grep - Bash - WebSearch - WebFetch rules: - condition: Requirements are clear and implementable next: write_tests - condition: User is asking a question (not an implementation task) next: COMPLETE - condition: Requirements unclear, insufficient info next: ABORT appendix: | Clarifications needed: - {Question 1} - {Question 2} instruction: plan output_contracts: report: - name: plan.md format: plan - name: write_tests edit: true persona: coder policy: - coding - testing knowledge: - takt - architecture allowed_tools: - Read - Glob - Grep - Edit - Write - Bash - WebSearch - WebFetch required_permission_mode: edit instruction: write-tests-first rules: - condition: Tests written successfully next: implement - condition: Cannot proceed because the test target is not implemented yet, so skip test writing next: implement - condition: Cannot proceed with test writing next: ABORT - condition: User input needed for clarification next: write_tests requires_user_input: true interactive_only: true output_contracts: report: - name: test-scope.md format: coder-scope - name: test-decisions.md format: coder-decisions - name: implement edit: true persona: coder policy: - coding - testing session: refresh knowledge: - takt - architecture allowed_tools: - Read - Glob - Grep - Edit - Write - Bash - WebSearch - WebFetch required_permission_mode: edit rules: - condition: Implementation complete next: ai_review - condition: No implementation (report only) next: ai_review - condition: Cannot proceed, insufficient info next: ai_review - condition: User input required next: implement requires_user_input: true interactive_only: true instruction: implement-after-tests output_contracts: report: - name: coder-scope.md format: coder-scope - name: coder-decisions.md format: coder-decisions - name: ai_review edit: false persona: ai-antipattern-reviewer policy: - review - ai-antipattern allowed_tools: - Read - Glob - Grep - WebSearch - WebFetch rules: - condition: No AI-specific issues next: reviewers - condition: AI-specific issues found next: ai_fix instruction: ai-review output_contracts: report: - name: ai-review.md format: ai-review - name: ai_fix edit: true persona: coder policy: - coding - testing session: refresh knowledge: - takt - architecture allowed_tools: - Read - Glob - Grep - Edit - Write - Bash - WebSearch - WebFetch required_permission_mode: edit pass_previous_response: false rules: - condition: AI issues fixed next: ai_review - condition: No fix needed (verified target files/spec) next: ai_no_fix - condition: Cannot proceed, insufficient info next: ai_no_fix instruction: ai-fix - name: ai_no_fix edit: false persona: architecture-reviewer policy: review allowed_tools: - Read - Glob - Grep rules: - condition: ai_review's findings are valid (fix required) next: ai_fix - condition: ai_fix's judgment is valid (no fix needed) next: reviewers instruction: arbitrate - name: reviewers parallel: - name: arch-review edit: false persona: architecture-reviewer policy: review knowledge: - architecture - takt allowed_tools: - Read - Glob - Grep - Bash - WebSearch - WebFetch rules: - condition: approved - condition: needs_fix instruction: review-arch output_contracts: report: - name: architect-review.md format: architecture-review - name: security-review edit: false persona: security-reviewer policy: review knowledge: security allowed_tools: - Read - Glob - Grep - Bash - WebSearch - WebFetch rules: - condition: approved - condition: needs_fix instruction: review-security output_contracts: report: - name: security-review.md format: security-review - name: qa-review edit: false persona: qa-reviewer policy: - review - qa allowed_tools: - Read - Glob - Grep - Bash - WebSearch - WebFetch rules: - condition: approved - condition: needs_fix instruction: review-qa output_contracts: report: - name: qa-review.md format: qa-review - name: testing-review edit: false persona: testing-reviewer policy: - review - testing allowed_tools: - Read - Glob - Grep - Bash - WebSearch - WebFetch rules: - condition: approved - condition: needs_fix instruction: review-test output_contracts: report: - name: testing-review.md format: testing-review - name: requirements-review edit: false persona: requirements-reviewer policy: review allowed_tools: - Read - Glob - Grep - Bash - WebSearch - WebFetch rules: - condition: approved - condition: needs_fix instruction: review-requirements output_contracts: report: - name: requirements-review.md format: requirements-review rules: - condition: all("approved") next: supervise - condition: any("needs_fix") next: fix - name: fix edit: true persona: coder policy: - coding - testing knowledge: - takt - architecture allowed_tools: - Read - Glob - Grep - Edit - Write - Bash - WebSearch - WebFetch required_permission_mode: edit pass_previous_response: false rules: - condition: Fix complete next: reviewers - condition: Cannot proceed, insufficient info next: plan instruction: fix - name: supervise edit: false persona: supervisor policy: review allowed_tools: - Read - Glob - Grep - Bash - WebSearch - WebFetch pass_previous_response: false rules: - condition: All checks passed next: COMPLETE - condition: Requirements unmet, tests failing, build errors next: plan instruction: supervise output_contracts: report: - name: supervisor-validation.md format: supervisor-validation - name: summary.md format: summary use_judge: false