ccdeck

Change Claude Code's settings from ccdeck

To change a Claude Code setting from ccdeck, click Settings in the topbar, then Claude Code: each row writes one key to your ~/.claude/settings.json, and going back to Claude Code's default removes the key.

Claude Code only Checked against ccdeck 3.48.0 on

You will

Before you start

Steps

  1. Open Settings › Claude Code

    Click Settings in the topbar, or press Cmd + , (Ctrl + , on Windows and Linux), then click Claude Code.

    Twelve rows sit in five groups: Your sessions, Memory and history, Git, Terminal and Updates. Each one changes one of Claude Code’s own settings, and says what it does under its name.

    The Settings dialog with Claude Code selected in its list of sections. Its head: Claude Code settings, saved to your settings.json. Most changes reach running sessions. Your sessions: Messages from other sessions, set to Claude Code decides; Let sessions find each other, on; Ask before messaging other machines, off. Memory and history: Auto memory, on; Compact automatically, on; Keep conversations, 90 days; Checkpoints for rewind, on. Each row has a line under its name saying what it does. Open the full-size picture
    Demo data Every row can be changed: the Claude Code here is new enough for all of them. This settings file was supplied to the page for this picture.
  2. Change a setting

    Click a switch, or pick a value from a row’s list. ccdeck writes that one key to ~/.claude/settings.json straight away, and most changes reach the sessions already running.

    Going back to Claude Code’s own default, such as 30 days under Keep conversations, removes the key instead. To undo a change, set the row back.

    More about what it writes
    • Only the key of the row you changed. Let sessions find each other adds or removes ListAgents in permissions.deny, and leaves the rest of that list alone.
    • Before each change, ccdeck keeps the file as it was in claude-settings.before-change.json, in its data folder, by default ~/Library/Application Support/ccdeck on macOS, %LOCALAPPDATA%\ccdeck\Data on Windows, ~/.local/share/ccdeck on Linux. The next change replaces it. Like the file, it holds whatever your env block holds, API keys included.
    • It never writes your organization’s settings, a project’s, or ~/.claude.json. With CLAUDE_CONFIG_DIR set, it writes the settings.json in that folder.
    • It reads the file again every ten seconds, so a change made elsewhere shows up.
    • npx ccdeck --uninstall leaves what you set here.
  3. Read the line under a row

    A row ccdeck will not change says why under it: your organization sets it, Claude Code is too old for it, or your file holds a value the row cannot show. A line under a row you can change names what outranks it, such as a variable in your file’s env block.

    The last groups of Settings, Claude Code. Git: Credit Claude in commits and pull requests, off. Terminal: Tips while Claude works, on; Show how long a turn took, on; Reduce motion, off. Updates: Update channel, set to Latest, and under it: Background updates are off in every session: your settings.json sets DISABLE_AUTOUPDATER=1. At the foot: Saved in ~/.claude/settings.json. A project’s own .claude/settings.json, and policies set through MDM or the Windows registry, can override these rows and are not shown here.
    Demo data The channel can still be changed, but a variable keeps background updates off. This settings file was supplied to the page for this picture.

    Some overrides are not shown. A project’s own .claude/settings.json, and policies set through MDM or the Windows registry, can override these rows in Claude Code without a line here. The line at the foot says so.

  4. Look up any other setting

    Below the rows, All Claude Code settings lists the keys your settings.json sets. An on or off value, a number or a choice shows as it is; anything else, such as hooks, shows only as set.

    Type into the filter to look up any of the 246 settings Claude Code documents, and click Reference to read one in Claude Code’s settings reference. This list changes nothing: edit those keys in the file.

    All Claude Code settings, 246: The keys your settings.json sets. Filter to look up any of them, and open the reference for what each does. A field, Filter 246 settings. Seven keys, each with its topic, the kind of value it takes and a Reference link: model, set; permissions, set; env, set, Claude Code 2.1.224+; statusLine, set; attribution, false, Claude Code 2.1.281+; hooks, set; cleanupPeriodDays, 90.
    Demo data Blocks such as env and hooks never reach the page, only that they are set. This settings file was supplied to the page for this picture.

If something goes wrong

Settings has no Claude Code section

ccdeck shows it only while it watches Claude Code. It found no Claude Code on this computer when it started, or it was started with --no-claude.

“Could not read Claude Code settings”

The section reads and writes only on the computer ccdeck runs on, not on a phone or another machine. On that computer, click Retry. If it says so again, check that ccdeck is still running.

A row says “Needs Claude Code 2.1.224 or newer”

Update Claude Code; the row follows within ten seconds. If it adds that the version could not be read, ccdeck cannot tell which Claude Code is installed, so it leaves that row alone. The others still work.

A row says “Changed back after saving”

Most likely a running Claude Code session wrote its own copy of the file over your change. Set the row again.

The rows are gone, and a line says your settings.json is not valid JSON

Claude Code skips that whole file, hooks included. Fix it in an editor. The section reads it again by itself and shows the rows once it can.

Something else? See Troubleshoot ccdeck: status, logs, port and hooks.

Next

All guides Troubleshoot What it touches in the README