Hermes Agent
Hermes Agent 的自定义 Provider 支持 Chat Completions、OpenAI Responses 和 Anthropic Messages。通用模型优先从 Chat Completions 开始;Codex 类模型使用 Responses,Claude 模型使用 Messages。
核验日期:2026-07-27
前置条件
- 已按 Hermes Agent 官方仓库的安装说明完成安装,并可正常启动。
- 已取得 Geekit 根地址、用户令牌和模型 ID。
- 模型能够可靠调用工具,且上下文长度满足 Agent 任务需要。
将令牌保存在用户级 ~/.hermes/.env,不要写入项目目录或可分享配置:
限制该文件仅当前用户可读写:
配置 Chat Completions
编辑 ~/.hermes/config.yaml:
name 决定 custom:geekit 中的 Provider ID。key_env 只填写环境变量名,不要直接放入令牌。
选择其他协议
Generic URL 自动检测通常会回落到 Chat Completions。Responses 和 Messages 应显式设置 api_mode,不要只修改模型名称。
验证
按原方式启动 Hermes Agent,先执行一个只读最小任务,然后确认:
- Hermes 选择了
custom:geekitProvider。 - Geekit 调用日志中的端点与
api_mode一致。 - 模型 ID、Token 和状态符合预期。
- 工具调用能继续执行,而不是只输出工具名称或 JSON 文本。
主模型使用 Geekit 后,视觉理解、网页摘要等辅助任务仍可能走独立路由。若希望这些任务跟随主模型,检查对应辅助设置是否保持为官方建议的 auto;同时确认 Geekit 模型确实具备相应能力。
常见问题
返回 401
确认 ~/.hermes/.env 中存在 GEEKIT_API_KEY,并重新启动 Hermes。不要通过终端回显或日志打印令牌进行排查。
返回 404
检查 Messages 是否误用了带 /v1 的 Base URL,或 Chat、Responses 是否漏掉 /v1。
Responses 被当成 Chat
将 api_mode 明确设为 codex_responses。仅填写自定义 URL 不会自动选择 Responses。
恢复原 Provider
将 model.provider 和 model.default 改回原配置,重新启动 Hermes。确认不再使用 Geekit 后,再按需要移除 custom_providers 中的条目和用户级令牌变量。