内容提要
本文介绍如何用OpenClaw配置每日新闻早报和晚报:通过Cron定时任务生成HTML邮件,包含天气、科技新闻、微博热搜和定时任务执行情况。推荐使用PrismFlowAgent或HEX2077获取新闻,微博热搜可用官方CLI或Python脚本抓取,邮件可用腾讯Agent Mail发送。强调稳定送达、链接可点击和失败处理,避免过度调试。
延伸解读
邮件投递的稳定性考量
文章强调早晚报的稳定送达比内容本身更重要。作者建议为定时任务设置充足的超时时间,避免因生成内容耗时过长而被取消。同时,对于微博热搜等数据源,若获取失败,应在邮件中显示“暂不可用”,而不是反复调试,以免影响整封邮件的按时发送。这种设计思路体现了对自动化任务可靠性的重视。
Agent Mail 的二次确认机制
腾讯 Agent Mail 目前处于内测阶段,其发送命令带有二次确认机制,首次调用会返回确认信息,需再次确认才能发送。这意味着完全无人值守的自动投递可能受阻。作者建议先测试工作流,或继续使用 SMTP 等支持自动投递的方案。Agent Mail 更适合作为隔离的 Agent 专用邮箱,而非替代所有发信方式。
新闻信源的选择与权衡
文章推荐了两种新闻获取方案:PrismFlowAgent(流光)和 HEX2077。PrismFlowAgent 需要自行部署,支持多种来源和自定义处理,但维护成本较高;HEX2077 则无需部署,直接接入即可,但选题和收集范围由对方决定。用户可根据自身需求权衡,选择更省事或更可控的方案。
微博热搜获取的两种方式
微博热搜可通过官方 CLI 工具(weibo-cli)或自写 Python 脚本获取。官方 CLI 需要登录,而脚本直接请求公开接口,无需登录。作者建议在获取时多取一些条目(如 15 条),以便过滤置顶和广告后仍有足够数量。同时,务必保留原始链接或构造搜索链接,确保邮件中的热搜可点击。
Q&A
如何用OpenClaw定时生成每日早报和晚报?
使用OpenClaw自带的Cron功能,通过命令`openclaw cron create`创建定时任务,指定cron表达式、任务描述、名称、会话模式和时区。例如,每天早上8点生成早报的命令为:`openclaw cron create "0 8 * * *" "生成每日早报:读取天气、科技新闻、微博热搜和定时任务执行结果,整理成简洁HTML并发送到我的邮箱。" --name "每日早报" --session isolated --tz "Asia/Shanghai"`。晚报同理,在晚上8点执行。
OpenClaw早报和晚报的内容有什么区别?
早报包含天气、科技新闻、微博热搜以及前一天晚上到当天早上的定时任务执行情况;晚报包含第二天的天气、微博热搜以及当天定时任务执行情况。科技新闻只放在早报中,晚报不包含。
如何配置微博热搜获取?
有两种方式:一是使用微博官方CLI工具`weibo-cli`,安装后通过`weibo-cli trending -n 15`获取热搜;二是使用Python脚本直接请求微博热搜Ajax接口,无需登录。在配置Cron时,需在提示词中明确命令、过滤规则(过滤trending=0的置顶和广告)以及取前几条,并构造可点击的链接。
如何确保邮件中的微博热搜链接可点击?
优先使用命令返回的原始链接;如果没有,则为每个话题构造微博搜索链接:`https://s.weibo.com/weibo?q={URL编码后的话题}`。在生成HTML时,用`<a>`标签包裹标题,将链接放入`href`,并对URL进行HTML属性转义,避免生成空链接。
推荐哪些新闻信源?如何接入?
推荐PrismFlowAgent(流光)和HEX2077。PrismFlowAgent需自行部署,支持多种数据源,可通过Agent接口接入OpenClaw;HEX2077无需部署,直接访问其Agent接入页面,让OpenClaw获取日报。也可直接订阅HeoNews RSS。
如何部署PrismFlowAgent?
需要Node.js 20+和pnpm。克隆仓库后,在项目目录执行`npm install`,进入frontend目录执行`pnpm install`,然后运行`npm run dev:all`。启动后管理后台在`http://localhost:5173`,默认密码为admin123,建议修改密码并避免暴露公网。
如何配置腾讯Agent Mail?
先访问agent.qq.com,用微信扫码登录并创建Agent邮箱。然后可通过OpenClaw让Agent阅读官方文档自动安装,或手动安装:`npm install -g @tencent-qqmail/agently-cli`,添加skill,执行`agently-cli auth login`完成OAuth授权,再验证邮箱。注意发送命令有二次确认机制,需测试自动投递流程。
如何处理定时任务中某部分数据获取失败的情况?
在提示词中明确失败处理策略,例如显示“暂无数据”或“微博热搜暂不可用”,不要卡住反复调试。确保邮件按时送达,避免因单块数据失败影响整体。