CLI 工具,用於管理多組 Claude Code settings。可在不同情境(工作、個人、專案)之間快速切換 ~/.claude/settings.json 設定。
透過符號連結(symlink)機制,~/.claude/settings.json 會直接指向儲存的 setting 檔案,編輯任一路徑都會同步更新。
brew tap tim80411/tap
brew install ccx更新:
brew update
brew upgrade ccxgit clone <repository-url>
cd ccx
bun install
bun link從目前的 Claude Code 設定建立新的 setting:
ccx setting create <name>
# 例如: ccx setting create workccx setting list切換到指定的 setting(建立符號連結,會自動備份目前設定到 previous):
ccx setting use <name>
# 例如: ccx setting use personal未指定名稱時,會進入互動選擇模式:
ccx setting use顯示目前使用中的 setting 名稱:
ccx setting status顯示當前 setting 的檔案路徑:
ccx setting path顯示 Claude 官方設定檔路徑:
ccx setting path --official顯示指定 setting 的內容:
ccx setting show <name>
# 例如: ccx setting show work
ccx setting show work --raw # 輸出非格式化的 JSON未指定名稱時,會進入互動選擇模式:
ccx setting show顯示 Claude 官方設定檔內容:
ccx setting show --official直接設定 Claude 官方 settings.json 中的 key-value(使用 dot-path 格式):
ccx set env.MY_KEY=myvalue
ccx set env.A=1 env.B=2 # 一次設定多筆
ccx set enabledPlugins.foo=true # 自動推斷布林值
ccx set model=sonnet --approve # 跳過覆蓋確認若 key 已存在,會提示是否覆蓋(顯示目前值)。使用 --approve 跳過所有確認。
刪除 Claude 官方 settings.json 中的 key(使用 dot-path 格式):
ccx unset env.MY_KEY # 精確刪除
ccx unset # 互動選擇要刪除的 key比較兩個 setting:
ccx setting diff <name1> <name2>
# 例如: ccx setting diff work personal使用語意化輸出(依 added/removed/modified 分組):
ccx setting diff work personal --semantic| 變數 | 說明 |
|---|---|
CLAUDE_CONFIG_DIR |
自訂 Claude 設定目錄路徑(預設為 ~/.claude) |
| 用途 | 路徑 |
|---|---|
| Claude Code 設定 | ~/.claude/settings.json(符號連結) |
| 儲存的 Settings | ~/.config/ccx/settings/<name>.json |
| Setting 備份 | ~/.config/ccx/settings/<name>.json.bak |
| 切換前備份 | ~/.config/ccx/settings/previous.json |
| 狀態追蹤 | ~/.config/ccx/state.json |
# 執行測試
bun test
# 直接執行 CLI
bun run src/index.ts setting <command> [args]
# 全域安裝(開發用)
bun linkMIT