Claude Code
Pathrule CLIがフック、指示ファイル、MCPを通じてClaude Codeを接続する仕組みと、Claude CodeがRemote MCP経由でワークスペースに接続する方法を説明します。
Claude Codeは、Pathrule CLIまたはVS Code拡張機能を通じてPathruleのワークスペースに接続します。Pathruleには2つの連携レイヤーがあります。エージェントが動く前にパス単位のコンテキストを送り込むフックと、Claudeが追加の情報を必要とするときに取りに行けるMCPツールです。Claude Codeは、Codexと並んで、Pathruleがプロンプト送信フックで連携する2つのクライアントのうちの1つです。
このページでは、プロジェクトに書き込まれる内容、2つのレイヤーの関係、そして連携をエンドツーエンドで確認する方法を説明します。
2つのレイヤー、1つのワークスペース
- フック(プッシュ)。 Claude Codeは、セッション開始時、プロンプトごと、そしてファイル操作やシェルのツール呼び出しの前後でPathruleのフックスーパーバイザーを呼び出します。スーパーバイザーはローカルキャッシュから事前に計算された部分を読み込み、コンテキストとして返します。
- MCPツール(プル)。 フックが渡す内容だけでは足りない場合(探索的なプロンプト、メモリの本文全体、書き込みなど)、Claudeは
pathrule_get_contextやpathrule_write_memoryといったツールを通じてPathrule MCPサーバーを直接呼び出します。
基本はフックで、より深く掘り下げるときはMCPツールを使います。どちらも同じコンテンツツリーをもとに動きます。
| イベント | Pathruleの動作 |
|---|---|
SessionStart | ワークスペースIDとルート、Pathruleのプロトコル、チームのコンテキストを、セッションごとに1回Claudeに渡します。 |
UserPromptSubmit | そのターンのスコープを決めます。プロンプトに合うルールとメモリを渡し、特に関連度の高いメモリは本文全体を、該当するスキルは名前を渡します。 |
PreToolUse | 読み取り、編集、書き込み、検索、シェルの呼び出しの前に、そのパスに適用される内容の名前と1行の概要を渡し、編集と書き込みではブロックパターンのチェックを、さらにチームメンバーとの競合チェックを行います。 |
PostToolUse | 失敗したツール呼び出しも含めて実行内容を記録し、セッションのアクティビティや繰り返し発生するつまずきを捕捉します。 |
Stop、SubagentStop、SessionEnd | ターンとセッションを閉じます。承認済みの必須チェックがある場合、そのコマンドが成功するまでここでターンを開いたままにできます。 |
関連ファイル
PathruleをClaude Codeにインストールすると、次のファイルが関係します。
~/.claude.json。 Claude Codeのユーザー設定です。PathruleはここにMCPサーバーのエントリを追加し、ほかのサーバーには手を加えません。- プロジェクト内の
.claude/settings.json。Pathruleはこのファイルにフックの登録をマージし、ユーザーが自分で追加したフックはそのまま残します。 CLAUDE.md。 フックがインストールされている場合、このファイル内のPathruleの領域は、Pathruleが有効でナレッジはフックで届けられる旨の短い注記になります。その領域の外に書いた内容はそのまま保持されます。.claude/rules/*.md。 後述のとおり、フックがインストールされていない場合にのみ書き込まれます。.claude/skills/<name>/SKILL.md。 ワークスペースに紐づけられたスキルで、Claudeが名前で呼び出せるようにファイルとして展開されます。
プロトコルとパスのナレッジは、ファイルに置く必要はありません。Claude Codeのフックがインストールされている場合、プロトコルはSessionStartフックで、ナレッジはプロンプトごと、ツールごとのフックで届くため、Pathruleは以前のバージョンで書き込んだプロトコルのコピーとナレッジファイルを削除します。フックの登録、短い注記、スキル以外には、ツリーに何も書き込みません。フックがインストールされていない場合、Pathruleはコンパイル済みのファイルを使う方式に切り替えます。具体的には、CLAUDE.mdにプロトコル全体とワークスペースの概要を、.claude/rules/pathrule-protocol.mdにプロトコルのコピーを、.claude/rules/pathrule-knowledge.mdにワークスペースのナレッジを書き込み、ナレッジが紐づいている各ディレクトリにCLAUDE.mdを作成します。
ルールの適用
ルールには優先度(high、medium、low)があり、表示される際の優先順位を決めます。優先度はブロックするかどうかを決めません。ルールがブロックするのは、承認済みのブロックパターンを持つ場合だけです。ブロックパターンとは、内容における禁止された書き方、ファイルの禁止された配置場所、またはその両方です。
- アシスタントは、ルールを作成または更新するときにブロックパターンを提案できます。提案はルールとともに提案として保存され、適用はされません。エージェントが承認することはできず、人が承認するまでは何もブロックされません。
PreToolUseでは、編集や書き込みの前に、フックが新しい内容と対象のパスを、そのパスに対して承認済みのブロックパターンを持つすべてのルールと照合します。優先度は問いません。- 一致するものがあれば、フックはファイルが書き込まれる前にツール呼び出しを拒否します。Claudeにはルール名、ルールのプレビュー、承認済みの「代わりにこうする」メッセージ、ルール全体への参照とともに
Pathrule blocked:が表示され、Claudeは制約の範囲内でやり直します。
それ以外のルールはすべて推奨扱いです。コンテキストとして一緒に渡され、どう適用するかはアシスタントが判断します。ブロックはローカルのフックを通じて行われます。Remote MCPにはフックがないため、ルールはコンテキストとして提示されるだけです。
インストール
Pathrule CLIを使う場合:
pathrule setup
プロジェクトフォルダで実行し、使用しているAIツールを尋ねられたらClaude Codeを選びます。セットアップは、必要に応じてPathrule Cloudへのサインイン、フォルダとワークスペースの紐づけ、MCPエントリのインストール、このフォルダでの選択内容の保存を行い、フックと関連ファイルを書き込みます。アカウントなしでPathruleを使う場合は、代わりにpathrule setup --localを実行します。この場合、ナレッジはこのマシン上にとどまります。
すでに紐づけ済みのフォルダで、各要素を手動で設定するには:
pathrule install claude
pathrule sync
pathrule doctor
pathrule install claudeは~/.claude.jsonにMCPエントリを追加します。pathrule syncはフックスクリプトをインストールし、このフォルダで選択したAIツール向けに.claude/settings.json、CLAUDE.md、スキルを書き込みます。
VS Code拡張機能を使う場合は、Connect AI ClientsでClaude Codeを選びます。拡張機能は同梱のCLIを通じて、同じMCPエントリとフック設定を書き込みます。
Remote MCP
Claude Codeは、ローカルにインストールせずにホスト型のエンドポイントへ接続することもできます。
claude mcp add --transport http pathrule https://cloud.pathrule.io/mcp
その後、PathruleアカウントでOAuthのサインインを完了します。Remote MCPでClaudeが使えるのはMCPツールだけです。フックはインストールされず、ローカルファイルも書き込まれず、ローカルモードもありません。詳しくはPathrule Remote MCPを参照してください。
動作確認
紐づけたディレクトリでClaude Codeを開き、新しいターンを始めます。最初のツール呼び出しの前に、コンテキストの表示部分にPathruleのセクションが現れるはずです。そこには解決されたパス、一致したルール、特に関連度の高いメモリの本文、確度の低い候補のタイトルが一覧表示されます。
何も表示されない場合は、次を実行します。
pathrule doctor
doctorは読み取り専用です。サインイン状態、ワークスペース、このフォルダが紐づけられているかどうか、Claude Codeとほかの各クライアントにPathruleのMCPエントリがインストールされているかどうか、フォルダ内にあるPathrule管理下のファイルとその書き込み元を報告します。--jsonを付けると完全なレポートが出力され、すでに存在しないランタイムを指しているMCPエントリも検出されます。すべてを元の状態に戻すには、次を実行します。
pathrule repair
repairは古くなったMCPエントリを書き直し、フックスクリプトとフックの登録を再インストールし、CLAUDE.mdとスキルを再同期してから、もう一度doctorを実行します。
Claudeがコンテンツを書き込む場合
Claudeは、MCPの書き込みツールを使ってメモリ、ルール、スキルをPathruleに書き戻せます。ランタイムはソースをclaudeとしてタグ付けするため、AIが書いたコンテンツと人が書いたコンテンツを区別できます。
pathrule_log_activityツールを使うと、ファイルを変更するすべての応答をアクティビティログで確認できるようになります。これが、Claudeの作業内容とチームが目にする情報をつなぐ橋渡しになります。
次に読むもの
- プッシュ側のレイヤーの仕組みについてはフックの仕組み。
- プル側のレイヤーについてはMCPの概要。
- Claudeが呼び出せるすべてのツールについてはMCPツールリファレンス。