---
sidebar_position: 3
title: "教程：每日简报机器人"
description: "构建一个自动化每日简报机器人，研究主题、汇总发现，并每天早晨推送至 Telegram 或 Discord"
---

# 教程：构建每日简报机器人

在本教程中，你将构建一个个人简报机器人，它每天早晨自动启动，研究你关心的主题，汇总发现，并将简洁的简报直接推送到你的 Telegram 或 Discord。

完成后，你将拥有一个完全自动化的工作流，结合了 **网页搜索**、**cron 调度**、**委托（delegation）** 和 **消息推送** — 无需编写代码。

## 我们要构建什么

流程如下：

1. **上午 8:00** — cron 调度器触发任务
2. **Hermes 启动**一个全新的 agent 会话，使用你的 prompt（提示词）
3. **网页搜索**拉取你关注主题的最新新闻
4. **汇总**将内容提炼为简洁的简报格式
5. **推送**将简报发送到你的 Telegram 或 Discord

整个流程无需人工干预。你只需在早晨喝咖啡时阅读简报即可。

## 前提条件

开始之前，请确保：

- **已安装 Hermes Agent** — 参见[安装指南](/getting-started/installation)
- **Gateway 正在运行** — gateway 守护进程负责处理 cron 执行：
  ```bash
  hermes gateway install   # Install as a user service
  sudo hermes gateway install --system   # Linux servers: boot-time system service
  # or
  hermes gateway           # Run in foreground
  ```
- **Firecrawl API 密钥** — 在环境变量中设置 `FIRECRAWL_API_KEY` 以启用网页搜索
- **已配置消息推送**（可选但推荐）— 已设置 [Telegram](/user-guide/messaging/telegram) 或 Discord 并配置了 home channel

:::tip 没有消息推送？没关系
你仍然可以使用 `deliver: "local"` 跟随本教程。简报将保存至 `~/.hermes/cron/output/`，你可以随时查阅。
:::

## 第一步：手动测试工作流

在自动化之前，先确认简报功能正常。启动聊天会话：

```bash
hermes
```

然后输入以下 prompt：

```
Search for the latest news about AI agents and open source LLMs.
Summarize the top 3 stories in a concise briefing format with links.
```

Hermes 将搜索网页、阅读结果，并生成类似以下内容：

```
☀️ Your AI Briefing — March 8, 2026

1. Qwen 3 Released with 235B Parameters
   Alibaba's latest open-weight model matches GPT-4.5 on several
   benchmarks while remaining fully open source.
   → https://qwenlm.github.io/blog/qwen3/

2. LangChain Launches Agent Protocol Standard
   A new open standard for agent-to-agent communication gains
   adoption from 15 major frameworks in its first week.
   → https://blog.langchain.dev/agent-protocol/

3. EU AI Act Enforcement Begins for General-Purpose Models
   The first compliance deadlines hit, with open source models
   receiving exemptions under the 10M parameter threshold.
   → https://artificialintelligenceact.eu/updates/

---
3 stories • Sources searched: 8 • Generated by Hermes Agent
```

如果运行正常，你就可以开始自动化了。

:::tip 反复调整格式
尝试不同的 prompt，直到得到你满意的输出。可以添加诸如"使用 emoji 标题"或"每条摘要不超过 2 句话"之类的指令。最终确定的内容将写入 cron 任务。
:::

## 第二步：创建 Cron 任务

现在让我们将其设置为每天早晨自动运行。有两种方式可以实现。

在创建 cron 任务之前，请确保 Hermes 已全局配置了默认模型和 provider。如果你希望某个任务使用不同的值，可在创建时设置该任务专属的 model/provider 覆盖项。

### 方式 A：自然语言（在聊天中）

直接告诉 Hermes 你想要什么：

```
Every morning at 8am, search the web for the latest news about AI agents
and open source LLMs. Summarize the top 3 stories in a concise briefing
with links. Use a friendly, professional tone. Deliver to telegram.
```

Hermes 将使用统一的 `cronjob` 工具为你创建 cron 任务。

### 方式 B：CLI 斜杠命令

使用 `/cron` 命令进行更精细的控制：

```
/cron add "0 8 * * *" "Search the web for the latest news about AI agents and open source LLMs. Find at least 5 recent articles from the past 24 hours. Summarize the top 3 most important stories in a concise daily briefing format. For each story include: a clear headline, a 2-sentence summary, and the source URL. Use a friendly, professional tone. Format with emoji bullet points and end with a total story count."
```

### 黄金法则：自包含的 Prompt

:::warning 关键概念
Cron 任务在**全新会话**中运行 — 不保留之前对话的任何记忆，也不了解你"之前设置"的任何内容。你的 prompt 必须包含 agent 完成任务所需的**一切信息**。
:::

**糟糕的 prompt：**
```
Do my usual morning briefing.
```

