章節:核心功能 · 網址:https://hermesbible.com/docs/user-guide/features/deliverable-mode
Deliverable 模式
當 Hermes Agent 在訊息閘道器(Slack、Discord、Telegram、WhatsApp、Signal 等)中運作時,它可以將生成的檔案直接傳送到聊天中——不是作為使用者需要手動複製的路徑,而是作為原生附件。
圖表會以內嵌圖片的方式顯示。PDF 報告會以檔案下載的方式出現。試算表會以 .xlsx 格式上傳。Agent 不需要撰寫 MEDIA: 標籤或做任何特殊處理——它只需要生成檔案,並在回覆中提及該檔案的絕對路徑。閘道器會從文字中提取路徑、將其從可見訊息中移除,然後原生上傳檔案。
運作原理
三個組件協同運作:
-
Agent 擁有產出檔案的工具。 例如透過 matplotlib 產出圖表的
execute_code、用於 PDF 的latex-pdf-reportskill、用於簡報的powerpointskill、用於圖片的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 預設不會主動產出成品——需要明確告知。以下兩種方式可以引導:
每場次(Per-session): 直接明確要求(例如「用圖表把比較結果傳給我」、「把資料以 CSV 格式回傳」),或撰寫自己的自訂指令/角色設定,在訊息平台上偏向產出成品風格的回覆。
專案層級: 在 Agent 工作的專案中,將此偏好加入 AGENTS.md / CLAUDE.md / .cursorrules,或加入 ~/.hermes/SOUL.md 中的全域角色設定,或作為 ~/.hermes/config.yaml 中 agent.personalities 的命名預設(可透過 /personality 每場次切換)。
Agent 需要使用的機制很簡單:將檔案渲染至絕對路徑(例如 /tmp/q3-revenue.png),然後在回覆中以純文字提及該路徑。閘道器會處理其餘事項。程式碼區塊或反引號中的路徑會被忽略,確保程式碼範例不會被破壞。
看板:成品隨完成通知傳送
如果您使用 Hermes 的看板(kanban)多代理人工作流程,工作者可以在 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(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 在 Slack 上的比較
Perplexity Computer 的 Slack 整合建立在相同的理念上:Agent 產出成品(圖表、PDF、簡報),並以原生附件的方式發佈回討論串中。Hermes Agent 的 Deliverable 模式在本質上提供相同的使用者端模式:
- 產生過程在使用者自己的 venv / 沙箱中進行(無遠端租戶)。
- 檔案透過相同的 Slack
files.uploadV2API 進入聊天。 - 串接範圍透過 MCP 實現,而非一套 400 個託管整合的精選目錄——只安裝您實際使用的服務。
OAuth 權杖保存在使用者機器上的 auth.json / .env 中。無託管權杖儲存。無多租戶 microVM。最終結果相同。