本文へスキップ
Pathrule

ドキュメント

インストール

macOS、Linux、WindowsでnpmからPathrule CLIをインストールし、CloudかLocalを選んで、リポジトリとAIクライアントを接続します。

このページの内容

Pathrule CLIは、Pathruleをターミナル中心で使うためのサーフェスです。npmで@pathrule/cliとしてApache-2.0ライセンスのもと公開されており、シェルから操作するエージェントのために、ローカルMCPサーバー、フックスーパーバイザー、ローカルキャッシュを動かします。このページでは、インストール、サインイン、リポジトリとAIクライアントの接続、アカウントなしでの利用、そしてプロジェクトからの取り外しについて説明します。すべてのコマンドはコマンドリファレンスに掲載しています。

動作要件

  • macOS、Linux、またはWindows。
  • Node.js 20.11.1以降。CLIは実行のたびにバージョンを確認し、古いバージョンでは分かりやすいメッセージを表示して停止します。
  • モダンなシェル:zsh、bash、fish、またはWindowsではPowerShell。
  • MCPに対応したAIコーディングアシスタント。Pathrule CLIはClaude Code、Codex、Cursor、Windsurf、GitHub Copilotを接続できます。インストール自体には不要ですが、フックの流れを確認するには用意しておくとよいでしょう。

インストール

npm(macOS、Linux、Windows)

3つのOSすべてで、npmからインストールします。Node.js 20.11.1以降が必要です。

npm install -g @pathrule/cli

Windowsでは、PowerShellから実行してください。PathruleはWindows対応のフックコマンドを自動で登録するため、同じpathruleコマンドがUnixシェルとまったく同じように動作します。

アップグレードするには、同じインストールを@latest付きで実行します。

npm install -g @pathrule/cli@latest

対話的に実行すると1日に1回新しいリリースを確認し、このコマンドを含む1行の通知を表示します。通知されるのは、手元より新しいバージョンだけです。pathrule updateで同じ確認を任意のタイミングで実行でき、pathrule config set update.policy manualで毎日の確認を無効にできます。

直接ダウンロード

スタンドアロンのインストーラーやパッケージマネージャー用のフォーミュラはありません。どのOSでも、Pathrule CLIはnpmからインストールしてください。

確認

pathrule --version

CLIはバージョンを表示し、終了コード0で終了します。コマンドが見つからない場合は、npmのグローバルインストール先がPATHに含まれていることを確認し、シェルを開き直してください。

サインイン

Cloudを使うにはアカウントが必要です。Localのセットアップではサインインは不要です。詳しくはアカウントなしで使うを参照してください。pathrule loginはデフォルトでワンタイムコードを使ってサインインします。同じコマンドが、手元のコンピューターでも、SSH経由でも、ヘッドレス環境やCIランナーでも使えます。

デバイスコードフロー

pathrule login

CLIはワンタイムコードを表示します。ブラウザのあるマシンでは、コードが入力済みの状態で承認ページが開くので、そこでPathruleアカウントにサインインして承認します。ヘッドレス環境やSSH経由の場合は、表示されたURLを任意のデバイスで開き、コードを入力して承認します。ターミナル側のサインインは自動で完了し、パスワードがターミナルを経由することはありません。

--no-openを指定すると、CLIはブラウザを一切開かず、代わりにURLを表示します。古いガイドで使われているpathrule login --device-codeも引き続き使え、同じフローで動作します。

ブラウザPKCEフロー

pathrule login --browser-callback

同じマシン上のブラウザでGitHubを使ってサインインし、PKCEで保護された手元のマシン上のコールバックを介して、セッションをターミナルに返します。アカウントで2要素認証を使っている場合は、CLIがコードの入力を求めます。この方法には対話的なターミナルとブラウザが必要です。コールバックが使えない場合、CLIはその旨を表示してデバイスコードフローに切り替えます。--no-openを指定したときやスクリプト内では、最初からデバイスコードフローを使います。

pathrule whoamiは、サインイン中のアカウントを表示します。pathrule logoutはCLIをサインアウトし、pathrule logout --allはVS Code拡張機能など、このマシン上の他のPathruleサーフェスもあわせてサインアウトします。

ワークスペースのアタッチ

ワークスペースは、Pathruleがコンテンツを紐づける単位です。CLIは常に実行したフォルダをアタッチするため、まずリポジトリに移動してください。パスを指定するオプションはありません。

ガイド付きの方法なら、1回の実行ですべて完了します。

