OMO-Switch: 不用再手动改 JSON 了,给 OMO 做了个可视化模型切换器
背景
opencode 有插件系统。有一个社区插件 oh-my-openagent 吸引了我的注意,它给 opencode 加了一套多 Agent 框架,内置了十几个 Agent(sisyphus、oracle、explore 等),每个 Agent 可以单独指定模型,跟 opencode 一样,天然支持各家的模型,可以让各家的模型做自己擅长的事情。
题外话:这跟今年爆火的 Harness Engineering 如出一辙,甚至 oh-my-opencode 在 2025 年就提出了这些概念。
用了一段时间 OMO 发现几个痛点:
- Agent 数量多,OpenCode 中只能改主 Agent 的模型,手改 JSON 效率低,改错了还容易导致整个配置解析失败
- 想切换一套模型方案(比如白天用便宜的模型、晚上用强的模型),只能手动备份多个配置文件来回替换
- 修改供应商 BaseUrl、ApiKey 不方便,要改配置文件
- 各个供应商的 API Key、模型定价信息分散,没有一个统一的地方查看
因为自己本身是工程师,习惯了手动去修改配置,但是还有很多非专业的用户想用 OpenCode+OMO,但又不会配置,甚至愿意为此付费。
CC-Switch 也有 OpenCode/OMO 的配置功能,但仅支持配置自己添加的供应商,Agent 粒度的模型管理还是空白。
基于以上痛点,我开始寻找一个专门面向 OpenCode+OMO 的 GUI 配置工具。找到一个项目,就是本项目的前身,虽然是 Tauri 项目,但是原作者 shellmonster 并没有做 Windows 支持,已经不再更新了,我写的 PR 也一直没被合并,我决定 fork 项目,在自己的分支上继续优化迭代,就是本项目: OMO Switch。
OMO Switch 是什么
一句话:OMO Switch 是专为 OpenCode + OMO 打造的桌面端模型配置管理工具,把原来手写 JSON 的活,全部搬进了图形界面。
基于 Tauri 2.0 构建,安装包只有几 MB,Windows / macOS / Linux 全平台支持。

功能亮点
🤖 Agent 模型,一键切换
所有 Agent 的模型和强度等级(variant)全部可视化展示,下拉选择、即改即生效。支持按 Category 批量设置——十几个 Agent 的统一调整,几秒钟搞定。

📊 配置总览,一目了然
配置文件路径、大小、最后修改时间、已连接的 Provider、每个 Agent 当前使用的模型……打开首页,全局尽在掌握。

💾 预设方案,秒级切换
白天跑便宜模型,晚上上强模型?把每套方案保存为预设,一键切换。预设还支持导入导出,团队内共享配置也不是问题。

🔑 Provider 集中管理
各供应商的 API Key、Base URL 统一配置,支持连接状态检测。自定义供应商、自定义模型,也都可以加。

供应商提供了喜欢的模型?一键应用!

🌐 模型库浏览
内置 models.dev 数据源,各模型的输入/输出定价、能力描述一眼看清。

🎯 系统托盘,随叫随到
关闭窗口自动最小化到托盘。托盘菜单里可以直接切换 Agent 模型和预设——连窗口都不用打开。
🔄 自动更新
集成 Tauri Updater,新版本自动检测、一键安装。推送一个 tag,GitHub Actions 自动完成全平台构建发版,客户端始终用上最新版。
🌍 五种语言
简体中文、繁体中文、英文、日文、韩文,界面实时切换。
安全吗?改配置这件事,格外小心
配置工具最怕什么?把用户的配置写坏。OMO Switch 做了三层保险:
- 写入前自动备份:每次修改前,原配置自动备份为
.bak文件 - 原子写入:先写临时文件再整体替换,进程崩溃也不会留下半个文件
- 完整备份/恢复:支持导出完整配置到 JSON 文件,换电脑直接导入
另外,工具只改模型相关字段,配置文件里你自己的其他字段原样保留,一个都不会丢。
技术架构
- 桌面框架:Tauri 2.0(Rust),安装包仅几 MB,远低于 Electron 方案
- 前端:React 18 + TypeScript + Tailwind CSS + Zustand
- 多语言:react-i18next,支持中/英/日/韩 5 种语言
- 发版:GitHub Actions 全自动构建,Windows / macOS / Linux 三端安装包
技术实现细节和踩坑记录(原子写入、托盘适配、Windows 兼容等)另文详述,欢迎关注。
下载使用
GitHub Releases 下载对应平台安装包:
🔗 https://github.com/sq800/OMO-Switch
macOS 用户如提示无法打开应用,终端执行以下命令移除隔离标记即可:
sudo xattr -r -d com.apple.quarantine "/Applications/OMO Switch.app"
写在最后
OMO Switch 基于 MIT 协议开源,永久免费。
如果你觉得好用,欢迎点个 Star;遇到问题或者有新功能想法,直接提 Issue。你的每一个反馈,都是这个项目继续迭代下去的动力。
感谢原作者 shellmonster 的前期工作,本项目在其基础上持续迭代。

浙公网安备 33010602011771号