# Coding Helper(cch) 中文交互式 Coding CLI 装机与订阅助手。一个命令完成:环境体检修复 → 安装编码工具 → 检测订阅状态 → 切换第三方端点。 ## 功能 | 功能 | 说明 | | --- | --- | | 🏥 环境体检 | 检测 Node/npm/Git/curl/网络/目录权限,缺失项一键调用系统包管理器修复 | | 📦 软件广场 | 交互式安装 / 更新 8 款编码工具,自动按平台(Windows/macOS/Linux)选择渠道 | | 📊 状态总览 | 一览各工具:是否安装、版本、官方订阅 / 第三方端点 / 未登录 | | 🔑 订阅管理 | 第三方 API 端点预设(新增 / 删除 / 切换 / 恢复官方),切换前自动备份原配置 | ## 支持的工具 | 工具 | 安装 | 第三方端点切换 | | --- | --- | --- | | Claude Code | npm / winget / 官方脚本 | ✅ settings.json env 块 | | Codex CLI | npm / 官方脚本 | ✅ config.toml + auth.json | | OpenCode | npm / brew / choco / scoop / 官方脚本 | ✅ opencode.json provider.baseURL | | Crush | npm / winget / brew / apt | 🧪 实验性(crushrc export 注入) | | Kimi Code CLI | 官方脚本 | — | | Qwen Code | npm | — | | CodeBuddy Code | npm | — | | Cursor CLI | 官方脚本 | — | ## 使用 ```bash # 交互模式(推荐) npx coding-helper # 或安装后使用短命令 npm install -g coding-helper cch # 非交互(脚本 / CI) cch doctor # 环境体检,打印结果,缺关键依赖时退出码 1 cch status # 打印各工具安装与订阅状态 ``` ## 订阅切换说明 - 预设保存在 `~/.cch/presets.json`,切换时原配置备份为 `*.cch.bak`,可随时在「恢复官方配置」还原 - Codex 切换会以 API Key 模式覆盖 ChatGPT 订阅登录(auth.json 同样有备份) - OpenCode 的 API Key 为明文写入 opencode.json,注意文件权限 - 各家 CLI 升级可能改变配置格式,如切换后异常,先执行「恢复官方配置」 ## 开发 ```bash npm install npm run dev # tsx 直接运行 npm run build # 编译到 dist/ npm run typecheck ``` ### 架构 ```text src/ ├── index.ts # 入口:交互主菜单 + 非交互子命令 ├── run.ts # 跨平台命令执行(Windows 自动 shell、脚本安装封装) ├── platform.ts # 平台 / 架构 / WSL / 发行版 / 包管理器探测 ├── registry.ts # 工具注册表(数据驱动:新增工具只需追加配置) ├── doctor.ts # 环境体检 + 修复命令生成 ├── status.ts # 安装 / 版本 / 授权状态探测 └── subscribe.ts # 预设 CRUD + 四工具切换实现(备份 + 原子写) ``` - 技术栈:Node.js ≥ 18 + TypeScript + @clack/prompts(交互 UI)+ picocolors - 全中文文案;Windows 走 PowerShell(irm | iex),macOS/Linux 走 curl | bash ## 路线图 - [ ] Windows 真机验证(路径 / PowerShell 提权) - [ ] Crush 端点级配置支持(provider 段,替换当前实验性 export 方案) - [ ] Kimi / Qwen / CodeBuddy / Cursor 的第三方端点支持(视官方能力) - [ ] 一键更新全部已装工具 - [ ] 代理 / 镜像(npm registry、安装脚本)配置项 ## 许可 MIT