# quickopen **Repository Path**: lixuxx/quickopen ## Basic Information - **Project Name**: quickopen - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-03-22 - **Last Updated**: 2026-03-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # omo-switch > OpenCode 配置管理 CLI 工具 - 快速切换模型、管理 API Keys、配置 Providers ## 安装 ```bash # 克隆仓库 git clone cd omo-switch # 安装依赖 npm install # 构建 npm run build # 全局安装 npm link # 安装命令补全(可选) omo completion --install ``` ## 快速开始 ```bash # 查看配置状态 omo status # 切换模型 omo switch glm-5 # 创建别名简化操作 omo alias glm bailian-coding-plan/glm-5 omo switch glm ``` ## 命令一览 ### 状态查看 ```bash omo status # 显示完整配置状态 ``` 显示内容: - 默认模型 - oh-my-opencode 配置 - Providers 状态 - API Keys 数量 - 插件列表 - 配置问题建议 ### 模型切换 ```bash omo switch # 切换模型 omo switch glm-5 # 简写自动匹配 omo switch bailian-coding-plan/glm-5 # 完整路径 omo switch # 无参数显示可用模型 # 指定范围 omo switch glm-5 -a oracle librarian # 只切换指定 agents omo switch glm-5 -c deep ultrabrain # 只切换指定 categories # 指定配置级别 omo switch glm-5 --local # 项目级 omo switch glm-5 --global # 全局 ``` ### 模型别名 ```bash omo alias # 列出所有别名 omo alias glm bailian-coding-plan/glm-5 # 创建别名 omo alias kimi kimi-k2.5 # 简写自动补全 omo alias --remove glm # 删除别名 ``` ### 配置初始化 ```bash omo init # 初始化项目配置 omo init --from-global # 从全局配置复制 ``` ### 配置设置 ```bash # 设置默认模型 omo set --model bailian-coding-plan/glm-5 # 设置 API Key omo set --provider bailian-coding-plan --key "your-api-key" # 指定级别 omo set --model glm-5 --local ``` ### API Key 管理 ```bash omo keys # 列出所有存储的 keys omo keys --add my-key --key "sk-xxx" # 添加 key omo keys --use my-key --provider bailian-coding-plan # 为 provider 指定 key omo keys --remove my-key # 删除 key ``` ### Provider 管理 ```bash omo providers # 列出所有 providers omo providers --models # 显示每个 provider 的所有模型 omo providers --local # 只看项目级 ``` ### 插件管理 ```bash omo plugin # 列出插件 omo plugin --add oh-my-opencode@latest # 添加插件 omo plugin --remove oh-my-opencode # 移除插件 ``` ### 预设管理 ```bash omo preset save --name my-preset # 保存当前配置为预设 omo preset load --name my-preset # 加载预设 omo preset list # 列出所有预设 omo preset delete --name my-preset # 删除预设 ``` ### 配置查看 ```bash omo config # 显示 oh-my-opencode 配置 omo config --local # 项目级 omo config --global # 全局 omo list # 列出可用模型 omo list --current # 显示当前配置 ``` ### Shell 补全 ```bash # 安装补全(自动检测当前 shell) omo completion --install # 指定 shell omo completion --shell bash # bash omo completion --shell zsh # zsh omo completion --shell fish # fish # 只输出脚本不安装 omo completion --shell bash > /path/to/completion ``` 支持的 shell: - **bash**: 补全命令、模型、别名 - **zsh**: 补全命令、模型、别名,带描述 - **fish**: 补全命令、模型、别名 ## 配置文件位置 | 配置 | 全局 | 项目 | |------|------|------| | opencode.json | `~/.config/opencode/opencode.json` | `/.opencode/opencode.json` | | oh-my-opencode.json | `~/.config/opencode/oh-my-opencode.json` | `/.opencode/oh-my-opencode.json` | | API Keys | `~/.config/opencode/.secrets/` | - | | 别名 | `~/.config/opencode/omo-aliases.json` | - | | 预设 | `~/.config/opencode/presets/.json` | - | ## 配置优先级 OpenCode 配置采用**深度合并**策略: | 字段类型 | 合并规则 | |----------|----------| | 标量 (model, small_model) | 项目覆盖全局 | | 对象 (provider) | 深度合并 | | 数组 (plugin) | 追加合并 | **建议**: - 全局配置:Providers、API Keys、插件 - 项目配置:默认模型、特定设置 ## 使用场景 ### 场景1:新项目初始化 ```bash cd my-project omo init --from-global # 从全局复制配置 omo switch glm-5 --local # 设置项目模型 ``` ### 场景2:多 Key 切换 ```bash # 添加多个 key omo keys --add key-personal --key "sk-xxx" omo keys --add key-work --key "sk-yyy" # 项目 A 使用个人 key cd project-a omo keys --use key-personal --provider bailian-coding-plan --local # 项目 B 使用工作 key cd project-b omo keys --use key-work --provider bailian-coding-plan --local ``` ### 场景3:模型预设 ```bash # 保存常用配置 omo switch glm-5 omo preset save --name glm-config # 保存另一个配置 omo switch kimi-k2.5 omo preset save --name kimi-config # 快速切换 omo preset load --name glm-config ``` ### 场景4:团队协作 ```bash # 项目根目录初始化 omo init --from-global omo switch glm-5 --local # 提交配置到版本控制 git add .opencode/ git commit -m "Add opencode config" ``` ## 开发 ```bash # 安装依赖 npm install # 构建 npm run build # 开发模式 npm run dev # 运行测试 npm test # 本地运行 node dist/cli.js --help ``` ## 项目结构 ``` omo-switch/ ├── src/ │ ├── cli.ts # CLI 入口 │ ├── config.ts # 配置管理 │ ├── secrets.ts # API Key 管理 │ └── commands/ │ ├── switch.ts # 模型切换 │ ├── status.ts # 状态摘要 │ ├── alias.ts # 别名管理 │ ├── keys.ts # Key 管理 │ ├── plugin.ts # 插件管理 │ ├── providers.ts # Provider 管理 │ ├── set.ts # 配置设置 │ ├── init.ts # 初始化 │ ├── preset.ts # 预设管理 │ ├── list.ts # 模型列表 │ └── config.ts # 配置查看 ├── dist/ # 编译输出 ├── package.json ├── tsconfig.json └── AGENTS.md # 项目文档 ``` ## License MIT