Catalog npm
PACKAGE EXPLORERView in registry

@0x86/claude-config-manager

npm

🔧 Claude Code 配置管理工具 - 支持多配置方案切换、自动备份、实时预览

aliyunanthropicapi-key-managerclaudeclaude-codecliconfigconfigurationdeveloper-toolsmodel-switchingopenai
Versions collected1
Direct dependencies5From release 1.0.0
Last observed20 Oct, 22:39 UTC

README

Current package documentation

Claude Code 配置管理工具

一个使用 TypeScript 和 Bun 构建的交互式 CLI 工具,用于管理 Claude Code 的多个配置方案,支持快速切换不同的 API 提供商和模型映射。

✨ 功能特性

  • ✅ 添加、编辑、删除、切换配置方案
  • ✅ 主菜单直接显示所有配置
  • ✅ 支持配置多个 API 提供商(阿里云、OpenAI、Anthropic 等)
  • ✅ 自定义模型映射(Opus/Sonnet/Haiku)
  • ✅ 交互式 CLI 界面(基于 @clack/prompts)
  • ✅ 配置预览功能
  • ✅ 配置立即生效
  • ✅ 自动备份初始配置
  • ✅ 恢复初始设置功能
  • ✅ 支持编译为独立可执行文件
  • ✅ 完整的错误处理和输入验证
  • ✅ API Key 安全显示
  • ✅ 启动时显示当前配置

📦 安装

方式 1: npm (推荐)

# 全局安装
npm install -g claude-config-cli

# 运行
claude-config

方式 2: Bun

# 全局安装
bun install -g claude-config-cli

# 运行
claude-config

方式 3: 从源码安装

# 克隆仓库
git clone https://github.com/xyhuangjia/claude-config-cli.git
cd claude-config-cli

# 安装依赖
bun install

# 运行
bun start

方式 4: 编译为可执行文件

# 编译
bun run build

# 运行
./claude-config

方式 5: 下载可执行文件

# macOS/Linux
curl -L https://raw.githubusercontent.com/xyhuangjia/claude-config-cli/main/install.sh | bash

# 或手动下载
# 访问 https://github.com/xyhuangjia/claude-config-cli/releases

🚀 使用方法

运行工具后,你会看到以下选项:

🔧 Claude Code 配置管理工具

当前配置: 阿里云
──────────────────────────────────────────────────
  API Key:  sk-sp-ee...15a1
  Base URL: https://coding.dashscope.aliyuncs.com/apps/anthropic
  Opus:     glm-5
  Sonnet:   qwen3.5-plus
  Haiku:    MiniMax-M2.5
──────────────────────────────────────────────────

? 请选择配置或操作
  📦 阿里云 ⭐
  📦 OpenAI
  📦 Anthropic
  ➕ 添加新配置
  🔄 恢复初始设置
  🚪 退出

注:⭐ 表示当前正在使用的配置

切换/编辑/删除配置

  1. 从主菜单直接选择一个配置(如"📦 阿里云")
  2. 查看该配置的详细信息
  3. 选择操作:
    • ✅ 切换到此配置 - 立即应用该配置
    • ✏️ 编辑此配置 - 修改配置内容
    • 🗑️ 删除此配置 - 删除该配置
    • 🔙 返回主菜单 - 返回主菜单

恢复初始设置

  1. 选择"🔄 恢复初始设置"
  2. 查看备份信息(备份时间)
  3. 确认恢复操作
  4. 系统将自动恢复到工具首次运行时的配置

说明:工具会在首次运行时自动备份当前的 Claude Code 配置(API Key、Base URL、模型映射等),备份文件保存在 ~/.claude/original_settings_backup.json

添加新配置

  1. 选择"➕ 添加新配置"
  2. 输入配置名称(如"阿里云"、"OpenAI"等)
  3. 输入以下信息:
    • API Key (ANTHROPIC_AUTH_TOKEN)
    • Base URL (ANTHROPIC_BASE_URL)
    • Opus 模型 (ANTHROPIC_DEFAULT_OPUS_MODEL)
    • Sonnet 模型 (ANTHROPIC_DEFAULT_SONNET_MODEL)
    • Haiku 模型 (ANTHROPIC_DEFAULT_HAIKU_MODEL)
  4. 选择是否立即切换到此配置

📁 配置存储

所有配置存储在 ~/.claude/ 目录下:

~/.claude/
├── settings.json                    # 当前使用的配置(Claude Code 读取此文件)
├── profiles/                        # 所有配置方案
│   ├── aliyun.json
│   ├── openai.json
│   └── anthropic.json
├── current_profile.txt              # 记录当前配置名称
└── original_settings_backup.json    # 初始配置备份(首次运行时自动创建)

~/.claude/ ├── settings.json # 当前使用的配置(Claude Code 读取此文件) ├── original_settings_backup.json # 原始配置备份(首次运行时创建) ├── profiles/ # 所有配置方案 │ ├── aliyun.json │ ├── openai.json │ └── anthropic.json └── current_profile.txt # 记录当前配置名称


## 📝 配置示例

### 阿里云配置

