惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

L
LINUX DO - 最新话题
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
PCI Perspectives
PCI Perspectives
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
H
Heimdal Security Blog
S
Security @ Cisco Blogs
N
News | PayPal Newsroom
J
Java Code Geeks
罗磊的独立博客
Security Archives - TechRepublic
Security Archives - TechRepublic
N
News and Events Feed by Topic
V
V2EX
WordPress大学
WordPress大学
Google Online Security Blog
Google Online Security Blog
N
News and Events Feed by Topic
www.infosecurity-magazine.com
www.infosecurity-magazine.com
月光博客
月光博客
AI
AI
小众软件
小众软件
The GitHub Blog
The GitHub Blog
MongoDB | Blog
MongoDB | Blog
A
Arctic Wolf
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
美团技术团队
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
Hacker News - Newest:
Hacker News - Newest: "LLM"
T
Tailwind CSS Blog
S
Schneier on Security
博客园 - 三生石上(FineUI控件)
F
Full Disclosure
B
Blog RSS Feed
Forbes - Security
Forbes - Security
S
SegmentFault 最新的问题
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
人人都是产品经理
人人都是产品经理
云风的 BLOG
云风的 BLOG
Jina AI
Jina AI
Cisco Talos Blog
Cisco Talos Blog
U
Unit 42
Project Zero
Project Zero
H
Hacker News: Front Page
Y
Y Combinator Blog
Application and Cybersecurity Blog
Application and Cybersecurity Blog
The Cloudflare Blog
大猫的无限游戏
大猫的无限游戏
S
Secure Thoughts
The Hacker News
The Hacker News
Microsoft Azure Blog
Microsoft Azure Blog

博客园 - 我才是银古

第16章:常见问题、排错与最佳实践 第15章:扩展生态、MCAD 与外部集成 第12章:实战案例:机械结构与 3D 打印零件 第14章:构建、测试、调试与贡献流程 第13章:OpenSCAD 源码架构与核心执行流程 第11章:预览、渲染、网格精度与性能优化 第09章:列表推导、递归与算法建模 第08章:参数化零件库与复用设计 第10章:导入导出、命令行与自动化 第06章:CSG 布尔建模方法 第07章:二维图形、拉伸、旋转与投影 第05章:基础几何、坐标系与变换 第04章:参数、变量、函数、模块与作用域 OpenSCAD 教程目录 第03章:OpenSCAD 语言基础 第02章:安装、环境配置与开发工作流 第01章:OpenSCAD 项目全景与学习路线 第02章:源码获取、编译与开发环境配置 第01章:OCCT项目全景与学习路线 第18章:二次开发实战与综合案例 第17章:与 Qt VTK Python pythonOCC 生态集成 第18章:综合实战案例 第17章:数据交换与协同 第16章:源码架构与二次开发 第15章:插件与自定义工作台开发 第14章:Python脚本宏与自动化 第13章:FEM仿真分析 第12章:CAM数控加工 第11章:SurfaceMesh与逆向工程 第10章:Draft二维绘图与BIM建筑 第09章:工程图TechDraw 第07章:参数化表达式与Spreadsheet 第08章:装配设计Assembly 第06章:Part工作台与几何内核 第05章:PartDesign实体特征建模 第04章:草图Sketcher约束建模 第02章:安装版本与工作环境配置 第03章:界面工作台与基础操作 第01章:项目全景与学习路线 第十二章:插件开发、研究功能与最佳实践 第十章:定时任务与自动化(Cron) 第七章:技能、记忆与自学习闭环 第八章:MCP 集成与上下文文件 第六章:工具系统与终端后端 第五章:模型供应商与配置体系 Hermes Agent 教程目录 第四章:CLI/TUI 与会话管理 第十二章:学习路线、实战方案与最佳实践 第十一章:源码结构、开发调试与插件开发 第十章:自动化、远程访问、日志与排障 第九章:Control UI、节点、Canvas 与语音能力 第七章:工具、技能、插件与能力扩展 第八章:安全模型、访问控制与沙箱实践 第六章:Agent 工作区、会话与多智能体路由 第五章:多通道消息接入与聊天平台配置 第四章:配置体系、模型接入与认证管理 第三章:Gateway 架构、协议与运行机制 第二章:安装、环境准备与快速上手 第一章:OpenClaw 项目概览与核心定位 oh-my-openagent 教程目录 09-命令模型回退与配置参考 10-实战案例最佳实践与故障排除 05-工作模式-Ultrawork-Prometheus-Atlas 08-Hooks与MCP系统 06-Category与Skill系统 07-核心工具链 04-智能体全景详解 03-安装与环境配置 02-整体架构与多模型编排机制 01-项目简介与核心理念 01-项目概览与学习路线 02-安装部署与工具适配 03-Skill机制与using-superpowers 05-TDD系统化调试与完成前验证 04-需求澄清方案设计与计划编写 07-并行智能体子智能体与Git-Worktree 第六章:代码审查、反馈处理与分支收尾 08-中国特色Skills与本土团队落地 09-MCP构建工作流执行与自定义Skill 第23章:FreeCAD-Python-API Clipper2 C# 源码解读教程 第19章:PolyTree 多边形树结构 第20章:实际应用与最佳实践 第18章:Minkowski 和与差 第17章:RectClip 矩形裁剪优化 第16章:ClipperOffset 偏移类详解 第15章:填充规则详解 第14章:布尔运算执行流程 第13章:ClipperD 浮点裁剪类 第11章:OutRec 与 OutPt 输出结构 第9章:Active 活动边结构 第10章:Vertex 顶点与 LocalMinima 局部极小值 第12章:Clipper64 裁剪类详解 第7章:高精度运算与128位整数 第8章:ClipperBase 基类详解 第5章:枚举类型与常量定义 第6章:InternalClipper 内部工具类 第2章:核心数据结构 - Point64、PointD 第3章:路径与多边形表示 - Path64、PathD、Paths64、PathsD 第4章:矩形边界 - Rect64、RectD
第十一章:语音、视觉、浏览器与子代理协作
我才是银古 · 2026-05-04 · via 博客园 - 我才是银古

第十一章:语音、视觉、浏览器与子代理协作

本章把 Hermes 中"动手干活"色彩最强的几个能力放到一起讲:语音模式(Voice Mode)视觉与图像生成(Vision / Image Generation)浏览器自动化(Browser Automation)子代理委派与并行(Delegation)、以及与之配合的 Goals / Todo / Kanban。配合前面章节,你将获得一个真正"能听、能看、能上网、能让小弟跑腿"的小型 ops 团队。

11.1 语音模式(Voice Mode)

11.1.1 三种语音形态

形态 平台 描述
CLI 即按即说 TUI Ctrl+B 启动录音,自动 VAD(静音检测),转写后发出去
自动语音回复 Telegram、Discord、企业微信、Slack(部分) 文字回复同时附加 TTS 音频
Discord 语音频道 Discord VC bot 加入语音频道,直接听人说话、说话回应

11.1.2 安装

pip install "hermes-agent[voice]"        # CLI 录音/播放
pip install "hermes-agent[messaging]"    # Discord/Telegram(含 discord.py[voice])
pip install "hermes-agent[tts-premium]"  # ElevenLabs
python -m pip install -U "neutts[all]"   # 可选本地 NeuTTS

或一把:

pip install "hermes-agent[all]"

11.1.3 STT(Speech-to-Text)

主流候选:

  • OpenAI Whisper API(默认);
  • Groq Whisper(极快,便宜);
  • 本地 whisper.cpp
  • MiniMax / Voxtral(Mistral)
voice:
  stt:
    provider: groq            # openai / groq / whisper-cpp / minimax / voxtral
    model: whisper-large-v3
    language: zh-CN           # 留空自动检测

11.1.4 TTS(Text-to-Speech)

10 个原生 provider:

edge-tts(免费)、elevenlabsopenaiminimaxvoxtralgeminixaineutts(本地)、kittentts(本地)、piper(本地)—— 加自定义 command provider(任何 CLI)。

voice:
  tts:
    provider: elevenlabs
    voice_id: <your-voice-id>
    rate: 1.0
    fallback:
      - provider: openai
        voice: alloy
      - provider: edge-tts
        voice: zh-CN-XiaoxiaoNeural

按平台开关:

gateway:
  telegram:
    auto_voice_reply: true
  discord:
    auto_voice_reply: false
    voice_channels:
      - 1234567890123456

11.1.5 Discord 语音频道

gateway:
  discord:
    voice_channels:
      - 1234567890123456

bot 加入指定 VC,对每个发言用户分流:检测说话者 → STT → 触发 Agent → TTS → 通过相应通道回。多人会话也能区分讲话者(基于 Discord 提供的发言者 ID)。

11.1.6 语音消息(Telegram / WhatsApp / 企业微信)

发语音 → Hermes 自动 STT → 当作文本进入会话 → 文字回 + TTS 音频。无须额外配置,只要 STT/TTS 配好即可。

11.1.7 性能贴士

  • STT 优先 Groq(毫秒级);
  • TTS 中文场景,本地 Edge TTS 性价比极高;
  • Discord VC 端到端延迟约 800ms-2s;想再低需自托管 STT+TTS;
  • hermes config set voice.local_audio_buffer_ms 200 调缓冲。

11.2 视觉(Vision)

11.2.1 输入:图片粘贴 / 文件 / 截图

  • TUI 中:复制截图后输入 @clipboard 即可直接粘进对话;
  • 任意 IM 平台收到图片附件会自动作为 vision input;
  • read_file ./pic.png 也能让模型看到(Hermes 会自动 base64 + 检测 mime)。

11.2.2 模型选择

主模型若支持视觉(Claude Opus 4.6、GPT-5、Gemini 2.5 Pro、Qwen3-VL、MiniMax-VL 等)则直接用;否则降级到 vision_modelauxiliary_model

vision_model: openrouter/openai/gpt-4o

11.2.3 工具:vision_analyze

主动分析非对话流图片:

vision_analyze(image_path="./screenshot.png",
               prompt="找出截图里所有按钮的文字和位置")

适合让 Agent 在跑工具流程的中间"看一眼某张图"。

11.3 图像生成(Image Generation)

image_generate(prompt="赛博朋克风格的猫坐在键盘上", model="flux-2-pro", size="1024x1024")

支持 9 个模型(FLUX 2 Klein/Pro、GPT-Image 1.5/2、Nano Banana Pro、Ideogram V3、Recraft V4 Pro、Qwen-Image、Z-Image Turbo),后端是 FAL.ai

FAL_KEY=...
image_generation:
  default_model: flux-2-pro

订阅 Nous Portal 的话用 Tool Gateway 后端,无须 FAL Key。

11.4 浏览器自动化(Browser Automation)

11.4.1 5 种后端

Backend 描述 适用
browserbase Browserbase 云 生产、零本地依赖
browseruse Browser Use 云 同上
cdp 连本地 Chrome(已登录) 借用我的登录态做"我自己"操作
chromium-local Playwright + 本地 Chromium 离线、可控
playwright-mcp 走 MCP 进阶混编

切换:hermes tools → browser → backend。

11.4.2 工具集

10 个 browser_* 工具:navigatesnapshotvisionclicktypeformselect_optionscreenshotpress_keyextract

工作流通常这样:

  1. browser_navigate(url=...)
  2. browser_snapshot() 拿到结构化 a11y tree;
  3. 模型根据 ref 决定下一步:browser_click(ref="button-id-3") / browser_type(ref="input-search", text="...")
  4. 必要时 browser_vision() 拿截图分析。

snapshot 是 a11y tree(结构化),比"裸看像素"快得多准得多——这是 Hermes 一贯推荐。

  • 需要 登录态、JS 渲染、点点点 → browser;
  • 静态页面 / 文章 / 文档 → web_extract 即可,省 token。

11.4.4 常见任务

帮我打开淘宝订单页,统计本月订单总额并截图
打开 GitHub Releases 页,挑出最近 5 个 release 的标题和正文,整理成 changelog

记得:让浏览器 bot 操作敏感账户前一定要 审批列入白名单 + 用 cdp 借用你登录态而非保存账号

11.5 子代理委派(Delegation)

11.5.1 单任务

delegate_task(
    goal="为这次部署写一份 rollback playbook",
    context="服务在 prod-cluster-2 上跑 v1.4.7,回滚目标 v1.4.6;DB 迁移文件 0042_..."
    toolsets=["file", "terminal"]
)

11.5.2 并行批量

delegate_task(tasks=[
    {"goal": "调研 OpenAI 最近 5 篇博客", "toolsets": ["web"]},
    {"goal": "调研 Anthropic 最近 5 篇博客", "toolsets": ["web"]},
    {"goal": "调研 DeepMind 最近 5 篇博客", "toolsets": ["web"]},
])

默认 3 并发,可通过 delegation.max_concurrent 调整:

delegation:
  max_concurrent: 5
  iteration_budget_per_subagent: 30

11.5.3 子代理"什么也不知道"

子代理 没有父代理对话历史,必须把所有上下文写进 goalcontext

# ❌ 不好:子代理不知道"那个错误"是什么
delegate_task(goal="Fix the error")

# ✅ 好:子代理收到完整上下文
delegate_task(
    goal="Fix the TypeError in api/handlers.py",
    context="""
    路径:~/code/myapp/api/handlers.py:47
    报错:'NoneType' object has no attribute 'get'
    根因猜测:parse_body() 在 Content-Type 缺失时返回 None
    项目使用 Python 3.11,pytest 运行 `make test`。
    """
)

只有 结构化总结 会回到父代理:做了什么、改了哪些文件、未解决问题列表。这意味着你不会被子代理的"思考过程"塞爆主上下文。

11.5.4 经典模式(patterns)

guides/delegation-patterns.md 总结了几种高频套路:

  1. Map-Reduce:把"对每个项目都执行 X" 拆给 N 个子代理,最后由父代理 reduce;
  2. Researcher / Writer:一个调研、一个总结,避免上下文混杂;
  3. Parallel Code Surgeons:3 个子代理在 3 个 worktree 上并行改不同模块;
  4. Fast Triage:父代理只决定"哪个分支重要",每条分支扔给子代理细化;
  5. Sandboxed Risky Op:把"可能跑坏的命令"扔给子代理在隔离 docker 后端跑。

11.5.5 与 Kanban 的差异

delegate_task同步函数调用:父代理 fork→join,子代理跑完 / 失败就结束;适合"我等几分钟就要这个答案"。

Kanban 是 持久消息队列 + 状态机:跨代理、跨重启、跨人;适合"几小时甚至几天的复杂工作"。

可以混用:一个 Kanban worker 内部继续 delegate_task 做一次研究。

11.6 Goals 与 Todo

todo 工具维护当前会话的"下一步清单",模型自己写自己读。常见用于:

  • 用户开局给一个大任务 → 模型先写 todo → 一项项执行;
  • /todo 查看当前列表;
  • 子代理被 dispatch 时也会把分解后的子目标写进 todo。

goals 系统更进一步(user-guide/features/goals.md):你可以给某个 Profile 或 Kanban board 设"长期 goal",cron / 启动时它会主动检查是否在朝这个 goal 走。例如把"今年学完 Rust"作为 goal,Hermes 会每周帮你回顾进度。

11.7 Kanban 工作流(再次拓展)

第十章已经讲过 Kanban 的概念。这里给一个"实操"层面的简短工作流模板:

# 1) 一次性:建一个 board
hermes kanban board create research

