字节笔记本
2026年6月21日
hermes教程-交付模式
交付模式
当 Hermes Agent 在消息网关(Slack、Discord、Telegram、WhatsApp、Signal 等)中运行时,它可以将生成的文件直接交付到聊天中——不是作为用户需要复制的路径,而是作为原生附件。
图表以内嵌图片形式显示。PDF 报告以文件下载形式呈现。电子表格以 .xlsx 格式上传。Agent 无需编写 MEDIA: 标签或执行任何特殊操作——它只需生成文件并在回复中提及文件的绝对路径。网关会从文本中提取该路径,将其从可见消息中移除,并以原生方式上传文件。
工作原理
三个部分协同工作:
-
Agent 拥有生成文件的工具。
execute_code用于通过 matplotlib 生成图表,latex-pdf-report技能用于 PDF,powerpoint技能用于演示文稿,image_generate用于图片,text_to_speech用于音频,等等。 -
网关扫描 Agent 的回复以查找文件路径。 任何以支持的扩展名结尾的绝对路径(
/tmp/...)或相对于主目录的路径(~/...)都会被提取出来。代码块和内联代码中的路径会被忽略,因此代码示例不会被破坏。 -
网关根据文件类型进行分发。 图片在平台支持的情况下内嵌显示;视频内嵌显示;音频路由到语音/音频附件;其他所有内容作为文件附件上传。
支持的文件扩展名
| 类别 | 扩展名 | 交付方式 |
|---|---|---|
| 图片 | .png .jpg .jpeg .gif .webp .bmp .tiff .svg | 内嵌显示 |
| 视频 | .mp4 .mov .avi .mkv .webm | 内嵌显示(在支持的情况下) |
| 音频 | .mp3 .wav .ogg .m4a .flac | 语音/音频附件 |
| 文档 | .pdf .docx .doc .odt .rtf .txt .md | 文件上传 |
| 数据 | .xlsx .xls .csv .tsv .json .xml .yaml .yml | 文件上传 |
| 演示文稿 | .pptx .ppt .odp | 文件上传 |
| 压缩包 | .zip .tar .gz .tgz .bz2 .7z | 文件上传 |
| 网页 | .html .htm | 文件上传 |
.py、.log 和其他源文件扩展名被有意排除,这样 Agent 就不会自动发送任意源文件;如果你想向用户发送代码,请使用代码块。
鼓励 Agent 生成制品
Agent 默认不会主动生成制品——它需要知道这一点。有两种方式可以引导它:
会话级别: 明确要求(“把对比结果以图表形式发给我”、“将数据以 CSV 格式返回”),或者编写你自己的自定义指令/个性条目,使其在消息平台上偏向于制品风格的回复。
项目级别: 在 Agent 工作的项目中的 AGENTS.md / CLAUDE.md / .cursorrules 中添加这种偏好,或者添加到 ~/.hermes/SOUL.md 中的全局角色中,或者作为 ~/.hermes/config.yaml 中 agent.personalities 下的命名预设(可通过 /personality 在每个会话中切换)。
Agent 需要使用的机制很简单:将文件渲染到绝对路径(例如 /tmp/q3-revenue.png),并在回复中以纯文本形式提及该路径。剩下的工作由网关完成。围栏代码块或反引号内的路径会被忽略,因此代码示例不会被破坏。
看板:制品随完成通知一起交付
如果你使用 Hermes 的看板多 Agent 工作流,工作者可以在其 kanban_complete 调用中附加可交付文件:
kanban_complete(
summary="rendered Q3 revenue chart and report",
artifacts=[
"/tmp/q3-revenue.png",
"/tmp/q3-report.pdf",
],
)当网关通知器向 Slack/Telegram 等平台中订阅了该任务的人发送“任务完成”消息时,它还会将每个制品作为原生附件上传到该聊天中。用户可以在一个地方同时获得交付物和摘要。
如果通知器运行时文件在磁盘上不存在,则会静默跳过。
通过 MCP 连接更多服务
除了制品交付管道,Agent 还可以通过 MCP(模型上下文协议)接入其他服务。MCP 生态系统为大多数流行工具提供了社区服务器——安装你需要的即可:
| 服务 | 解锁的功能 |
|---|---|
| Notion | 读写 Notion 页面、数据库,查询工作空间 |
| GitHub | Issues、PR、评论,超越 gh CLI 的仓库搜索 |
| Linear | 工单、项目、周期 |
| Slack | 工作空间范围搜索,读取其他频道 |
| Gmail | 收件箱分类,发送邮件,标签管理 |
| Salesforce | 线索、商机、账户数据 |
| Snowflake / BigQuery | 对数据仓库执行 SQL |
| Google Drive | 文件搜索、内容、共享管理 |
通过 ~/.hermes/config.yaml 中的 mcp_servers 部分安装 MCP 服务器。完整设置指南请参阅 MCP 集成。
与 Perplexity Computer in Slack 的对比
Perplexity Computer 的 Slack 集成基于相同的理念:Agent 生成交付物(图表、PDF、幻灯片),然后将其作为原生附件发布回线程中。Hermes Agent 的交付模式在本地提供了相同的面向用户的模式:
- 生成发生在用户自己的 venv / 沙箱中(无远程租户)。
- 文件通过相同的 Slack
files.uploadV2API 进入聊天。 - 连接器的广度通过 MCP 实现,而不是通过一个包含 400 个托管集成的精选目录——安装你实际使用的那些。
OAuth 令牌保留在用户的机器上的 auth.json / .env 中。没有托管的令牌存储。没有多租户微虚拟机。最终结果相同。