概要
デスクトップアプリは CLI と同じエンジンをグラフィカルなインターフェースで動かす。同じマシンで、同じプロジェクトに対して両方を同時に走らせられる。セッション履歴はそれぞれ別に保持され、設定とプロジェクトメモリ(CLAUDE.md)は共有される。
仕様
CLI セッションを Desktop へ移す
- ターミナルで
/desktopを実行する。セッションを保存してデスクトップアプリで開き、CLI は終了する - 利用条件: macOS または x64 Windows で、Claude サブスクリプションでサインインしていること
- API キー認証、Amazon Bedrock、Google Cloud's Agent Platform、Microsoft Foundry では利用できない
使い分け(公式の指針)
- Desktop: 並行セッションを 1 つのウィンドウで管理したいとき、ペインを並べたいとき、変更を視覚的にレビューしたいとき
- CLI: スクリプティング、自動化、ターミナルのワークフローを好むとき
CLI フラグの対応表
ここに無いフラグはスクリプティング・自動化向けであり、Desktop に相当機能が無い。
| CLI | Desktop での相当 |
|---|---|
--model sonnet | 送信ボタン隣のモデルドロップダウン |
--resume、--continue | サイドバーのセッションをクリック |
--permission-mode | 送信ボタン隣のモードセレクタ |
--dangerously-skip-permissions | Bypass permissions モード。Pro / Max は Settings → Claude Code → "Allow bypass permissions mode"、Team / Enterprise は組織のポリシーが制御する |
--add-dir | cloud セッションで + ボタンから複数リポジトリを追加する |
--allowedTools、--disallowedTools | セッション単位の相当は無い。 settings ファイルの permission ルールは有効 |
--verbose | Transcript view ドロップダウンの Verbose view mode |
--print、--output-format | 利用できない。Desktop は対話専用 |
ANTHROPIC_MODEL 環境変数 | 送信ボタン隣のモデルドロップダウン |
MAX_THINKING_TOKENS 環境変数 | local environment editor で設定する |
共有される設定
Desktop と CLI は同じ設定ファイルを読む。
- CLAUDE.md と
CLAUDE.local.md(プロジェクト内)は両方で使われる - MCP サーバー:
~/.claude.jsonまたは.mcp.jsonに設定したものが両方で動く - hooks と skills: settings で定義したものが両方に適用される
- settings:
~/.claude.jsonと~/.claude/settings.jsonは共有される。permission ルール・allowed tools などのsettings.jsonの設定は Desktop セッションにも適用される - モデル: 同じモデルが両方で利用できる。Desktop では送信ボタン隣のドロップダウンで選び、セッション途中でも変更できる
claude_desktop_config.json からの MCP 読み込み
CLI と優先順位が違う。
- デスクトップアプリは
claude_desktop_config.jsonの MCP サーバーを、~/.claude.jsonや.mcp.jsonのサーバーと並べてローカルの Code タブセッションへ読み込む。そこで定義したサーバーは Desktop の chat と Code タブのローカルセッションの両方で使える claude_desktop_config.jsonと~/.claude.json/.mcp.jsonに同名のサーバーを定義した場合、ローカルセッションの Code タブは 1 回だけ接続し、claude_desktop_config.jsonの定義を使う- アプリは
~/.claude.jsonの stdio サーバーを、ローカルセッションの組み込み CLI へ再配送する。~/.claude.jsonの最上位(user スコープ)と.mcp.jsonが同名の stdio サーバーを定義した場合、Code タブは~/.claude.jsonの定義を使う。これは CLI のスコープ階層とは異なる - スタンドアロンの CLI は
claude_desktop_config.jsonを読まない。 macOS と WSL ではclaude mcp add-from-claude-desktopでコピーする
機能比較
| 機能 | CLI | Desktop |
|---|---|---|
| permission mode | dontAsk を含む全モード | Manual / Accept edits / Plan / Auto。Bypass permissions は有効化後にセレクタへ現れる(Pro・Max は Settings トグル、Team・Enterprise は組織ポリシー) |
| サードパーティプロバイダ | Amazon Bedrock / Google Cloud's Agent Platform / Microsoft Foundry | 既定では Anthropic の API。gateway 経由や 3P での実行は別途手順が要る |
| MCP サーバー | 設定ファイル | ローカルと SSH セッションでは Connectors の UI、または設定ファイル |
| plugins | /plugin コマンド | plugin manager の UI |
| @mention ファイル | テキストベース | 補完付き。ローカルと SSH セッションのみ |
| ファイル添付 | 利用できない | 画像・PDF |
| セッションの分離 | --worktree フラグ | 自動で worktree |
| 複数セッション | ターミナルを分ける | サイドバーのタブ |
| 定期実行 | cron ジョブ、CI パイプライン | scheduled tasks |
| computer use | macOS で /mcp から有効化 | macOS と Windows でアプリと画面の操作 |
| iOS simulator | computer use でシミュレータを操作 | iOS Simulator ペインが自動で開く |
| Dispatch 連携 | 利用できない | サイドバーに Dispatch セッション |
| スクリプティング・自動化 | --print、Agent SDK | 利用できない |
Desktop で利用できないもの
- サードパーティプロバイダ: 既定では Anthropic の API に接続する。gateway 経由のルーティングや Bedrock / Agent Platform / Foundry / self-hosted gateway での実行は別途手順が要る
- Linux(beta)では computer use が使えない
- インラインのコード補完: 補完形式の提案は行わない。会話によるプロンプトと明示的なコード変更で動く
- agent teams: Claude がチームリードとして共有タスクリストから担当を割り当てる協調チームは CLI のみ。1 セッション内での多エージェント作業には dynamic workflows を使う(Desktop で動く)
- ターミナルのダイアログを開くコマンド: 引数の形を持たない
/permissionsのようなコマンドはisn't available in this environmentと返す。/configは Settings → Claude Code を開き、後続テキストは無視される
制約・注意点
--printを前提にした手順は Desktop に移植できない。 非対話実行は CLI か Agent SDK の担当--allowedTools/--disallowedToolsに相当するセッション単位の指定が無い。 ツールを絞るなら settings ファイルの permission ルールで行う- MCP の優先順位が CLI と異なる(上記)。同名サーバーを複数箇所に定義していると、CLI と Desktop で別の定義が使われることがある
関連
facts/claude-code/desktop.mdfacts/claude-code/cli-reference.mdfacts/claude-code/commands.mdfacts/claude-code/settings.mdfacts/claude-code/mcp.mdfacts/claude-code/memory.mdfacts/claude-code/plugins.md