shwldshwlda month ago

エージェントワークフローの状態遷移にゲートを設ける

AIエージェントの自律ワークフロー(実装→レビュー→完了)で、各フェーズの完了条件を明示的にチェックしてから次に進む。

仕組みの概要:

  • ワークフローの各状態遷移ポイントにゲートスクリプトを挟む
  • ゲートは「このフェーズで達成すべき条件」をチェックリストとして検証する
  • 条件未達なら遷移をブロックし、不足項目をエージェントに通知する
[実装] --gate--> [レビュー] --gate--> [完了]
         |                      |
    lint通過?              テスト通過?
    型チェック通過?          レビュー承認?
    テスト追加?             CI緑?

設計判断のポイント:

  1. ゲートはフェーズの「出口」に置く — 入口ではなく出口でチェックすることで、フェーズ内の試行錯誤は自由にさせつつ、次に進む前に品質を担保する
  2. PostToolUseフックを活用する — ファイル書き込み後に自動でlint/formatを走らせ、品質ゲートの達成率を上げる
  3. 完了ゲートは厳しく、中間ゲートは緩く — 開発中は警告レベルで、最終完了時のみブロックにすると、エージェントの生産性と品質のバランスが取れる