KEEL

実装 · PG

4. 実装

AGENTS.md・3層文書・工程別AI役割・PRゲート。PG向け。

主な読者: PGSE
経営層投資対効果とリスク低減の判断材料。全文読む必要はなく、KPIとBefore/Afterで十分。
PM合意・スコープ・未決の管理。正本が1か所なら炎上の早期検知と説明責任が楽になる。
この章 PRゲート
SE構造・IF・例外の設計品質。MD+Mermaid+OpenAPIでレビューとAI支援の精度が上がる。
この章 設計との同期
PG実装の迷いが減る。AGENTS.md・型生成・PRテンプレで「聞き直し」工数が減る。
この章 AGENTS.mdが入口

AGENTS.md:PGの入口(Commands / Rules / Done)

AGENTS.md はプロンプトの置き場ではなく、検証可能な開発契約です。Codex は既定 32 KiB まで連結読込するため、短い入口+参照パスが効きます(Zenn: AGENTS.md + SOP + DESIGN 分離agents.md 標準)。

# AGENTS.md(リポジトリ入口・抜粋)

## Commands
- Install: `npm ci`
- Test: `npm test`
- Lint: `npm run lint`

## Rules
- 仕様正本: docs/requirements/REQ-*.md(HTMLは生成物)
- 手順: docs/sop/engineering.md を全変更で参照
- UI作業前: docs/design/DESIGN.md(フロント案件のみ)
- ワークフロー: .agents/skills/(例: requirements-definition-gate)
- NEVER: 当事者識別情報・接続情報・open-items 未解消の仕様確定

## Done
- `npm test` と `npm run lint` が通る
- 関連 REQ / OpenAPI / docs を PR に同梱

3層のエージェント文書(Codex / Cursor)

