本文へスキップ
Pathrule

ドキュメント

MCPツールリファレンス

Pathrule MCPツールをランタイムと用途別に紹介します。ローカルのワークフロー用ツールと、対象を絞ったCloudネイティブなRemote MCPカタログも扱います。

このページの内容

このページでは、PathruleのMCPツールを機能別に一覧にしています。アシスタントがこれらすべてを必要とすることはまれです。ほとんどのセッションで使うのはpathrule_get_contextと、1つか2つの読み取りまたは書き込みだけです。ローカルのstdioサーバーとホスト型のRemote MCPは、それぞれのランタイムで実際に実行できる操作だけを追加します。

基盤となるモデルについては、MCPの概要を参照してください。

コンテキストと探索

ツール用途
pathrule_get_context主要なエントリポイントです。現在の作業ディレクトリをワークスペースノードに解決し、タスクに合ったメモリ、ルール、スキルを必要な分だけ返します。
pathrule_get_treeワークスペースのノードツリー(フォルダ、ファイル、コンテキスト)を返します。探索系のプロンプトで役立ちます。
pathrule_get_node単一のノードと、そこに紐づくメモリ、ルール、スキルを取得します。
pathrule_resolve既知のタイトルや名前を、ツリーをたどらずにid、パス、バージョンハンドルへ対応付けます。一意に一致した場合は、同じ呼び出しで本文も含められます。ローカルstdio専用です。
pathrule_readメモリ、ルール、スキルのidを、サーバーの上限まで1回の往復でまとめて読み取ります。ローカルstdio専用です。
pathrule_goto名前やパスをあいまい一致でノードidに解決します。ユーザーが対象を大まかに指定したときに便利です。
pathrule_knowledge_mapワークスペースのメモリ、ルール、スキルを関連する領域ごとにまとめた、読み取り専用のマップです。ワークスペース全体の概観、1つの領域のアイテムと問題点、あるいは指定したアイテム、ファイル、クエリに関連する他の要素を確認できます。品質の見直しやナレッジの更新の前に役立ちます。
pathrule_pingヘルスチェックです。ランタイムから見た現在の作業ディレクトリと、タイムスタンプを返します。
pathrule_setup新しいリポジトリにPathruleを導入し、ユーザーが承認できる初期のメモリ、ルール、スキルを提案します。

ほとんどのセッションでは、始まりと終わりにpathrule_get_contextを使います。レスポンスにはワークスペースの概要、該当するコンテンツのid、次に呼び出すべきツールのヒントが含まれます。アシスタントは推測せず、このヒントに従います。

メモリ

ツール用途
pathrule_list_memoriesパス配下のメモリを、タイトルと短いプレビュー付きで列挙します。仮想的なMainMemoryインデックスです。
pathrule_read_memoryidを指定してメモリの本文全体を返します。楽観的同時実行制御用のバージョントークンも含みます。
pathrule_write_memoryノードパスにメモリを作成します。パス上に存在しないノードは自動で作成されます。MCP経由で呼び出した場合、sourceの既定値はclaudeです。
pathrule_update_memory既存のメモリを編集します。全体を置き換えるか、content_editで小さな部分編集を行います。move_to_pathで別の場所へ移し、restore: trueで削除済みのメモリを復元します。同時編集が競合としてきちんと扱われるよう、expected_version_idを渡してください。
pathrule_delete_memoryメモリを論理削除します。完全に削除されるまでは復元できます。hard: trueを指定すると完全に削除され、ワークスペース管理者の権限が必要です。

標準的な流れは、get_contextで関連するメモリのidを見つけ、アシスタントが引用する必要があればread_memoryで本文を読み、ユーザーが何かを記録するよう求めたらwrite_memoryを使う、というものです。

ルール

