Deliverable Mode(交付物模式)
当 Hermes Agent 在消息网关(Slack、Discord、Telegram、WhatsApp、Signal 等)中运行时,它可以将生成的文件直接发送到聊天中——不是以用户需要复制的路径形式,而是作为原生附件。
图表以内联图片形式出现。PDF 报告以文件下载形式出现。电子表格以 .xlsx 形式上传。代理无需编写 MEDIA: 标记或做任何特殊操作——它只需生成文件并在回复中提及文件的绝对路径即可。网关从文本中提取该路径,将其从可见消息中移除,并以原生方式上传文件。
工作原理
三个部分协同工作:
-
代理拥有生成文件的工具。
execute_code通过 matplotlib 生成图表,latex-pdf-report技能生成 PDF,powerpoint技能生成演示文稿,image_generate生成图片,text_to_speech生成音频,等等。 -
网关扫描代理回复中的文件路径。 任何以支持的扩展名结尾的绝对路径(
/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 和其他源文件扩展名被有意排除,这样代理不会自动发送任意源文件;如果您想向用户发送代码,请使用代码块。
鼓励代理产生产物
代理默认不会主动生成产物——它需要知道应该这样做。有两种提示方式:
按会话: 明确要求(“把对比结果以图表形式发给我”、“以 CSV 格式返回数据”),或者编写您自己的自定义指令/个性条目,使其在消息平台上偏向于产物风格回复。
项目级别: 将偏好添加到代理工作项目中的 AGENTS.md / CLAUDE.md / .cursorrules,或添加到 ~/.hermes/config.yaml 中 agent.custom_instructions 下的全局自定义指令中。
代理需要使用的机制很简单:将文件渲染到绝对路径(例如 /tmp/q3-revenue.png),然后在回复中以纯文本形式提及该路径。剩下的由网关完成。围栏代码块或反引号内的路径会被忽略,因此代码示例永远不会被破坏。
Kanban:产物随完成通知携带
如果您使用 Hermes 的看板多代理工作流,工作线程可以在 kanban_complete 调用中附加交付物文件:
kanban_complete(
summary="rendered Q3 revenue chart and report",
artifacts=[
"/tmp/q3-revenue.png",
"/tmp/q3-report.pdf",
],
)当网关通知器向 Slack/Telegram 等平台中订阅了任务的人发送”任务已完成”消息时,它还会将每个产物作为原生附件上传到该聊天。人类在同一个地方同时获得交付物和摘要。
通知器运行时磁盘上不存在的文件会被静默跳过。
通过 MCP 连接更多服务
除了产物交付管道之外,代理还可以通过 MCP(Model Context Protocol,模型上下文协议)接入其他服务。MCP 生态为大多数流行工具提供了社区服务器——安装您需要的即可:
| 服务 | 解锁的功能 |
|---|---|
| Notion | 读/写 Notion 页面、数据库、查询工作区 |
| GitHub | Issues、PRs、评论、仓库搜索(超越 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 集成基于相同的理念:代理生成交付物(图表、PDF、演示文稿)并将其以原生附件形式发布回线程。Hermes Agent 的交付物模式在本地提供相同的面向用户模式:
- 生成发生在用户自己的 venv/沙箱中(无远程租户)
- 文件通过相同的 Slack
files.uploadV2API 进入聊天 - 连接器广度通过 MCP 实现,而非 400 个托管集成的精选目录——安装您实际使用的
OAuth 令牌留在用户的机器上,存放在 auth.json / .env 中。无托管令牌存储。无多租户 microVM。相同的最终结果。