Claude Desktop LinuxのGNOMEで毎回出るショートカット許可の止め方
Linux版Claude DesktopをGNOME(Wayland)で起動するたび、Ctrl+Alt+Spaceの許可ダイアログが出る件の原因と、設定ファイルのlegacyQuickEntryEnabledで止める手順をまとめます。
Linux版のClaude DesktopをGNOMEで使っていると、起動のたびに「Add Keyboard Shortcuts」というダイアログが出て、「Claude shortcut: Ctrl+Alt+Space」の登録を求められることがあります。設定でQuick Entryをオフにしても出続けるのが、この件の厄介なところです。
Issueの報告によれば、原因はアプリ側の挙動で、利用者の設定ミスとは考えにくい状況です。止める方法は、アプリを完全に終了してから設定ファイルに"legacyQuickEntryEnabled": falseを足すことです。以降で、症状の見分け方、原因、手順、副作用を順に説明します。
起動のたびに出るダイアログは何者か
出ているのは、GNOMEのXDG GlobalShortcutsポータルが出す許可ダイアログです。アプリがグローバルショートカット(どのウィンドウにフォーカスがあっても効くキー)を登録しようとするたびに、GNOME側が「このアプリに許可しますか」と尋ねています。
GitHubのIssue #102754に、次の環境での再現が報告されています。
| 項目 | 報告されている環境 |
|---|---|
| アプリ | 報告されている環境claude-desktop aptパッケージ2.42304.0 |
| OS | 報告されている環境Ubuntu 26.04.1 LTS |
| デスクトップ | 報告されている環境GNOME Shell 50.1、Wayland |
| ポータル | 報告されている環境xdg-desktop-portal 1.21.1、xdg-desktop-portal-gnome 50.0 |
同じ条件に当てはまるなら、症状は次の形で出ます。
- 起動直後にダイアログが出て、キーの組み合わせとして
Ctrl+Alt+Spaceが表示される - 「キャンセル」で閉じても、次の起動でまた出る
- 設定画面でQuick Entryのショートカットをオフにしても、出方は変わらない
3番目が見分けのポイントです。ダイアログが出るだけなら、Quick Entryを使う前提の正常な動作とも読めます。オフにしたのに出るから、不具合として報告されています。
なぜオフにしても出るのか
Issueの報告者は、配布されているアプリの中身(app.asar)を読んで原因を整理しています。以下は報告者の解析で、公式の仕様説明ではありません。
- Linuxではネイティブ版のQuick Entryが使えないため、アプリは従来型(legacy)の経路に入る
- legacy経路は、
preferences.legacyQuickEntryEnabledがtrueのあいだ、グローバルショートカットを登録する。既定値はtrueで、設定画面には出てこない - 登録するキーは、設定ファイル最上位の
globalShortcutで決まる。無ければLinuxの既定のCtrl+Alt+Spaceになる - 設定画面でオフにしたときに書かれる
preferences.quickEntryShortcut: "off"は、legacyではない経路だけが読む。Linuxでは効かない - アプリはChromiumの
GlobalShortcutsPortal機能を有効にしている。そのためGNOMEでは、登録がXDGポータル経由になりダイアログが出る - ダイアログをキャンセルしても何も保存されない。
gsettings get org.gnome.settings-daemon.global-shortcuts applicationsが@as []のままなので、次の起動でまた尋ねられる
つまり、設定画面のスイッチと、Linuxで実際に走る経路が別物です。画面のスイッチを何度切り替えても、legacy経路の登録は止まりません。
Claude Codeのドキュメントも、Linux版のQuick Entryのホットキーについて「X11では動作する。ネイティブWaylandでは、デスクトップ環境のGlobalShortcutsポータルが必要」としています。Waylandでポータルを使う設計であること自体は、想定された動作です。Issueが問題にしているのは、オフにしても登録を試み続ける点と、断った結果が記憶されない点です。
設定ファイルで止める手順
Issueに書かれた回避策は、legacyQuickEntryEnabledをfalseにすることです。設定ファイルは~/.config/Claude/claude_desktop_config.jsonにあります。
ダイアログを止める手順
- 1
Claude Desktopを完全に終了する
ウィンドウを閉じるだけでは足りません。
pgrep -af -i claudeで関連プロセスが残っていないことを確かめます。 - 2
設定ファイルをコピーしておく
claude_desktop_config.jsonを同じ場所に.bakで複製します。 - 3
preferencesにキーを足す
preferencesの中に"legacyQuickEntryEnabled": falseだけを足します。 - 4
起動して確かめる
ダイアログが出ないこと、一度終了して再起動しても出ないことを見ます。
1番目と2番目は、次のコマンドで済みます。
pgrep -af -i claude || echo "起動していません"
cp ~/.config/Claude/claude_desktop_config.json \
~/.config/Claude/claude_desktop_config.json.bakpgrepが表示するプロセス名はパッケージ名と一致するとは限らないため、claudeを含む行を広めに拾っています。ターミナルで動かしているClaude CodeのCLIも一覧に出るので、デスクトップアプリのものだけを見分けて終了してください。
設定ファイルのpreferencesの中は、次の形にします。既にquickEntryShortcutなどが入っていても、そのまま残して構いません。
{
"preferences": {
"quickEntryShortcut": "off",
"legacyQuickEntryEnabled": false
}
}3番目は、手で編集しにくい場合は、jqが入っていれば次の1行でも足せます。
f=~/.config/Claude/claude_desktop_config.json
jq '.preferences.legacyQuickEntryEnabled = false' "$f" > "$f.tmp" \
&& mv "$f.tmp" "$f"起動し直したあとは、ログとGNOME側の記録で状況を確かめられます。
grep globalShortcut ~/.config/Claude/logs/main.log | tail -n 5
gsettings get org.gnome.settings-daemon.global-shortcuts applications回避策を入れる前は、起動のたびに[globalShortcut] GlobalShortcuts portal availability: trueの行がmain.logに残ると報告されています。この行は、ポータルが使える状態かどうかを示すもので、登録を試みた証拠そのものではありません。判定の決め手は、ダイアログが実際に出るかどうかです。gsettingsの出力が@as []のままでも、それは「何も許可していない」ことを示すだけで、回避策が効いているかどうかは示しません。
書き換えが消えるときの原因
Issueには、報告者が確認した注意点が2つあります。
アプリの起動中に編集すると、値が消えます。Issueの報告では、アプリが動いているあいだに足したlegacyQuickEntryEnabledは、アプリの書き直しで上書きされて失われます。手順の1番目で完全終了を求めているのは、このためです。
終了してから足した値は、再起動後も残ります。報告では、この順序で入れるとダイアログは出なくなり、値は再起動をまたいで残っています。
効いていないように見えるときは、次の順に切り分けます。
回避策が効かないときの切り分け
- Q設定ファイルにlegacyQuickEntryEnabledが残っているか?答えがいいえのとき答えがはい
起動中に編集して、アプリに上書きされた可能性があります。完全に終了してから、もう一度
preferencesに足し直します。 - Qキーが`preferences`の中にあるか?答えがいいえのとき答えがはい
Issueの解析では、このキーは
preferencesの中で読まれます。最上位に書いた場合は効かない可能性が高いので、preferencesの波括弧の内側に移します。 - Q`jq . ~/.config/Claude/claude_desktop_config.json`がエラーなく通るか?答えがいいえのとき答えがはい
末尾のカンマや引用符の欠けで壊れています。
.bakと見比べて直します。壊れたまま起動すると、設定が読み込まれないおそれがあります。
それでも出るとき
上の3点が問題なければ、Issueの環境(Ubuntu、GNOME Shell、Wayland)と自分の環境の違いを疑います。アプリのバージョンも見直してください。
止めたあとに失うもの
legacyQuickEntryEnabledがfalseなら、legacy経路はグローバルショートカットを登録しません。登録しないので、Quick Entryのホットキーでアプリを呼び出す使い方もできなくなると考えられます。ホットキーは使わない人にとっては損のない回避策です。
ホットキーを使いたい人は選択肢が分かれます。
| 状況 | 向く対応 |
|---|---|
| ホットキーは使わず、ダイアログだけ消したい | 向く対応legacyQuickEntryEnabledをfalseにする |
| ホットキーを使いたく、Waylandのままでよい | 向く対応ダイアログで許可する。許可後に毎回の確認が止まるかは、Issueに記載がない |
| ホットキーを使いたく、確実に動かしたい | 向く対応X11セッションでログインする(Claude Codeのドキュメントが、X11で動作するとしている) |
許可した場合に次回以降の確認が止まるかどうかは、Issueが扱っているのは断った場合だけなので、判断材料がありません。許可して試し、起動のたびに出るようならこの回避策に切り替える、という順で足ります。
あとから使いたくなった場合は、アプリを完全に終了してから、legacyQuickEntryEnabledをtrueに戻すか、そのキーの行を削除します(既定値がtrueなので、削除でも同じです)。書き換えに失敗したときは、コピーしておいた.bakでclaude_desktop_config.jsonを置き換えれば元に戻ります。起動中に戻そうとすると、足したときと同じく上書きされる点に注意してください。
公式側の対応を待つ間の運用
Issueの報告者が求めているのは次の3点です。
- Quick Entryをオフにしたら、Linuxでもショートカット登録とポータルのダイアログを出さない
- それが難しいなら、
legacyQuickEntryEnabledか「グローバルショートカットを有効にする」のスイッチをLinux版の設定画面に出す - 一度断ったら、その結果を覚えておく
Issueにはラベルとしてbug、platform:linux、area:desktopが付いていますが、報告時点ではコメントがなく、修正の有無はIssueの状態で確かめられます。アプリの更新で挙動が変わるかもしれないため、バージョンを上げたあとにダイアログが再び出る、もしくはキー自体が受け付けられなくなったときは、Issueを見直す価値があります。更新はLinuxではaptで行います。
sudo apt update && sudo apt upgradeClaude DesktopはLinuxではbeta扱いで、アプリは自動更新されません。更新手順や、Ubuntu・Debian以外が対象外であることはClaude Desktop Linux版のインストール手順にまとめています。
似た症状との切り分け
Linux版で「起動のたびに何かを聞かれる」症状は、原因が複数あります。ショートカットのダイアログと取り違えやすいものを挙げます。
- ログインを毎回求められる: キーリングにサインイン情報を保存できていない状態です。ダイアログではなくログイン画面が出る点で区別できます。原因別の対処はLinux版で再ログインを繰り返し求められる原因と対処法にあります
- Macでキーチェーンの許可を毎回求められる: 別のOSの話です。Mac版の対処はキーチェーンの許可を毎回求められる原因と対処で扱っています
- Quick Entryの使い方を知りたい: Mac版のOption2回押しや音声入力はMac版Quick Entryの話で、Linux版のホットキーとは仕様が異なります
ダイアログの文言が「Add Keyboard Shortcuts」で、「Claude shortcut」とCtrl+Alt+Spaceが表示されているなら、この記事の件です。
取る道はホットキーを使うかで決まる
ダイアログが出るのは、Wayland上のGNOMEとポータルの組み合わせです。KDEなど別のデスクトップで同じ症状が出るかは、Issueの範囲外です。
ホットキーを使わないなら、設定ファイル1行で終わります。使うなら、許可して様子を見るか、X11に切り替えるかを選ぶことになります。どちらの道でも、設定画面のquickEntryShortcutはLinuxでは効かない前提で扱ってください。