Skip to content

Evopower/CCManager

Repository files navigation

CC-Manager

CC-Manager 是一个 Windows 桌面工具,用来管理 Claude Code 相关的 PowerShell 配置。

它的核心用途不是替代终端,而是维护 PowerShell Profile 里的公共配置,并在缺少默认终端函数时自动初始化 ccppctcx 等命令。

快速开始

  1. 在 GitHub Release 下载 CC-Manager-windows-x64.exe
  2. 双击运行。它是 portable exe,不是安装包。
  3. 确认你使用的是 PowerShell 7,也就是 pwsh,不是系统自带的 Windows PowerShell 5.1。
  4. 打开 应用设置,确认 Profile Path 指向你真正使用的 PowerShell Profile。
  5. 在主界面添加或修改 Claude API 配置:
    • Name:终端菜单里显示的名称。
    • Color:选择该配置后设置的终端标签颜色。
    • Token:API Key 或认证 Token,界面默认隐藏。
    • Base URL:API 端点,例如 Claude 兼容网关或 OpenAI 兼容网关。
    • Opus / Sonnet / Haiku Model:终端函数会写入环境变量的模型 ID。
  6. 如果服务商支持模型列表接口,点击 获取模型
  7. 应用设置 里添加项目总目录,例如 C:\Users\<you>\PycharmProjects
  8. 如果你之前在 Claude Code 文件配置里写过模型、Base URL 或认证配置,先点击 清除 Claude 文件配置。Claude Code 的文件配置优先级高于环境变量,不清空这些字段时,cc 设置的环境变量可能不会生效。
  9. 点击 保存
  10. 重启 PowerShell,或者在当前终端重新加载 Profile:
. $PROFILE

首次打开程序时,如果 Profile 里缺少基础配置块或对应函数,CC-Manager 会自动追加默认实现。之后终端里的 ccppctcx 就可以直接使用。

终端命令用法

下面这些命令是写在 PowerShell Profile 里的函数。CC-Manager 会在启动和保存时检查缺失项:缺哪个默认函数就补哪个,已有同名函数不会覆盖。

自动初始化的函数包括:

  • Invoke-ClaudeCommand
  • Set-TabColor
  • Set-ModelEnv
  • Clear-ModelEnv
  • Show-Menu
  • Get-CCManagerProjectFolders
  • cc
  • pp
  • ct
  • cx

这些函数共同读取 $MODEL_CONFIGS$HAPPY_MODE$CC_MANAGER_PROJECT_ROOTS

cc 意味着 ClaudeCode 的快捷命令

用于在项目目录中选择一个项目,然后选择 Claude API 配置,并启动 Claude Code 或兼容命令。

运行

cc

进入项目选择菜单:

该项目菜单为程序中配置的项目根目录

选择后可以选择需要使用的模型:

之后选择启动模式,第一个选项为最高权限

随后就能够使用对应的目录, 对应的模型,对应的模式,进入claudecode

也可以把参数透传给底层命令:

cc --help
cc "帮我检查这个项目"

执行流程:

  1. 从项目总目录读取所有子目录。
  2. 弹出项目选择菜单。
  3. 切换到选中的项目目录。
  4. 弹出模型/API 配置菜单,配置来自 $MODEL_CONFIGS
  5. 弹出启动模式菜单。
  6. 根据选择设置环境变量并启动命令。
  7. 命令结束后清理临时环境变量。

常见启动模式:

  • claude 自动模式:启动 claude --dangerously-skip-permissions,适合你明确信任当前项目、希望减少确认步骤时使用。
  • claude 正常模式:启动普通 claude

cc 会使用选中的模型配置设置这些环境变量:

ANTHROPIC_AUTH_TOKEN
ANTHROPIC_BASE_URL
ANTHROPIC_MODEL
ANTHROPIC_DEFAULT_OPUS_MODEL
ANTHROPIC_DEFAULT_SONNET_MODEL
ANTHROPIC_DEFAULT_HAIKU_MODEL
ANTHROPIC_SMALL_FAST_MODEL

pp

用于快速切换项目目录,不启动 Claude Code。

运行:

pp

执行流程:

  1. 从项目总目录读取所有子目录。
  2. 弹出项目选择菜单。
  3. 切换到选中的项目目录。

适合只想先进入某个项目目录,然后自己手动运行其他命令的场景。

ct

用于进入一个固定的临时工作目录: Temp ,然后选择 Claude API 配置并启动 Claude Code。

运行:

ct

也可以透传参数:

ct "先在临时目录里帮我做个实验"

典型用途:

  • 临时验证命令。
  • 做一次性测试。
  • 不想进入具体项目目录,但仍然想用已配置好的 Claude API。

执行流程:

  1. 进入固定的临时工作目录。
  2. 弹出模型/API 配置菜单。
  3. 弹出启动模式菜单。
  4. 启动 claude
  5. 命令结束后清理临时环境变量并返回原目录。

cx

用于选择项目目录并启动 Codex 这类命令,默认使用官方的gpt模型,无模型配置选项。

运行:

cx

也可以透传参数:

cx "解释这个仓库结构"

