本文へスキップ
Pathrule

ドキュメント

Codex CLI

Pathrule CLIがフック、AGENTS.md、MCPを通じてCodex CLIを接続する仕組みと、CodexがRemote MCP経由でワークスペースに接続する方法を説明します。

このページの内容

Codex CLIは、Pathrule CLIまたはVS Code拡張機能を通じてPathruleのワークスペースに接続します。連携は3つの要素で構成されます。Codexネイティブのフック、ワークスペースのルートに置く補助ファイルAGENTS.md、そして他のクライアントと共通のMCPツール群です。Pathruleがプロンプト送信フックで関与できるクライアントは、Claude CodeとCodexの2つです。

このページでは、連携のためにプロジェクトへ書き込まれる内容、Claude CodeやCursorの流れとの違い、動作確認の方法を説明します。

Pathruleが書き込むもの

Codex CLIにPathruleをインストールすると、次のものが用意されます。

  • MCPサーバーのエントリ:~/.codex/config.tomlに追加され、アシスタントがpathrule_*ツールを呼び出せるようになります。このファイル内の他のサーバー設定はそのまま残ります。
  • .codex/hooks.json:プロジェクト内に置かれるフックの登録情報です。マージして書き込むため、自分で追加したフックは保持されます。
  • プロジェクトの.codex/config.toml内のマーク付きブロック:Codexのフックを有効にします。ファイルのそれ以外の部分はユーザーのものであり、変更されません。
  • AGENTS.md:ワークスペースのルートに置かれます。フックをインストールした場合、Pathruleが書き込むのは、Pathruleが有効でありフック経由で配信されることを示す短い注記だけです。
  • 展開されたスキル:.agents/skills/<name>/SKILL.mdに置かれ、Codexが名前で呼び出せるようになります。

AGENTS.mdは、CodexにおけるCLAUDE.mdに相当するファイルです。Codexのフックをインストールした場合、プロトコルはファイルではなくSessionStartフックで届き、パスに紐づくナレッジはプロンプトフックとツールフックで届きます。そのため、プロトコルのコピーやナレッジのファイルがツリーに書き込まれることはありません。フックがない場合は、AGENTS.mdにプロトコル全体とワークスペースの概要が入り、さらにナレッジが紐づいた各ディレクトリにPathruleがAGENTS.mdを追加します。Codexは作業がそのディレクトリに入ったときにこれを読み込みます。

フックの対応範囲

Codexのフックの仕様はClaude Codeのものに近く、Pathruleはセッション開始、プロンプト送信、ツール実行前、ツール実行後、停止の各フックを登録します。

  • セッション開始:ワークスペースのメタデータ、プロトコル、チームのコンテキストをセッションごとに1回届けます。
  • プロンプト送信:プロンプトに合うルールとメモリでそのターンの範囲を絞り込みます。特に関連の強いメモリは本文全体を届けます。
  • ツール実行前:パッチやコマンドが触れるパスに適用されるものの名前を追加し、パッチが適用される前に、承認済みのブロックパターンを持つルールをチェックします。
  • ツール実行後:結果を記録します。
  • 停止:承認済みの必須チェックがある場合、そのコマンドが成功するまでターンを終了させずに保持します。

Claude Codeとの主な違いはツールの構成にあります。Codexは独立したEditツールやWriteツールではなく独自のapply_patch形式(*** Update File:マーカー付き)を使い、Readフックもありません。Pathruleの共通フックスクリプトはapply_patchを解釈し、影響を受けるパスをワークスペースのノードに対応付けて、パッチを編集として扱います。そのため、承認済みのブロックパターンを持つルールは、該当するパッチを適用前に止めます。アシスタントが提案したブロックパターンは、人が承認するまで強制されません。

投資の対象はクライアントではなくコンテンツレイヤーにあるため、同じメモリ、ルール、スキルがCodexにも他のすべてのクライアントにも使われます。

クライアントごとの分離

Codexは、同じマシン上でClaude CodeやCursorと共存できます。1つだけでも、2つでも、3つすべてでもインストールできます。どのクライアントも同じPathruleワークスペース、同じMCPサーバー、同じコンテンツツリーを共有しますが、各クライアントが読み込む設定は互いに独立しています。

インストール

Pathrule CLIを使う場合:

pathrule setup

プロジェクトのフォルダで実行し、使っているAIツールを尋ねられたらCodexを選びます。セットアップは、必要に応じてPathrule Cloudへのサインインを行い、フォルダをワークスペースに紐づけ、MCPのエントリをインストールし、このフォルダでの選択を記憶したうえでCodex用のファイルを書き込みます。アカウントなしでPathruleを使う場合は、代わりにpathrule setup --localを実行します。この場合、ナレッジはこのマシン上にとどまります。

すでに紐づけ済みのフォルダで各要素を手動で設定する場合:

pathrule install codex
pathrule sync
pathrule doctor

pathrule install codexは~/.codex/config.tomlにMCPのエントリを追加します。pathrule syncはフックスクリプトをインストールし、このフォルダで選んだAIツール向けのプロジェクトファイルを書き込みます。何も選んでいない場合は、フォルダ内で検出されたAIツールが対象になります。

VS Code拡張機能を使う場合は、Connect AI ClientsでCodexを選びます。拡張機能は同梱のCLIを通じて、同じMCPのエントリとフックの設定を書き込みます。

Remote MCP

Codexは、ローカルへのインストールなしでホスト型のエンドポイントに接続することもできます。

codex mcp add pathrule --url https://cloud.pathrule.io/mcp

続いて、PathruleアカウントでOAuthのサインインを完了します。Remote MCPでCodexが使えるのはMCPツールだけです。フックはインストールされず、ローカルにファイルは書き込まれず、ローカルモードもありません。詳しくはPathrule Remote MCPを参照してください。

動作確認

ワークスペースに紐づけたディレクトリでCodex CLIを開きます。セッション開始時にPathruleのセッションメタデータが届き、アシスタントが作業ディレクトリに対してpathrule_get_contextを呼び出せれば正常です。

コンテンツのあるパスに触れる簡単なプロンプトを実行してみてください。関連するルールとメモリがプロンプトと一緒に届き、アシスタントはMCPを通じてさらに詳しい情報を取得できます。何も届かない場合は、次を実行します。

pathrule doctor

doctorは読み取り専用です。サインインの状態、ワークスペース、このフォルダが紐づいているかどうか、CodexとそのほかのクライアントそれぞれにPathruleのMCPエントリがインストールされているか、フォルダ内にどのPathrule管理ファイルがあり、それを誰が書き込んだかを報告します。--jsonを付けると完全なレポートが出力され、もう存在しないランタイムを指しているMCPエントリも検出されます。pathrule repairは、古くなったエントリを書き直し、フックスクリプトとフックの設定を再インストールし、AGENTS.mdを再同期したうえで、もう一度doctorを実行します。

変わらないもの

コンテンツレイヤーはクライアントが変わっても同じです。

  • Claude Codeにフック経由で表示されるメモリは、Codexにも独自のフックとMCPツールを通じて同じように表示されます。
  • 承認済みのブロックパターンを持つルールは、Claude Codeで編集をブロックするのと同じように、Codexでも該当するパッチをブロックします。
  • スキルは名前で呼び出せます。

チームがあるアシスタント向けにコンテンツを書けば、すべてのアシスタントがそれを受け取ります。