Skip to main content
ディープリンクは claude-cli:// URL で、Claude Code を新しいターミナルウィンドウで開きます。URL には作業ディレクトリとプリフィルするプロンプトを含めることができます。 これにより、タスクのワンクリック開始点を共有できます。Claude Code がインストールされている人がリンクをクリックすると、プロンプトが既に入力された状態でセッションが開きます。プロンプトは入力されていますが、Enter キーを押すまで送信されません。 ディープリンクは URL なので、リンクが使える場所ならどこにでも配置できます。
  • インシデントランブックのステップで、影響を受けたサービスのリポジトリを診断プロンプト付きで開く
  • モニタリングアラートやダッシュボードで、特定のメトリクスの調査プロンプトにリンクする
  • README やウィキページでプロジェクトをオンボーディングプロンプト付きで開く
  • CI 失敗通知で失敗したジョブの名前をプリフィルする
このページでは、リンクの構築方法ランブックに埋め込む方法またはシェルからトリガーする方法、および各プラットフォームでハンドラー登録を管理または無効化する方法について説明します。 claude-cli:// プレフィックスはカスタム URL スキームで、Claude Code がオペレーティングシステムに登録します。これは mailto: リンクがメールクライアントを開く方法と似ています。ディープリンクをクリックすると以下のことが起こります。
  1. ブラウザまたはアプリが URL をオペレーティングシステムに渡します。
  2. オペレーティングシステムが claude-cli:// プレフィックスを認識し、マシン上で Claude Code を起動します。
  3. 新しいターミナルウィンドウが開き、Claude Code がリンクで指定されたディレクトリで実行され、リンクのプロンプトテキストが既に入力ボックスに入っています。
  4. プロンプトを読み、必要に応じて編集し、Enter キーを押して送信します。
リンク自体はどこにでもホストできますが、セッションは常にクリックしたコンピューター上でローカルに開きます。各オペレーティングシステムで開くターミナルエミュレーターについては、登録とサポートされているプラットフォームを参照してください。 リンクを表示するプラットフォームはカスタム URL スキームを許可する必要があります。GitHub がそれらで行うことと回避策については、リンクがクリック可能ではなくプレーンテキストとしてレンダリングされるを参照してください。

起動されたセッションが表示するもの

ディープリンクは単独では何も実行しません。リンクはディレクトリを選択し、プロンプトボックスを埋めるだけです。信頼していないページからリンクをクリックしても、プロンプトは依然として無害です。入力されたものを読んで Enter キーを押すまで、何もモデルに到達しません。 セッションが開くと、入力ボックスの下の警告行に Prompt from an external link と表示され、プロンプトを送信またはクリアするまで表示されたままになります。プロンプトが 1,000 文字を超える場合、警告には文字数が含まれ、長いプロンプトは指示を画面外に押し出す可能性があるため、Enter キーを押す前に全文をスクロールして確認するよう指示します。権限ルール、CLAUDE.md、および選択されたディレクトリの信頼プロンプトは、他のセッションと同じように適用されます。 すべてのディープリンクは claude-cli://open で始まります。これはハンドラーが受け入れる唯一のパスで、その後にオプションのクエリパラメーターが続きます。最小形式は Claude Code をホームディレクトリで開き、空のプロンプトを表示します。
ページに配置せずにリンクを試すには、ブラウザーのアドレスバーに貼り付けるか、シェルからリンクを開くしてください。 パラメーターを追加して、セッションが開始される場所とプロンプトボックスに含まれるテキストを制御します。 cwdrepo作業ディレクトリを設定する 2 つの方法です。両方を渡す場合、cwd が優先され、cwd パスが存在しない場合でも repo は無視されます。 次のリンクは acme/payments というリポジトリを指し、2 行の診断プロンプトを含みます。独自のリンクを構築するときは、acme/payments をリポジトリの owner/name スラッグに置き換えてください。
クリックすると新しいターミナルウィンドウが開き、Claude Code が acme/payments のローカルクローンで起動し、プロンプトボックスがデコードされたテキストで埋められます。
Enter キーを押して送信する前にプロンプトを編集できます。複数のクローンまたはワークツリーがある場合にローカルパスがどのように選択されるかについては、cwdrepo の選択を参照してください。

cwdrepo の選択

リンクをクリックするすべての人がプロジェクトを同じ絶対パスに持っている場合(標準化された devcontainer または VM イメージなど)は cwd を使用します。 リンクが共有され、各人がクローンを別の場所にクローンする場合は repo を使用します。Claude Code はスラッグをローカルパスに解決します。
  • repo は、リンクされたリポジトリのクローンまたはワークツリーを開きます。ここで最近 claude を実行しました。claude を Git リポジトリで実行するたびに、Claude Code はそのディレクトリのパスをリポジトリの GitHub owner/name スラッグに対して記録します。Claude Code はクローンとワークツリーを個別に追跡します。
  • リンクはどのブランチがチェックアウトされているかを変更しません。セッションはそのディレクトリが現在ある状態で開きます。
ウェルカムヘッダーは、選択したパスを表示するため、正しいクローンが開いたことを確認できます。