常见启动模式:

  • codex 自动模式:启动 codex -s danger-full-access -a never
  • codex 正常模式:启动普通 codex

注意:CC-Manager 当前主要面向 Claude Code 的 API 配置管理;cx 是为了兼容常见的 Codex 启动习惯而提供的默认辅助函数。已有自定义 cx 时不会被覆盖。

PowerShell 7 要求

建议使用 PowerShell 7,也就是 pwsh。不要把它和 Windows 自带的 Windows PowerShell 5.1 混在一起,因为两者的 Profile 路径不同。

检查当前 PowerShell 版本:

$PSVersionTable.PSVersion

检查是否已经安装 pwsh

pwsh --version

使用 Windows Package Manager 安装 PowerShell 7:

winget install --id Microsoft.PowerShell --source winget

微软官方安装说明:

https://learn.microsoft.com/en-us/powershell/scripting/install/install-powershell-on-windows

也可以从 PowerShell 官方 GitHub Releases 下载 MSI 安装包:

https://github.com/PowerShell/PowerShell/releases

PowerShell Profile 位置

PowerShell 7 的默认 Profile 通常是:

$HOME\Documents\PowerShell\Microsoft.PowerShell_profile.ps1

Windows PowerShell 5.1 的默认 Profile 通常是:

$HOME\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1

在终端里查看当前正在使用的 Profile:

$PROFILE

CC-Manager 默认管理当前用户的 PowerShell 7 Profile:

C:\Users\<you>\Documents\PowerShell\Microsoft.PowerShell_profile.ps1

如果你想管理其他 Profile 文件,可以在 应用设置 -> Profile Path 里填写完整路径。

CC-Manager 管理的配置

CC-Manager 会在 PowerShell Profile 中维护 $MODEL_CONFIGS

$MODEL_CONFIGS = @{
    0 = @{
        Name        = "Example"
        Color       = "Cyan"
        Token       = "your-token"
        BaseUrl     = "https://api.example.com"
        OpusModel   = "claude-opus-compatible-model"
        SonnetModel = "claude-sonnet-compatible-model"
        HaikuModel  = "claude-haiku-compatible-model"
    }
}

终端函数会读取这份配置,并临时写入 Claude Code 使用的环境变量。

CC-Manager 还会维护 $HAPPY_MODE

$HAPPY_MODE = $false

如果你的 Profile 中的 Invoke-ClaudeCommand 支持 happy claude,那么这个开关会影响 claude 的实际启动方式。

CC-Manager 还会维护项目总目录:

$CC_MANAGER_PROJECT_ROOTS = @(
    "C:\Users\<you>\PycharmProjects"
)

默认 ccppcx 会从这些目录下读取子目录作为项目候选。

主要特性

  • 管理多个 Claude Code API 配置。
  • Token 默认隐藏,避免误展示。
  • 从常见模型列表接口获取模型 ID。
  • /anthropic/claude 等兼容端点做智能候选 URL 尝试。
  • 保存前检查 PowerShell 语法,避免写坏 Profile。
  • 删除配置后自动整理编号,避免出现 0, 1, 3, 4 这种非连续索引。
  • Profile 中缺少基础配置或默认终端函数时自动初始化 ccppctcx 等命令。
  • 管理项目总目录,供 ccpp 等项目选择函数使用。
  • 清理 Claude 文件级配置,避免 ~/.claude/settings.json 覆盖环境变量。
  • 本地私有设置写入被 git 忽略的 settings.json

Claude 文件级配置

Claude Code 可能还会读取:

$HOME\.claude\settings.json

Claude Code 默认配置的最高优先级通常是文件配置。也就是说,$HOME\.claude\settings.json 里如果已经写了模型、Base URL 或认证配置,它会优先于 cc 写入的 PowerShell 环境变量。

因此,在使用 CC-Manager 通过环境变量切换 Claude Code 配置之前,需要先清空文件配置里的模型相关设置。否则你在终端里选择了新的配置,但 Claude Code 实际仍可能使用文件里的旧模型或旧端点。

如果遇到这种情况,可以在 CC-Manager 里点击 清除 Claude 文件配置。程序会先备份原文件,再移除已知的认证和模型覆盖字段。

本地设置文件

CC-Manager 自己的 UI 设置保存在:

settings.json

这个文件被 git 忽略,因为它可能包含本机路径和个人偏好。

公开模板是:

settings.example.json

开发

安装依赖:

npm install

启动桌面开发版:

npm run tauri:dev

构建前端:

npm run build

构建 Windows portable exe:

npm run tauri:build

构建产物位置:

src-tauri\target\release\cc-manager.exe

运行 Rust 测试:

cargo test --manifest-path src-tauri\Cargo.toml

技术栈

  • Tauri 2
  • Rust 后端
  • React 18 + TypeScript + Vite
  • lucide-react 图标

旧的 PySide/Python UI 已经移除。

说明

  • settings.jsondistnode_modulesgithub-artifactssrc-tauri/target 都是本地或生成文件,不应提交。
  • GitHub Actions 会自动构建 Windows exe,并上传为 artifact。
  • GitHub Release 里的 exe 需要从成功的 Windows 构建 artifact 手动替换。

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors