Agent工坊

【Agent工坊】Hermes v0.19 三件套:密码管理器接入 + 智能审批 + 子代理直播,一人运维效率翻倍

Hermes Agent v0.19.0「Quicksilver」昨天发布,首 token 延迟暴降 80%,同时送来了三个让一人公司运维飞起的硬功能。

为什么你应该关心这个版本

先甩几个数字:v0.19.0 从 v0.18.0 以来合并了 2,245 个 commit、1,065 个 PR,关闭了 3,300+ issue,450+ 社区贡献者参与。这不是一个修修补补的版本,是 Hermes 自发布以来最大的工程重构之一。

但对 AI 创业者来说,版本号不重要,重要的是能省多少时间、少踩多少坑。这一版有三个功能直接命中一人公司的运维痛点:

  1. 密码管理器接入(Bitwarden/1Password)— API Key 再也不用明文写 .env 了
  2. 智能审批默认开启 — Hermes 自己判断危险命令要不要拦,而不是每个都弹窗问你
  3. 子代理实时监控 — delegate_task 派出去的 Agent 干活过程可以 tail -f 看直播

下面逐个拆解,带可复制的配置代码。


一、密码管理器接入:和明文 .env 说再见

痛点

你大概率遇到过这个场景:几十个 API Key(OpenAI、Anthropic、DeepSeek、微信、GitHub Token…)全塞在 .env 里。一旦服务器被摸到,攻击者拿到 .env 就是全锅端。

Hermes v0.19 新增了 SecretSource 插件接口,原生支持 Bitwarden 和 1Password 两种密码管理器。Hermes 启动时直接从你的密码库拉取密钥,不会在磁盘上留下任何明文痕迹。

配置 Bitwarden

首先确保 Bitwarden CLI 已安装并登录:

# 安装 Bitwarden CLI
npm install -g @bitwarden/cli
# 登录(需要先 unlock)
bw login
bw unlock
export BW_SESSION=$(bw unlock --raw)

然后在 Hermes 配置文件(~/.hermes/config.yaml)中添加:

secret_sources:
  - provider: bitwarden
    enabled: true
    # Bitwarden 会自动使用 BW_SESSION 环境变量
    # 你可以指定要拉取的条目名称或 ID
    mappings:
      - variable: OPENAI_API_KEY
        entry: "OpenAI Production Key"   # Bitwarden 中的条目名称
        field: password                   # 字段名,默认 password
      - variable: ANTHROPIC_API_KEY
        entry: "Anthropic Claude"
      - variable: DEEPSEEK_API_KEY
        entry: "DeepSeek API"
        field: notes                      # 也可以从 notes 字段读取

Hermes 启动时会自动拉取这些值,优先级高于 .env 中的同名变量。

配置 1Password

1Password 用户更简单,因为 1Password 本身就支持 op:// 引用格式:

# 安装 1Password CLI
# macOS: brew install 1password-cli
# Linux: 参考 https://developer.1password.com/docs/cli/get-started/

# 登录
op signin

配置 Hermes:

secret_sources:
  - provider: onepassword
    enabled: true
    mappings:
      # 使用 op:// 引用格式
      - variable: OPENAI_API_KEY
        ref: "op://Personal/OpenAI/password"
      - variable: GITHUB_TOKEN
        ref: "op://Work/GitHub/token"
      - variable: WECHAT_APP_SECRET
        ref: "op://Production/WeChat/credential"

op:// 格式的结构是 op://Vault名称/条目名称/字段名。你可以在 1Password 桌面端右键任意字段 → Copy Secret Reference 直接拿到引用字符串。

多 Vault 同时启用

v0.19 支持多个密码管理器同时工作,并有明确的优先级和冲突告警:

secret_sources:
  - provider: bitwarden
    enabled: true
    precedence: 1        # 优先级最高
    mappings:
      - variable: OPENAI_API_KEY
        entry: "OpenAI Production"
  - provider: onepassword
    enabled: true
    precedence: 2        # 次优先级
    mappings:
      - variable: ANTHROPIC_API_KEY
        ref: "op://Work/Anthropic/credential"

当两个 source 声明了同一个变量名时,Hermes 会按照 precedence 决定用哪个,并打印冲突警告。你还能通过 /env 命令查看每个变量的实际来源(provenance)。

安全收益

  • .env 文件可以为空或只保留非敏感的配置项
  • 密钥存储在你已经在用的加密密码库中,不需要额外基础设施
  • 团队场景下,不同成员可以使用各自的密码库,不共享 .env

二、智能审批:告别「弹窗地狱」

痛点

Hermes 在执行 rm -rfsudo、网络请求等「标记命令」时,默认会弹窗让你人工审批。但你一天可能要和 Hermes 交互几十上百次——每次弹窗都在打断你的心流。