以下のセクションでは、ディープリンクを使用する 2 つの一般的な方法を示します。ドキュメント内の Markdown リンクとしてと、スクリプトまたはシェルエイリアスのコマンドとしてです。 ランブック内のディープリンクは、トリアージを行う人に、正しいリポジトリで準備されたプロンプトを使って調査を開始するワンクリック方法を提供します。ランブックをレンダリングするプラットフォームはカスタム URL スキームを許可する必要があります。GitHub でレンダリングされた Markdown は claude-cli:// を許可しないため、GitHub README、issue、wiki のディープリンクはラベルのみを表示し、クリック可能なリンクはありません。回避策については、トラブルシューティングノートを参照してください。 プロンプトは URL の一部であり、URL エンコードする必要があります。エンコードされた値を生成するには、ブラウザコンソールまたは任意の URL エンコーダーで encodeURIComponent を使用してプロンプトテキストを渡します。 以下の例は、web-gateway というサービスのインシデントランブックに調査エントリポイントを追加します。
独自のランブックでこれを使用するには、acme/web-gateway をサービスのリポジトリスラッグに置き換えます。これにより、Claude Code がインストールされており、そのリポジトリのローカルクローンを持つエンジニアがステップ 2 をクリックして、プロンプトを送信する準備ができた状態で調査を開始できます。 クリックする代わりに、シェルスクリプト、エイリアス、または自動化からディープリンクを開くこともできます。オペレーティングシステムの URL を開くコマンドをリンクを引数として呼び出します。これらのコマンドは、Claude Code がインタラクティブセッションの最初のプロンプトを送信するときにマシンに登録するハンドラーに依存しています。
組み込みの open コマンドは URL を登録された claude-cli:// ハンドラーに渡します。
成功すると、Claude Code が実行されており、プロンプトが事前に入力された新しいターミナルウィンドウが開きます。

登録とサポートされているプラットフォーム

Claude Code は、macOS、Linux、Windows で対話的セッションの最初のプロンプトを送信するときに、claude-cli:// ハンドラーをオペレーティングシステムに登録します。claude を起動してプロンプトを送信せずに終了しても、ハンドラーは登録されません。別のインストールコマンドを実行する必要はありません。登録はユーザーレベルの場所にのみ書き込みます。 ハンドラーは検出されたターミナルエミュレーターで Claude Code を起動します。macOS では、Claude Code は最後の対話的セッションからターミナルを記憶し、再利用します。iTerm2、Ghostty、kitty、Alacritty、WezTerm、Terminal.app をサポートしています。Linux では $TERMINAL 環境変数を尊重し、次に x-terminal-emulator、次に一般的なエミュレーターのリストを使用します。Windows では Windows Terminal を優先し、次に PowerShell、次に cmd.exe を使用します。 登録を完全に防ぐには、settings.jsondisableDeepLinkRegistration"disable" に設定します。組織全体でこれを強制し、ユーザーが再度有効にできないようにするには、代わりにマネージド設定で設定します。

ターミナルの代わりに VS Code タブを開く

VS Code 拡張機能は vscode://anthropic.claude-code/open で独自のハンドラーを登録し、ターミナルウィンドウではなく Claude Code エディタータブを開きます。その URL のパラメーターについては、他のツールから VS Code タブを起動するを参照してください。

トラブルシューティング

ハンドラーはまだ登録されていない可能性があります。登録はセッションの開始時ではなく、対話的セッションで最初のプロンプトを送信するときに行われます。そのマシンで対話的な claude セッションを開始し、任意のプロンプトを送信して終了してから、リンクを再度試してください。Linux でデスクトップ環境がない場合、xdg-open はディスパッチするものがない可能性があります。

Linux で xdg-open が見つからない

xdg-open コマンドは xdg-utils パッケージの一部であり、最小限のサーバーイメージ、コンテナ、WSL ディストリビューションではしばしば省略されています。ディストリビューションのパッケージマネージャーで xdg-utils をインストールしてください。例えば sudo apt install xdg-utils を実行してから、コマンドを再度実行してください。コマンドが実行されても何も開かない場合、xdg-open はディスパッチするデスクトップ環境がない可能性があります。リンクをクリックしても何も起こらないを参照してください。 一部の Markdown レンダラーは httphttps リンクのみを許可し、他の URL スキームを削除します。GitHub は README、issue、pull request、wiki でこれを行います。[label](claude-cli://...)label のみとしてレンダリングされ、リンクはなく、URL は削除されます。これらのプラットフォームでは、ディープリンクをコードブロックに配置して、読者が URL を見てブラウザーのアドレスバーに貼り付けられるようにします。

セッションがリポジトリの代わりにホームディレクトリで開く

repo パラメーターは、Claude Code が既に見たクローンのみに解決します。クローン内で claude を 1 回実行してパスを記録するか、リンクを cwd と絶対パスを使用するように切り替えます。 macOS では、好みのターミナルで claude を 1 回開始すると、次のディープリンクがそれを使用します。Linux では、$TERMINAL 環境変数を好みのエミュレーターのコマンド名に設定します。Windows では、順序は固定です。Windows Terminal をインストールして、リンクが PowerShell または cmd.exe ウィンドウの代わりにそこで開くようにします。

詳細情報

これらのページは、Claude Code セッションを起動または拡張する関連する方法をカバーしています。
  • Skills:長いランブックプロンプトをリポジトリに /skill として保存し、ディープリンクの q パラメーターはそれを名前で指定するだけで済みます。
  • 非対話モード:スクリプトから Claude を実行し、ターミナルを開かずに出力をキャプチャします。