dsh-ccswitch-sync:將 CC Switch 配置同步至 DeepSeek Harness

前言

DeepSeek Harness(DSH)通過插件體系支持自定義模型提供方。CC Switch 是一個用於管理 Claude Code / Codex API 配置的工具。dsh-ccswitch-sync 插件用於讀取 CC Switch 的本地數據庫配置,將其轉換爲 DSH 的自定義提供方,並處理 API 密鑰的寫入,實現配置遷移與統一管理。

核心功能

  1. 配置同步:讀取 CC Switch 的 SQLite 數據庫(~/.cc-switch/cc-switch.db),將其中的服務商和模型同步到 DSH 的 llm-pi-ai 路由。
  2. 自動映射:默認使用 cc- 前綴命名路由(如 cc-sub2api)。
  3. 協議適配:根據服務商類型自動選擇協議(Codex 類型映射爲 openai-responses 或 openai-completions,Claude 類型映射爲 anthropic-messages)。
  4. 模型發現:支持通過網關的 /models 接口拉取模型列表,或讀取本地模型目錄(~/.codex/cc-switch-model-catalog.json)。
  5. 憑據管理:將 API 密鑰寫入 DSH 的憑據庫(~/.dsh/.credentials.yaml),不污染主配置文件。
  6. 工具支持:提供聊天指令和獨立的 CLI 工具。

安裝與啓用

插件通過文件方式安裝到 DSH Desktop 的對應 profile:

  1. 修改 ~/.dsh/profiles/<profile>/package.json,添加依賴:
    // ~/.dsh/profiles/<profile>/package.json
    "dependencies": { "dsh-ccswitch-sync": "file:../../plugins/dsh-ccswitch-sync" }
  1. 在 dsh.profile.bundles 中加入 "dsh-ccswitch-sync"。
  2. 重啓 DSH Desktop。

使用方法

插件安裝後提供兩種觸發方式:

聊天命令

命令 說明
/ccswitch-sync 手動執行一次同步
/ccswitch-status 查看當前映射計劃(路由、協議、模型)

獨立 CLI

# 預覽映射計劃(默認)
node cli.mjs --dry-run

# 實際寫入配置(自動備份原文件)
node cli.mjs --apply

# 實際寫入並刪除來源已不存在的路由
node cli.mjs --apply --remove-stale

# 自定義路由前綴
node cli.mjs --apply --prefix mycc

# 排除特定路由
node cli.mjs --apply --exclude cc-deepseek,cc-deepseek-codex

配置項

通過 ~/.dsh/profiles/<profile>/cordis.patch.yml 進行配置:

字段 默認值 說明
ccswitchDbPath ~/.cc-switch/cc-switch.db CC Switch 數據庫路徑
routePrefix cc 導入路由的前綴
syncOnStart false 啓動時是否自動同步(默認關閉)
watchDb false 是否監聽數據庫變化自動重同步
removeStale false 刪除來源已消失的 cc-* 路由
excludeRoutes [] 永不導入的路由列表
discoverModels true 是否通過 /models 接口發現模型
maxDiscoveredModels 50 每個提供方最多導入的模型數
discoverModelsTimeoutMs 6000 模型發現單次請求超時時間(毫秒)

注意事項

  • 手動觸發:默認不自動拉取,避免重啓或配置變化時意外覆蓋手動修改的內容。
  • 覆蓋風險:同步會覆蓋 cc-* 前綴下已有的提供方和模型。如需保護手動調整的內容,可使用 excludeRoutes 配置。
  • 密鑰存儲:API 密鑰以環境變量引用形式寫入 ~/.dsh/.credentials.yaml,文件權限爲 600。
  • 卸載:需從 package.json 移除依賴與 bundle 條目,執行安裝命令並重啓 DSH。

結語

該插件適用於需要將 CC Switch 的多服務商配置遷移到 DSH 管理場景。通過 CLI 工具,可以方便地進行預覽、調整和批量更新。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