Claude Code configコマンドでkey=value設定を直接変更する
Claude Codeの/configはv2.1.181からkey=value形式で1項目だけを直接変更できます。使えるキーの調べ方、モバイルアプリでは動きWeb・Desktopでは無効になる境界線までを扱います。
Claude Codeの/configはv2.1.181からkey=valueの形式を受け付けます。タブ切り替え式の設定画面を開かずに、1つの設定項目だけをその場で変更できます。ただしこの直接指定は動く場所を選びます。ローカルの対話セッションと非対話モード(-p)、モバイルアプリからのRemote Controlでは機能しますが、claude.ai/codeのWebセッションとDesktopアプリでは文字列そのものが無視されます。
/config key=valueで何が変わるか
もともと/configは引数なしで実行するコマンドでした。実行するとSettingsというタブ切り替え式の画面が開き、テーマやモデル、出力スタイルなどをメニューから選んで変更します。この形式は今も使えます。
v2.1.181からは、/configのあとにkey=valueを1つ以上渡すと、画面を開かずにその設定だけを直接書き換えられるようになりました。/config verbose=trueと打てば、ツール出力を省略せずフルで表示する設定がその場でオンになります。v2.1.182からは値の指定がさらに緩くなり、theme=darkやmodel=sonnetのような名前付きの短縮キーも受け付けます。キー名を正確に覚えていなくても、画面上の表示ラベルに近い書き方で通ることが増えました。
/config verbose=true
/config theme=dark
/config model=sonnetkey=valueはスペース区切りで複数同時に渡せます。/config theme=dark verbose=trueのように並べれば、1回のコマンドで両方が切り替わります。新しい開発マシンをセットアップするスクリプトや、チームで揃えたい初期設定をREADMEにコマンド1行として書いておく用途に向きます。どのキーが設定できるかを忘れたら、/config --helpを実行すると設定可能な全キーと選べる値の一覧が出ます。エイリアスは/settingsで、/configの代わりにこちらを打っても同じ画面・同じ直接指定が使えます。
使えるキーの探し方と主要な設定例
key=valueで渡すキー名は、settings.jsonのトップレベルキーとほぼ一致します。設定ファイルを直接編集する方法はClaude Code settings.json完全ガイドにまとめてあります。/config key=valueはそのファイルの特定の1行だけを、画面を経由せず書き換える近道と考えると位置づけがはっきりします。設定できるキーは数十件あり、UI上のラベル名とsettings.jsonのキー名が1対1で対応しています。以下は使う頻度が高いものの抜粋です。
| キー | 値の例 | UI上の表示名 | 効果 |
|---|---|---|---|
theme | 値の例dark / light / auto | UI上の表示名Theme | 効果カラーテーマを切り替える |
verbose | 値の例true / false | UI上の表示名Verbose output | 効果ツール出力を省略せずフル表示 |
editorMode | 値の例vim / normal | UI上の表示名Editor mode | 効果入力欄のキーバインドをVimに切り替える |
autoCompactEnabled | 値の例true / false | UI上の表示名Auto-compact | 効果コンテキスト逼迫時の自動要約on/off |
agentPushNotifEnabled | 値の例true / false | UI上の表示名Push when Claude decides | 効果長時間タスク完了時のスマホ通知 |
remoteControlAtStartup | 値の例true / false | UI上の表示名Enable Remote Control for all sessions | 効果セッション起動時にRemote Controlを自動接続 |
Vimキーバインドの操作一覧はClaude Code Vimモードの使い方とキー操作一覧に、出力スタイルの切り替え手順はClaude Code output styleの切り替えは/configで行うに別途まとめています。/configはこの2つを含む設定変更全般の入り口で、key=valueはそのうちの1行アクセスにあたります。
モバイルは動き、WebとDesktopは動かない
key=valueの直接指定は、実行している場所によって挙動が変わります。ここを知らずに使うと、値を渡したのに反映されないという状態になります。
- ローカルのターミナル(対話セッション): そのまま動作します。設定はユーザー設定ファイルに書き込まれます
- 非対話モード(
-p): 同じkey=valueの形式が機能します。CIスクリプトやセットアップスクリプトの中で、対話画面を経由せずに設定だけを変更する用途に向きます - Claudeモバイルアプリ(Remote Control経由):
key=valueを渡すと設定を変更でき、引数なしで実行すると設定可能なキーの一覧が返ります - claude.ai/codeのWebセッション:
/configはSettingsのClaude Codeセクションを開くだけで、コマンドのあとに続けた文字列は無視されます。/config theme=darkと打ってもテーマは変わりません - Claude Code Desktopアプリ: Webと同じ挙動です。Settings → Claude Codeが開くだけで、
theme=darkのような後続の文字列は読み捨てられます
つまりkey=valueの一発変更が使えるのは「CLIとして動いている場所」に限られます。同じ/configという文字列でも、GUIアプリのチャット欄に打ち込むショートカットとしては機能しません。スマホから設定を変えたいときは、Claudeアプリの会話画面ではなく、Remote Controlでつないだセッション側で打つ必要があります。実行先ごとの違いはClaude Codeをスマホから使う4つの経路の選び方にまとめています。
WebとDesktopのチャット欄は、本来は自由文をClaudeへの指示として送る入力欄です。key=valueをコマンドライン引数のように解釈する経路は、シェルから直接起動するCLIと、Remote Controlでそのセッションに接続したモバイルアプリだけが持っている設計に見えます。同じ/configという見た目のコマンドでも、裏側の実行系がまったく別物だと考えると挙動の違いに納得がいきます。
非対話モード(-p)とCIでの使い方
key=valueの形式は、対話画面を持たない非対話モード(claude -p)でも機能します。-pはそもそもターミナルUIを開かずに1回だけ処理して終了する実行方式なので、/configをプロンプトとして渡すと画面をポップアップさせる余地がなく、指定したキーだけを書き換えてそのまま進みます。GitHub Actionsのようなクラウド上のCI環境や、開発コンテナのプロビジョニングスクリプトの中に埋め込んでおけば、人がキーボードで画面を操作しなくても初期設定を揃えられます。チームで新しいメンバーの環境をセットアップするとき、READMEに手順として書く代わりに1行のコマンドとして配布できる点も、対話画面経由の設定変更には無い利点です。
すべてのキーがshorthandを受け付けるわけではない
key=valueは便利ですが、例外もあります。他セッションからのメッセージ受信可否を決めるcrossSessionInboundはその1つです。このキーはユーザー設定側でのみ有効で、値の選択は/configの該当行から選ぶ形が用意されている一方、/config crossSessionInbound=valueという直接指定そのものは拒否されます。設定を一覧から選ぶ操作と、key=valueでショートカットする操作は別物として実装されていて、両方が常に対応しているとは限りません。
管理設定(managed settings)や--settingsフラグで同じキーがすでに固定されている場合も、/configの該当行自体が非表示になります。値を渡しても書き込み先が無いため、キー名を間違えたときと同じように「反映されていないように見える」状態になります。値が変わらないときは、まず/config --helpでキー名の綴りを確認し、次に管理設定側で同じキーが固定されていないかを疑うと切り分けが早くなります。
公式ドキュメントが個別に明記する範囲を見る限り、/config経由の変更はユーザースコープの設定ファイルに書き込まれる設計です。プロジェクト単位やチームで共有する設定まで、key=value一発で変えられるわけではありません。複数人のプロジェクトで足並みを揃えたい設定は、/configではなくリポジトリの.claude/settings.jsonに書いてコミットするほうが確実です。
キー名を覚えているかで対話画面とkey=valueが分かれる
キー名を正確に覚えていないうちは、引数なしで対話画面を開くほうが安全です。画面にはUI表示ラベルが並ぶので、themeやeditorModeといった内部のキー名を知らなくても、選択肢を見ながら選べます。逆に、キー名がすでにわかっている場合や、同じ変更を繰り返し実行する場合はkey=valueのほうが速く済みます。コマンド履歴に残る、スクリプトやCLAUDE.mdのセットアップ手順に1行として書き込める、といった対話画面には無い扱いやすさもあります。両者は競合する機能ではなく、覚えているかどうかで自然に使い分けるものです。
key=valueと設定ファイル編集はどう使い分けるか
1項目だけをその場で変えるなら/config key=valueが最短です。テーマを切り替える、モデルを一時的に変えるといった単発の操作はこちらに向きます。一方でpermissionsのallow/denyルールやMCPサーバーの定義のように、複数のキーが絡み合う構造化された変更はsettings.jsonを直接編集するほうが見通しが立ちます。/configの対話画面は、その中間にあたる「メニューから選びたいが構造は意識したくない」場面向けです。
Claude Codeが持つスラッシュコマンド全体の中で/configがどの位置にあるかは、Claude Codeスラッシュコマンド一覧で他のコマンドと合わせて確認できます。
まとめ
/config key=valueはv2.1.181で追加され、v2.1.182でtheme=darkのような名前付きショートハンドにも対応しました。ローカルのターミナル、非対話モード、モバイルアプリのRemote Controlからは同じ形式で1行変更が効きます。claude.ai/codeのWebセッションとDesktopアプリでは後続の文字列が無視されるため、そこだけは画面操作に戻る必要があります。設定できるキーの全量は/config --helpが最新で、迷ったらまずそこを確認します。キー名を覚えていないうちは対話画面、覚えたらkey=valueという順で移行していくと無理がありません。