```json
{
  "name": "阿里云",
  "env": {
    "ANTHROPIC_AUTH_TOKEN": "sk-xxx",
    "ANTHROPIC_BASE_URL": "https://coding.dashscope.aliyuncs.com/apps/anthropic",
    "ANTHROPIC_DEFAULT_OPUS_MODEL": "glm-5",
    "ANTHROPIC_DEFAULT_SONNET_MODEL": "qwen3.5-plus",
    "ANTHROPIC_DEFAULT_HAIKU_MODEL": "MiniMax-M2.5"
  }
}

OpenAI 配置

{
  "name": "OpenAI",
  "env": {
    "ANTHROPIC_AUTH_TOKEN": "sk-xxx",
    "ANTHROPIC_BASE_URL": "https://api.openai.com/v1",
    "ANTHROPIC_DEFAULT_OPUS_MODEL": "gpt-4",
    "ANTHROPIC_DEFAULT_SONNET_MODEL": "gpt-4-turbo",
    "ANTHROPIC_DEFAULT_HAIKU_MODEL": "gpt-3.5-turbo"
  }
}

Anthropic 官方配置

{
  "name": "Anthropic",
  "env": {
    "ANTHROPIC_AUTH_TOKEN": "sk-ant-xxx",
    "ANTHROPIC_BASE_URL": "https://api.anthropic.com",
    "ANTHROPIC_DEFAULT_OPUS_MODEL": "claude-3-opus-20240229",
    "ANTHROPIC_DEFAULT_SONNET_MODEL": "claude-3-sonnet-20240229",
    "ANTHROPIC_DEFAULT_HAIKU_MODEL": "claude-3-haiku-20240307"
  }
}

🔧 技术栈

  • Runtime: Bun - 快速的 JavaScript 运行时
  • Language: TypeScript
  • CLI Framework: @clack/prompts - 优雅的交互式 CLI 组件
  • Colors: picocolors - 终端颜色库

🎯 快速开始

# 1. 安装依赖
bun install

# 2. 运行工具
bun start

# 3. 添加第一个配置(选择"添加新配置")
# 4. 切换到新配置
# 5. 开始使用 Claude Code

🔒 安全特性

  • API Key 安全显示: 只显示前8位和后4位,中间用 ... 代替
  • 输入验证: 验证配置名称、API Key 格式等
  • 错误处理: 完整的 try-catch 保护,防止程序崩溃
  • 文件权限: 建议设置 chmod 700 ~/.claude 和 chmod 600 ~/.claude/*

📌 注意事项

  1. 安全性:API Key 以明文存储在配置文件中,请确保配置目录权限设置正确
  2. 当前配置保护:删除当前配置时需要二次确认
  3. 配置立即生效:切换配置后,Claude Code 会立即使用新配置,无需重启
  4. 保留其他设置:切换配置时,只更新 env 相关字段,其他设置保持不变
  5. 配置合并:新配置只会覆盖非空值,保留原有的其他环境变量

🐛 故障排除

找不到 bun 命令

# 安装 Bun
curl -fsSL https://bun.sh/install | bash

配置不生效

  1. 检查 ~/.claude/settings.json 文件是否正确更新
  2. 确保配置文件格式正确(有效的 JSON)
  3. 重启 Claude Code(通常不需要,但如果遇到问题可以尝试)

权限问题

# 确保配置目录权限正确
chmod 700 ~/.claude
chmod 600 ~/.claude/settings.json
chmod 600 ~/.claude/profiles/*.json

配置文件损坏

如果配置文件损坏,工具会自动使用默认配置,并提示错误信息。你可以:

  1. 删除损坏的配置文件
  2. 重新添加配置

📄 许可证

MIT

🔗 相关链接

🤝 贡献

欢迎提交 Issue 和 Pull Request!

贡献方式

  1. Fork 本仓库
  2. 创建特性分支 (git checkout -b feature/AmazingFeature)
  3. 提交更改 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 创建 Pull Request

📊 开发过程

本项目使用 AI Team 模式开发:

  • 规划: GLM-5 (Research Agent)
  • 编码: GLM-4.7 (Implement Agent)
  • 检查: GLM-5 (Check Agent)

🔍 代码质量

  • ✅ TypeScript strict 模式
  • ✅ 完整的错误处理
  • ✅ 输入验证
  • ✅ 类型安全
  • ✅ 最佳实践

📈 项目统计

GitHub stars npm downloads GitHub license GitHub release

⭐ Star History

如果这个工具对你有帮助,请给个 Star ⭐️

💖 支持项目

如果你觉得这个工具有用,可以:

  • ⭐ 给项目点星
  • 🐛 报告 Bug
  • 💡 提出新功能建议
  • 📖 改进文档
  • 🔀 提交 Pull Request

Downloads & popularity

Awaiting observations

No metric observations yet

Download counts and popularity will appear here as the collector receives them.

Versions 1

Collected releases
VersionPublishedDirect dependenciesOpen version
1.0.0Registry latest18 Mar 20265

Package advisories

0
No matching advisories collected

This describes our collected data; it is not a security assessment.

Repository

PENDING
xyhuangjia/claude-config-cli

Shared repository data · GitHub

License detected in repository
Not collected

Metadata history

Meaningful changes
Current collected state Current

Observed since 20 Oct, 22:39 UTC

No superseded metadata states collected. Unchanged observations do not create new revisions.

Record identity

package:5e9a8150895762cafc4fff18169ab2b146f7238cd71919a0f9ad9ea2876d0b5a