v0.19 把 Smart Approvals 设成了默认行为:当 Hermes 想执行一个被标记的命令时,它会先让一个小型 LLM 评审器独立评估这个命令的危险性。

工作原理

Agent 想执行 rm -rf /tmp/build_cache
     ↓
Smart Approval 评审器介入
     ↓ 分析上下文
    "这个命令只删除 /tmp 下的构建缓存,
     不会影响系统文件,上下文合理"
     ↓
自动通过,Agent 继续执行

如果 Agent 后来想 rm -rf /home/user/production_db,同一个评审器会重新判断并拒绝

用户自定义拒绝规则

你还可以添加硬拒绝规则,即使在 yolo 模式下也生效:

# ~/.hermes/config.yaml
approvals:
  smart_approval: true        # 默认 true,可不写
  deny_rules:
    - pattern: "rm -rf /$"
      reason: "永远不允许删除根目录"
    - pattern: "sudo .*"
      reason: "需要人工确认的提权操作"
    - pattern: "curl.*|.*sh"
      reason: "管道执行远程脚本,需要人工审查"

/deny 命令:教会 Hermes 为什么拒绝

当你手动拒绝某个命令时,可以用 /deny 告诉 Hermes 拒绝原因:

你: /deny 这个数据库迁移脚本需要先在 staging 环境验证
Hermes: 已记录拒绝原因。我将先在 staging 环境执行迁移,确认无误后再操作 production。

这比单纯的 "Command rejected" 有用得多——Agent 会学习你为什么拒绝,调整后续行为。


三、子代理直播:tail -f 看 Agent 干活

痛点

delegate_task 派 Agent 出去干活后,你只能等它返回结果。中间它在干嘛?卡住了还是正常跑?完全黑盒。

v0.19 的两个改进彻底解决了这个问题:

实时 transcript 文件

delegate_task 现在返回一个实时的 transcript 文件路径:

# 派发子代理
result = delegate_task(
    goal="搜索 2026 年 7 月 AI Agent 融资新闻,整理成表格",
    toolsets=["web"],
    role="leaf"
)
# result.transcript_path → /home/agent/.hermes/transcripts/delegate_abc123.log

你可以在另一个终端实时监控:

tail -f /home/agent/.hermes/transcripts/delegate_abc123.log

输出示例:

[2026-07-21 11:00:01] 🚀 Subagent launched (task: search AI funding news)
[2026-07-21 11:00:02] 🔧 Tool call: web_search(query="AI agent funding July 2026")
[2026-07-21 11:00:05] ✅ web_search returned 5 results
[2026-07-21 11:00:06] 🔧 Tool call: web_extract(url="https://...")
[2026-07-21 11:00:11] 📝 Streaming reply: "Found 3 notable funding rounds..."
[2026-07-21 11:00:45] ✅ Task completed (3 funding rounds found)

耐久的后台委托

更重要的是,子代理的完成结果现在是耐久的

如果 Hermes 进程在子代理运行期间崩溃重启,已完成的结果会通过 ownership-checked ledger 恢复,不会丢失。

这意味着你可以放心地同时派 5 个 Agent 出去干活,关掉终端去喝咖啡——回来所有结果都在。


额外福利:其他值得关注的新功能

虽然本文重点是上面三个,但 v0.19 还有几个对创业者友好的改进:

  • 终端管理 Nous 订阅/subscription 看套餐、/topup 充值,不用切浏览器
  • 桌面端大幅提速:Markdown 流式渲染快 14 倍,diff 虚拟化,大会话不卡
  • 多 Profile 消息路由:一个 Discord Bot 同时服务工作群和个人群,配置隔离
  • 推理模型流式输出:不再看 30 秒转圈圈,思考过程实时可见

218K GitHub Stars 不是吹的。


升级指南

# 如果你已经安装了 Hermes
hermes update

# 或者全新安装
curl -fsSL https://hermes-agent.org/install.sh | bash

# 验证版本
hermes --version
# → Hermes Agent v0.19.0 (v2026.7.20) — The Quicksilver Release

升级后建议重新拉取一次配置模板(hermes config init),新版本有新增配置项。


总结:一人公司运维的「静默生产力」

这三个功能组合在一起的效果,比我单独描述任何一个都大:

  • 密码管理器消除了密钥泄露的心理负担
  • 智能审批让你和 Hermes 的交互从「不断打断」变成「持续流」
  • 子代理监控让你可以放心地并行派活

如果你是用 Hermes 跑内容流水线、自动化运维、数据处理的一人创业者——v0.19 这三个功能随便装一个都能立刻省时间,三个一起上就是质变。

下载升级,5 分钟的事。


发布时间:2026-07-21 | 来源:Hermes Agent v0.19.0 Release Notes (github.com/NousResearch/hermes-agent/releases/tag/v2026.7.20)

AI创业 #HermesAgent #Agent工坊 #一人公司 #AI工具