让 Claude Code 更易用,支持多配置切换和环境变量管理。非常适合有多个类似 Any Router 中转站的场景,某账号有问题切成另一个账号后使用 /resume
继续对话。
主要特性:
- 🔄 多配置切换: 轻松在不同API端点和认证之间切换
- 🔧 环境变量管理: 支持 ANTHROPIC_BASE_URL、ANTHROPIC_AUTH_TOKEN、ANTHROPIC_MODEL
- ⚡ 自动升级: 配置格式自动升级,无需手动干预
- 🛡️ 向后兼容: 完全兼容旧版本配置格式
- Node.js >= 18.0.0
首次使用时会自动判断 claude-code 是否已安装,未安装会先安装。
# 安装
pnpm i -g auo
# 列出所有配置
auo --list
# 切换到指定索引的配置
auo --use 1
# 删除指定索引的配置
auo --remove 2
# 编辑指定索引的配置
auo --edit 1
# 添加新配置(交互式)
auo --add
# 查看配置文件路径
auo --config-path
# 正常使用 Claude,自动使用当前选中的配置中的所有环境变量设置
auo "帮我写代码"
auo
自动带入环境变量并启动 Claude Code。
auo --help
查看支持的命令。
auo --list
查看已配置的列表。
auo --use 6
选择对应的配置后会有提示。
配置文件会自动从旧格式升级到新格式。手动编辑配置文件 ~/.auo/config.json
不推荐,建议使用 auo --add
命令。模型别名参考官方链接 model-aliases,比如使用 sonnet[1m]
可以使用最新的百万上下文。
最新格式 (v2):
{
"version": "v2",
"providers": [
{
"name": "default",
"description": "官方 Anthropic API",
"env": {
"ANTHROPIC_BASE_URL": "",
"ANTHROPIC_AUTH_TOKEN": "your-anthropic-token",
"ANTHROPIC_MODEL": "default"
}
},
{
"name": "custom-proxy",
"description": "自定义代理服务器",
"env": {
"ANTHROPIC_BASE_URL": "https://your-proxy-server.com/v1",
"ANTHROPIC_AUTH_TOKEN": "your-proxy-token",
"ANTHROPIC_MODEL": "claude-3-5-sonnet-20241022"
}
},
{
"name": "local-dev",
"description": "本地开发环境",
"env": {
"ANTHROPIC_BASE_URL": "http://localhost:8000",
"ANTHROPIC_AUTH_TOKEN": "dev-token",
"ANTHROPIC_MODEL": "default"
}
}
],
"currentIndex": 0
}
旧格式 (v1) - 自动升级:
{
"providers": [
{
"name": "default",
"baseUrl": "",
"authToken": "your-anthropic-token",
"description": "官方 Anthropic API"
}
],
"currentIndex": 0
}
注意: 旧格式配置会在首次使用时自动升级到新格式,无需手动操作。
pnpm install
# 开发模式(监视文件变化)
pnpm run dev
# 类型检查
pnpm run type-check
# 运行测试
pnpm run test
# 运行测试(监视模式)
pnpm run test:watch
# 运行测试并生成覆盖率报告
pnpm run test:coverage
# 运行 ESLint 检查
pnpm run lint
# 自动修复 ESLint 问题
pnpm run lint:fix
# 代码格式化
pnpm run format
# 检查代码格式
pnpm run format:check
# 构建生产版本
pnpm run build
# 清理构建产物
pnpm run clean
auo/
├── src/ # TypeScript 源代码
│ ├── cli/ # CLI 相关模块
│ │ ├── index.ts # CLI 入口点
│ │ └── commands.ts # 命令处理逻辑
│ ├── config/ # 配置管理模块
│ │ ├── index.ts # 配置模块入口
│ │ ├── manager.ts # 配置管理器
│ │ └── types.ts # 配置相关类型
│ ├── utils/ # 工具函数模块
│ │ ├── claude.ts # Claude Code 相关工具
│ │ ├── system.ts # 系统相关工具
│ │ └── index.ts # 工具模块入口
│ ├── types/ # 全局类型定义
│ │ └── index.ts # 类型定义入口
│ └── index.ts # 主入口文件
├── tests/ # 测试文件
│ ├── cli/ # CLI 模块测试
│ ├── config/ # 配置模块测试
│ └── utils/ # 工具函数测试
├── dist/ # 构建输出
├── coverage/ # 测试覆盖率报告
├── .github/ # GitHub Actions 配置
├── .husky/ # Git 钩子配置
├── bin/ # 可执行文件
├── scripts/ # 项目脚本
├── eslint.config.js # ESLint 配置
├── .prettierrc # Prettier 配置
├── vite.config.ts # Vite 配置
├── vitest.config.ts # Vitest 配置
├── tsconfig.json # TypeScript 配置
└── package.json # 包配置
- 更新版本号:
pnpm version [major|minor|patch]
- 推送标签:
git push --tags
- GitHub Actions 自动构建和发布
- Fork 这个仓库
- 创建特性分支:
git checkout -b feature/amazing-feature
- 提交更改:
git commit -m 'Add amazing feature'
- 推送分支:
git push origin feature/amazing-feature