Repository navigation
v0.2.0 — settings.json 合并 + 多语言 / settings.json reconciliation + i18n
✨ settings.json env 合并(解决「切了 env 仍命中旧端点」)
Claude Code 自己也会读 ~/.claude/settings.json 的 env,里面残留的 ANTHROPIC_BASE_URL 等可能反向盖掉 cce 注入的值,导致切换静默失效。本版彻底解决:
- cce 从不改写你真实的
settings.json;它读取后按模式重组,写一份临时文件,用claude --settings <tmpfile>启动,claude 退出即删。 - 三种合并模式,可全局设、按 env 设、或按次用
-m设:
| 模式 | 效果 |
|---|---|
override(默认) |
完全以本 env 为准;settings.json 里残留的 anthropic 键被屏蔽 |
merge-cce |
与 settings.json 取并集,冲突时本 env 优先 |
merge-claude |
与 settings.json 取并集,冲突时 settings.json 优先 |
- 新增
-m / --merge-mode <override|cce|claude>启动选项,配置项settingsMode(全局)与envs.<name>.settingsMode(按 env)。 - env 泄漏防护:启动前从子进程环境剥离残留的
ANTHROPIC_*变量,shell 里的export不会再静默覆盖。 - 临时文件带
pid+随机名(并发窗口互不干扰)、chmod 600、全退出路径清理、启动时清扫 6h 以上的孤儿文件。
🌐 多语言界面(中文 / English)
- cce 的帮助、警告、错误、菜单提示支持英文和简体中文。
- 检测优先级:
CCE_LANG环境变量 > 配置lang> 系统 locale > 英文。 - 新增
cce lang [en|zh-CN|auto]子命令持久切换;CCE_LANG=zh-CN cce按次切换。
📖 文档与其它
- README 拆分中英双语;新增
docs/usage.md、docs/DESIGN.md双语完整文档。 schema.json增加settingsMode,编辑器可补全/校验。- 新增 settings / i18n / parser 单元测试。
✨ settings.json env reconciliation
Fixes the "switched env but still hitting the old endpoint" trap. Claude Code also reads env from ~/.claude/settings.json, where a stale ANTHROPIC_BASE_URL could silently override cce's injection.
- cce never edits your real
settings.json; it builds a temp file and launches withclaude --settings <tmpfile>(deleted on exit). - Three modes, settable globally, per-env, or per-run via
-m:
| Mode | Effect |
|---|---|
override (default) |
This env fully wins; stale anthropic keys in settings.json are neutralized |
merge-cce |
Union with settings.json, this env wins on conflicts |
merge-claude |
Union with settings.json, settings.json wins on conflicts |
- New
-m / --merge-modeflag;settingsMode(global) andenvs.<name>.settingsMode(per-env) config. - Env-leak protection: stale
ANTHROPIC_*vars are stripped from the child env so shellexports can't shadow your env. - Temp files use a
pid+random name,chmod 600, cleanup on every exit path, and orphan sweeping (>6h).
🌐 Bilingual UI (English / 简体中文)
- Help, warnings, errors, and prompts in English and Simplified Chinese.
- Resolution:
CCE_LANGenv > configlang> OS locale > English. - New
cce lang [en|zh-CN|auto]to persist;CCE_LANG=zh-CN ccefor a single run.
📖 Docs & misc
- README split into zh/en; full bilingual
docs/usage.mdanddocs/DESIGN.md. schema.jsongainssettingsModefor editor validation.- Added settings / i18n / parser unit tests.
⬆️ 升级 / Upgrade
npm i -g @xiaofuzhou/cce@latestFull changelog: v0.1.0...v0.2.0