news 2026/9/10 12:55:54

ECC 調査コンテキスト実践ガイド——リサーチファーストで「行動の前に理解する」Agent モードを組み込む

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
ECC 調査コンテキスト実践ガイド——リサーチファーストで「行動の前に理解する」Agent モードを組み込む

ECC 調査コンテキスト実践ガイド——リサーチファーストで「行動の前に理解する」Agent モードを組み込む

【免费下载链接】ECCThe agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.项目地址: https://gitcode.com/GitHub_Trending/ev/ECC

本ガイドは、ECC(Everything Claude Code)仓库的contexts/research.md(調査コンテキスト)を主軸に、動的システムプロンプト注入による「調査・探索・学習モード」の設計思想・実装・運用方法を解説する。読者は、AI エージェントに「結論を急がせず、証拠を集めてから動く」調査プロセスを組み込む方法、claude --system-promptによるコンテキスト切り替え、調査プロセスの5ステップ、推奨ツールの使い分け、アウトプット規約(Findings first, recommendations second)を学べる。

はじめに:調査コンテキストとは何か

ECC のリポジトリには、エージェントの行動様式を切り替えるための動的システムプロンプト注入コンテキストが用意されている。contexts ディレクトリには以下の3つのモードが定義されている:

ファイルモードフォーカス
contexts/dev.md開発モード実装・コーディング・機能構築
contexts/review.mdコードレビューモード品質・セキュリティ・保守性
contexts/research.md調査モード(日本語版: docs/ja-JP/contexts/research.md)探索・調査・学習

このうち調査コンテキスト(research.md)は、「行動の前に理解する(Understanding before acting)」を核とする、探索・調査・学習専用のモードである。README のディレクトリ構成にもresearch.md # Research/exploration mode context(README.md)として明記されている。

このコンテキストの役割は、コード生成や実装よりも調査そのものを優先させることにある。未知のコードベースに触れるとき、仕様を確定させる必要があるとき、技術選定を行うときなど、結論を出す前に十分な情報収集を行いたい場面で活用する。

調査コンテキストの設計思想:リサーチファースト開発

ECC は README で自らを「research-first development(リサーチファースト開発)」を掲げるシステムと位置づけている(英語版 README.md 冒頭、および docs/de-DE/README.md の "research-first-Entwicklung" という記述にも同様の思想が見られる)。

リサーチファーストとは、コードを書く前に調査・検証を完了させる開発スタイルであり、調査コンテキストはこの思想を実行可能なプロンプトとして具体化したものである。dev.mdが「まずコードを書き、後から説明する(Write code first, explain after)」という対照的なスタンスを取る(contexts/dev.md)のに対し、research.mdは「理解が明確になるまでコードを書かない」という逆方向の規律をエージェントに課す。

この2つのコンテキストを状況に応じて切り替えることで、同一のエージェントを「調査フェーズ」と「実装フェーズ」で最適な振る舞いに遷移させられる。これが ECC の動的システムプロンプト注入アーキテクチャの中核的な価値である。

振る舞い規約:調査モードの4つの行動原則

