轻糖的 KMP 渐进式迁移实践(三):KMPObservableViewModel 直连,iOS 本地 ViewModel 全量退休
第二篇文章的结尾,我们给出的方案是"KMP ViewModel + SKIE + 一个 50 行的 StateHolder",当时我们说:这个成本很低,一个 ViewModel 的桥接通常不到 50 行。
第二篇文章的结尾,我们给出的方案是"KMP ViewModel + SKIE + 一个 50 行的 StateHolder",当时我们说:这个成本很低,一个 ViewModel 的桥接通常不到 50 行。
opencodex 是一个本地代理,把 Codex 的 Responses API 翻译成任意 LLM provider 的协议。你可以在 Codex CLI、Codex App、SDK 里用 Claude、Gemini、DeepSeek、Grok、GLM、Qwen 甚至本地 Ollama 模型——也能在 Claude Code 里同样用任意模型——不需要等任何人添加官方支持。
SugarLite 最初是一个纯 iOS 应用,技术栈是 SwiftUI + MVVM + Supabase Swift SDK。随着 Android 版本的需求提上日程,如果简单地把业务逻辑复制一份到 Kotlin,后续的维护成本会成倍增长——网络层、数据模型、业务规则都要双端维护。所以我们选择了 Kotlin Multiplatform,让 shared/ 模块承载所有跨平台业务逻辑,iOS 侧只保留 SwiftUI 和系统框架调用。
前面聊过 cc switch 的基础用法,今天单独说一下 CC Switch 里 Claude Desktop 面板的配置。在 3.15.0 中加入的功能,专门用来给 Claude Desktop 这个官方桌面客户端接入第三方供应商。
CC Switch 中的「Claude」和「Claude Desktop」是两个不同的面板,分别对应 Claude Code(CLI)和 Claude Desktop(桌面客户端)。区别在于 Claude Desktop 用的是自己的 3P profile 配置,而不是
~/.claude/settings.json,两个面板在图标右下角会有小标记区分。
在 AI 编程工具的世界里,Claude Code 无疑是当前最强大的选择之一。然而,随着各大云服务商纷纷推出自己的大语言模型 API,如何方便地在不同供应商之间切换,成为了一个实际的需求。今天就给大家介绍两款工具:cc switch 和 cc desktop switch,帮助你快速切换 Claude Code 的模型供应商。