デスクトップアプリ
デスクトップアプリの「Code」タブでできること、インストール、権限モード、ペイン、プレビュー、環境(ローカル・クラウド・SSH・WSL)、管理設定、CLI との違いを引けます。
Claude デスクトップアプリには「Chat」「Cowork」「Code」の3つのタブがあります。このページは、ソフトウェア開発に使う「Code」タブのリファレンスです。ターミナルを使わずに、Claude Code と同じエンジンをグラフィカルな画面で動かせます。
- セッション(session)ごとに会話履歴とプロジェクトフォルダが独立し、サイドバーで複数を並行して動かせます
- 差分(diff)へのコメント、PR の CI 監視、アプリのプレビュー、ターミナル、ファイル編集をペインに並べて使えます
- 実行場所はローカル・クラウド・SSH・WSL(Windows)から選べます
- コンピュータ操作(computer use)や iOS シミュレータで、アプリを実際に動かして確かめられます
- 設定ファイル・CLAUDE.md・MCP・フックは CLI と共有されます
インストールと最初のセッション#
利用には Pro・Max・Team・Enterprise のいずれかの有料プランが要ります。デスクトップアプリに Claude Code が含まれるので、Node.js や CLI を別に入れる必要はありません。
| OS | 入手方法 |
|---|---|
| macOS | ユニバーサルビルド(Intel と Apple Silicon)の .dmg |
| Windows | x64 用インストーラー。ARM64 用は別のインストーラー |
| Linux(ベータ) | apt または .deb(Ubuntu・Debian) |
手順は次のとおりです。
- アプリを起動して Anthropic アカウントでサインインし、上部中央の「Code」タブを開く
- 環境(Local など)を選び、「Select folder」でプロジェクトのフォルダを選ぶ
- 送信ボタンの横のドロップダウンでモデルを選ぶ(途中で変えられる)
- やりたいことを入力して Enter で送る
- 権限モードに応じて、変更がそのまま適用されるか、差分を見て承認する
「Code」を押すとアップグレードを求められる場合は有料プランへの加入が必要です。サインインを求められたら、完了してアプリを再起動します。403 が出たら本ページ末尾の「トラブルシューティング」を見てください。
ヒント
最初は、内容をよく知っている小さなプロジェクトで試すのが早道です。
セッションを始める前に、プロンプト欄で次の4つを決めます。
| 項目 | 内容 |
|---|---|
| Environment | Local(自分のマシン)、Cloud、SSH 接続、Windows では WSL ディストリビューション |
| Project folder | Claude が作業するフォルダやリポジトリ。クラウドでは複数リポジトリを追加できる |
| Model | 送信ボタン横のドロップダウン。セッション中も変更可 |
| Permission mode | 送信ボタン横のモード選択。セッション中も変更可 |
プロンプト欄と文脈の追加#
- 送信は Enter。停止ボタンで即座に中断でき、訂正を入力して Enter を押すと、実行中の動作を止めずに送れます(現在の動作が終わった時点で Claude が読み、次の手を直します)
- 「+」ボタンからファイル添付・スキル・コネクタ・プラグインを使えます
@に続けてファイル名を入力すると、そのファイルを文脈に加えます。クラウドと WSL のセッションでは使えません- 画像・PDF などは添付ボタンかドラッグ&ドロップで渡せます
権限モード#
送信ボタン横のモード選択でいつでも切り替えます。新しいローカルセッションの既定は、設定ファイルの permissions.defaultMode で決められます(CLI と同じ設定ファイルを読みます)。選択したモードはフォルダごとに記憶され、そのフォルダでは defaultMode より優先されます。ただし Plan は現在のセッションだけに効きます。
| モード | 設定キー | 動き |
|---|---|---|
| Manual | default |
ファイル編集やコマンド実行の前に確認する。差分を見て個別に承認・却下できる |
| Accept edits | acceptEdits |
ファイル編集と mkdir・touch・mv など一般的なファイル操作を自動承認する。ほかのコマンドは確認する |
| Plan | plan |
ファイルを読み、コマンドを実行して調べ、ソースを編集せずに計画を示す |
| Auto | auto |
通常の確認なしで進む。シェルコマンドやネットワーク要求の前に、依頼に沿っているかを背景の分類器が確認する |
| Bypass permissions | bypassPermissions |
確認なしで実行する。CLI の --dangerously-skip-permissions に相当する |
- 以前の版では、これらは「Ask permissions」「Auto accept edits」「Plan mode」と表示されていました
dontAskモードは CLI だけです- Auto は設定画面に切り替えがなく、使える条件を満たすとモード選択に現れます。Anthropic API の全ユーザーが対象で、Claude Opus 4.6 以降、Sonnet 4.6 以降、または Fable モデルが必要です。管理者は管理設定の
disableAutoModeでオフにできます - Bypass permissions は、Pro・Max では「Settings → Claude Code」の「Allow bypass permissions mode」で有効にします。Team・Enterprise には切り替えがなく、組織のポリシーで決まります。サンドボックス化したコンテナか VM でだけ使ってください。どのモードでも自動承認されない操作、外部サイトでの分類器の確認、セッションのアーカイブなど Desktop が常に確認する操作は残ります
- クラウドセッションが使えるのは Accept edits・Plan・Auto です。クラウドではファイル編集が事前承認されるため、Manual の代わりに Accept edits と表示されます(
defaultに対応)。Bypass permissions はクラウド(セルフホスト環境を含む)では使えません
ヒント
複雑な作業は Plan で始め、計画を承認してから Accept edits か Manual に切り替えて実行させます。モードの全体像は権限モードを見てください。
コードを確認する#
アプリのプレビュー#
Claude は開発サーバーを起動し、Browser ペインで開いて変更を確かめます。フロントエンドだけでなく、バックエンドの API やサーバーログの確認もできます。ほとんどの場合、プロジェクトのファイルを編集した後に自動で起動します。依頼すればいつでもプレビューします。
- Browser ペインでは、実行中のアプリを自分でも操作できます
- Claude はスクリーンショット、DOM の確認、クリック、フォーム入力を行い、見つけた問題を直します
- セッションツールバーのサーバードロップダウンで、サーバーの起動・停止、設定の編集、全停止ができます
- ドロップダウンの「Persist sessions」を選ぶと、サーバーを再起動しても cookie とローカルストレージが残ります
- 静的 HTML・PDF・画像・動画も開けます。チャット内のパスをクリックすると Browser ペインで開きます
- 保存したセッションデータの消去や Browser の無効化は、「Settings → Claude Code」のトグルで行います
外部サイトを開く#
Browser ペインはタブ付きのブラウザです。Cmd+Shift+B(Windows は Ctrl+Shift+B)か「Views」メニューで開きます。チャットの外部リンクをクリックすると、「Open in app」(Browser ペイン)と「Default browser」を選べます。Cmd(Windows は Ctrl)を押しながらクリックすると、システムのブラウザで直接開きます。Google OAuth のようなポップアップのサインインも使えます。
Claude が外部ページを読み、操作するときは、2つの追加確認が入ります。
- クリックや入力などの書き込み操作は、どの権限モードでも安全性の分類器が確認し、検出されると許可を求めます
- Auto と Bypass permissions 以外のモードでは、新しいサイトへ移動する前にドメインの許可リストも確認します
外部サイトで初めて操作するときは、許可カードが出ます。
| 選択肢 | 動き |
|---|---|
| Allow once | 保存せず、その操作だけを許可する |
| Always allow | そのサイトの承認を端末に保存する(設定で取り消せる)。サブドメインごとに別承認 |
| Deny | 拒否する |
ローカルの開発サーバーとプロジェクトのファイルは承認が要りません。承認したサイトでも、購入・アカウント作成・CAPTCHA の回避は、ユーザーの入力なしには行いません。
Browser ペインは、保存済みのログインや履歴がない、個人のブラウザとは別のクリーンなプロファイルを使います。自分のログイン状態で動かしたいときは、Chrome 拡張を使います。
組織の制限は次のとおりです。
- Browser は、Claude in Chrome 拡張と同じサイトの許可リスト・ブロックリストに従います
- 管理設定
browserExternalPageToolsで、外部ページに対する Claude のツールを無効にできます(ユーザーの閲覧は可能) - 管理設定
disableBrowserExternalNavigationをtrueにすると、ユーザーも Claude も外部サイトへ移動できなくなります。localhost のプレビューとファイルのプレビューは動きます
差分ビューで確認する#
Claude がファイルを変更すると、+12 -1 のような追加・削除行数が出ます。クリックすると左にファイル一覧、右に変更内容が出る差分ビューが開きます。
- 行をクリックしてコメントを書き、Enter で追加します
- 複数行にコメントした後、Cmd+Enter(Windows は Ctrl+Enter)でまとめて送信します。Claude がコメントを読み、修正を新しい差分として出します
- 右上の「Review code」で、コミット前に Claude に変更を評価させられます。指摘は差分ビューの中にコメントとして付きます。見るのはコンパイルエラー、確実な論理エラー、セキュリティの脆弱性、明白なバグです。スタイル・書式・既存の問題・リンタで拾えるものは指摘しません
PR の状態を監視する#
PR を開くと、セッション内に CI のステータスバーが出ます。GitHub CLI(gh)で結果を確認し、失敗を表示します。gh のインストールと認証が必要で、未導入なら初めて PR を作るときにインストールを促されます。
| トグル | 動き |
|---|---|
| Auto-fix | 失敗した CI チェックの出力を読み、直して再試行する |
| Auto-merge | すべてのチェックが通ったら squash でマージする。先に GitHub リポジトリ側で auto-merge を有効にしておく必要がある |
CI が終わるとデスクトップ通知が出ます。PR のマージまたはクローズでセッションを自動アーカイブするには、「Settings → Claude Code」で自動アーカイブをオンにします。
ワークスペースとペイン#
「Code」タブは、チャット・差分・ブラウザ・ターミナル・ファイル・プラン・タスク・サブエージェントのペインを自由に並べる作りです。macOS では iOS シミュレータのペインも使えます。ペインはヘッダーをドラッグして移動し、端をドラッグしてサイズを変えます。追加のペインはツールバーの「Views」メニューから開きます。差分やターミナルを別ウィンドウに出して、後で戻すこともできます。
補足
ペインレイアウト・ターミナル・ファイルエディタ・表示モードは Claude Desktop v1.2581.0 以降が必要です。macOS は「Claude → Check for Updates」、Windows は「Help → Check for Updates」で更新します。
- ターミナル:「Views」メニューか Ctrl+`。セッションの作業ディレクトリで開き、Claude と同じ環境を共有します。追加のタブは「+」か、チャットのフォルダを右クリックして「Open in terminal」。ローカルセッションのみ
- ファイル:チャットや差分のパスをクリックするとファイルペインで開き、編集して「Save」で書き戻します。ディスク上で変更されていれば警告が出ます。ローカルと SSH で使え、クラウドでは Claude に依頼します
- ファイルのパスを右クリックすると、「Attach as context」「Open in」(VS Code・Cursor・Zed など)、「Show in Finder」/「Show in Explorer」、「Copy path」が使えます
表示モード#
セッションタイトルの横のキャレットからセッションメニューを開いて「Transcript view」を選ぶか、Ctrl+O で切り替えます。
| モード | 表示内容 |
|---|---|
| Normal | ツール呼び出しを要約にまとめ、テキストの応答は全文 |
| Thinking | Normal に加えて Claude の思考を表示(セッション内で思考が出た後に表示される) |
| Verbose | すべてのツール呼び出し・ファイル読み取り・途中の手順と思考 |
動作の理由を調べるときは Verbose が向きます。v1.46388.1 より前には Summary モードもあり、Summary のままのセッションは更新後に Normal で開きます。
キーボードショートカット#
Cmd+/(Windows は Ctrl+/)で一覧が出ます。Windows では下表の Cmd を Ctrl に読み替えます。セッション切り替え・ターミナル・表示モードは全 OS で Ctrl です。
| ショートカット | 動作 |
|---|---|
| Cmd+/ | ショートカット一覧 |
| Cmd+N | 新しいセッション |
| Cmd+W | セッションを閉じる |
| Ctrl+Tab / Ctrl+Shift+Tab | 次・前のセッション |
| Cmd+Shift+] / Cmd+Shift+[ | 次・前のセッション |
| Esc | Claude の応答を止める |
| Cmd+Shift+D | 差分ペインの切り替え |
| Cmd+Shift+B | Browser ペインの切り替え |
| Cmd+Shift+S | Browser で要素を選ぶ |
| Ctrl+` | ターミナルペインの切り替え |
| Cmd+\ | フォーカス中のペインを閉じる |
| Cmd+; | サイドチャットを開く |
| Ctrl+O | 表示モードの切り替え |
| Cmd+Shift+M | 権限モードのメニュー |
| Cmd+Shift+I | モデルのメニュー |
| Cmd+Shift+E | effort のメニュー |
| 1〜9 | 開いているメニューの項目を選ぶ |
これらは「Code」タブだけで有効です。ターミナル版の Shift+Tab による権限モード切り替えなどは Desktop では効きません(キーボードショートカットは CLI 側の表です)。
使用量#
モデル選択の横の使用量リングで、コンテキストウィンドウの使用量とプランの使用量を見られます。コンテキストはセッションごと、プランの使用量はすべての Claude Code の入口で共有されます。
コンピュータ操作#
computer use は、Claude がアプリを開き、画面を操作し、人間と同じように作業する機能です。CLI のないデスクトップツールや、GUI でしか動かない作業に使います。
補足
macOS と Windows の研究プレビュー(research preview)で、Pro または Max プランが必要です。Team・Enterprise では使えません。Claude Desktop アプリを起動しておく必要があります。Linux 版ではまだ使えません。
注意
サンドボックス化された Bash ツールと違い、computer use は実際のデスクトップで、承認したものにアクセスして動きます。画面上の内容によるプロンプトインジェクションは Claude が検査しますが、信頼の境界が異なります。
Claude は最も精密な手段を先に試し、computer use は最後です。
- サービスのコネクタがあればコネクタ
- シェルコマンドなら Bash
- ブラウザ作業で Claude in Chrome が設定済みならそれ(Chrome とコンピュータ操作)
- iOS アプリの実行・テストなら iOS Simulator ペイン(画面操作を使わない)
- どれにも当たらなければ computer use
有効化の手順です。
- アプリを最新にして再起動する
- 「Settings > This computer > System」の「Computer use」の下で「Enable computer use」をオンにする。Windows ではここで完了
- macOS では「Accessibility」(クリック・入力・スクロール)と「Screen Recording」(画面を見る)をシステム設定で許可する。設定ページに各権限の状態が出る
macOS では、承認したアプリの中でバックグラウンド実行もできます。トグルが見えないときは、macOS か Windows の Pro・Max であることを確認し、更新して再起動します。
アプリを初めて使うとき、セッションに「Allow for this session」か「Deny」の確認が出ます。承認はそのセッション中有効で、Dispatch から起動したセッションでは30分です。アプリのカテゴリごとに、次の段階が固定されています(変更不可)。
| 段階 | できること | 対象 |
|---|---|---|
| View only | スクリーンショットで見るだけ | ブラウザ、取引プラットフォーム |
| Click only | クリックとスクロール。入力とキーボードショートカットは不可 | ターミナル、IDE |
| Full control | クリック・入力・ドラッグ・ショートカット | それ以外 |
ターミナル、Finder/エクスプローラー、システム設定など影響の広いアプリは、承認画面に追加の警告が出ます。「Settings > This computer > System」の「Computer use」の節には次の項目があります。
- Denied apps:ここに入れたアプリは確認なしで拒否します。許可済みアプリを経由した間接的な影響は残りえます
- Unhide apps when Claude finishes:バックグラウンド実行でないとき、Claude は作業中ほかのウィンドウを隠し、終わると元に戻します。この設定をオフにすると戻しません
CLI からの有効化はChrome とコンピュータ操作を見てください。
セッションの管理#
並行セッションと worktree#
サイドバーの「+ New session」か Cmd+N(Windows は Ctrl+N)で新しいセッションを作ります。Git リポジトリでは、ブランチ名の横の「worktree」オプションで、プロジェクトの独立した複製(worktree)をセッションに割り当てられます。コミットするまで、ほかのセッションに影響しません。Git のインストールが必要です。
- 2つのセッションを並べるには、Cmd(Windows は Ctrl)を押しながらサイドバーのセッションをクリックします。分割中に別のセッションをクリックすると、フォーカス中のペインが置き換わります。Cmd+\ で単一表示に戻ります
- worktree の置き場所は既定で
<project-root>/.claude/worktrees/。「Settings → Claude Code」の「Worktree location」で変更でき、ブランチ名の接頭辞も設定できます - 終わった worktree は、サイドバーでセッションにマウスを重ねてアーカイブアイコンを押すと片づきます。「Auto-archive after PR merge or close」をオンにすると、PR のマージ・クローズ後にセッションが自動でアーカイブされます(実行が終わったローカルセッションのみ)
.envのような gitignore 済みファイルを新しい worktree に含めるには、プロジェクトルートに.worktreeincludeを置きます- サイドバー上部のコントロールで、状態・プロジェクト・環境による絞り込みと、プロジェクトごとのグループ化ができます。セッション名はツールバーのタイトルをクリックして変えます
- コンテキストが埋まると、Claude が会話を自動で要約して続けます。
/compactで早めに要約もできます - セッションが作業を終え、そのセッションを見ていないとき、OS 通知が出ます。プロジェクトに属するセッションは、プロジェクトの通知が出ます
サイドチャット#
セッションの文脈を使って質問でき、メインの会話には何も足されません。Cmd+;(Windows は Ctrl+;)か、プロンプト欄に /btw と入力して開きます。ローカル・SSH・WSL で使えます。サイドチャットはディスクに保存されないため、アプリを閉じると戻れません。
バックグラウンドタスクと他のセッション#
- タスクペインには、現在のセッション内のサブエージェント・バックグラウンドのシェルコマンド・ワークフローが出ます。項目をクリックすると出力を見られ、停止もできます
- Claude は、「Code」タブの他のセッションを一覧し、内容を読み、メッセージを送れます。「認証の件を触ったセッションはどれ?」のように言葉で頼めます。名前の変更とアーカイブも頼めます
- 見えるのはデスクトップアプリが動かすローカル・SSH・WSL のセッションだけです。クラウドや、ターミナルの CLI・VS Code 拡張で始めたセッションは見えません。既定では最近動いた20セッションを対象とし、アーカイブ済みは頼まれたときだけ含めます。ターミナルを含む他のセッションへの連絡はセッション間のメッセージにあります
- 安全策:アーカイブの前は、どの権限モードでも必ず確認が出ます。誰も見ていないセッション(スケジュール実行など)からは送れず、宛先にもできません。受信側の
crossSessionInboundがrefuseなら、この経路のメッセージは破棄されます。受信メッセージは送信元のセッションを明記して引用され、受け手は自分の権限設定に従います - 現在の作業の範囲外で直す価値のあるものを見つけると、Claude がタスクチップとして提案します。クリックすると、専用の worktree を持つ新しいセッションで始まります
クラウドでの長時間タスク#
大規模なリファクタリング、テストスイート、マイグレーションなどには、開始時に「Local」ではなく「Cloud」を選びます。既定では Anthropic が管理するインフラで動き、アプリを閉じても PC を止めても続きます。進捗は claude.ai/code やモバイルアプリから確認できます。
クラウド環境を選んだ後、リポジトリ横の「+」で複数のリポジトリを追加できます(リポジトリごとにブランチ選択)。共有ライブラリと利用側を同時に直すような作業に向きます。多くのクラウドセッションが要る仕事は、サイドバーの「Projects」からプロジェクトを作ります。
別の入口へ移す#
セッションタイトルの横のキャレット、またはサイドバーのそのセッションの行から、セッションメニューを開いて「Open in」を選びます。
- 「Cloud」を選ぶ:セッションをクラウドセッションとして続ける。会話は要約として引き継がれる。確定する前に、ダイアログがファイルも移るか、クラウド側の準備ができたらこのセッションをアーカイブするかを示す。SSH か WSL で動くセッションは、この方法では移せない
- インストール済みのエディタかファイルマネージャーを選ぶ:そのセッションのフォルダをディスク上で開く
Dispatch から始まるセッション#
Dispatch は「Cowork」タブにある、常駐の Claude との会話です。バグ修正・依存関係の更新・テスト実行・PR 作成のような開発作業は、直接頼むか Dispatch の判断で「Code」セッションとして起動します。調査・文書編集・表計算は Cowork に残ります。サイドバーに「Dispatch」バッジ付きで現れ、終わったとき・承認が要るときにスマホへプッシュ通知が届きます。Dispatch は Pro・Max のみで、Team・Enterprise では使えません。
拡張する#
サイドバーの「Customize」でコネクタ・スキル・プラグインをまとめて管理します。Cowork タブは、これらを claude.ai アカウント経由で同期する Customize の設定から読み込み、CLI の ~/.claude からは読みません。同じアカウントでサインインしたターミナルのセッションも、claude.ai で有効なスキルとプラグインを読み込みます。
- コネクタ:ローカルと SSH のセッションで、「+」→「Connectors」から Google Calendar・Slack・GitHub・Linear・Notion などを追加します。クラウドと WSL では「+」が使えません(ルーティンは作成時にコネクタを設定します)。管理と切断は「Settings → Connectors」か、メニューの「Manage connectors」です。コネクタは設定画面付きの MCP サーバーで、一覧にないものは設定ファイルで手動追加します
- スキル:
/を入力するか「+」→「Slash commands」で、組み込みコマンド・自作スキル・プロジェクトのスキル・プラグインのスキルを選べます(スキル・スラッシュコマンド一覧)。ローカルは~/.claude/skills/を、SSH は接続先ホストの~/.claude/skills/を読みます - プラグイン:ローカルと SSH で、「+」→「Plugins」→「Add plugin」でプラグインブラウザを開き、「Manage plugins」で有効化・無効化・削除します。スコープはユーザー・プロジェクト・ローカルのみ。クラウドではプラグインブラウザが使えず、Desktop で入れたプラグインはクラウドで使えません。WSL でも使えません(プラグインを使う)
プレビューサーバーの設定(.claude/launch.json)#
Claude が開発サーバーの設定を検出し、選んだフォルダ直下の .claude/launch.json に保存します。親フォルダを選んだ場合、サブフォルダのサーバーは自動では検出されません(そのフォルダでセッションを始めるか、手動で追記します)。ファイルはコメント付き JSON で、サーバードロップダウンの「Edit configuration」からも開けます。
{
"version": "0.0.1",
"autoVerify": true,
"configurations": [
{
"name": "my-app",
"runtimeExecutable": "npm",
"runtimeArgs": ["run", "dev"],
"port": 3000
}
]
}
autoVerify は既定でオンで、編集のたびに Claude がスクリーンショットやエラー確認で変更を検証します。プロジェクトごとに "autoVerify": false でオフにできます(サーバードロップダウンでも切り替え可)。オフでも、頼めばいつでも検証します。
configurations の各要素のフィールドです。
| フィールド | 型 | 説明 |
|---|---|---|
name |
string | サーバーの一意な識別子 |
runtimeExecutable |
string | 実行するコマンド(npm・yarn・node など) |
runtimeArgs |
string[] | runtimeExecutable に渡す引数 |
port |
number | サーバーが待ち受けるポート。既定は 3000 |
cwd |
string | プロジェクトルートからの作業ディレクトリ。既定はルート。${workspaceFolder} でルートを明示できる |
env |
object | 追加の環境変数。リポジトリにコミットされるので秘密は入れない(秘密はローカル環境エディタへ) |
autoPort |
boolean | ポート衝突の扱い(下表) |
program |
string | node で実行するスクリプト |
args |
string[] | program に渡す引数。program があるときだけ使う |
url |
string | プレビューで開くアドレス(既定は http://localhost:<port>) |
runtimeExecutableとruntimeArgsは、パッケージマネージャー経由で起動するとき用です(npmと["run","dev"]でnpm run dev)。単体のスクリプトをnodeで直接動かすときはprogram("server.js"ならnode server.js)を使いますurlは、ローカル HTTPS・*.localhostサブドメイン・リダイレクトでサインインするアプリなどに使います。localhost 系(localhost・*.localhost・127.0.0.1・::1)は確認なしで開きます。ただし localhost のurlは、パスとクエリを含まないサーバーのオリジンだけで、ポートはportと一致させます(違反すると設定エラー)。それ以外のアドレスは初回に許可を求め、パスを含められます。httpかhttpsのみで、ユーザー名とパスワードは含められません- コマンドなしで
urlだけを書くと、既に自分で動かしているサーバーにプレビューを接続します
autoPort の値の意味です。
| 値 | 動き |
|---|---|
true |
空いているポートを自動で探して使う |
false |
エラーで失敗する。OAuth のコールバックや CORS の許可リストなど、ポートが固定のとき |
| 未設定(既定) | 正確なポートが必要かを聞き、答えを保存する |
別のポートを選んだ場合、割り当てたポートは環境変数 PORT でサーバーに渡されます。
{
"version": "0.0.1",
"configurations": [
{
"name": "frontend",
"runtimeExecutable": "npm",
"runtimeArgs": ["run", "dev"],
"cwd": "apps/web",
"port": 3000,
"autoPort": true
},
{
"name": "api",
"runtimeExecutable": "npm",
"runtimeArgs": ["run", "start"],
"cwd": "server",
"port": 8080,
"env": { "NODE_ENV": "development" },
"autoPort": false
}
]
}
環境の設定#
| 環境 | 動く場所 |
|---|---|
| Local | 自分のマシン。ファイルに直接アクセスする |
| Cloud | 既定では Anthropic が管理するインフラ。アプリを閉じても続く |
| SSH | SSH で接続するリモートマシン(自前のサーバー・クラウド VM・開発コンテナ) |
| WSL(Windows) | WSL 2 ディストリビューションの中。Linux のツールチェーンとネイティブパス |
ローカルセッション#
デスクトップアプリは、シェル環境をすべては引き継ぎません。macOS では Dock や Finder から起動すると、~/.zshrc や ~/.bashrc を読んで PATH と決まった Claude Code の変数だけを取り出し、他の export は拾いません。Windows ではユーザー・システムの環境変数を引き継ぎますが、PowerShell のプロファイルは読みません。
任意の環境変数は、プロンプト欄の環境ドロップダウンで「Local」にマウスを重ね、歯車アイコンからローカル環境エディタを開いて設定します。保存した値は暗号化してマシンに保存され、すべてのローカルセッションとプレビューサーバーに効きます。~/.claude/settings.json の env にも書けますが、こちらは Claude のセッションだけに届き、開発サーバーには届きません(環境変数一覧)。
拡張思考(extended thinking)は既定でオンです。Anthropic API では、ローカル環境エディタで MAX_THINKING_TOKENS を 0 にするとオフになります。ただし Opus 5.5・Sonnet 5.5・Fable モデルは常に拡張思考を使うため効きません。適応的推論(adaptive reasoning)のモデルでは、MAX_THINKING_TOKENS に正の値を入れても、その数字自体は無視されます。Opus 4.6 と Sonnet 4.6 では CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING を 1 にすると固定の思考予算を使えます。
管理者が管理設定 disableDesktopLocalSessions でローカルセッションをオフにすると、「Local」はグレーアウトされ、WSL も同様になります。新しいセッションは、設定されていれば最初の SSH 接続が既定になります。SSH かクラウドを選ぶか、IT 部門に連絡します。
クラウドセッション#
アプリを閉じても背景で続きます。使用量はプランの上限に数えられ、別途の計算費用はありません。ネットワークアクセスや環境変数の違うクラウド環境を作れます。プロンプト欄の環境ドロップダウンで「Cloud」を選び、「Add cloud environment」で追加します。自分の環境は、上にマウスを重ねて歯車アイコンで編集・アーカイブします(クラウド(Web)で使う)。
SSH セッション#
デスクトップアプリを画面にして、リモートマシンで Claude Code を動かします。環境ドロップダウンの「+ Add SSH connection」で追加します。
| 入力項目 | 内容 |
|---|---|
| Name | 接続の表示名 |
| SSH Host | user@hostname、または ~/.ssh/config のホスト名 |
| SSH Port | 空なら 22(または SSH 設定のポート) |
| Identity File | 秘密鍵のパス(例:~/.ssh/id_rsa)。空ならデフォルトの鍵か SSH 設定 |
リモートは Linux か macOS である必要があります。初回接続時に Claude Code が自動でインストールされます。SSH セッションでも権限モード・コネクタ・プラグイン・MCP サーバーが使えます。
WSL セッション(Windows)#
Windows の「Code」タブは、WSL 2 ディストリビューションの中でセッションを動かせます。Claude Code・ツール・git はすべてディストリビューション内で動き、/home/you/project のような Linux パスを使います。リポジトリがディストリビューションのファイルシステム内にあるときに向きます(Windows 側から触ると、ネットワークファイルシステム経由で遅く、ファイル監視が壊れるため)。
- 要件:Windows 10 または 11 と WSL 2(WSL 1 は非対応)、インストール済みのディストリビューション1つ以上(例:Ubuntu)、ディストリビューション内の
git - 開始:新規セッションで環境ピッカーの「WSL」欄からディストリビューションを選び、フォルダピッカーでプロジェクトを選びます。通常のフォルダピッカーで
\\wsl.localhost\...のフォルダを開くと、そのディストリビューション内で開き直します - 最初のセッションでワークスペースの信頼ダイアログが出ます。信頼はディストリビューションとフォルダごとで、別のディストリビューションや Windows 側の同じパスには引き継がれません。ディストリビューションでの最初のセッションは、準備のため少し長くかかります
- 使えるもの:並行セッション、サイドチャット、差分レビュー、ブランチと PR の状態、worktree。「Open in editor」は Remote - WSL 経由の VS Code を開きます
- 使えないもの:統合ターミナル、コネクタとプラグイン、セッションの分岐(fork)、ファイルブラウザペイン、
@のファイル候補 - 組織管理のデバイスでは WSL セッションが使えないことがあります(管理者の設定)
SSH の管理者向け設定#
管理設定ファイルの sshConfigs で、チームに SSH 接続を配れます。配られた接続は管理扱いで、ユーザーは選べますが編集・削除できません。各要素に id・name・sshHost が必須で、sshPort と sshIdentityFile は任意です。ユーザーが自分の ~/.claude/settings.json に書いてもよく、ダイアログで追加した接続はそこに保存されます。
{
"sshConfigs": [
{
"id": "shared-dev-vm",
"name": "Shared Dev VM",
"sshHost": "user@dev.example.com",
"sshPort": 22,
"sshIdentityFile": "~/.ssh/id_ed25519"
}
]
}
sshHostAllowlist で接続できるホストを制限できます。空配列にすると SSH セッションを無効にします。
{
"sshHostAllowlist": ["*.devboxes.example.com", "bastion.example.com"]
}
- パターンは大文字小文字を区別しません。
*は任意のホスト、*.example.comはexample.comと任意のサブドメインに一致し、それ以外は完全一致です - 判定は
ssh -Gで~/.ssh/configを解決した後のホスト名に対して行われます。HostのエイリアスやProxyCommand・ProxyJumpも、解決後のHostNameが一致すれば許可されます - 管理設定からだけ読まれます(ユーザー・プロジェクトの設定は無視)。効くのは Desktop だけで、CLI と IDE 拡張は読まず、Bash ツールの
sshも制限しません。ネットワークの出口を制限するものではないので、強い境界が要るなら組織のネットワーク制御と併用します
組織向けの設定#
Team・Enterprise の組織は、管理コンソール・管理設定ファイル・デバイス管理ポリシーでデスクトップアプリを管理できます(組織への導入と管理設定)。
管理コンソール(admin settings)の項目は次のとおりです。
| 項目 | 内容 |
|---|---|
| Code in the desktop | 組織のユーザーがデスクトップで Claude Code を使えるか |
| Code in the web | 組織でクラウドセッションを有効にするか |
| Remote Control | 組織でリモートコントロールを有効にするか |
| Disable Bypass permissions mode | Bypass permissions モードを有効にできないようにする |
管理設定のキーは、プロジェクト・ユーザー設定を上書きし、Desktop の Claude Code セッションに効きます。
| キー | 内容 |
|---|---|
permissions.disableBypassPermissionsMode |
"disable" で Bypass permissions を有効にできなくする |
disableAutoMode |
"disable" でモード選択から Auto を外す。permissions の下でも受け付ける |
autoMode |
組織全体で、Auto の分類器が信頼するものとブロックするものを調整する |
browserExternalPageTools |
"disabled" で、Browser ペインの外部ページを Claude のツールが読む・操作することを禁止する。ユーザー自身の閲覧とローカルのプレビューは影響なし |
disableMobileSimulatorTools |
true で、iOS Simulator ペインでの Claude のデバイス操作・取得ツールをブロックする。ペインはユーザーのタップには使える。JSON の真偽値 true のみ有効で、文字列 "true" は無視 |
disableBrowserExternalNavigation |
true で、Browser ペインの外部閲覧を全面的にオフにする。localhost のプレビューは影響なし。JSON の真偽値 true のみ有効 |
sshConfigs |
環境ドロップダウンに出す SSH 接続を事前に設定する。ユーザーは編集・削除不可 |
sshHostAllowlist |
解決後のホスト名がパターンに一致するホストだけに SSH を制限する。空配列で SSH を無効化。管理設定のみ |
disableDesktopLocalSessions |
true で端末上のローカルセッションをオフにする(SSH とクラウドは使える)。JSON の真偽値 true のみ。管理設定のみ。Claude Desktop v1.37937.0 以降 |
managedMcpServers |
全ユーザーに MCP サーバー設定を配る。サードパーティ(3P)の Desktop 配備のみ。各要素にトランスポート("http"・"sse"・"stdio")と接続情報を書き、任意で toolPolicy マップで呼べるツールを制限する |
管理設定がどのセッションに届くかは、動く場所で変わります。
- ローカル:ディスクに配備した管理設定ファイルが効く。管理コンソールから遠隔配信したものも、適格なログインかキーなら Anthropic API 上のセッションに届き、CLI と同じ優先順位で適用される
- クラウド:サーバー管理設定を受け取る。端末に配ったファイルは届かない。セルフホスト環境へ回したセッションは、ランナーイメージ内の管理設定ファイルも読む
- SSH:リモートホストの管理設定ファイルを読む。
sshConfigs・sshHostAllowlist・disableDesktopLocalSessionsは Desktop が手元の管理設定から読む - Cowork:この端末の Cowork セッションでは、Team・Enterprise アカウントでも管理コンソールの設定を取得せず、端末に配備したポリシーを読む(
requireCoworkFullVmSandboxを設定している場合を除く)。リモートの Cowork はどちらも受け取らない
ローカルと SSH では、デスクトップアプリがユーザーの接続済み claude.ai コネクタを Claude Code に直接渡します。どの MCP 設定や managed-mcp.json もこのコネクタには届かないので、ブロックするには組織のコネクタのツール制御を使います。permissions.disableBypassPermissionsMode と disableAutoMode はユーザー・プロジェクト設定でも効きますが、管理設定に置くとユーザーが上書きできません。
- OpenTelemetry:管理コンソールの「Monitoring」のフォームは Cowork セッションだけに効きます。「Code」タブのテレメトリは、管理設定の
envにCLAUDE_CODE_ENABLE_TELEMETRYとOTEL_*を書いて出力します(利用状況の計測) - デバイス管理:macOS は MDM(Jamf・Kandji など)で
com.anthropic.claudefordesktopを、Windows はグループポリシーでレジストリSOFTWARE\Policies\Claudeを設定します。Claude Code 機能の有効化・無効化、自動更新、独自のデプロイ URL などを管理できます - 配布:macOS は
.dmgを MDM で、Windows は MSIX パッケージで配ります - SSO:Team・Enterprise は全ユーザーに SSO を必須にできます
- データの扱い:ローカルセッションはコードをローカルで処理し、クラウドセッションは Anthropic の管理インフラ(またはセルフホスト環境)で処理します。クラウドは会話とコードの文脈を Anthropic の API に送ります。ローカルと SSH は、配備で設定したモデルプロバイダー(既定は Anthropic の API)に送ります(セキュリティとデータの扱い)
ネットワークの要件#
Desktop はアプリのコードとユーザーコンテンツを Anthropic の CDN から読みます。通信は、OTLP・LLM ゲートウェイ・MCP サーバーに別のポートを設定した場合を除き、ポート 443 の HTTPS です(プロキシ・独自 CA・mTLS はネットワークと LLM ゲートウェイ)。
anthropic.com
*.anthropic.com
claude.ai
*.claude.ai
claude.com
*.claude.com
claude.app
*.claude.app
*.claudeusercontent.com
*.claudemcpcontent.com
ワイルドカードを減らしたい場合は、次のホストを許可します。一部のサブドメインは動的に生成されるのでワイルドカードのままにします。
anthropic.com
api.anthropic.com
a-api.anthropic.com
a-cdn.anthropic.com
s-cdn.anthropic.com
assets-proxy.anthropic.com
claude.ai
a.claude.ai
a-cdn.claude.ai
assets.claude.ai
downloads.claude.ai
*.livepreview.claude.ai
claude.com
platform.claude.com
*.livepreview.claude.app
*.claudeusercontent.com
*.claudemcpcontent.com
- IP 許可リストを使う組織は、
bridge.claudeusercontent.comをclaude.ai・api.anthropic.comと同じプロキシの出口に通します。通せないときは、その組織専用の出口アドレスに限って許可リストへ追加します(共有の出口範囲だと、プロキシ事業者の他の顧客も通ります)。許可リストにない出口から出ると、Chrome 拡張などブリッジ経由の機能が止まり、他は動き続けます - アーティファクト(アーティファクト)が Google Fonts を使うと、
fonts.googleapis.comとfonts.gstatic.comも要求します(任意。ブロックするとフォールバックのフォントで描画) - アーティファクトは React やチャートライブラリなどを
cdnjs.cloudflare.com・cdn.jsdelivr.net・cdn.tailwindcss.com・code.jquery.com・unpkg.comからだけ読めます。ブロックするとライブラリに頼る部分は動かず、フォントと違って代替はありません - ブロックするときは、黙って捨てず、すぐ拒否します(描画や待ち時間を遅らせないため)
CLI との関係#
Desktop は CLI と同じエンジンをグラフィカルに動かします。同じマシン・同じプロジェクトで両方を同時に動かせます。セッション一覧は別々ですが、設定と CLAUDE.md の記憶は共有されます。
CLI のセッションを Desktop で続ける#
- ターミナルで
/desktopを実行すると、セッションを保存して Desktop で開き、CLI は終了します。macOS と x64 Windows で、Claude サブスクリプションでサインインしているときに使えます。API キー認証、Amazon Bedrock、Google Cloud の Agent Platform、Microsoft Foundry では使えません - シェルから
claude --desktopで、ターミナルセッションを始めずに Desktop を開けます(Claude Code v2.1.285 以降。条件は/desktopと同じ)。引数なしなら現在のディレクトリで開きます。--continueは直近の会話、--resumeはセッション ID(/statusに出る)で開きます。セッション名は使えません
claude --desktop --resume <session-id>
- 別のターミナルで開いているセッション、バックグラウンドで実行中のセッションは移せません。Desktop 未インストールなら、ダウンロードのリンクを出して終了します
- Desktop の中から
/resumeでも CLI セッションを拾えます(ローカルセッションのみ。SSH・WSL・クラウドでは不可)。一覧からタイトル・フォルダ・ブランチで検索し、選ぶと元の会話そのもの(コピーではない)が続くので、ターミナルのclaude --resumeからも見つかります
ヒント
複数のセッションを1つのウィンドウで管理したい、ペインを並べたい、変更を視覚的に確認したいときは Desktop が向きます。スクリプト・自動化・ターミナル作業は CLI が向きます。
CLI のフラグとの対応#
表にないフラグは、スクリプト・自動化向けなので Desktop に対応するものがありません(CLI のコマンドとフラグ)。
| CLI | Desktop での相当 |
|---|---|
--model sonnet |
送信ボタン横のモデルドロップダウン |
--resume、--continue |
サイドバーのセッションをクリック。CLI で始めたセッションはプロンプト欄で /resume |
--permission-mode |
送信ボタン横のモード選択 |
--dangerously-skip-permissions |
Bypass permissions モード(Pro・Max は設定で有効化、Team・Enterprise は組織ポリシー) |
--add-dir |
クラウドセッションで「+」ボタンから複数リポジトリを追加 |
--allowedTools、--disallowedTools |
セッション単位の相当なし。設定ファイルの権限ルールは効く |
--verbose |
Verbose モード(表示モード) |
--print、--output-format |
なし。Desktop は対話専用 |
環境変数 ANTHROPIC_MODEL |
モデルドロップダウン |
環境変数 MAX_THINKING_TOKENS |
ローカル環境エディタで設定 |
共有される設定#
- CLAUDE.md と
CLAUDE.local.md:両方で使われる - MCP サーバー:
~/.claude.jsonや.mcp.jsonの設定は両方で有効 - フックとスキル:設定で定義したものは両方に効く
- 設定:
~/.claude.jsonと~/.claude/settings.jsonを共有。権限ルールや許可ツールも Desktop に効く - モデル:両方で同じモデルを選べる
Desktop アプリは、claude_desktop_config.json の MCP サーバーも、ローカルの「Code」セッションに読み込みます。Chat と「Code」の両方で使えます。同じ名前のサーバーを claude_desktop_config.json と ~/.claude.json や .mcp.json の両方に書くと、「Code」タブは claude_desktop_config.json の定義で1回だけ接続します。また、~/.claude.json(ユーザースコープ)と .mcp.json に同名の stdio サーバーがあると、~/.claude.json の定義を使います(CLI のスコープ階層とは異なります)。スタンドアロンの CLI は claude_desktop_config.json を読みません。macOS と WSL では claude mcp add-from-claude-desktop で ~/.claude.json にコピーできます。
機能の比較#
| 機能 | CLI | Desktop |
|---|---|---|
| 権限モード | dontAsk を含むすべて |
Manual・Accept edits・Plan・Auto。Bypass permissions は有効化後にモード選択へ出る |
| サードパーティプロバイダー | Amazon Bedrock・Google Cloud の Agent Platform・Microsoft Foundry | 既定は Anthropic の API。ゲートウェイ経由や 3P での「Code」タブは別の手順(Bedrock・Vertex AI・Foundry) |
| MCP サーバー | 設定ファイルで設定 | ローカルと SSH はコネクタの UI か設定ファイル |
| プラグイン | /plugin コマンド |
プラグインマネージャーの UI |
| @ メンション | テキストベース | オートコンプリート付き。ローカルと SSH のみ |
| ファイル添付 | なし | 画像・PDF |
| セッションの分離 | --worktree フラグ |
セッション開始時の「worktree」オプション |
| 複数セッション | 別々のターミナル | サイドバーのタブ |
| 定期実行 | cron・CI パイプライン | スケジュールタスク |
| コンピュータ操作 | macOS で /mcp から有効化 |
macOS と Windows で、アプリと画面の操作 |
| iOS シミュレータ | computer use でシミュレータを操作 | iOS Simulator ペインが自動で開く |
| Dispatch 連携 | なし | サイドバーに Dispatch のセッション |
| スクリプトと自動化 | --print・Agent SDK |
なし |
Desktop にないもの#
- サードパーティプロバイダー(上表のとおり、既定は Anthropic の API)
- Linux(ベータ):コンピュータ操作はまだ使えません
- インライン補完:オートコンプリート型のコード提案はありません。会話型のプロンプトと明示的なコード変更で動きます
- エージェントチーム:リーダーの Claude が共有タスクリストからチームメイトに仕事を割り当てる形は CLI にあり、Desktop にはありません(エージェントチーム)。1セッション内の複数エージェントにはワークフローが Desktop で動き、Claude が他のセッションにメッセージを送ることもできます
- ターミナルダイアログのコマンド:ターミナルで対話パネルを開く組み込みコマンドは、「Code」タブでは動きが違います。引数なしのコマンド(
/permissionsなど)はisn't available in this environmentと返ります。/configは「Settings → Claude Code」を開き、後ろの文字列は無視されます(/config theme=darkではテーマを設定できません)。権限ルールなどは設定ファイルを直接編集するか、CLI で行います
iOS Simulator ペイン(macOS・パブリックベータ)#
Claude がアプリをビルド・インストール・起動・確認するとき、シミュレータのペインが会話の横に自動で開き、デバイスの画面をライブで流します。Claude の動作を見ることも、自分でタップして試すこともできます。Pro・Max・Team・Enterprise で使えます(HIPAA 構成が有効な Enterprise 組織を除く)。ペインがシミュレータを直接操作するので、computer use は不要で、画面の乗っ取りや他のウィンドウの非表示も起きません。CLI からは computer use 経由でシミュレータを操作します。
要件は次のとおりです。
- Claude Desktop v1.24012.0 以降
- Mac(Apple の iOS Simulator は macOS 専用)
- iOS プラットフォームを入れた Xcode。Xcode 26.x か Xcode 27 を推奨(どちらでも動く)
- ローカルセッションのみ。クラウドと SSH のセッションでは使えません
複数の Xcode を入れている場合は xcode-select が指すものを使います。別のものを使うには、パスを指定して切り替え、Claude Desktop を再起動します。xcode-select -p で現在の選択を確認できます。
sudo xcode-select -s /Applications/Xcode-26.4.app
- 使い方:専用のコマンドも設定もありません。iOS プロジェクトのフォルダで、「アプリをビルドしてシミュレータで実行し、オンボーディングの流れを確認して」のように、実行や確認を軸に頼みます。特定のデバイスで試すなら、「iPhone SE シミュレータで」のように名前で指定します
- 手動で開く:セッションにシミュレータが付いたか Swift ファイルを編集すると、「Views」メニューに「iOS Simulator」が出ます。デバイスが未接続なら「Attach simulator」か、横のメニューで特定のデバイスを選びます(停止中のデバイスを選ぶと起動します)。Xcode やシミュレータがないとセットアップ手順が出て、完了するごとにチェックされます
- Claude が起動したデバイスは Apple の Simulator アプリ(Xcode 27 では Device Hub)にも出ます。すでに起動済みのデバイスにもインストールできます
ペインはビューアだけでなく、自分でも操作できます。
| 操作 | 方法 |
|---|---|
| タップとスワイプ | デバイス画面をクリック・ドラッグ |
| Home | Cmd+Shift+H |
| ロック | Cmd+L |
| 音量 | Cmd+↑/Cmd+↓ |
| 時計回りに90度回転 | 回転ボタンか Cmd+→ |
| スクリーンショット | Cmd+S(デスクトップに保存) |
| 画面録画 | Cmd+R(デスクトップに保存) |
| 配信の停止(デバイスは止めない) | 「Detach simulator」 |
シミュレータからの映像を調整するには、ペインの「Display」メニューを開きます。ペインが Mac の負荷になるときは「Frame rate」か「Resolution」を下げます。アプリの動作ではなく、ペインの表示にだけ効きます。Claude と同じデバイスを操作するので、タップはアプリの状態を変えます。Claude の操作中は「Claude is using this device」のバッジが出るので、消えるまで待ちます。
- デバイスは起動したセッションに属し、並行セッションで共有されません。サイドバーでセッションを切り替えるとシミュレータの表示も切り替わります。Claude が複数のデバイスを使うと、それぞれ別のペインが開き、1セッションにつき最大4つです
- Claude Desktop は、自分が起動したシミュレータを、アプリの終了時、セッションのアーカイブ時、ペインから切り離して10分後に停止します。Simulator アプリや Device Hub で自分が起動したデバイスは自動では停止しません。ペインの停止ボタンで直ちに止められます
- 同意:Claude が初めてデバイスを使うとき、許可を求められます。デバイスごとに1回で、デバイスの操作とスクリーンショットが対象です。スクリーンショットは Anthropic に送られ、通常の会話の保持設定で保存されるので、Claude が使うデバイスで実アカウントにサインインしないでください。許可後のタップ・入力・起動・撮影は確認なしで動き、macOS の Accessibility と Screen Recording の権限は不要です。断ってもデバイスは起動し、自分のタップは使えます。後から変えるにはペインの「Let Claude use it」を押します
- 権限モードに従う2つの操作:デバイスで URL を開くこと(データを持ち出しうるため)と、アプリのビルド(
xcodebuildがプロジェクトのビルドスクリプトを動かすため)。実行中のビルドの確認は聞かれません - オフにするには、デスクトップアプリの設定で Claude のシミュレータへのアクセスを切ります。組織は、管理設定
disableMobileSimulatorTools(ペインは自分のタップに使える)か、ポリシーキーrequireCoworkFullVmSandbox(Claude のツールを隔離した VM 内で動かし、ペインとシミュレータのツールを完全に無効にする)で全員に対して切れます - 制限:操作できるのはシミュレータだけで、実機の iPhone や iPad は操作できません。実機で試すなら、自分で Xcode から実行し、見えたことを伝えるかスクリーンショットを添付します
ペインが開かないときは、次を確認します。
- 目的を明示する(「iOS Simulator でアプリを実行して、サインインの流れを操作して」)
- Xcode と iOS シミュレータが入っていて、推奨の Xcode バージョンであること
- 組織のポリシーでシミュレータのツールが無効になっていないこと、HIPAA 構成の Enterprise 組織でないこと
- Claude Desktop が v1.24012.0 以降であること
「no simulators were found」と出るときは、Xcode の設定から iOS シミュレータのランタイムを入れるか、xcodebuild -downloadPlatform iOS を実行します。
Linux 版(ベータ)#
Linux 版は macOS・Windows と同じ Chat・Cowork・Claude Code が使えます。ベータ版です。
- 要件:Debian 系で Ubuntu 22.04 以降または Debian 12 以降、x86_64 または arm64。Fedora や Arch などは公式にはテストされておらず、CLI を使います
- WSL 2 で作業する人は、Windows 版を入れてセッションをディストリビューション内で動かします
インストール#
- apt リポジトリを追加します。署名鍵の取得に
curlとgpgが要ります(なければsudo apt install curl gnupg)
sudo curl -fsSLo /usr/share/keyrings/claude-desktop-archive-keyring.asc https://downloads.claude.ai/claude-desktop/key.asc
gpg --show-keys /usr/share/keyrings/claude-desktop-archive-keyring.asc
echo "deb [arch=amd64,arm64 signed-by=/usr/share/keyrings/claude-desktop-archive-keyring.asc] https://downloads.claude.ai/claude-desktop/apt/stable stable main" | sudo tee /etc/apt/sources.list.d/claude-desktop.list
gpg が出すフィンガープリントは 31DDDE24DDFAB679F42D7BD2BAA929FF1A7ECACE であるはずです。鍵が違う・取れていないと、後の apt update が NO_PUBKEY BAA929FF1A7ECACE で失敗します。ファイルが開けない、または OpenPGP のデータがないと出たら、downloads.claude.ai に届くかを確認してダウンロードをやり直します。
- パッケージを入れます。
sudo apt update && sudo apt install claude-desktop
- アプリケーションランチャーの「Claude」か、端末で
claude-desktopを実行し、Anthropic アカウントでサインインします。Linux 版もサブスクリプションか組織の SSO でサインインし、Claude Console の API キーは直接受け付けません(API キー認証は CLI で)
apt を使えない場合は、リポジトリのパッケージプールから .deb を直接取得して入れます。
sudo apt install ./claude-desktop_*.deb
- apt リポジトリを登録せずに入れるには、先に
/etc/default/claude-desktopにCLAUDE_DESKTOP_ADD_REPO="false"の行を作ります。この場合 apt は新しい版を配らないので、更新は取得し直して再インストールします .debには Anthropic の署名鍵が入っていて、/usr/share/keyrings/claude-desktop-archive-keyring.ascに置かれるので、鍵を自分で取る必要はない。CLAUDE_DESKTOP_ADD_REPOで登録を切っていなければ、パッケージが/etc/apt/sources.list.d/claude-desktop.listも登録し、以後の更新はシステムのパッケージ更新で届く- 更新:アプリは Linux では自動更新せず、
sudo apt update && sudo apt upgradeで更新します - 削除:
sudo apt remove claude-desktop。パッケージが登録したリポジトリ項目と署名鍵も一緒に消えます。手で追加したリポジトリ項目はsudo rm /etc/apt/sources.list.d/claude-desktop.listで消します
Cowork の要件#
Linux の Cowork は、デスクトップアプリが QEMU と KVM で動かす仮想マシンの中でタスクを実行します。
| 要件 | 内容 |
|---|---|
| ハードウェア仮想化 | ファームウェア設定で有効にする。なければ「Cowork requires hardware virtualization (KVM)」と出る |
| QEMU と UEFI ファームウェア | x86_64 は qemu-system-x86・ovmf・virtiofsd、arm64 は qemu-system-arm・qemu-efi-aarch64・virtiofsd。apt install claude-desktop が推奨パッケージとして入れる。不足すると「Cowork requires QEMU」と apt install のコマンドが出る。Ubuntu 22.04 には virtiofsd パッケージがなく、同梱のものを使う |
/dev/kvm へのアクセス |
sudo usermod -aG kvm $USER で kvm グループに入り、ログアウトして再ログインする。/dev/vhost-vsock は kvm グループのメンバーだけが開けるので、/dev/kvm が使えていても参加する |
アプリは起動時に1回だけ要件を確認するので、パッケージ導入後はアプリを再起動し、グループ参加後は再ログインします。/dev/vhost-vsock がなく、実行中のカーネルの /lib/modules にモジュールのディレクトリもない場合は、カーネルが必要な仮想化に対応していないと表示されます(ChromeOS やコンテナ型の Linux 環境に多い)。
Linux のトラブルシューティング#
| 症状 | 対処 |
|---|---|
E: Unable to locate package claude-desktop |
リポジトリ追加後に sudo apt update を実行したか、cat /etc/apt/sources.list.d/claude-desktop.list に deb 行があるか、dpkg --print-architecture が amd64 か arm64 か、apt update の出力に downloads.claude.ai の誤りがないかを確認。それでもだめなら .deb を直接入れる |
libc6 (>= 2.34) の未解決依存 |
ディストリビューションが古い。Ubuntu 20.04 は libc6 2.31。Ubuntu 22.04 以降か Debian 12 以降へ |
未解決の依存がすべて not installable(:amd64 や :arm64 付き) |
マシンと違うアーキテクチャの .deb を取得している。合うものを取るか、apt リポジトリから入れる |
root で起動すると --no-sandbox なしでは対応しない旨のメッセージで終了する |
通常のユーザーでログインして起動する |
| ログインが保存されず、起動のたびにサインインし直す | 下の「サインインがこのデバイスに保存されない」を見る |
| Cowork requires QEMU | 表示された QEMU と UEFI のパッケージを入れる |
| Cowork requires hardware virtualization (KVM) | ファームウェアで仮想化を有効にする |
| Claude doesn't have permission to use virtualization (/dev/kvm) | kvm グループに入り、再ログインする |
Cowork requires the vhost_vsock kernel module |
sudo modprobe vhost_vsock を実行して再起動。毎回の起動で読み込むには echo vhost_vsock | sudo tee /etc/modules-load.d/vhost_vsock.conf |
サインインがこのデバイスに保存されない#
Claude Desktop は、サインインの情報をデスクトップのキーリング(GNOME Keyring や KDE Wallet など)に保存します。ロックの解けたキーリングに届かないと、サインインは保存されず、起動のたびにサインインし直すことになります。システムに合うものを選びます。
- KDE Plasma 以外のデスクトップで、キーリングが入っていない:
--no-install-recommendsで入れた、または推奨パッケージを飛ばす最小のイメージだと、apt がキーリングを入れていない。sudo apt install gnome-keyringで GNOME Keyring を入れる - KDE Plasma に GNOME Keyring も入っている:KDE Wallet は Plasma デスクトップに付いてくる。2つのキーリングは衝突し、KDE Wallet が動いていても Claude Desktop がこの通知を出すことがある。余分なほうを
sudo apt remove gnome-keyringで外し、コンピュータを再起動する - キーリングは入っているがロックされている:ロックを解く
直したら、アプリを再起動してサインインします。そのあと一度終了して起動し直し、サインインしたまま開くことを確かめます。
Linux ベータにまだないもの:
- コンピュータ操作
- 音声入力(Dictation。CLI の音声入力を使う)
- Quick Entry のグローバルホットキー:X11 では動く。ネイティブ Wayland では、デスクトップ環境の GlobalShortcuts ポータルが要る
- Fedora と RHEL(Debian 系のみ。他は今後)
トラブルシューティング#
チャットに出る実行時の API エラー(API Error: 500、529 Overloaded、429、Prompt is too long)は CLI・デスクトップ・Web で共通です(エラー一覧)。
| 症状 | 対処 |
|---|---|
| バージョンを知りたい | macOS は「Claude → About Claude」、Windows は「Help → About」。バージョン番号をクリックするとコピー |
Error 403: Forbidden など認証エラー |
アプリメニューからサインアウトして再サインイン(最も多い解決策)。有効な有料サブスクリプション(Pro・Max・Team・Enterprise)を確認。CLI は動くのに Desktop が動かないときは、アプリを完全に終了して開き直す。ネットワークとプロキシも確認 |
| 起動時に画面が真っ白または固まる | アプリを再起動。更新を確認(macOS と Windows は起動時に自動更新、Linux は apt)。管理ネットワークでは、CDN ホストがファイアウォールで許可されているか確認。Windows は「Windows Logs → Application」のクラッシュログ |
Failed to load session |
選んだフォルダが消えている、Git LFS が要るのに未導入、権限不足が考えられる。別のフォルダを選ぶか再起動 |
npm・node などが見つからない |
通常のターミナルで動くか確認し、シェルプロファイルの PATH を確認して、アプリを再起動 |
| 「Git is required」 | Git(Windows は Git for Windows)を入れる。worktree を使わない Windows では、v1.49585.0 より前の版が不要に Git を求めていたので更新する |
| 「Git LFS is required by this repository but is not installed」 | Git LFS を入れて git lfs install を実行し、アプリを再起動 |
| Windows で MCP サーバーが動かない | 設定を確認し、アプリを再起動。Task Manager でサーバーのプロセスを確認し、サーバーのログを見る |
| アプリが終了しない | macOS は Cmd+Q、だめなら Cmd+Option+Esc で強制終了。Windows は Ctrl+Shift+Esc の Task Manager |
| Windows でインストール後に PATH が更新されない | 新しいターミナルを開く |
| Windows で「別のインストールが進行中」と出るが実際はない | インストーラーを管理者として実行 |
| CLI で開くと「Branch doesn't exist yet」 | クラウドが作ったブランチがローカルにない。ツールバーでブランチ名をコピーして git fetch origin <branch-name> と git checkout <branch-name> |
解決しないときは、アプリの「Help → Get Support」を使います。CLI でも再現する問題は、GitHub Issues で検索・報告します。報告にはアプリのバージョン・OS・エラーメッセージ・関連ログを添えます(macOS は Console.app、Windows は Event Viewer)。ログには、ファイルパスなど環境の情報が含まれることがあるので、公開前に確認します。
公式ドキュメント(英語)
- Desktop application
- Get started with the desktop app
- Claude Desktop on Linux (beta)
- Claude Code Desktop in WSL
- Test iOS apps in the simulator
2026年10月5日時点の内容をもとに、日本語でまとめています。