調査コンテキストが定義する振る舞い(Behavior)は以下の4つである:

  1. 結論を出す前に広く読む(Read widely before concluding):1つのファイルや1つの説明だけを見て判断せず、関連するコード・ドキュメント・履歴を横断的に読む。
  2. 明確化のための質問をする(Ask clarifying questions):要件や疑問点が曖昧な場合、推測で進めずユーザーに確認を取る。
  3. 進めながら発見を文書化する(Document findings as you go):調査中に得た発見を後回しにせず、その場でメモ・文書として記録する。
  4. 理解が明確になるまでコードを書かない(Don't write code until understanding is clear):理解が曖昧なまま実装に進むことを禁止する。

これらの原則は、調査モードが「探索・調査・学習」を目的とし、「実装」を目的としないことを明確にする。特に原則4は、リサーチファースト開発の中核であり、早すぎる実装による手戻りコストを防ぐ効果がある。

調査プロセス:5ステップのループ

調査コンテキストは、調査を以下の5ステップの反復プロセスとして定式化している:

ステップ内容対応する原則
1. 質問を理解する調査対象の質問・問題を正確に把握する明確化のための質問
2. 関連するコード/ドキュメントを探索する関連箇所を広く読み、情報を集める結論を出す前に広く読む
3. 仮説を立てる収集した情報から暫定的な結論を形成する
4. 証拠で検証する仮説をコードやドキュメントで検証する証拠に基づく判断
5. 発見をまとめる検証済みの知見を整理・文書化する発見を文書化する

このループの要点は、仮説(ステップ3)が必ず証拠(ステップ4)を通ることにある。推測だけで結論を出さず、実際のコード・設定・テスト結果で裏付けを取ることで、誤った理解に基づく実装を未然に防ぐ。

なお、ECC のリポジトリには調査プロセスをそのまま体現したスクリプト群が存在する。たとえば scripts/consult.js、scripts/session-inspect.js、scripts/discussion-audit.js などは、コードベースやセッション記録の調査・分析を目的としており、調査モードの「読み・検証・文書化」の流れを自動化した実例と見なせる。

推奨ツールの使い分け

調査コンテキストは、調査目的に応じたツールの使い分けを定義している:

目的推奨ツール
コード理解Read(ファイル全体・部分を読む)
パターン検索Grep、Glob(正規表現検索・ファイル発見)
外部ドキュメントWebSearch、WebFetch
コードベース全体への質問Task(Explore エージェントと併用)

この使い分けのポイントは、「読む」と「検索する」と「外部に問い合わせる」の3層を分離していることである。コードの全体像は Read で、パターンやシンボルの所在は Grep/Glob で、外部ライブラリや仕様は WebSearch/WebFetch で、コードベース横断の質問は Explore エージェントへの Task で、という役割分担により、調査の効率と正確性が両立する。

ECC のリポジトリ自体も、Grep/Glob 的な調査ツールを活用できる構成になっている。たとえば scripts/lib には132以上の JS ライブラリが、src/llm には20の Python モジュールが配置されており、未知の機能を調査する際は Read と検索ツールを組み合わせて利用するのが調査モードの典型パターンである。

アウトプット規約:Findings first, recommendations second

調査コンテキストの最終セクションは、アウトプットの順序規約を定義している:

発見を最初に、推奨事項を次に(Findings first, recommendations second)

これは、調査結果を報告する際、まず検証済みの事実(発見)を提示し、その後でアクション(推奨)を提案するという順序を強制するものである。理由は2つある:

  1. 読者(ユーザーや下流のエージェント)が、推奨事項の根拠となる事実を先に確認できる。
  2. 推奨事項だけを先に述べると、その前提となる理解が共有されていないため誤解を生む。

この規約は、ECC のリポジトリ内の他の文書にも通底する原則である。たとえば調査・分析系のスクリプトやドキュメントは、事実の列挙を先に置き、その後にアクションを提案する構成を取るものが多く、この「証拠→結論」の順序がリサーチファースト開発の要となっている。

実践:調査コンテキストをシステムプロンプトとして組み込む

調査コンテキストは単独のファイルとしても有用だが、ECC の長文ガイド(the-longform-guide.md)で解説されている動的システムプロンプト注入の仕組みを使えば、セッション起動時に調査モードとして組み込める。

システムプロンプトの権限階層

the-longform-guide によれば、システムプロンプトはツール結果やユーザーメッセージよりも上位の権限を持つ(the-longform-guide.md):

システムプロンプト(最高権限) > ユーザーメッセージ > ツール結果(最低権限)

そのため、--system-promptで調査コンテキストを注入すれば、そのセッション全体で調査モードの振る舞い規約が最も強い拘束力を持つことになる。CLAUDE.md.claude/rules/に常設するのではなく、必要なセッションだけに注入する「外科的(surgical)」な運用が推奨される。

CLI による注入コマンド

直接注入する場合:

claude --system-prompt "$(cat ~/.claude/contexts/research.md)"

日本語版を使用する場合:

claude --system-prompt "$(cat ~/.claude/contexts/research.md)" # 英語版 claude --system-prompt "$(cat docs/ja-JP/contexts/research.md)" # 日本語版(リポジトリ内)

alias による常時切り替え

the-longform-guide が示す実践的な設定として、モード別の alias を用意する方法がある(the-longform-guide.md):

# 日常の開発 alias claude-dev='claude --system-prompt "$(cat ~/.claude/contexts/dev.md)"' # PR レビューモード alias claude-review='claude --system-prompt "$(cat ~/.claude/contexts/review.md)"' # 調査・探索モード alias claude-research='claude --system-prompt "$(cat ~/.claude/contexts/research.md)"'

この設定により、claude-researchと打つだけで調査モードのセッションが起動し、claude-devで実装モードに切り替える、という流れで「調査→実装」をシームレスに遷移できる。

セットアップ手順

  1. リポジトリのcontexts/ディレクトリ(英語版: contexts/research.md、日本語版: docs/ja-JP/contexts/research.md)をローカルの~/.claude/contexts/にコピーする。
  2. 上記の alias 定義を~/.bashrcまたは~/.zshrcに追加する。
  3. source ~/.bashrcで反映し、claude-researchを実行して動作確認する。

なお、調査コンテキストは Claude Code の--system-promptだけでなく、システムプロンプトを動的に注入できる他のハーネス(Codex、Opencode、Cursor 等)でも同様のパターンで利用できる。ECC はこれら複数ハーネス対応を方針としており(AGENTS.md)、コンテキストファイルはハーネス非依存のプレーンテキストとして設計されている。

調査モードの運用フロー例

調査コンテキストを実際の開発フローに組み込む例:

  1. 要件受領: 未知の機能や既存コードベースへの変更依頼を受け取る。
  2. claude-researchで調査セッションを開始: 調査モードの振る舞い規約が有効になる。
  3. 5ステップの調査プロセスを実行: 質問の理解 → 関連コードの探索(Read/Grep/Glob)→ 仮説 → 証拠による検証 → 発見のまとめ。
  4. Findings first で報告: 検証済みの発見を先に提示し、推奨事項を後に付す。
  5. claude-devで実装セッションに切り替え: 調査結果に基づいて実装を開始する。

このフローにより、「調査と実装のモード混在」による質の低下(調査不足のまま書いたコード、実装意図が不明瞭な調査報告)を防げる。

まとめ

調査コンテキスト(contexts/research.md、日本語版docs/ja-JP/contexts/research.md)は、以下の要素で構成されるリサーチファースト開発の基盤である:

  • モード定義: 探索・調査・学習モード、フォーカスは「行動の前に理解する」
  • 4つの振る舞い規約: 広く読む / 質問する / 文書化する / 理解が明確になるまでコードを書かない
  • 5ステップの調査プロセス: 質問理解 → 探索 → 仮説 → 証拠検証 → まとめ
  • 推奨ツール: Read / Grep・Glob / WebSearch・WebFetch / Task(Explore エージェント)
  • アウトプット規約: 発見を最初に、推奨事項を次に

ECC の動的システムプロンプト注入(claude --system-prompt "$(cat ~/.claude/contexts/research.md)")と組み合わせれば、エージェントの行動様式をセッション単位で外科的に切り替えられる。調査フェーズと実装フェーズを明確に分離し、「理解してから動く」エージェントを構築したい開発者にとって、このコンテキストは即座に実戦投入できる最小構成のモード切り替え機構である。

【免费下载链接】ECCThe agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.项目地址: https://gitcode.com/GitHub_Trending/ev/ECC

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/10 12:55:17

CANN/ge ACL设置数据集张量描述

aclmdlSetDatasetTensorDesc 【免费下载链接】ge GE(Graph Engine)是面向昇腾的图编译器和执行器,提供了计算图优化、多流并行、内存复用和模型下沉等技术手段,加速模型执行效率,减少模型内存占用。 GE 提供对 PyTorch…

作者头像 李华
网站建设 2026/9/10 12:55:10

Baklib知识管理平台在IT团队中的实践与价值

1. Baklib在软件与信息技术行业的应用价值Baklib作为新一代知识管理平台,正在深刻改变软件与信息技术行业的知识协作方式。这个基于AI的知识库解决方案,完美契合了技术团队在文档管理、知识沉淀和协作效率方面的核心需求。我亲历过多个技术团队从传统Wik…

作者头像 李华
网站建设 2026/9/10 12:53:05

Lidar避障强化学习系统:SAC-Auto算法与PyTorch轻量实现

简介:本资源是一套基于PyTorch实现的SAC-Auto强化学习算法激光雷达小车避障仿真系统,面向计算机、自动化、人工智能等专业的本科生与研究生,适用于课程设计、毕业设计及竞赛项目开发。项目完整复现了Lidar环境感知、动态/静态障碍物规避、策略…

作者头像 李华
网站建设 2026/9/10 12:52:27

中草药YOLO目标检测数据集:从标签解析到训练验证全流程

简介:面向需要训练YOLO模型的目标检测开发者和学习者,这份中草药图像数据集按YOLOv5目录结构整理,已划分训练集、验证集和测试集,可直接用于YOLO检测训练。数据包含8个类别(如Cardamom、Cumin、Neem等)&…

作者头像 李华
网站建设 2026/9/10 12:52:07

Python流程控制核心技巧与实战应用

1. 为什么流程控制是Python编程的基石刚接触Python的新手常会陷入一个误区——把编程语言简单理解为"写命令的语法"。但真正要写出有用的程序,关键在于控制代码的执行逻辑。这就好比做菜时只知道食材和调料还不够,必须掌握火候控制和步骤顺序才…

作者头像 李华
网站建设 2026/9/10 12:51:01

Sunshine 自托管游戏串流服务器教程:把 PC 游戏串到任何设备

Sunshine 自托管游戏串流服务器教程:把 PC 游戏串到任何设备 【免费下载链接】Sunshine Self-hosted game stream host for Moonlight. 项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine Sunshine 是一款免费开源的自托管游戏串流服务器&#xff…

作者头像 李华