ツール用途
pathrule_read_ruleidを指定してルールの本文全体を返します。
pathrule_write_ruleスコープ種別(folder、file_type、project)と優先度(high、medium、low)を指定して、ノードパスにルールを作成します。ブロックパターンや必須チェックを提案することもできます。提案は提案として保存され、エージェントはそれを承認できず、人が承認するまでは何も強制されません。
pathrule_update_rule楽観的同時実行制御のもとで既存のルールを編集します。別のパスへの移動や、削除済みルールの復元もできます。
pathrule_delete_ruleルールを論理削除します。完全に削除されるまでは復元できます。

ルールはワークスペース単位で管理され、複数のノードに紐づけられます。同じパスにルールを2回書く場合は、重複を避けるためにwriteではなくupdateを使ってください。

スキル

ツール用途
pathrule_read_skillidを指定してスキルのSKILL.md本文全体を返します。github_refスキルの場合は、キャッシュされたスナップショットを返します。
pathrule_write_skillノードパスにスキルを作成します。frontmatterを含むSKILL.md全体を受け付けます。sourceにはmanual、template、github_refのいずれかを指定できます。
pathrule_update_skill楽観的同時実行制御のもとで既存のスキルを編集します。別のパスへの移動や、削除済みスキルの復元もできます。
pathrule_delete_skillスキルを論理削除します。完全に削除されるまでは復元できます。

作成の流れについては、スキルの書き方を参照してください。アシスタントはまず下書きを作り、ユーザーが本文を承認してからpathrule_write_skillを呼び出します。

パターン

ツール用途
pathrule_import_pattern公開されているメモリ、ルール、スキルのバンドルを、選択したワークスペースパスでプレビューしてインポートします。
pathrule_remove_pattern以前にインポートしたパターンバンドルが所有する要素を削除します。

アクティビティ

ツール用途
pathrule_log_activityファイルを変更した応答について、構造化された記録を残します。ファイルを作成、編集、削除するすべての応答の後に必須です。フィールドはdomain、action、scope、subjects、files_touched、task_summaryです。

アクティビティログは、ワークスペースの最近のアクティビティ(VS Code拡張機能のRecent Activityビューに表示されます)と、そこから派生する学習レイヤーに使われます。記録はファイルごとではなく応答ごとに1件とするのが適切な粒度です。

プロジェクト学習

エージェントがコードから導き出した知見を、読み取ったファイルとともに保持し、ワークスペースで共有します。詳しくはプロジェクト学習を参照してください。

ツール用途
pathrule_record_learningエージェントがコードを読んで得た知見を、読み取ったファイルとその内容とともに保存します。Pathruleは受け付ける前に、それらのファイルをディスク上で確認します。知見はメモリ、ルール、スキルのいずれでもありません。そのチェックアウトでソースが変更されていない間は、エージェントが要求するコンテキストの中で、検証すべき助言として各メンバーのエージェントに届きます。自動的にルールへ昇格することはありません。以前の知見のidを渡すと、修正した知見で置き換えられます。
pathrule_review_learning有効な知見、古くなった知見、矛盾する知見を、コンテキストから除外されているものも含めて一覧表示し、idを指定して知見を取り消します。知見を取り消せるのは、そのエージェントで知見を記録した本人だけで、取り消しはワークスペース全体に適用されます。
pathrule_review_history既存のghログインを通じて、リポジトリのGitHub originにある過去のレビューの議論を読み取ります。これにより、エージェントはチームが以前に似た問題をどう結論づけたかを確認できます。コメントは保存せず、bot、外部、却下されたレビューはスキップします。GitHubにアクセスできなくても、それ以外の機能はすべてそのまま動作します。

提案とリフレッシュ

ツール用途
pathrule_list_pending_refreshesセルフ監査が検出した、古くなったメモリとルールを一覧表示します。
pathrule_get_refresh_briefリフレッシュタスクを引き受け、監査の理由とアシスタント向けの指示を含む修正用のコンテキスト全体を返します。
pathrule_resolve_refreshリフレッシュタスクを適用済みまたは却下としてマークします。人が関与するワークフローを完了させます。
pathrule_request_refresh通常の作業中にアシスタントが、古い、矛盾している、重複している、範囲が狭すぎる、または不明確だと判断したメモリやルールにフラグを立てます。

