第1章:責任分界(人間 / エージェント / CI)

この章で扱うこと

  • 人間の責務(仕様化/承認/責任)と、エージェントの責務(調査/実装/反復)の分離
  • CI の責務(品質ゲート、監査可能性)

なぜ責任分界が必要か

AI を開発プロセスに組み込むと、作業速度が上がる一方で、誤変更も同様に高速化します。 そのため、「誰が何に責任を持つか」「どこで自動化を止めるか」 を先に決めておく必要があります。

本書では、最小構成として次の 3 者に分けます。

  • 人間:仕様(Issue)、承認(Review)、責任(Merge)
  • エージェント:調査/実装/反復(ただし意思決定は代替しない)
  • CI:品質ゲート(テスト/静的解析/ポリシー)と監査可能性

3者モデル(Human / Agent / CI)

Human(仕様・承認・責任)

  • 期待成果と受入基準を Issue に落とす(曖昧さを減らす)
  • 変更の妥当性をレビューし、必要に応じて設計判断を行う
  • マージとリリースに関する最終責任を負う(説明責任を含む)

Agent(調査・実装・反復)

  • 既存コード/ドキュメントの調査、影響範囲の洗い出し
  • 指定された制約の下での実装、テスト追加、ドキュメント更新
  • CI 失敗やレビュー指摘に対する反復(小さく直し、再検証する)

エージェントは「作業者」であり、責任主体(意思決定者)ではありません。

CI(品質ゲート・監査)

  • 再現可能な検証(lint/test/build/link-check など)を機械的に担保する
  • ポリシー違反の検知(例:危険コマンド、Secrets の混入、依存更新の妥当性)
  • 実行ログが残る形で、変更の品質と経路を監査可能にする

RACI(例)

運用設計の初期は、RACI(Responsible/Accountable/Consulted/Informed)を置くと合意形成が速くなります。

作業 Human Agent CI
仕様化(Issue) A/R C I
実装(コード変更) A R C
テスト追加 A R C
検証(テスト/静的解析) A C R
レビュー A/R C I
マージ A/R I C

注記: R=Responsible(実行責任)、A=Accountable(最終責任)、C=Consulted(相談先)、I=Informed(通知対象)

境界設計の要点

  • 仕様の粒度:受入基準が曖昧だと、エージェントの探索空間が増え、手戻りとリスクが増大します。
  • 権限とSecrets:最小権限(Least Privilege)を原則にし、Secrets の到達範囲と監査ログを設計します。
  • 自動化の停止線:自動化は「提案」までに留め、最終判断(承認/マージ/公開)は人間が担います。
  • 失敗の扱い:CI 失敗やレビュー指摘は「原因の切り分け→最小修正→再実行」の短いループで回します。

関連テンプレ(参照)

Companion repo: itdojp/GitHub-AgentOps-companion

  • 実行仕様 Issue(エージェント作業依頼): .github/ISSUE_TEMPLATE/agent-task.yml
  • PR テンプレ: .github/PULL_REQUEST_TEMPLATE.md

章末チェックリスト(ドラフト)

注記: 本チェックリストは最小構成です。組織の運用ポリシー(権限、監査、リリース手順)に合わせて拡張してください。

  • Issue が「実行仕様(受入基準・制約・検証)」を満たしている
  • エージェントに任せる範囲と、人間承認が必要な範囲が定義されている
  • CI で担保する品質ゲート(lint/test/link-check 等)が定義されている