Claude Media
Claude Desktop LinuxのGNOMEで毎回出るショートカット許可の止め方

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

同じ条件に当てはまるなら、症状は次の形で出ます。

  1. 起動直後にダイアログが出て、キーの組み合わせとしてCtrl+Alt+Spaceが表示される
  2. 「キャンセル」で閉じても、次の起動でまた出る
  3. 設定画面で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. 1

    Claude Desktopを完全に終了する

    ウィンドウを閉じるだけでは足りません。pgrep -af -i claudeで関連プロセスが残っていないことを確かめます。

  2. 2

    設定ファイルをコピーしておく

    claude_desktop_config.jsonを同じ場所に.bakで複製します。

  3. 3

    preferencesにキーを足す

    preferencesの中に"legacyQuickEntryEnabled": falseだけを足します。

  4. 4

    起動して確かめる

    ダイアログが出ないこと、一度終了して再起動しても出ないことを見ます。

1番目と2番目は、次のコマンドで済みます。

pgrep -af -i claude || echo "起動していません"
cp ~/.config/Claude/claude_desktop_config.json \
  ~/.config/Claude/claude_desktop_config.json.bak

pgrepが表示するプロセス名はパッケージ名と一致するとは限らないため、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番目で完全終了を求めているのは、このためです。

終了してから足した値は、再起動後も残ります。報告では、この順序で入れるとダイアログは出なくなり、値は再起動をまたいで残っています。

効いていないように見えるときは、次の順に切り分けます。

切り分け

回避策が効かないときの切り分け

  1. Q設定ファイルにlegacyQuickEntryEnabledが残っているか?
    答えがいいえのとき

    起動中に編集して、アプリに上書きされた可能性があります。完全に終了してから、もう一度preferencesに足し直します。

    答えがはい
  2. Qキーが`preferences`の中にあるか?
    答えがいいえのとき

    Issueの解析では、このキーはpreferencesの中で読まれます。最上位に書いた場合は効かない可能性が高いので、preferencesの波括弧の内側に移します。

    答えがはい
  3. 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 upgrade

Claude DesktopはLinuxではbeta扱いで、アプリは自動更新されません。更新手順や、Ubuntu・Debian以外が対象外であることはClaude Desktop Linux版のインストール手順にまとめています。

似た症状との切り分け

Linux版で「起動のたびに何かを聞かれる」症状は、原因が複数あります。ショートカットのダイアログと取り違えやすいものを挙げます。

ダイアログの文言が「Add Keyboard Shortcuts」で、「Claude shortcut」とCtrl+Alt+Spaceが表示されているなら、この記事の件です。

取る道はホットキーを使うかで決まる

ダイアログが出るのは、Wayland上のGNOMEとポータルの組み合わせです。KDEなど別のデスクトップで同じ症状が出るかは、Issueの範囲外です。

ホットキーを使わないなら、設定ファイル1行で終わります。使うなら、許可して様子を見るか、X11に切り替えるかを選ぶことになります。どちらの道でも、設定画面のquickEntryShortcutはLinuxでは効かない前提で扱ってください。

この記事を共有:XはてブLinkedIn