从 X Premium 到 Hermes 主模型:我是怎么接上 xAI,用上 grok-4.5 的
我开 X Premium 的时候,脑子里其实只有一句挺直白的想法:Grok 变好用了,能不能接到自己的 Hermes Agent 里当主模型。
结果发现不是一键打通。中间有一段岔路,有两个容易混在一起的"Grok",也有一套我后来才定型的模型分工。这篇把这段过程写下来:从 X 订阅开始,到 Hermes 真正跑在 grok-4.5 / xai-oauth 上,以及为什么定时任务我仍然钉死在 DeepSeek。
一、开端:开了 Premium,不等于 Agent 自动换脑
先说结论,免得后面绕:
| 东西 | 它是什么 | 和 Hermes 的关系 |
|---|---|---|
| X Premium / Premium+ | X 平台的订阅,解锁客户端里的 Grok、去广告、长文等 | 不等于 Hermes 的推理引擎 |
| X API(Developer Portal) | 发推、搜推、互动的官方 API,Pay-Per-Use 计费 | 通过 xurl 接到 Hermes,跟模型无关 |
xAI Grok OAuth(xai-oauth) |
Hermes 的一个 LLM provider | 这才是 Agent 调用 grok-4.5 的正门 |
所以"我登录了 X Premium,怎么关联进 Hermes"这句话,其实至少问了两件不同的事:
- Hermes 能不能操作我的 X 账号(发推、回复)
- Hermes 能不能用 Grok 当大脑(写代码、查基金、跑长任务)
两件事都值得做,但接法完全不一样。我当时先撞上的是第 1 条。
二、第一段岔路:先接上的是发推,不是模型
那天我说的是"关联 X Premium",Hermes 先把我带到了 xurl:X 官方 CLI,走 OAuth 2.0,token 存在本机,不经过模型。
这条线做完之后,Hermes 可以帮我发推、搜时间线、传图。它解决的是"Agent 有没有嘴巴发到 X",不是"Agent 脑子用不用 Grok"。
这里还有个很容易踩的坑:
- X Premium+ 是消费级订阅,管客户端里的 Grok 体验和平台权益
- X API 计费是另一套账,Developer Portal 里按条付费,跟你开没开 Premium+ 基本独立
我后来把 X API 的账本单独记了一份 running 估算,就是因为这两套钱不能混着看。Premium+ 升级,不会让发推突然免费;API 扣费,也不会因为你在 X 客户端聊了 Grok 而减免。
这一步做完,我其实还没真正"接上 xAI 模型"。只是把社交出口打通了。
三、第二段正题:Hermes 的 xai-oauth
真正把 Grok 接到 Agent 主链路上的,是 Hermes 的 provider:xai-oauth。
它在 Hermes 的提供方列表里,官方描述大致是:
xAI Grok OAuth(SuperGrok / Premium+)
意思是:你用 xAI / Grok 那套 OAuth 登录,把授权落到 Hermes 本地,然后 Hermes 就能以 provider 身份调用 Grok 模型。不是把 API key 贴进聊天框,也不是靠 X 客户端"顺手共享会话"。
我这边最终落在本机的状态是:
~/.hermes/auth.json里有providers.xai-oauthauth_mode为oauth_pkceactive_provider指向xai-oauthconfig.yaml里主模型:
model:
default: grok-4.5
provider: xai-oauth
也就是说:授权凭证在 auth 层,默认模型在 config 层。两层都对上,主会话才会稳定走 Grok。
可复现的接入顺序
不同版本的 Hermes 交互界面会微调,但主干差不多是这几步:
-
确认 Hermes 支持 xai-oauth
新一点的版本里,provider 列表会直接出现xai-oauth(别名还可能有grok-oauth等,最后都会归一到同一个)。 -
走 OAuth 登录,不要手贴 token
常见入口:
bash
hermes model
# 或
hermes auth add xai-oauth
# 或交互向导
hermes setup model
浏览器弹出授权页,用你的 xAI / Grok 账号完成登录。本机会起一个本地回调(我这边记录过类似 http://127.0.0.1:56121/callback 的 redirect),授权码换 token,写入 ~/.hermes/auth.json。
- 把默认模型指到 grok-4.5
用官方配置命令,不要手改 yaml 碰运气:
bash
hermes config set model.provider xai-oauth
hermes config set model.default grok-4.5
-
验证
新开一轮对话,看会话元信息里的model/provider是不是grok-4.5+xai-oauth。再跑一个简单任务,确认不是静默掉回别的 provider。 -
需要时再谈 gateway 重载
改完模型配置后,已经打开的长会话可能还捏着旧路由。最稳的是新开会话;如果 gateway 缓存了旧配置,再考虑外部终端重启 gateway(Hermes 网关通常禁止从会话内部自重启)。
整段流程里,最该记住的一句话是:
订阅解锁的是"你有没有资格用",OAuth 登录解决的是"Hermes 能不能代你调",config 解决的是"默认调谁"。
三步缺一,都会出现"我明明开了 Premium+,Agent 怎么还是旧模型"的错觉。
四、切模型不是一次到位:主会话、辅助、cron 是三层
我并没有在同一分钟把全系统都改成 Grok。实际顺序更像三层剥洋葱。
第 1 层:主会话先换
CLI、微信、Web UI 的日常对话,先切到:
| 模块 | 模型 | Provider |
|---|---|---|
| 主会话 | grok-4.5 | xai-oauth |
这一步体感最明显。长上下文推理、改网页、查基金、写文章,主脑换成了 Grok。
当时用量统计也很诚实:刚切完那几天,DeepSeek 仍占历史 token 的大头,因为之前主会话和几乎所有后台都在它上面;Grok 的占比是从主会话切换那一刻才开始爬升的。
第 2 层:辅助任务也迁过去
Hermes 除了"跟你聊天的主模型",还有一串 auxiliary 任务:压缩上下文、给会话起标题、flush 记忆、vision 看图、web_extract、审批、curator 等等。
一开始这些大多还钉在 DeepSeek,vision 甚至走别的轻量模型。主会话已经是 Grok,辅助却各跑各的,体验会割裂:同一件事里,有的步骤聪明、有的步骤风格跳。
于是我把辅助也统一过去了,用配置命令逐项或批量设成:
provider: xai-oauth
model: grok-4.5
迁完之后,压缩、标题、记忆整理、看图、网页抽取等辅助链路和主会话站在同一边。
第 3 层:cron 明确不跟
这是我刻意留下的分界。
所有 LLM 类定时任务,继续 pin:
deepseek-v4-pro @ custom:api.deepseek.com
原因不复杂:
- 成本与用量形状不同
cron 是夜里批量跑的,token 密度高、重复模式多。DeepSeek 在这档更合适当"后台工人"。 - 稳定性优先于新鲜感
日报、记忆整理、新闻聚合,要的是今晚跑完、格式别飘。主模型可以追新,定时任务最好少折腾。 - 防漂移
Hermes 的 cron 支持把模型 pin 死。如果不 pin,主模型一切换,后台任务可能悄悄跟过去,成本和行为一起漂。 - 主模型挂了还有退路
fallback 仍是 DeepSeek。主链路偶发异常时,不至于整站推理全灭。
所以最终定型是这样一张表:
| 用途 | 模型 | Provider | 说明 |
|---|---|---|---|
| 主会话(CLI / 微信 / Web UI) | grok-4.5 | xai-oauth | 日常主脑 |
| 辅助全套(压缩/搜索/标题/记忆/vision…) | grok-4.5 | xai-oauth | 与主会话一致 |
| 子 agent 委托 | 继承父会话 | — | 默认也是 Grok |
| LLM cron | deepseek-v4-pro | custom:api.deepseek.com | 明确 pin,不跟主模型 |
| 脚本 cron(no_agent) | 无模型 | — | 只跑脚本 |
| 主模型 fallback | deepseek-v4-pro | custom:api.deepseek.com | 仅主模型失败时 |
一句话:前台用 Grok,后台工人用 DeepSeek。
五、中间那几个坑
1. 把"订阅权益"和"Agent provider"当成一件事
最常见的误解。开了 Premium+,X 客户端里能聊 Grok 4.5,不代表 Hermes 已经换脑。必须再完成 xai-oauth 授权,并改 model.provider / model.default。
2. 把 xurl 和 xai-oauth 搞混
xurl:操作 X 社交图文xai-oauth:调用 Grok 做推理
我两条都接了,但它们解决的问题不同。写进记忆里也要分开记,否则下次会在错误的 skill 上找模型开关。
3. 手改 config.yaml vs 用 hermes config set
Hermes 对配置有自己的写入路径。模型、辅助任务这类项,优先:
hermes config set ...
而不是直接 vim 一个大 yaml 碰并发和校验。我在 memory 字符上限那次就学过类似的教训。
4. 旧会话还活着
改完默认模型,旧 gateway 会话可能继续用旧路由。验证时一定要新开对话,否则你会以为"没切成功"。
5. cron 不自动跟随,是特性不是 bug
很多人切主模型后,会惊讶后台任务还在 DeepSeek。对我来说这是设计:主脑可以追新,流水线要稳。除非你明确要求改 cron 模型,否则不该默默漂移。
六、用了一段时间后的体感
主观,但真实。
更明显变好的:
- 主会话的长任务连贯性更好,改网站、写长文、做排查时少一些"突然变钝"
- 辅助与主脑一致后,压缩摘要、标题、看图解释的风格不再和主对话打架
- 和 X 生态相关的工作流更顺:一边用 Grok 想内容,一边用 xurl 发到 X,中间不再换两套人格
我仍然让 DeepSeek 干的:
- 所有 LLM cron:记忆整理、新闻聚合、华尔街日报、基金分析页生成等
- fallback:主模型异常时的保险绳
这不是"Grok 不行",是任务形状不同。前台要聪明和跟手,后台要便宜、稳、可预期。
另外一个容易忽略的点:Premium+ 升级本身还带来 X 客户端侧的权益(更高 Grok 限额、去广告、X Pro 等),但那些是"人在 x.com 上用"的体验。Hermes 这边的收益,几乎全部来自 xai-oauth + grok-4.5 这条 provider 链路,而不是订阅页上的功能清单自动灌进 Agent。
七、如果你也想接,最小路径
压缩成一张清单:
- 先分清:你要的是发推(
xurl),还是换脑(xai-oauth),还是两个都要 - 模型链路走:
bash
hermes auth add xai-oauth # 或 hermes model / hermes setup model
hermes config set model.provider xai-oauth
hermes config set model.default grok-4.5
- 新开会话验证 provider 与 model
- 需要的话,把 auxiliary 也迁到同一 provider,避免主辅割裂
- cron 要不要跟,单独决策;我的选择是不跟,继续 pin DeepSeek
- 留一个 fallback,别让主模型成为单点
做到这里,你就已经不是"在 X 里用过 Grok",而是"让自己的 Agent 默认用 Grok 思考"了。
八、收尾
这条链路里,最有用的认知不是某个具体命令,而是分层:
- 订阅层:Premium+ 解决资格和客户端体验
- 社交 API 层:
xurl解决发帖互动 - 推理 provider 层:
xai-oauth解决 Agent 调 Grok - 任务分工层:主会话 / 辅助 / cron / fallback 各自钉死
我现在的稳态很简单:
人机对话和辅助全是 grok-4.5;定时任务继续 deepseek-v4-pro;主模型挂了回退 DeepSeek。
后面如果要把部分 cron 也迁到 Grok,会单独评估成本和稳定性,不会因为主模型换了就全员跟风。模型可以追新,分工最好先定规矩。
接上嘴巴(xurl / X API 计费 / 本地账本)是另一条线,写在《X API 发推账本》里。