Platform notes
ccdesk runs on Linux, macOS and Windows with Node.js 22.19 or newer. Its tests run on all three on every change.
- Managed settings and instructions are read from
/etc/claude-code. - The browser is opened with
xdg-open. - The open button tries graphical editors on your
PATHbeforexdg-open, which often picks a terminal editor or nothing for JSON and Markdown. SetCCDESK_EDITORto choose one.
- Managed settings and instructions are read from
/Library/Application Support/ClaudeCode. ccdesk reads the files there, not configuration profiles; when acom.anthropic.claudecodeprofile is in/Library/Managed Preferences, the page warns that it outranks those files. - The browser and files are opened with
open.
Windows
Section titled “Windows”- Managed settings and instructions are read from
C:\Program Files\ClaudeCode. ccdesk does not read policies from the registry. It runsreg.exe queryto check whether theHKLMorHKCUkey holds aSettingsvalue: forHKLMthe page warns that the policy outranks those files, and forHKCUthat Claude Code applies it only when no admin source is present above it./statusin Claude Code names the source it uses. - Local settings (
.claude/settings.local.json) are read from the directory you started in, not from the repository root. - In
~/.claude.json, Claude Code names each folder with forward slashes, such asC:/Users/you/app. ccdesk looks up trust answers, local MCP servers and MCP approvals under that name. - A JSON file saved with a byte order mark, as Windows PowerShell 5.1’s
Set-Content -Encoding UTF8writes it, is read as Claude Code reads it. Saving it from ccdesk writes it without the mark, and the review says ccdesk rewrites the whole file. - The browser is opened with
start, and files with your editor or Explorer. An editor that is a.cmdor.batfile, such as VS Code’scode, is started throughcmd.exe; a path containing"or%cannot be passed to it safely, so ccdesk asks you to open that file yourself. - Backups are not given special permissions. They keep the access rules of your user profile folder, which other users normally cannot read.
- For user and local MCP servers, ccdesk runs
claude.exedirectly, or theclaude.exeinside the npm package when onlyclaude.cmdis on yourPATH, so the server’s JSON never passes throughcmd.exe. Aclaude.cmdorclaude.ps1from another installer, such as Scoop or Volta, cannot be started this way, and ccdesk says so. The commands shown in the review are quoted for a POSIX shell such as Git Bash.
ccdesk reads the home folder of the system it runs on. Started inside WSL, it shows the Claude Code setup in WSL; started from Windows, the one in your Windows profile. Links that point into \\wsl$ are followed.
CLAUDE_CONFIG_DIR
Section titled “CLAUDE_CONFIG_DIR”When CLAUDE_CONFIG_DIR is set, ccdesk uses it on every platform in place of ~/.claude: settings, agents, skills, memory, transcripts and backups all live there, and so does .claude.json.