# 2) dispatcher profile:把 epic 拆成 task
hermes profile use dispatcher
hermes
> 我要做一份关于"国产开源大模型在工具调用上的对比"的报告。请帮我拆分。

# 3) researcher profile:拿一个 task 深挖
hermes profile use researcher
hermes
> /kanban claim T-1 --as researcher

# 4) writer profile:拼报告
hermes profile use writer
hermes
> /kanban claim T-7 --as writer
> /report-style style=academic

每个 profile 都是独立 ~/.hermes/profiles/<name>/:独立记忆、独立 SOUL.md、独立 personality preset。Kanban 是它们之间唯一的通信通道——任何人都能读、写、评论。

11.8 Hermes Web Dashboard

hermes web start --host 0.0.0.0 --port 7860

提供:

  • 跨平台对话浏览(CLI/Telegram/...);
  • Cron / Webhook 状态;
  • Kanban 看板视图;
  • 会话搜索;
  • Trajectory 浏览。

适合 Gateway 服务化部署后给团队管理员用。详见 user-guide/features/web-dashboard.md

11.9 ACP:在 IDE 里用 Hermes

hermes acp serve

在 VS Code / Zed / JetBrains 安装 ACP 客户端 → 指向 Hermes acp endpoint。你会得到:聊天、工具调用、文件 diff、终端执行、通通在 IDE 内。详见 user-guide/features/acp.md

11.10 API Server:自托管 ChatGPT

hermes api start --host 0.0.0.0 --port 8000

任何兼容 OpenAI Chat 格式的前端都能接(Open WebUI、LobeChat、LibreChat、ChatBox、Cherry Studio)。这是把 Hermes 暴露给团队浏览器用户最简单的方式。

详见 user-guide/features/api-server.md

11.11 实战:一个"多模态 ops 助理"的设置清单

# ~/.hermes/config.yaml 节选
model: anthropic/claude-opus-4.6
auxiliary_model: openrouter/openai/gpt-5-mini
vision_model: openrouter/openai/gpt-4o

voice:
  stt: { provider: groq, model: whisper-large-v3, language: zh-CN }
  tts: { provider: elevenlabs, voice_id: ... }

terminal:
  backend: docker
  docker: { image: ghcr.io/nousresearch/hermes-sandbox:latest }

browser:
  backend: chromium-local

delegation:
  max_concurrent: 4
  iteration_budget_per_subagent: 25

gateway:
  telegram: { enabled: true, auto_voice_reply: true }
  discord:
    enabled: true
    voice_channels: [1234567890123456]

mcp_servers:
  github: { command: npx, args: [-y, "@modelcontextprotocol/server-github"] }

cron:
  jobs:
    - name: morning-brief
      schedule: "0 9 * * 1-5"
      prompt: "生成今日早报"
      skills: [blogwatcher, github-pr-workflow]
      targets: [telegram://${MY_CHAT_ID}]

效果:你早 9 点收到 Telegram 早报、白天 IM 聊天、Discord VC 直接说话;任何复杂任务自动 fork 子代理;浏览器/终端都隔离在 docker;多模态视觉/图像生成全打通。

11.12 本章小结

  • 语音模式:CLI 推送即聊、IM 自动语音回复、Discord 语音频道,三种形态全覆盖;
  • 视觉:多模态主模型 + 视觉辅助模型,图片粘贴即用;
  • 图像生成:FAL 9 个模型,订阅用户走 Tool Gateway 零配置;
  • 浏览器:5 种后端 + 10 个工具,a11y tree 优先;
  • 子代理delegate_task 同步并行、Kanban 异步持久,二者互补;
  • Goals/Todo:让 Agent 永远有"下一步";
  • Web Dashboard / ACP / API Server:让 Hermes 与 IDE、团队、浏览器前端无缝串起来。

最后一章我们补齐工程师视角:插件开发、研究功能(批量轨迹与 RL 训练)、安全与最佳实践。