接入 Agent 工具
WorkBuddy
CodeBuddy IDE 的 AI 编程助手,通过本地 models.json 接入 Models Hub 的 OpenAI 兼容模型。
项目介绍
WorkBuddy(CodeBuddy IDE)支持通过本地 models.json 配置文件接入自定义模型,兼容 OpenAI 接口格式,因此可以无缝接入 Models Hub 提供的各类模型。
📦 接入前准备
- 已安装 WorkBuddy / CodeBuddy IDE
- Models Hub 服务地址:
https://modelsok.com/v1(接口需使用完整路径,见下文) - 一个可用的 Models Hub API Key(在控制台生成)
- 想使用的模型名称(如
claude-sonnet-4-6、gemini-2.5-flash等,需与 Models Hub 控制台中的模型 ID 完全一致)
🗂️ 配置文件位置
WorkBuddy 通过两级 models.json 管理自定义模型:
| 级别 | 路径 | 说明 |
|---|---|---|
| 用户级 | ~/.codebuddy/models.json | 全局生效 |
| 项目级 | <项目根目录>/.codebuddy/models.json | 仅对当前项目生效,优先级更高 |
项目级配置中的
availableModels会完全覆盖用户级的同名字段。
🚀 第一步:编辑 models.json
打开(或新建)对应的 models.json,加入 Models Hub 模型:
{
"models": [
{
"id": "claude-sonnet-4-6",
"name": "Claude Sonnet 4.6 (Models Hub)",
"vendor": "Models Hub",
"url": "https://modelsok.com/v1/chat/completions",
"apiKey": "ms_live_你的APIKey",
"maxInputTokens": 200000,
"maxOutputTokens": 8192,
"supportsToolCall": true,
"supportsImages": true,
"supportsReasoning": true
},
{
"id": "gemini-2.5-flash",
"name": "Gemini 2.5 Flash (Models Hub)",
"vendor": "Models Hub",
"url": "https://modelsok.com/v1/chat/completions",
"apiKey": "ms_live_你的APIKey",
"maxInputTokens": 1000000,
"maxOutputTokens": 8192,
"supportsToolCall": true,
"supportsImages": false
}
],
"availableModels": [
"claude-sonnet-4-6",
"gemini-2.5-flash"
]
}字段说明
| 字段 | 必填 | 说明 |
|---|---|---|
id | 是 | 模型唯一标识,需与 Models Hub 控制台中的模型 ID 一致 |
name | 是 | 在 IDE 中显示的名称 |
url | 是 | 完整的 Chat Completions 端点,需以 /chat/completions 结尾 |
apiKey | 是 | 填写真实的 API Key 值(不是环境变量名) |
vendor | 是 | 供应商名称,可填 Models Hub |
maxInputTokens / maxOutputTokens | 否 | 模型的最大输入/输出 token 数 |
supportsToolCall | 否 | 是否支持工具/函数调用 |
supportsImages | 否 | 是否支持图片输入 |
supportsReasoning | 否 | 是否支持推理模式 |
availableModels | 否 | 控制下拉列表中可见的模型;留空则显示全部 |
✅ 第二步:验证接入
WorkBuddy 会在配置变更后约 1 秒自动重载(带防抖),无需重启。在模型选择器中选择刚添加的 Models Hub 模型(如 claude-sonnet-4-6),发送一条测试消息:
帮我写一个快速排序的 TypeScript 实现若模型正常响应则接入成功。自定义模型会自动带上 custom 标签,便于在 UI 中筛选。
❓ 常见问题
| 问题 | 解决方案 |
|---|---|
| 模型选择器看不到新加的模型 | 检查 availableModels 是否包含该模型 ID,并确认配置已重载 |
| 401 / API Key 无效 | 确认 apiKey 填的是真实 Key 值而非环境变量名 |
url must end with /chat/completions | 确认 url 是完整端点,不要只填到 /v1 |
| 模型不存在 | 确认 id 与 Models Hub 控制台中的模型 ID 完全一致 |
| 项目里配置不生效 | 项目级 models.json 会覆盖用户级,检查项目根目录下的 .codebuddy/models.json |
| 输出被截断 | 提高 maxOutputTokens 上限 |