# レビュー専用ピース # コードやPRをレビューするだけで編集は行わない # ローカル: コンソール出力のみ。PR指定時: PRにインラインコメント+サマリを投稿 # # フロー: # plan -> reviewers (parallel: arch-review + security-review + ai-review) -> supervise # -> pr-comment -> COMPLETE (PRコメント要求時) # -> COMPLETE (ローカル: コンソール出力のみ) # -> ABORT (rejected) # # 全ムーブメント edit: false(ファイル変更なし) # # テンプレート変数: # {iteration} - ピース全体のターン数 # {max_iterations} - 最大イテレーション数 # {movement_iteration} - ムーブメントごとのイテレーション数 # {task} - 元のユーザー要求 # {previous_response} - 前のムーブメントの出力 # {user_inputs} - 蓄積されたユーザー入力 # {report_dir} - レポートディレクトリ名 name: review-only description: レビュー専用ピース - コードをレビューするだけで編集は行わない max_iterations: 10 stances: review: ../stances/review.md knowledge: architecture: ../knowledge/architecture.md security: ../knowledge/security.md personas: planner: ../personas/planner.md architecture-reviewer: ../personas/architecture-reviewer.md security-reviewer: ../personas/security-reviewer.md ai-antipattern-reviewer: ../personas/ai-antipattern-reviewer.md supervisor: ../personas/supervisor.md pr-commenter: ../personas/pr-commenter.md instructions: review-arch: ../instructions/review-arch.md review-security: ../instructions/review-security.md review-ai: ../instructions/review-ai.md report_formats: architecture-review: ../report-formats/architecture-review.md security-review: ../report-formats/security-review.md ai-review: ../report-formats/ai-review.md review-summary: ../report-formats/review-summary.md initial_movement: plan movements: - name: plan edit: false persona: planner allowed_tools: - Read - Glob - Grep - WebSearch - WebFetch rules: - condition: レビュー対象が明確 next: reviewers - condition: ユーザーが質問をしている(レビュータスクではない) next: COMPLETE - condition: 要件が不明確、情報不足 next: ABORT appendix: | 確認事項: - {質問1} - {質問2} instruction_template: | ## Previous Response (superviseからの差し戻し時) {previous_response} レビュー依頼を分析し、レビュー方針を立ててください。 **これはレビュー専用ピースです。** コード編集は行いません。 以下に集中してください: 1. レビュー対象のファイル/モジュールを特定 2. レビューの重点領域を決定(アーキテクチャ、セキュリティ、AIパターン等) 3. 依頼に記載された特定の懸念事項を整理 **PR番号が記載されている場合**(例: "PR #42")、レビュアーが PRの変更ファイルに集中できるよう計画に含めてください。 - name: reviewers parallel: - name: arch-review edit: false persona: architecture-reviewer stance: review knowledge: architecture report: name: 01-architect-review.md format: architecture-review allowed_tools: - Read - Glob - Grep - WebSearch - WebFetch rules: - condition: approved - condition: needs_fix instruction: review-arch - name: security-review edit: false persona: security-reviewer stance: review knowledge: security report: name: 02-security-review.md format: security-review allowed_tools: - Read - Glob - Grep - WebSearch - WebFetch rules: - condition: approved - condition: needs_fix instruction: review-security - name: ai-review edit: false persona: ai-antipattern-reviewer stance: review report: name: 03-ai-review.md format: ai-review allowed_tools: - Read - Glob - Grep - WebSearch - WebFetch rules: - condition: approved - condition: needs_fix instruction: review-ai rules: - condition: all("approved") next: supervise - condition: any("needs_fix") next: supervise - name: supervise edit: false persona: supervisor stance: review report: - Review Summary: 04-review-summary.md allowed_tools: - Read - Glob - Grep - WebSearch - WebFetch rules: - condition: approved, PR comment requested next: pr-comment - condition: approved next: COMPLETE - condition: rejected next: ABORT instruction_template: | ## レビュー結果 {previous_response} **これはレビュー専用ピースです。** テスト実行やビルドは行わないでください。 レビュー結果を統合し、最終サマリーを作成する役割です。 **やること:** 1. Report Directory内の全レビューレポートを読む 2. アーキテクチャ・セキュリティ・AIレビューの結果を統合 3. 統合レビューサマリーと総合判定を作成 4. ルーティング判断: - タスクにPRへのコメント投稿が含まれている場合 (例: "PRにコメントして"、"PRにレビュー結果を投稿") → `pr-comment` ムーブメントへ(condition: "approved, PR comment requested") - ローカルレビューのみ → COMPLETE(condition: "approved") - 重大な問題が見つかった場合 → ABORT(condition: "rejected") **Review Summaryレポートフォーマット:** ```markdown # レビューサマリー ## 総合判定: APPROVE / REJECT ## サマリー {2-3文で全レビュー結果を統合} ## レビュー結果 | レビュー | 結果 | 主要な発見 | |---------|------|-----------| | アーキテクチャ | APPROVE/REJECT | {概要} | | セキュリティ | APPROVE/REJECT | {概要} | | AIアンチパターン | APPROVE/REJECT | {概要} | ## 要注意の問題 | # | 重大度 | ソース | 場所 | 問題 | |---|--------|--------|------|------| | 1 | High | セキュリティ | `file:line` | 説明 | ## 改善提案 - {全レビューからの統合提案} ``` - name: pr-comment edit: false persona: pr-commenter allowed_tools: - Read - Glob - Grep - Bash rules: - condition: コメント投稿完了 next: COMPLETE - condition: コメント投稿失敗 next: COMPLETE instruction_template: | ## レビューサマリー {previous_response} レビュー結果をPRにコメントとして投稿してください。 **手順:** 1. タスク説明からPR番号を抽出 2. Report Directory内の全レビューレポートを読む: - `01-architect-review.md`(アーキテクチャレビュー) - `02-security-review.md`(セキュリティレビュー) - `03-ai-review.md`(AIアンチパターンレビュー) - `04-review-summary.md`(統合サマリー) 3. 重要度でフィルタリングし、Critical/High/Mediumの指摘をインラインコメントとして投稿 4. 以下のフォーマットでサマリーコメントを投稿: ``` ## 自動レビューサマリー {04-review-summary.mdからの総合判定とサマリー} ### レビュー結果 | レビュー | 結果 | |---------|------| | アーキテクチャ | {結果} | | セキュリティ | {結果} | | AIアンチパターン | {結果} | ### 主要な発見 {重要な指摘のリスト} ### 改善提案 {統合された提案} --- *[takt](https://github.com/toruticas/takt) review-only ピースで生成* ```