Files

84 lines
3.1 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 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