cd ~/repos/my-team
pathrule setup

pathrule setupは、まずPathrule CloudかLocalかを選ぶところから始まります。Cloudは推奨されるマネージドな始め方で、アカウント、組織、共有のインテリジェンスを利用できます。Localはこのマシン上で動作し、アカウントは不要です。セットアップでは、ワークスペースと選択したAIクライアントを接続します。Apple SiliconのMacでは、オプションのオンデバイスモデルも提案されますが、スキップできます。

Cloudのセットアップでは、既存のワークスペースをアタッチするか、このフォルダ用に新しく作成できます。その後、ローカルランタイムが、対応するクライアント設定とフックを通じてコンテンツを届けます。

手順を追って行う場合は次のとおりです。

cd ~/repos/my-team
pathrule workspace list
pathrule workspace attach my-team

pathrule workspace attachには、ワークスペースの正確な名前かIDを指定します。引数を省略すると、現在のワークスペースをアタッチします。新しいワークスペースから始める場合は、pathrule initでフォルダ名を付けたワークスペースを作成し、そのままアタッチできます。pathrule init my-teamやpathrule workspace create my-teamを使うと、指定した名前で同じことができます。ワークスペースは現在の組織から取得されます。pathrule org listで所属する組織を確認し、pathrule org use <slug>で切り替えます。

アタッチ後は、このフォルダやその配下でAIクライアントを動かすたびに、ランタイムがどのワークスペースのコンテンツを提供すべきかを把握します。

スクリプトでは、pathrule setupは回答をオプションで受け取り、実際に処理を行うには--yesが必要です。

pathrule setup --workspace my-team --target all --yes

AIクライアントの接続

pathrule setupは使用するAIクライアントを尋ね、インストールしたうえで、その選択をこのワークスペースに記憶します。手動で1つずつ接続する場合は次のとおりです。

pathrule install cursor
pathrule sync

pathrule installにはclaude、cursor、codex、windsurf、copilotのいずれかを指定でき、クライアントを省略すると5つすべてをインストールします。そのクライアント自身のユーザーレベル設定にPathruleのMCPサーバーエントリを書き込み、そこにある他のサーバーには手を加えません。GitHub Copilotには、Copilot CLI用とVS Code用の2つのエントリが追加されます。pathrule uninstall <client>でエントリを削除できます。

pathrule syncは、クライアントが読み込むファイルをリポジトリに書き込み、ローカルのフックインデックスを更新します。ワークスペースをアタッチしたフォルダで、アタッチ直後や、それらのファイルをワークスペースの内容に追従させたいときに実行してください。書き込み対象は、pathrule setupでこのワークスペース用に選んだAIクライアントです。選択がない場合は、すでにリポジトリにPathruleのファイルがあるクライアント向けに書き込み、それもなければClaude Code向けに書き込みます。pathrule sync --skillsは、ワークスペースのスキルを各クライアントのスキルフォルダにコピーします。

Pathruleがリポジトリに書き込むもの

Pathruleは各クライアントがすでに読み込んでいる場所に書き込むため、クライアント側で新たに設定する必要はありません。

クライアント指示ファイルフック設定
Claude Codeルートと、独自のナレッジを持つフォルダにあるCLAUDE.md、および.claude/rules/配下のpathrule-*.mdファイル.claude/settings.json内のPathruleのエントリ
Codexルートと、独自のナレッジを持つフォルダにあるAGENTS.md.codex/hooks.json、およびフックを有効にする.codex/config.toml内のマーク付きブロック
Cursor.cursor/rules/配下のpathrule-*.mdcファイル、およびレガシーの.cursorrules.cursor/hooks.json
Windsurf.windsurf/rules/配下のpathrule-*.mdファイル、およびレガシーの.windsurfrulesなし。Windsurfは指示ファイルとMCPを読み込みます。
GitHub Copilot.github/copilot-instructions.md、および.github/instructions/配下のpathrule*.instructions.mdファイル.github/hooks/pathrule.json

Pathruleは書き込んだものにマークを付けます。指示ファイルにはPathruleのバナーが入り、ユーザーのファイルに追加した内容はマーク付きブロックの中に収まります。CLAUDE.mdやAGENTS.mdなどの指示ファイルにすでに独自の内容がある場合、Pathruleは書き込む前にその内容をバックアップとして保存するか、マーク付きブロックの中にだけ書き込んでファイルの残りには手を加えません。リポジトリのルートにある.pathruleフォルダには、Pathruleが管理するファイルの記録とそれらのバックアップが保存されます。pathrule sync --skillsで同期したスキルは.claude/skills/などの各クライアントのスキルフォルダに置かれ、リポジトリに.gitignoreがある場合、Pathruleはそれらのフォルダをgitの対象外にするコメント付きのセクションを追加します(このセクションは削除するまで有効です)。