**好的 prompt：**
```
Search the web for the latest news about AI agents and open source LLMs.
Find at least 5 recent articles from the past 24 hours. Summarize the
top 3 most important stories in a concise daily briefing format. For each
story include: a clear headline, a 2-sentence summary, and the source URL.
Use a friendly, professional tone. Format with emoji bullet points.
```

好的 prompt 明确说明了**搜索什么**、**多少篇文章**、**什么格式**以及**什么语气**。它在一次输入中包含了 agent 所需的全部信息。

## 第三步：自定义简报

基础简报运行正常后，你可以进一步发挥创意。

### 多主题简报

在一份简报中涵盖多个领域：

```
/cron add "0 8 * * *" "Create a morning briefing covering three topics. For each topic, search the web for recent news from the past 24 hours and summarize the top 2 stories with links.

Topics:
1. AI and machine learning — focus on open source models and agent frameworks
2. Cryptocurrency — focus on Bitcoin, Ethereum, and regulatory news
3. Space exploration — focus on SpaceX, NASA, and commercial space

Format as a clean briefing with section headers and emoji. End with today's date and a motivational quote."
```

### 使用委托进行并行研究

若要加快简报生成速度，可以告诉 Hermes 将每个主题委托给子 agent：

```
/cron add "0 8 * * *" "Create a morning briefing by delegating research to sub-agents. Delegate three parallel tasks:

1. Delegate: Search for the top 2 AI/ML news stories from the past 24 hours with links
2. Delegate: Search for the top 2 cryptocurrency news stories from the past 24 hours with links
3. Delegate: Search for the top 2 space exploration news stories from the past 24 hours with links

Collect all results and combine them into a single clean briefing with section headers, emoji formatting, and source links. Add today's date as a header."
```

每个子 agent 独立并行搜索，然后主 agent 将所有内容合并为一份精美的简报。详见[委托文档](/user-guide/features/delegation)了解其工作原理。

### 仅工作日调度

不需要周末简报？使用针对周一至周五的 cron 表达式：

```
/cron add "0 8 * * 1-5" "Search for the latest AI and tech news..."
```

### 每日两次简报

获取早晨概览和傍晚回顾：

```
/cron add "0 8 * * *" "Morning briefing: search for AI news from the past 12 hours..."
/cron add "0 18 * * *" "Evening recap: search for AI news from the past 12 hours..."
```

### 通过 Memory 添加个人上下文

如果你启用了 [memory（记忆）](/user-guide/features/memory)，可以存储跨会话持久保留的偏好设置。但请记住 — cron 任务在全新会话中运行，不保留对话记忆。若要添加个人上下文，请直接将其写入 prompt：

```
/cron add "0 8 * * *" "You are creating a briefing for a senior ML engineer who cares about: PyTorch ecosystem, transformer architectures, open-weight models, and AI regulation in the EU. Skip stories about product launches or funding rounds unless they involve open source.

Search for the latest news on these topics. Summarize the top 3 stories with links. Be concise and technical — this reader doesn't need basic explanations."
```

:::tip 定制受众角色
在 prompt 中加入简报受众的详细信息，能显著提升内容相关性。告诉 agent 你的角色、兴趣以及需要跳过的内容。
:::

## 第四步：管理你的任务

### 列出所有已调度任务

在聊天中：
```
/cron list
```

或在终端中：
```bash
hermes cron list
```

你将看到类似以下的输出：

```
ID          | Name              | Schedule    | Next Run           | Deliver
------------|-------------------|-------------|--------------------|--------
a1b2c3d4    | Morning Briefing  | 0 8 * * *   | 2026-03-09 08:00   | telegram
e5f6g7h8    | Evening Recap     | 0 18 * * *  | 2026-03-08 18:00   | telegram
```

### 删除任务

在聊天中：
```
/cron remove a1b2c3d4
```

或通过对话方式：
```
Remove my morning briefing cron job.
```

Hermes 将使用 `cronjob(action="list")` 查找任务，并使用 `cronjob(action="remove")` 将其删除。

### 检查 Gateway 状态

确认调度器正在运行：

```bash
hermes cron status
```

如果 gateway 未运行，你的任务将不会执行。将其安装为后台服务以确保可靠性：

```bash
hermes gateway install
# or on Linux servers
sudo hermes gateway install --system
```

## 进一步探索

你已经构建了一个可运行的每日简报机器人。以下是一些可以继续探索的方向：

- **[定时任务（Cron）](/user-guide/features/cron)** — 调度格式、重复限制和推送选项的完整参考
- **[委托](/user-guide/features/delegation)** — 深入了解并行子 agent 工作流
- **[消息推送平台](/user-guide/messaging)** — 设置 Telegram、Discord 或其他推送目标
- **[Memory](/user-guide/features/memory)** — 跨会话的持久上下文
- **[技巧与最佳实践](/guides/tips)** — 更多 prompt 工程建议

:::tip 还能调度什么？
简报机器人的模式适用于任何场景：竞争对手监控、GitHub 仓库摘要、天气预报、投资组合追踪、服务器健康检查，甚至每日笑话。只要你能用 prompt 描述它，就能调度它。
:::