# 影片筆記:CC Switch:一個桌面 App 管理 Claude Code、Codex、Gemini 與多套 Provider ## 一句話總結 CC Switch 是由 Ferion E231 開發的桌面應用程式,旨在解決開發者同時使用多個 AI 編碼工具(如 Cloud Code、Codex、Gemini CLI 等)時,因設定檔格式與供應商 API 差異造成的混亂,透過可視化介面、系統列快速切換及 Local Proxy 功能,提供一站式的 Provider、MCP、Prompts 與 Skills 管理。 ## 核心重點 1. **痛點解決**:針對同時使用多個 AI 編碼工具時,設定檔(JSON/TOML)格式不同、供應商 API 格式差異,以及手動修改設定檔易出錯的問題,提供集中化管理。 2. **可視化管理**:將手動修改設定檔轉為桌面 App 操作,支援從 50 多個預設 Provider 選擇或建立自定設定,並提供一鍵切換功能。 3. **全域整合**:單一面板管理 Provider、MCP、Prompts 與 Skills,並支援雙向同步,避免需分別打開不同工具資料夾的麻煩。 4. **系統列快速切換**:支援從系統列直接選取 Provider,但明確指出大多數工具切換後仍需重啟終端機或 CLI 才會生效(除 Clawed Code 支援 Hot Switching 外)。 5. **進階技術特性**:具備 Local Proxy 功能,包含格式轉換、熱切換、自動 Failover、Circuit Breaker、Provider Health Monitoring 及 App Level Takeover。 6. **資料安全與架構**:核心資料存在本機 XULT Database,使用 Atomic Rights 寫入並具備自動備份,設計原則為 Minimal Intrusion(最小侵入性),確保即使移除 App,CLI 工具仍應能正常工作。 7. **適用對象**:適合 Agent 工程師、團隊管理者、經常測試不同模型供應商,或工作流從單一聊天工具擴展至多個 Coding Agent、Provider、Skills 和 MCP 的使用者。 ## 詳細大綱 ### 一、 痛點與解決方案 * **當前混亂**:開發者同時使用多個工具(Cloud Code, Codex, Gemini CLI, OpenCode, Hermes Agent 等),每個工具擁有獨立設定檔,且供應商 API 格式不同。 * **切換困難**:切換模型或供應商時需修改 JSON 或 TOML 檔案,容易因改錯導致 CLI 失效。 * **CC Switch 定位**:AI Coding Tools 全方位管理器,非聊天工具,專注於管理背後設定切換。 ### 二、 三大核心功能 1. **可視化設定管理** * 將手動改設定檔轉為桌面 APP 操作。 * 支援從 50 多個預設 Provider 選擇或建立自定設定。 * 提供一鍵切換功能,讓不同 CLI 使用新供應商。 * 將官方 API、Bedrock、NVIDIA NIM、社群 Relay 等零散設定收進同一控制台。 2. **全域管理介面** * 不僅管理 Provider,還整合 MCP、Prompts、Skills。 * 單一面板管理伺服器、提示詞與 Skills,並支援雙向同步。 * 解決需分別打開 Clawed、Codex、Gemini 或其他 Agent 工具資料夾的問題。 3. **系統列快速切換 (System Tray Quick Switch)** * 無需打開完整 UI,可直接從系統列選 Provider。 * **限制說明**:大多數工具切換後仍需重啟終端機或 CLI 才會生效。 * **例外支援**:Clawed Code 目前支援 Provider Data 的 Hot Switching。 * 強調不假裝所有工具都能即時切換,明確標示限制。 ### 三、 進階技術特性 * **Local Proxy 功能** * 具備格式轉換、熱切換、自動 Failover、Circuit Breaker。 * Provider Health Monitoring(供應商健康監控)。 * 對 Clawed Codex 或 Gemini 進行 App Level Takeover。 * 角色轉換:不僅是設定管理器,也具備本機 AI Gateway 功能,負責路由與保護。 ### 四、 資料安全與架構 * **資料儲存**:核心資料存在本機 XULT Database。 * **寫入機制**:設定寫入時使用 Atomic Rights,並具備自動備份。 * **設計原則**:Minimal Intrusion(最小侵入性)。 * 即使不使用或移除 App,CLI 工具仍應能正常工作。 * 避免設定管理工具成為新的單點故障(Single Point of Failure)。 * **技術棧** * 類型:Tori-R 桌面 AP。 * 前端:React、TypeScript、Vite、Tailwind CSS、Tenstack Query。 * 後端:REST。 * 跨平台支援:Windows、MacOS、Linux。 * 安裝方式:MacOS 可用 Homebrew Cask;Windows 和 Linux 從 Release 下載安裝檔。 ### 五、 適用對象與限制 * **適用對象** * Agent 工程師、團隊管理者。 * 經常測試不同模型供應商的人。 * 工作流從單一聊天工具擴展至多個 Coding Agent、Provider、Skills 和 MCP 的使用者。 * **不適用對象** * 僅偶爾使用單一官方 Cloud Code 帳號者。 * **注意事項與限制** * 需理解正在切換的 Provider,確認團隊資安規範。 * 降低設定成本,但不能判斷供應商可靠性。 * 不能保證所有 CLI 工具在切換後完全不需要重啟。 ## 工具 / 模型 / 名詞整理 * **專案名稱**:CC Switch (Ferion E231) * **AI 編碼工具/代理程式**: * Cloud Code * Codex * Gemini CLI * OpenCode * Hermes Agent * OpenClaw * Clawed (文中提及打開 Clawed 資料夾) * Clawed Code (文中提及支援 Hot Switching) * Clawed Codex * **模型供應商/服務**: * 官方 API * Bedrock * NVIDIA NIM * 社群 Relay * Gemini * **技術元件/格式**: * JSON * TOML * MCP * Prompts * Skills * System Tray (系統列) * Local Proxy * Failover * Circuit Breaker * Provider Health Monitoring * App Level Takeover * XULT Database * Atomic Rights * React * TypeScript * Vite * Tailwind CSS * Tenstack Query * REST * Homebrew Cask * Release (安裝檔來源) ## 操作流程整理 1. **安裝 CC Switch**: * MacOS 用戶可使用 Homebrew Cask 安裝。 * Windows 和 Linux 用戶需從 Release 下載安裝檔。 2. **設定 Provider**: * 在桌面 App 中,從 50 多個預設 Provider 中選擇,或建立自定設定。 * 整合官方 API、Bedrock、NVIDIA NIM、社群 Relay 等供應商設定。 3. **管理全域資源**: * 在單一面板中管理 MCP 伺服器、Prompts 與 Skills。 * 利用雙向同步功能,確保設定在不同工具間一致。 4. **執行切換**: * **一般切換**:透過桌面 App 或系統列 (System Tray) 選取目標 Provider。 * **生效確認**: * 對於大多數工具,切換後需重啟終端機或 CLI 工具。 * 對於 Clawed Code,若支援 Hot Switching,則可能無需重啟。 5. **監控與維護**: * 利用 Local Proxy 監控 Provider 健康狀態。 * 確認設定寫入機制(Atomic Rights)與自動備份是否正常運作。 ## 值得注意的限制或風險 1. **重啟需求**:大多數工具在切換 Provider 後,仍需重啟終端機或 CLI 才會生效,並非所有工具都支援即時熱切換。 2. **供應商可靠性**:CC Switch 降低設定成本,但不判斷供應商本身的可靠性。 3. **資安規範**:使用者需理解正在切換的 Provider,並確認符合團隊資安規範。 4. **單點故障風險**:儘管設計原則為最小侵入性,仍需注意設定管理工具是否可能成為新的單點故障(Single Point of Failure)。 5. **適用性限制**:僅偶爾使用單一官方 Cloud Code 帳號的使用者可能不需要此工具。 ## 逐字稿辨識疑點 * **Cloud Code**:逐字稿多次出現,通常指代 Google 的 Cloud Code 插件或相關服務,但在此語境下與其他 CLI 並列,需確認是否指特定工具名稱。 * **Clawed / Clawed Code**:逐字稿中出現「Clawed」與「Clawed Code」,疑似指代同一工具或不同版本,需查證正確名稱是否為 "Clawed" 或 "Clawed Code"。 * **Clawed Codex**:文中提及「對 Clawed Codex 或 Gemini 做 App Level Takeover」,此組合名稱較不常見,需查證是否為特定工具組合或口誤。 * **Tori-R 桌面 AP**:描述技術站時提到「CC-Switch 是 Tori-R 桌面 AP」,「Tori-R」與「AP」(Application?) 需查證是否為聽寫錯誤或特定技術術語。 * **XULT Database**:資料儲存格式提及「XULT Database」,需查證是否為特定資料庫名稱或聽寫錯誤(如 SQLite 等常見資料庫)。 * **Atomic Rights**:設定寫入機制提及「Atomic Rights」,通常檔案系統操作為「Atomic Writes」,「Rights」可能為聽寫錯誤。 * **Tenstack Query**:前端技術提及「Tenstack Query」,通常指「TanStack Query」,需查證是否為聽寫錯誤。 * **OpenClaw**:與 OpenCode、Hermes Agent 並列,需確認是否為正確的工具名稱。 * **Hermes Agent**:與 OpenCode 並列,需確認是否為正確的工具名稱。 * **NVIDIA NIM**:供應商名稱,需確認是否為正確的產品名稱。 * **社群 Relay**:供應商類型,需確認是否為特定服務名稱。 * **Bedrock**:供應商名稱,通常指 AWS Bedrock,需確認語境。 * **官方 API**:泛指,但在此處與特定供應商並列。 * **GitHub 雷达**:頻道名稱,應為「GitHub Radar」。 * **Ferion E231**:專案開發者或版本號,需查證是否為正確名稱。 * **CC-Switch**:專案名稱,文中交替使用 CC Switch 與 CC-Switch。 ## 可延伸追問 1. CC Switch 的 Local Proxy 在格式轉換與 Failover 機制上的具體實作原理為何? 2. 對於不支援 Hot Switching 的工具,CC Switch 是否有提供自動重啟腳本或輔助工具? 3. XULT Database 的結構與備份機制如何確保資料在移除 CC Switch 後仍可被其他 CLI 工具讀取? 4. 50 多個預設 Provider 的清單為何?是否包含所有主流 AI 模型供應商? 5. 團隊管理者如何透過 CC Switch 進行多用戶或跨專案的設定同步與權限管理?