在编程 agent 里用 OpenRouter

导出 OPENROUTER_API_KEY,运行 oharness -m openrouter/<vendor>/<model>。OHarness 会自动发现 OpenRouter 的模型列表,所以它路由的每个模型都能在 /models 里找到。

三条命令

npm install -g oharness
export OPENROUTER_API_KEY="..."
oharness

然后用 /models 看 OpenRouter 提供哪些模型,用 /model openrouter/<vendor>/<model> 选一个——模型 id 用 OpenRouter 自己的写法,里面本来就带一个斜杠。

什么时候该选 OpenRouter

  • 想试很多模型,又不想在每家厂商都开账号。
  • 团队用好几家厂商,想要一张账单、一个 key。
  • 兜底:某个上游挂了,下一轮可以通过同一个 key 走另一家。

值得知道

  • 购买 OpenRouter 积分要收手续费,所以大量使用同一个模型时,直接用厂商的 API 可能更便宜。
  • OHarness 在请求头里向 OpenRouter 标明自己是 OHarness,所以用量会显示在 OpenRouter 上这个应用名下。
  • 混着用没问题:同一个会话里,DeepSeek 用它自己的 key,Claude 走 OpenRouter。

常见问题

OpenRouter 能配合 Claude Code 式的编程 agent 使用吗?

能。OHarness 内置了 OpenRouter 厂商。设置 OPENROUTER_API_KEY,用 /model openrouter/<vendor>/<model> 选任意模型。

会话中途切换 OpenRouter 模型会丢上下文吗?

在 OHarness 里不会。历史记录以与厂商无关的格式存储,所以在 OpenRouter 背后的模型之间切换——或者在 OpenRouter 和直连厂商之间切换——什么都不用转换。

OpenRouter 参考

厂商 idopenrouter
Base URLhttps://openrouter.ai/api/v1
协议OpenAI 兼容的 chat completions
API keyOPENROUTER_API_KEY
模型发现支持——模型列表是向端点询问得来的,不是打包在发行版里的。

接入方法

上面的端点已经内置,什么都不用配置。把 key 放进环境变量,这个厂商就会出现在模型选择器里:

export OPENROUTER_API_KEY="..."

key 由 OpenRouter 签发——在哪里获取。

指向别的地址

区域主机、网关,或者你自己的服务器。~/.oharness/config.json 里的覆盖是字段级的,所以改端点不用把这个厂商的其他配置重写一遍——下面是完整的配置块,填的是默认值,方便看清结构:

{
  "providers": {
    "openrouter": {
      "baseUrl": "https://openrouter.ai/api/v1"
    }
  }
}

无论选哪家都一样

不管底层是哪家厂商,都是同一个 agent 循环、同一套工具、同一批 MCP 服务器、同一套权限规则——会话中途在它们之间切换,什么都不用转换,因为历史记录从来不以某个厂商的格式存储。什么是 agent harness 讲了为什么这才是难点,厂商参考文档讲了目录本身。

全部 34 家厂商 · 安装 OHarness