グローバル ~/.codex/AGENTS.md 個人・横断(非コミット) リポジトリ ./AGENTS.md Commands / Rules / Done 参照ドキュメント docs/sop/*.md · DESIGN.md REQ / OpenAPI / .agents/skills/ Rules でパス参照(推奨) 仕様正本・手順・UI規約
グローバル・リポジトリ・参照ドキュメントの役割分担
パス(例)役割コミット
グローバル~/.codex/AGENTS.md個人の文体・MCP方針・横断規律。「SOP/DESIGN を読め」メタ規則しない
リポジトリ./AGENTS.mdこの repo の Commands / Rules / Doneする
参照docs/sop/ · docs/design/DESIGN.md手順(SOP)・UI規約。仕様正本は REQ / OpenAPI / ADRする

推奨ディレクトリ

your-repo/
├── AGENTS.md                 # 短い入口(Codex / Cursor が読む)
├── docs/
│   ├── sop/
│   │   ├── engineering.md    # PR・レビュー・セキュリティ
│   │   └── python.md         # 言語別(必要時)
│   ├── design/
│   │   └── DESIGN.md         # UI・トークン(フロント案件)
│   ├── requirements/         # REQ 正本
│   └── adr/
├── .agents/skills/           # ワークフロー(ゲート・議事録等)
└── openapi/

プロジェクトへの当てはめ(例)

外部知見と本ガイド運用の対応
記事の要素プロジェクトでの置き場
~/.codex/AGENTS.md個人 Codex 設定(非コミット)
リポジトリ AGENTS.mdプロジェクト AGENTS.md(読む順・NEVER)
docs/sop/engineering.mdPR ゲート・曖昧語スキャン・週次 PM 手順
docs/design/DESIGN.mdフロント案件のみ。画面は SCR + REQ-ID リンク
スキル.agents/skills/(正本ではなくワークフロー)
方法 A(推奨): AGENTS.md は実体のまま、Rules で docs/sop/DESIGN.mdパス参照する。Windows / CI でも安定。
方法 B(任意): ルート AGENTS.md を SOP 実体へ symlink。単一ファイルにまとめたい場合のみ。チーム全員の OS・CI でリンク手順を README に明記すること。

工程別:役割で組む AI ツール

「いちばん強いモデル1つに全部任せる」構成は、モデル停止・規制・性能低下のときに開発全体が止まるリスクがあります。2026年6月には高性能モデルが外部要因で無期限停止された事例もあり(note: かい氏の役割分担ガイド)、「最強1つ」への最適化はリスクの集中になります。

本ガイドではツール名より役割の枠を先に決め、中身のモデルは入れ替え可能にします。実装フェーズの核は個人・小規模チームで検証されている4役割体制です。

コックピット Cursor — 俯瞰・プレビュー メインエンジン Claude Code — 実装本体 補助監査 Codex — 別モデルレビュー 高速工具 Composer — 軽量割り込み 1つが止まっても他の役割で継続 — 役割の枠は固定、モデルは入れ替え可能

なぜ「役割で組む」か(note 記事の要点)

実装フェーズの4役割(ツール例・2026年時点)
役割ツール例得意なこと(優れている点)向く作業止まったときの代替
コックピットCursorIDE統合・差分追跡・プレビュー・全体俯瞰画面確認、指示の出しどころ、リポジトリ横断別IDE + ターミナルエージェント
メインエンジンClaude Code自律タスク・多ファイル実装・テスト実行まで機能追加、リファクタ、バグ修正の本体他社エージェントIDE(Windsurf 等)
補助監査Codex(codex-plugin-cc別訓練モデルによる敵対的レビュー/codex:review · /codex:adversarial-reviewCodeRabbit · Qodo · 人間レビュー強化
手元の高速工具Composer 2.5(Cursor内蔵)低レイテンシ・メインセッションを汚さない許可応答・軽い質問・ターミナル割り込み小型モデルチャット
Codexアンサンブル: 実装した Claude に「これでいい?」と聞くと自己肯定しがち。訓練の異なる Codex が割れた箇所をシグナルにする(note 記事)。多エージェント要件でも起草者≠レビュアー分離が一般的 — ai-requirements-factory

本ガイドの工程 × AI 役割マトリクス

フェーズ毎に使うとよい AI ツールと用途(正本との接続付き)
工程正本(出力先)推奨役割ツール例優れている点典型用途
1要件定義REQ-*.md · open-items.md起草 + 別目レビューClaude · Cursor · ゲートスキルギャップ分析・曖昧語検出REQ初稿、レビュー用HTML生成、合意ログ
2基本設計・ADRadr/ · design.md推論型エンジンClaude Code · v0(UI)トレードオフ・却下案の言語化ADR草案、C4、画面項目たたき台
3API・OpenAPIopenapi/**整合チェックClaude Code + CI多ファイル契約編集・schema diffpath分割、破壊的変更検出、型生成
4実装コード · AGENTS.md4役割体制Cursor + Claude Code + Codex + Composer実装速度と別目レビューの両立本体実装、敵対的PRレビュー、docs同梱
5テスト・QATestDesignDoc.md観点 + 網羅Cursor · Qodo · スキルREQ↔TC リンク・diffレビュー観点漏れ、TC草案、障害からの還流
6運用runbooks/分析 + 文書化Claude Code · MCP障害ナラティブの構造化Runbook初稿、CHANGELOG・ADR更新
7PM・ゲートgate-decision.md軽量集約 + 監査Composer · driftスキル低コスト要約・版間監査週次open-items、着手可否、drift

外部事例(スクレイピング・調査で取り込んだパターン)

出典付き — 本ガイドの正本運用と接続
出典フェーズパターン本ガイドでの置き場
note: かい氏実装4役割・Codex adversarial-review・月~$280個人例本章 · AGENTS.md · PRゲート
MetaCTO SDLCマップ全工程8フェーズ別ツール表・MCP統合・レビュー工程への重心移動工程マトリクス · 第5章
ASDLC横断Context / Agents / Gates の3層・敵対的コードレビューゲート · ADR · AGENTS.md
DEV: Claude Code移行POC計画〜QACLAUDE.md + MCP + スキルで50チケット/580テスト/0欠陥引渡しAGENTS.md · スキル · MCP
ai-requirements-factory要件複数エージェントで要件・設計を生成第1章 · ゲートスキル
LAO · JumpStartPM工程間オーケストレーション + 人間承認第7章 · ゲート判定
Hermes Agent · AutonomousAgent運用常時稼働ランタイム・学習ループ・Docker 本番ラッパー第6章 Runbook · 週次 PM(限定)
Agent-native CI/CD · InfoQ Playbook横断プロンプト IaC · ゴールデン eval · シャドウ/カナリアスキル変更 · AGENTS.md · 第5章

PMO AIPC — 社内ノウハウ蓄積地(Hermes + Ollama · MCP Server)

結論: Hermes は Cursor/Codex の代替ではなく、セキュアゾーンに置く記憶・整流レイヤーとして扱う。開発 PC 直置きの常時稼働 Hermes は blast radius が大きいため、個人検証に限定する。

推奨PMO AIPC = Hermes + Ollama を内包した MCP Server。Skill・手順・レビュー観点・失敗パターンを非機密の範囲で蓄積する。
非推奨開発 PC に Hermes daemon を常駐させ、ソース・鍵・顧客情報へ広くアクセスさせる構成。
未決セキュアゾーンのネットワーク要件、MCP Server 実装方式、Ollama モデル標準。ADR 化待ち。
詳細な構成、メリット・デメリット、採用判定は 第10章 Hermes / PMO AIPC に集約。

参考: Hermes Agent · Ollama × Hermes

Agent-native CI/CD — スキル・プロンプト変更のゲート

エージェントの挙動はコードだけで決まらない(Zylos 2026)。.agents/skills/ · システムプロンプト · MCP ツール定義 · モデル版をagent bundleとして Git 管理し、従来 CI に次を足すと精度保証と標準化の効果が大きい。

5ゲート(成熟度順に段階導入)
ゲート内容メリット注意
1 Lintプロンプト/スキルの禁止パターン・プレースホルダ残存機械的ミスを秒単位で検出意味的正しさは別ゲート
2 オフライン evalゴールデンデータセット(25〜100件)+ 行動ルーブリックマージブロックで静かな退行を防止データセットの陳腐化。本番トラフィックから定期更新
3 コストeval 時のトークン/リクエスト上限(例: +15% でブロック)品質向上の隠れコストを明示化閾値はチームで合意
4 シャドウ本番トレース再生(副作用は dry-run ファサード)オフラインで拾えない分布シフトを検出Stripe 等の実呼び出し禁止
5 カナリア5%→25%→100%、自動ロールバック本番での行動退行を限定影響にエージェントが既に外部副作用を起こした場合は設定ロールバックだけでは不十分(補償アクション設計)
InfoQ(2026): 同一入力でも実行パスに最大63%の変動がありうるため、プロンプトはパフォーマンス監視付きバージョン管理が前提。MCP はツール統合の de facto 層。
3段ゲート(ASDLC): (1) 決定的 — コンパイル・テスト・schema diff (2) 確率的 — AIレビュー・Codex adversarial・ゴールデン eval (3) 人間 — スコープ・依頼者側合意。AI出力は正本MDへ反映してから次工程へ。

作業タイプ別の振り分け(実装中心)

迷ったときの4分類 — note 記事の実用核
作業タイプ任せる役割
実装するメインエンジンClaude Code で機能・バグ修正を最後まで
レビュー・敵対的チェック補助監査Codex /codex:adversarial-review。食い違いだけ人が判断
全体把握・プレビューコックピットCursor で差分・画面・Cloud Agents(任意)
止まった時・軽い確認高速工具Composer で許可応答。長い実装セッションは汚さない

導入メモ

役割分担導入後に変わったこと(note 記事より)

ツール名・料金・ベンチマークは変わります。役割の枠と正本の置き場(REQ / OpenAPI / AGENTS / スキル)を先に固定し、モデルは差し替え可能に保つこと。

AIチケット起点開発ループ

いきなり「実装して」と依頼せず、チケット品質確認 → インタビュー → 計画 → Handoff → 実装を標準化する。AI開発の品質は実装プロンプトよりチケットの質(目的・受入条件・非対象・影響範囲)に左右される。

プロンプト全文・テンプレ: ai_quality 第10章 10.8 · 第14章 14.4 · 正本 MD: tools/dev_docs_guide_pack/references/ai_ticket_interview_dev_loop.md

AI開発メニュー

入口で作業性質を4分岐する
#メニューAIの役割成果物
1既存チケットに対応読解・実装可能性判定・計画実装計画、Handoff
2新規チケットを起票ヒアリング・受入条件起票本文、分割案
3既存チケットを再整理曖昧さ補正・分割改訂案
4PRレビュー指摘に対応指摘分類・修正計画修正方針、返信案

全体フロー

```mermaid
flowchart TD
  M[AI開発メニュー] --> B[既存チケット対応]
  M --> C[新規起票]
  M --> D[再整理]
  M --> E[PR指摘対応]
  B --> Q{品質 A/B/C/D}
  Q -->|A/B| P[計画 → 承認 → Handoff → 実装]
  Q -->|C/D| X[調査分離 or 差し戻し]
  C --> T[起票] --> B
```

実装可能性判定(A/B/C/D)

判定状態次アクション
A実装可能実装計画を作成
B軽微な確認後に可能影響の大きい質問のみ(最大5問)
C調査分離が必要調査チケット案
D要件不明差し戻し案

チケット品質ゲート · Handoff

エージェント役割(論理分離)

役割責務
Intake / Interview / Ticket入口・ヒアリング・本文
Research / Planning調査・計画・テスト方針
Implementation / Review / Handoff実装・レビュー・引き継ぎ圧縮
禁止: 品質チェックなし実装 · 受入/非対象なし · 全推測 · 調査ログ丸ごと Handoff · レビューなしマージ · 権限/データをAI判断のみで確定
AGENTS.md: Rules に「いきなり実装しない」「A/B/C/D 判定」を追記。第4章の4役割体制・PRフローとセットで運用する。承認済み文脈の recall は 第10章 長期記憶 と連動。

AIを既存開発に馴染ませる — 役割設計

正本: tools/dev_docs_guide_pack/references/ai_role_design_for_existing_dev_workflow.md

CI/CD×AI 協調(第4章 · ai_quality 第7章)が接続の仕方なら、本章はもう一段上の運用設計 — 既存ワークフロー・作業ルーティンの中で AI をどの役割として差し込むかを扱う。

AIを開発ワークフローや作業ルーティンの中で、
どのような役割として既存開発に馴染ませるか。
本質: AIに作業を丸投げするのではなく、品質定義・作業ルール・判断基準を AI が参照できる形に蒸留し、副操縦士として差し込む。
鉄則: 品質定義がない AI 活用は速いがブレる。品質定義がある AI 活用は速くて管理できる。

基本方針

AI = 品質ゲート前後の副操縦士(作業者ではない)
得意苦手
Web・公式ドキュメント・事例調査 · MVP向け一次報告プロジェクト固有の品質定義の暗黙理解
CI失敗ログ要約 · PR/MR差分の初期レビュー未定義業務ルールの勝手な補完
テスト観点洗い出し · BTS向け経緯整理例外判断 · 仕様判断 · リリース判断
一定ルール下の定型作業 · 判断材料の整理設計思想の一貫維持 · セキュリティ境界の自律判断

品質定義・設計思想・禁止事項・完了条件が明文化されていないと、AIは一般論として正しいが現場期待とズレる結果を出しやすい。

蒸留先マップ

AI向けプロジェクト知識の蒸留先
ドキュメント主な対象役割
README.md人間・AI概要 · 起動 · 基本構成
ARCHITECTURE.md / docs/design/DESIGN.md人間・AI設計思想 · レイヤー · 依存方向
CONTRIBUTING.md / docs/sop/engineering.md人間・AIブランチ · PR · レビュールール
TESTING.md / TestDesignDoc.md人間・AIテスト方針 · 実行コマンド · 観点
REVIEW_GUIDE.md人間・AIレビュー観点 · 禁止パターン
AGENTS.mdAIエージェントCommands · Rules · Done · 禁止事項
CLAUDE.mdClaude系頻出コマンド · 作業方針(肥大化注意)
.github/copilot-instructions.mdCopilotリポジトリ固有指示
Redmine / Jira人間・AI判断履歴 · 例外承認 · 対応経緯
CI/CD設定人間・AI客観的品質判定条件
dev_docs_guide では AGENTS.md + docs/sop/ + .agents/skills/ の3層が蒸留先の実装例(第4章)。複数AIツール間でルール分散しないよう、正本は Git · 派生は各ツール向け短い入口に留める。

ワークフロー組み込み事例(10例)

既存ツール・ワークフローへの AI 組み込み(10例)
#組み込み先AIの役割効果メリット懸念
1GitHub Copilot + repository instructionsPRレビュー · 規約反映中〜大リポジトリ固有ルールを渡せる指示が薄いと一般論化
2AGENTS.md / Codex作業手順 · 規約定義setup/test/style を標準化構造化と更新が必要
3Claude Code / CLAUDE.mdプロジェクトメモリ · 頻出コマンド毎回前提を読み直せる肥大化でノイズ化
4CI/CD + AIログ解析失敗原因候補整理調査初動が速い原因推定の鵜呑み禁止
5SonarQube AI Code AssuranceAI生成コードのQG客観基準を強制ゲート設計が甘いと形骸化
6CodeRabbit / PR-AgentPR初期レビュー · 要約人間レビュー前の下読き指摘過多でレビュー疲れ
7Atlassian Rovo Dev + JiraBTS·Doc·Git横断文脈文脈利用が強いCloud前提 · Redmineは別設計
8n8n / Zapier + LLMCI·Slack·BTS·Git連携中〜大既存ツールに後付けWF自体が保守対象
9Redmine/Jira AI要約追記経緯整理 · 引き継ぎ判断履歴が残る事実と推測の混同
10Web調査 · MVP報告事例比較 · PoC一次レポート検討材料を高速生成調査定義が曖昧だと浅い

効果別導入パターン

効果の大きさで見る導入パターン

効果パターン要点
CI失敗ログAI要約CI=事実 · AI=翻訳 · 人間=判断。秘密情報マスク · 推測/事実の分離
Quality Gate(AI生成コード)静的解析·セキュリティ·複雑度·重複を機械判定。閾値設計が必要
BTS·Doc·Git文脈込み出力が現場期待に近づく。権限·情報境界の設計が必須
PR/MR AI一次レビュー差分要約·テスト不足指摘。プロジェクトルール未整備だと一般論化
Copilot instructions / AGENTS.md命名·依存方向·テスト実行を明示。古いルールは逆効果
BTS AI要約追記価値は「作業」より「経緯整理」。要約責任者を明確に
小〜中Web調査 · MVP報告一次情報優先 · 実例/推測分離 · 効果大中小 · 懸念必須

メリット · デメリット

メリット · デメリット(運用設計の視点)
観点メリットデメリット・懸念
開発速度調査·要約·初期実装·下読きが速い速さ優先で検証が薄くなる
品質CI解析·PR指摘·SAST修正案で早期検出品質定義なしでは「それっぽいだけ」
ナレッジ共有BTS/PRに経緯を残しやすい誤要約が誤った経緯として固定化
属人化対策暗黙知を AGENTS.md 等へ蒸留未メンテのルールはノイズ
レビュー人間レビュー前の論点整理AIレビュー≠人間レビュー
セキュリティSAST·ログ解析の補助プロンプト注入(PR/Issue本文)
教育新人が文脈を掴みやすいAI回答を正解扱いすると誤学習

AI向け品質定義テンプレート(作業前に最低限)

## このプロジェクトで重視する品質
- 正確性 / 保守性 / 可読性 / セキュリティ / 性能 / テスト容易性 / 運用容易性

## 設計思想
- レイヤー構造 · 依存方向 · 禁止依存 · 例外処理 · ログ方針

## コーディングルール
- 命名 · フォーマット · null扱い · DB/外部APIアクセス · エラー処理

## テスト方針
- 必須テスト · 変更時コマンド · 追加観点 · テスト不要条件

## AIに任せてよいこと / 任せないこと / 人間が確認すること
(ログ要約·PR要約 / 仕様最終判断·本番デプロイ / 影響範囲·セキュリティ)

starter_kit: docs/sop/ai-usage.md · AGENTS.md に落とし込む。詳細は正本 references/ai_role_design_for_existing_dev_workflow.md §8。

5層運用: ルール · スキル · アンカー(ADR/REQの判断構造)· 評価(CI/eval)· ログ(PR/BTS)。品質アンカーはPoC仮説として 第2章 を参照。

BTS記録テンプレート — 「人間が何を判断したか」を残す

## AI利用メモ
### 事実 — 対象PR · commit · CI job · 変更ファイル
### AIによる整理 — 原因候補 · 影響範囲 · 修正案(推測と事実を分離)
### 人間判断 — 採用 · 見送り · 見送り理由 · 判断者 · 判断日
### 最終結果 — CI/CD · Quality Gate · レビュー · マージ/リリース可否

第6章 BTS連携 · CI/CD協調 第4章 と併用。

運用チェックリスト(要約)

参考: Copilot repository instructions · Codex AGENTS.md · Atlassian Rovo Dev · AGENTS.md効果分析 (arXiv) · RovoDev Code Reviewer (arXiv)

IDE内4役割(Cursor/Claude/Codex/Composer)との関係: 本章はプロジェクト知識の蒸留とワークフロー上の役割。ツール分担は Agent-native CI/CD 直上の工程別AI表を参照。

PRフロー(品質ゲート)

実装 docs同梱 CI/Lint レビュー merge

Before(PG)

  • Slackで仕様確認
  • 口頭仕様で実装→差戻し
  • AIに毎回背景を説明

After(PG)

  • AGENTS.mdが背景を保持
  • OpenAPI型でコンパイル時検知
  • 聞き直し工数↓

エージェント運用:コンテキスト設計

## エージェントに渡す順
1. AGENTS.md
2. docs/requirements/REQ-042.md のみ
3. openapi/paths/orders.yaml(該当時)

## やらせないこと
- open-items 未解消の仕様確定
- レビュー用 HTML の手編集(MD から再生成)

AIへ渡してよい情報 / 渡さない情報

情報分類と AI 投入可否
情報分類AI投入可否条件
公開情報出典を残す
社内一般ルール条件付き可社内許可済み環境を使う
要件ID・抽象化済み仕様条件付き可個人名・契約情報・当事者識別情報を除く
契約・当事者識別情報原則不可必要時は匿名化し、承認を取る
個人情報・勤怠・評価不可集計済み・匿名化済みでも用途を限定
認証情報・接続情報・秘密鍵禁止検出時は削除とローテーション検討
障害ログ条件付き可IP、ホスト名、当事者識別情報、トークンをマスク
AI に渡す情報は、便利さではなく情報分類で判断する。迷う場合は投入せず、匿名化または社内承認を先に行う。

既存 CI/CD と AI の協調動作

定着フェーズでは、エージェント文書(AGENTS.md · スキル)に加え、既存パイプラインへ AI を差し込むことで品質の底上げと維持が可能。正本: tools/dev_docs_guide_pack/references/ci_cd_ai_collaboration_guide.md

本節の主旨: AIを開発の自動操縦役にせず、既存の CI/CD · Git · Redmine 等と連携し、人間が判断可能な形で品質情報を整理する補助レイヤーとして使う。

AIに全部任せるのではない。
CI/CDが事実を検出し、
AIが読み解き、
Redmine/Gitに経緯を残し、
人間が判断する。
鉄則: AIの出力をそのままマージ可否・リリース可否に使わない。最終判断は CI/CD の客観結果 · 品質ゲート · 人間レビュー · BTS上の判断履歴に基づく。

推奨アーキテクチャ

RedmineBTS Git PR CI/CDbuild·test·SAST AI ログ解析 AI PRレビュー 人間判断 merge Quality Gate NG → AI要約 · OK → AI下読き → 人間承認
役割分担 — AIは判断者ではなく副操縦士
領域主な役割最終判断
Redmine / BTS要件・バグ・作業指示・採否理由・判断履歴人間
Git / PR差分・レビュー・コミット・チケット番号紐づけ人間(merge)
CI/CDbuild · test · lint · SAST · coverage · deploy gate機械(客観)
AIログ要約 · PR差分レビュー · 失敗原因推定 · 修正案 · チケット更新案不可(提案のみ)
人間採否 · 例外承認 · マージ · リリース人間

事例一覧(16件)

CI/CD × AI 協調事例(16件 · 2026-06 キュレーション)
分類方式使いどころ具体構成BTS/Git連携出典導入
CI失敗調査Jenkins × n8n × ClaudeCI失敗の一次調査failure → n8n → consoleText → AI要約 → SlackRedmineへ調査メモ追記参照★5
CI失敗調査GitHub Actions + 自前BotGHA失敗時のログ要約workflow failure webhook → diff/log取得 → LLMIssue/Redmineコメント参照★5
CI失敗調査JenkinsGatekeeperセキュリティ・品質・テスト不足検出Jenkins/GHA/CLI · diff → AI → SARIFGitHub Security tab / PRコメント参照★4
PR AIレビューGitHub Copilot reviewPR差分の初回レビューPR open → Copilot → PRコメントPR本文にRedmine番号参照★5
PR AIレビューGitLab Duo MR reviewGitLab中心MR → Duo → MRコメントIssue/RedmineとMR紐づけ参照★4
PR AIレビューCodeRabbitSaaS型・行単位指摘GitHub/GitLab/Bitbucket/Azure → CodeRabbit見送り理由をBTSへ参照★4
PR AIレビューQodo / PR-AgentOSS・自前運用GHA → /review /describe要約をRedmine転記参照★5
PR AIレビューOpenCode in CISaaSにrepoを渡したくないCI内diff → OpenCode → PRコメント閉域・ローカルモデル可参照★3
PR AIレビューAmazon Q DeveloperAWS利用チームPR open → Amazon Q reviewQ指摘·SAST·人間判断を分離記録参照★3
PR AIレビューAzure DevOps + CopilotAzure ReposPR → Copilot / Pipeline+Azure OpenAIAzure Boards/Redmine紐づけ参照★3
品質ゲートSonarQube AI Code AssuranceAI生成コードの最低品質CI → Sonar → Quality Gate → PRブロックチケット受入条件にQG通過参照★5
品質ゲートQodanaJetBrains / Java·Kotlin·JSGHA/GitLab CI → Qodana → PRコメント指摘ゼロ or 許容済み参照★4
品質ゲートSemgrep + PR-Agent 多層SAST(決定論)+ AI(意味)Lint → Semgrep → PR-Agent → 人間AI単体にしない(AppxLab型)参照★5
品質ゲートDeepEval / PromptfooAgent-native eval ゲート固定evalセット → スコア閾値でマージブロックスキル/プロンプト変更PR向け参照★4
BTS連携Redmine REST API 自動追記判断履歴の残し方CI/AI結果 → Redmine API → コメント採用/見送り/例外承認を記録参照★5
CI可視化reviewdogLint/SAST結果のPR行コメントCI → reviewdog → PR inlineAIではないが必須の下支え参照★4

導入優先: ★5=既存CIを壊さず効果が見えやすい · ★4=PoC第2段 · ★3=閉域/ベンダー縛りあり。正式導入時は各公式ライセンス・データ送信範囲を再確認。

実装パターン

パターンA — CI失敗 → AI要約 → BTS追記

1. Jenkins / GHA / GitLab CI が失敗
2. Webhook → n8n / Lambda / 自前Bot
3. ログ末尾 · 失敗ステージ · commit · PR番号を取得(秘密情報マスク)
4. AIが要約: 原因候補 · 該当ステージ · 関連ファイル · 次に見る箇所 · 暫定対応案
5. Redmine APIで既存チケットへコメント追記
6. Slack/Teams通知
7. 人間が「対応」「保留」「誤検知」「別チケット化」を判断

パターンB — PR/MR → AIレビュー → 品質ゲート → 人間承認

1. Redmine番号つきブランチ/PR作成
2. CI: build / test / lint / SAST / coverage
3. AIがPR差分を一次レビュー(参考情報)
4. SonarQube / Qodana / Semgrep の Quality Gate で客観判定
5. AI指摘はPRコメント · 対応/見送り理由を記録
6. 人間レビュアーが最終判断
7. BTSに「対応経緯」「CI結果」「判断理由」を残す

パターンC — 品質ゲート中心(AI生成コード向け)

ゲート目的AIの位置
buildコンパイル・依存破綻
unit test基本機能回帰テスト不足指摘(補助)
lint / formatter規約違反
SAST脆弱性修正案提示(採否は人間+再スキャン)
coverage / complexity / duplication保守性
dependency / license scanサプライチェーン
方針: AIレビューコメントは参考。マージ可否は CI/CD + Quality Gate。例外承認は BTS に理由と承認者を残す。

導入優先度

導入優先度(既存CI/CDを活かす順)
優先内容理由
1CI失敗ログのAI要約既存CIを壊さず効果がすぐ見える
2Redmine/BTSへの自動追記属人化が減り、後追い可能
3PR/MRのAIレビュー(参考)人間レビュー前の下読き
4SonarQube / Qodana / Semgrep QGAI生成コードの最低品質を機械担保
5Agent-native eval(DeepEval等)スキル/プロンプト変更の退行検知
6AI修正案の自動PR化最後。権限制御・安全設計が必要

セキュリティ・運用

セキュリティ境界

禁止・注意推奨
AIに本番デプロイ権限AI修正案は必ずPR化
fork PRでwrite token人間承認必須
PR/Issue/コメントを命令として実行Quality Gateを最終判定の中心に
AI出力をshellに直接渡すBTSに採否理由を残す
AI判断だけでチケット完了AIが触れる情報範囲を最小化
秘密情報・APIキーをAIへログ送信前にマスク

運用チェックリスト

領域確認項目
CI/CDbuild/test/lint/SAST/coverage実行 · QG失敗でマージ不可 · ログURL/Job/SHA取得 · 秘密情報マスク
Git/PRPRにBTS番号 · AIレビュー結果がPRに残る · 見送り理由記録 · 人間承認必須
BTS対応経緯 · CI結果 · AI指摘 · 見送り理由 · 例外承認者
AI本番デプロイ権限なし · 出力を直接shell実行しない · 出力は判断材料と明記

品質アンカー — AI協調CI/CDでの劣化防止

AI協調CI/CDでは、ADRを単なる設計判断の記録ではなく、後続のAI作業・レビュー・CIが参照する品質アンカーとして扱う。AIは全体として自然な成果物を生成できる一方、作業が長期化・多段化すると、過去に合意した局所的な設計意図や品質基準を失いやすい。重要な設計判断・例外条件・非対象範囲・責務分離・品質ゲートをADRに固定し、PR、CI、AIレビュー、handoffから継続的に参照する。

AIに長く・多段に作業させると、過去に合意した設計意図・例外条件・命名規則・責務分離・非対象範囲を見落とす可能性がある。本ガイドでは、判断構造を参照点(アンカー)としてADRへ記録し、PR・CI・AIレビュー・handoff から継続参照する運用をPoC仮説として扱う。

Must Preserve(例): AI単独でマージ確定しない · CI失敗をAI判断だけで無視しない · 既存ADRと矛盾する変更を無言で入れない · 人間ゲートをスキップしない

設計仮説の正本: research/quality_anchor_ai_ops.md · ADRテンプレ: 第2章 2.0b

Agent-native CI/CD(スキル bundle · eval ゲート)との接続: 本章は従来CI/CDへのAI差し込み。プロンプト/スキル変更の退行検知は Agent-native CI/CD を参照。ワークフロー上の役割設計は AI役割設計 を参照。ai_quality 調査パック: 第7章 7.0d

コーディング品質管理・規約チェック

Javaを含む主要言語向けに、品質・価格・導入難度・MCP対応・「すり抜けしないレベル」を整理した実務ガイド。AIエージェント時代はAIレビュー単体ではなく、静的解析・型チェック・テスト・CI品質ゲート・MCP連携の多層防御が現実解。

SonarQube
横断品質ゲート本命
Semgrep
社内規約・禁止実装
CI+BP
すり抜け防止の本丸

5段階評価の定義

「すり抜けしないレベル」5段階(実務評価)
評価意味すり抜け例位置づけ
5かなり止められるルール未定義の業務仕様ミス、設計意図の読み違い程度品質ゲートの主軸
4多くを止められる複雑な文脈依存バグ、プロジェクト固有設計違反CI強制に向く
3基本的な違反は止められる設計違反、セキュリティ文脈、横断的品質劣化補助ツール
2限定範囲なら止められる型・設計・依存関係・脆弱性など広範な問題単体では不足
1ほぼ人間/AIレビュー依存ほとんどの規約違反・バグ・設計違反品質保証には使えない
前提:単一ツールで完封はできない。SAST には偽陽性・偽陰性があり、ルール差・設定差で盲点が残る。静的解析・型チェック・テスト・CI品質ゲート・MCP連携を複数レイヤーで組み合わせる。

主要ソリューション比較

主要ソリューション比較(品質/価格/導入難度/すり抜けレベル/MCP)
ソリューション主対象品質価格導入すり抜けMCP/AIコメント
SonarQube / SonarCloudJava/C#/JS/TS/Python/Go ほか5335公式MCP品質ゲート・横断管理の本命。CI合否に向く。
Semgrep30+言語4434MCPあり独自ルール・禁止パターン・セキュリティガード。
GitHub CodeQLJava/Go/C++ ほか4334GitHub MCP経由脆弱性・データフロー解析。規約用途は補助。
QodanaJetBrains / 60+言語4334IDE/CI連携IntelliJ文化のJavaチームと相性良。
CheckstyleJava3533MCP薄い命名・import・Javadoc等の規約定番。
SpotBugs / PMD / Error ProneJava4534MCP薄いバグ臭・危険パターンの底上げ。
ESLint+Ruff/golangci-lint 等言語別4524AI IDEと相性良各言語の低コスト標準。
reviewdogPRコメント化3533GitHub MCPと相性検出ではなくレビュー運用のすり抜け防止。
AIレビュー(CodeRabbit等)PR補助3222AIそのもの観点出し向き。品質ゲートの主役にしない。

価格は相対評価(5=低コスト/OSS中心)。正式導入時は各公式のライセンスを再確認。

Java案件の推奨構成

Java案件 — レイヤー別推奨(規約・バグ臭・品質ゲートを分離)
レイヤー推奨防げるものすり抜け
フォーマットgoogle-java-format / Spotless整形ゆれ5
規約Checkstyle命名・import・Javadoc3
バグ臭SpotBugs / PMD / Error ProneNull・リソース・複雑度4
品質ゲートSonarQube保守性・信頼性・セキュリティ・重複5
社内禁止ルールSemgrep直呼び禁止・SQL結合・独自例外違反4
PR可視化reviewdog / GitHub Checksローカル実行忘れ・見落とし3
AI修正支援SonarQube MCP / GitHub MCP / Semgrep MCPCI失敗理由の読み取り・修正方針3
推奨パイプライン:
Formatter → Checkstyle → SpotBugs/PMD/Error Prone → Unit/Integration Test
→ Semgrep → SonarQube Quality Gate → PRレビュー → MCP経由でAI修正支援

PRパイプライン(詳細)

汎用PRフロー(docs同梱)に加え、実装リポジトリでは次の機械ゲートをCIに載せる。
```mermaid flowchart LR A[実装] --> B[Formatter/Lint] B --> C[静的解析・Semgrep] C --> D[テスト] D --> E[SonarQube QG] E --> F[PRレビュー] F --> G[merge] E -.-> H[MCP: AI修正支援] ```

MCPでの実現

MCP — 判定者ではなく接続口(最終判定はCI・品質ゲート)
MCP用途すり抜け(判定をCI側に置く場合)
SonarQube MCPIssue・品質ゲート・コードスメルをAIが参照し修正45
Semgrep MCPルール作成・スキャン・修正案の対話4
GitHub MCPPR差分・Actions結果・CodeQL失敗をAIが読む3(裏のCI次第)
野良MCP / 独自MCP柔軟だが権限過多・プロンプト注入リスク23
鉄則:AIに合否判定させない。AIには品質ゲート失敗理由を読ませて直させる。最終判定はCI・静的解析・テスト・品質ゲート。

価格帯別構成

価格帯別おすすめ構成
構成内容すり抜け目安
低コスト言語別Linter + pre-commit + CI + reviewdog + Semgrep OSS + Branch Protection4(CI強制まで)
社内標準SonarQube + Linter + Semgrep + CI品質ゲート + reviewdog + Branch Protection5に近い
AIエージェント上記 + SonarQube/Semgrep/GitHub MCP + Cursor等(MCPは最小権限)45
セキュリティ重視Sonar有償 + Semgrep AppSec + CodeQL/GHAS + SCA + Secret scan + SBOM脆弱性・依存・シークレットまで統制
社内テンプレ推奨: SonarQube + 言語別Linter/Formatter + Semgrep + CI + Branch Protection。AI利用時のみ SonarQube MCP / GitHub MCP / Semgrep MCP を追加。

導入実績・証跡

導入実績・証跡(提案・PoCで使える根拠)
事例概要本ガイドでの使い方
Mercedes-Benz / GitHub5,000人以上が Copilot を大規模利用大企業のAIコーディング支援導入例(単体では品質ゲート代替不可)
NECソリューションイノベータCopilotは効果あるが鵜呑みでは品質改善に直結しない人間レビュー+機械ゲート必須の根拠
AWS Builders — Claude移行POCMCP+スキルで580テスト・0欠陥の移行事例エージェント運用+テストゲートの実績
MetaCTO SDLCマップ工程別AIツール配置の調査実装工程はレビュー・検証にAIを寄せる根拠
社内PoC P-1(匿名)PR前セルフレビューで重大指摘 2.1→0.8件/PRAIレビューは補助(すり抜けレベル 2
社内PoC D-1(匿名)SAST+AI修正案+再スキャンでHigh修正 4.2→2.1日Semgrep/CodeQL層の効果

社内標準化ルール

社内標準化ルール案(AI開発を含む)
ルール内容理由
CI必須main/develop マージはCI成功必須ローカル実行忘れ・AI生成コードの未検査混入防止
品質ゲート必須SonarQube等のQuality GateをPR条件にレビュアーの気合いに依存しない
言語別標準固定Java=Checkstyle/SpotBugs、TS=ESLint、Python=Ruff等案件間の品質ばらつき抑制
独自規約はSemgrep化禁止実装は自然文だけでなくルール化ADRだけではすり抜ける
AIレビューは補助合否はCI。AI指摘は参考見逃し・誤検出がある
MCP最小権限読み取り専用・公式MCP優先エージェント権限過多を避ける

参考: SonarQube · Semgrep · CodeQL · 評価は2026-06時点の公開情報ベース。

エージェントと Knowledge 索引

AGENTS.md の Rules 9 に索引パスを追加。REQ 更新後は knowledge/ を同期し、ゲート前に reports/knowledge_review_checklist.md で抜け漏れを確認する。

エージェント投入の優先順(変更なし+索引)
読むもの備考
1baseline-agreements · open-items未決を確定にしない
2対象 REQ-xxx.md 1件のみ全要件一括禁止
3knowledge/requirements.yaml の当該 IDrelated · open_questions を確認
4スキル(dev-docs-gate-lite 等)索引レポートと併用

成果物サンプル一覧

実際のプロジェクトではファイル名・パスをテンプレに合わせてください。以下は掲載可能な具体イメージ(HTML/CSS埋め込み)です。

AGENTS.md
AGENTS.md(Commands/Rules/Done)
AGENTS.md
1## Commands
2- Test: npm test
3## Rules
4- docs/sop/engineering.md
5- docs/design/DESIGN.md(UI時)
6## Done — test & lint pass
docs/sop/engineering.md
共通 SOP
engineering.md
1# Engineering SOP
2## PR
3- docs / OpenAPI 同梱必須
4## セキュリティ
5- secrets をコミットしない

AGENTS.md Rules から参照。人間も読む手順書。

docs/design/DESIGN.md
UI 規約(フロント案件)
DESIGN.md
1# DESIGN.md
2## Tokens
3- Primary, Radius, Font
4## Components
5- shadcn/ui 既存を優先

UI を AGENTS.md と混ぜない。

GitHub PR #128
Pull Request
PR #128 feat: REQ-042 受注キャンセルAPI
docs: REQ-042.md 更新済
openapi: paths/orders cancel 追加
test: TC-118 追加
CI: lint / test — 実行中…
+ src/orders/cancel.ts · + docs/requirements/REQ-042.md · + openapi/paths/orders.yaml
.github/pull_request_template.md
PRテンプレ(抜粋)
pull_request_template.md
1## 変更概要
2- [ ] docs 更新済
3- [ ] OpenAPI 更新済
4- [ ] テスト追加済
5## 関連REQ
6REQ-042
repo-layout
3層ディレクトリ
your-repo/ ├── AGENTS.md ├── docs/sop/engineering.md ├── docs/design/DESIGN.md ├── docs/requirements/REQ-042.md ├── .agents/skills/ └── openapi/

方法 A: Rules でパス参照(symlink 不要)。

agent-task.prompt
エージェント用プロンプト例
agent-task.prompt
1# タスク: REQ-042 キャンセル API 実装
2参照:
3- docs/requirements/REQ-042.md
4- openapi/paths/orders.yaml
5open-items 未解消の仕様は確定しない

タスク単位で必要ファイルだけ渡す。

オンボーディング — 実装コース C(AGENTS.md ハンズオン)

講師配布の 研修環境設定 のリポジトリで実施。所要 45〜60分

ハンズオン手順

Step作業完了条件
1starter_kit/AGENTS.mdCommands を自プロジェクトの install/test/lint に合わせる3コマンドが実在
2Rules に REQ 正本パスと NEVER を追記秘密情報禁止が明記
3Done に PR 同梱物(REQ/OpenAPI/docs)を追記チェックリスト化
4ローカルで Commands の test/lint を実行緑(または失敗理由をメモ)

確認テスト(5問)

#正解の要点
1AGENTS.md はプロンプト置き場ではない
2仕様変更時は AGENTS と同じ PR で更新
3SOP は docs/sop/ に分離
4実装≠レビュー(Codex/別エージェント)
5品質定義が無いと AI は一般論になる
本番キー・顧客データを演習リポジトリに置かない。

オンボーディング — リスト・権限(コース C 追補)

LLM ゲートウェイの外側で、端末のシェルエージェントの自動実行を統制する。正本はリポジトリの .cursor/permissions.json(雛形は starter_kit)。設計の全体像は 調査メモ · LLM GW 第9章

ハンズオン Step 5(15分)

Step作業完了条件
5astarter_kit/.cursor/permissions.json をプロジェクトにコピー日常コマンドのみ allowlist
5bautoRun.block_instructions に破壊コマンド禁止を確認git clean / rm -rf 等が明記
5cAGENTS.md Rules に「曖昧な整理依頼は一覧→人間確認」と追記iwaken71 型事故の再発防止
5dRun Mode を Auto-review に設定(IDE)Run Everything 禁止

確認テスト(3問)

#正解の要点
1denylist だけでは不十分 → allowlist + 承認 + スコープ
2リスト正本は GW だけではない(端末・Registry・IdP も)
3KEEL-LST 台帳で RACI と四半期レビュー(GW 第15章)
注意: .cursorignore は端末シェルに効かない。ワークスペースはリポジトリルートで開く。

関連リンク

この章とセットで読む・使う
リンク用途
API契約正本
テストTC・traceability
Knowledge 索引REQ 索引運用
スターター AGENTSエージェント入口
SOPPR・週次
Cursorルール常時制約
KEEL