提案は、Pathruleがコンテンツツリーのずれを防ぐための仕組みです。アシスタントは具体的な問題へのフラグ付け、ブリーフの引き受け、修正の提案、解決までを、エディタを離れずに行えます。

ローカルの遅延書き込み制御

ローカルのstdioサーバーは、最初のtools/listからすべてのツールを公開します。読み取り、書き込み、更新、削除、パターン、セットアップ、リフレッシュ、アクティビティです。最初の書き込みの前に何かを解除する必要はなく、リストはセッション中ずっと変わりません。そのため長い会話でも、途中でツールリストが変わることによるコストは発生しません。

セッションを小さなリストで始めたい場合は、オプトインで遅延モードを使えます。Pathrule MCPエントリの環境でPATHRULE_MCP_TOOLS=lazyを設定してください。遅延モードでは、起動時に読み取りツールとpathrule_log_activityが表示され、さらにツールが1つ追加されます。

ツール用途
pathrule_enable_writes遅延モード専用です。MCPセッションの残りの期間、書き込み、更新、削除、パターン、セットアップ、リフレッシュの変更系ツールを有効にします。その後、サーバーはtools/list_changedを1回送出します。

遅延モードで削除されるものはありません。変わるのは、変更系ツールが表示されるタイミングだけです。この変数がない場合や別の値が設定されている場合は、有効にするものがないためpathrule_enable_writesは存在しません。

ホスト型Remote MCP

Remote MCPには独自のCloudネイティブなスキーマがあります。読み取り権限では7つのツールが公開されます。pathrule_get_contextと、メモリ、ルール、スキルそれぞれのlistツールとreadツールです。書き込み権限では種類ごとにwrite、update、delete、historyが加わり、カタログ全体で19個のツールになります。

操作Remoteでの引数と動作
コンテキスト、一覧、読み取りOAuthの許可で承認されたワークスペースに限定
書き込みpath、title、bodyと、安定した操作id
更新アイテムのid、数値のexpectedVersion、title、bodyと、安定した操作id
削除履歴を保持した論理削除(書き込み権限が必要)
履歴アイテムごとの履歴(書き込み権限が必要)

認可サーバーはpathrule:read、pathrule:write、pathrule:refresh、pathrule:activityを認識します。スコープが認識されても、カタログにないツールが追加されるわけではありません。Remote MCPは、組織の管理、ワークスペースのセットアップ、スナップショット、パターンのインポート、プロジェクト学習、アクティビティの記録、リフレッシュのワークフローを公開しません。フックはインストールせず、ローカルファイルも読み取りません。

正確なスキーマは、接続先のサーバーでtools/listを使って確認してください。認可とローカル配信の境界については、Remote MCPで説明しています。

規約

以下の規約はローカルのstdioサーフェスに適用されます。Remoteのスキーマについては上記のとおりです。

  • パス優先の書き込み。 書き込みツールは、/apps/apiや/のようなワークスペース相対のnode_pathを受け取ります。パスが存在しない場合、途中のノードは自動で作成されます。
  • 楽観的同時実行制御。 更新・削除ツールは、以前の読み取りで得たexpected_version_idを受け付けます。一致しない場合は現在のバージョンを含む明確な競合レスポンスが返るため、アシスタントは上書きせずに読み直してマージできます。
  • 重複は拒否されます。 そのパスに同じタイトルのメモリがすでにある場合や、ワークスペースに同じ名前のルールまたはスキルがすでにある場合は、重複エラーで拒否されます。そのため、アシスタントは既存のレコードを更新します。メモリとルールについては、アシスタントが既存のものを確認したうえでallow_duplicate: trueを指定すれば、強制的に作成できます。
  • 既定はコンパクト。 一般的なケースに合わせて、レスポンスはコンパクトになっています。ローカルサーバーでは、完全なレコードが必要なときにverbose: trueを渡してください。
  • 安定したid。 ツールのレスポンスには、安定したidとversion_idの値が含まれます。アシスタントは親を読み直さなくても、後続の呼び出しでこれらを参照できます。