リポジトリの外では、pathrule installが各クライアントのユーザーレベル設定にMCPエントリを書き込み、CLIはセッション、キャッシュ、フックスクリプトをPathruleのホームディレクトリ(デフォルトは~/.pathrule)に保存します。

何も変更せずに、フォルダ内でPathruleが管理しているものを確認するには、pathrule doctorを実行します。管理対象の各ファイルが、それを書き込んだサーフェスとバージョンとともに一覧表示されます。詳しくは各クライアントのページを参照してください:Claude Code、Codex、Cursor、Windsurf、GitHub Copilot。

アカウントなしで使う

Pathrule CLIは、アカウントもCloudも使わずに、完全に手元のマシン上で動かすこともできます。プロジェクト内で次を実行します。

cd ~/repos/my-project
pathrule setup --local

pathrule init --localは、現在のフォルダ用にローカルワークスペースを作成します。pathrule setup --localは同じことを行ったうえで、すべてのAIクライアント(--target <client>を指定した場合はそのクライアントのみ)にローカルMCPエントリをインストールし、フックをインストールしてリポジトリのファイルを書き込みます。これらはすべてサインインなしで行われます。エージェントはPathruleのMCPツールを通じてメモリ、ルール、スキルを書き込み、ユーザーはターミナルから--localを付けて、たとえばpathrule memory list --localのようにそれらを閲覧、検索できます。ローカルで使えるすべてのコマンドはアカウントなしで使うを、ローカルエディションに含まれる内容はオープンソースのコアを参照してください。

オープンソースのみのセットアップ

Pathrule CLI自体はApache-2.0のオープンソースで、ローカルモードではアカウントもクラウドサービスも使わずに動作します。Apple SiliconのMacでセットアップが提案するオンデバイスモデルはオプションです。セットアップで尋ねられたときに断るか、後からpathrule intelligence removeで削除できます。モデルを必要としない機能は、モデルがなくてもすべて動作し続けます。現時点で何がオープンソースで何がプロプライエタリかは、オープンソースのコアに記載しています。

接続の確認

doctorは、セットアップ全体をエンドツーエンドで確認する唯一のコマンドです。読み取りのみを行い、何かを変更することはありません。

pathrule doctor

次の項目を確認します。

  • サインインしており、組織とワークスペースが選択されていること。
  • 現在のフォルダが、ワークスペースをアタッチしたフォルダであること。
  • 各AIクライアントにPathruleのMCPエントリがインストールされていること。
  • このフォルダでPathruleが管理しているファイルと、それぞれを書き込んだサーフェスとバージョン。別のサーフェスや新しいバージョンが書き込んだファイルには警告が付きます。

対応が必要な場合、doctorはpathrule loginやpathrule attach <workspace>など、次に実行すべきコマンドを示します。pathrule doctor --jsonはスクリプト向けに完全なレポートを返し、Node.jsのバージョンも確認したうえで、起動コマンドが古くなっているMCPエントリにも警告を付けます。いずれかの確認に失敗した場合は0以外の終了コードで終了します。古くなったエントリはpathrule repairで修正できます。このコマンドはクライアント設定内のPathruleのエントリを書き直し、他のサーバーには手を加えず、リポジトリのファイルを再度書き込みます。

プロジェクトからPathruleを取り外す

まず、リポジトリで読み取り専用の計画を確認します。

pathrule eject

Pathruleが所有するファイルと管理対象の領域が、以前の内容の復元も含めて一覧表示されます。計画を確認したら、明示的に適用します。

pathrule eject --apply

Cloudのフォルダアタッチの場合、pathrule detachはCloudのワークスペースを削除せずにローカルフォルダとの接続を解除します。VS Code拡張機能からもフォルダの紐づけを解除できます。

ネイティブ連携には、それぞれ記録されたセットアップがあります。削除するにはpathrule integrations remove <agent>を使います。pathrule installでインストールした設定ベースのMCPエントリは、pathrule uninstall <client>で削除できます。これらの操作では、関係のないクライアント設定やサーバーはそのまま保持されます。