
1. 为什么我要给 WorkBuddy 设一个“十点半闹钟”每天早上到工位第一件事不是泡咖啡而是打开各种窗口翻消息、看邮件、刷群聊把昨天夜里到今早发生的事捋一遍。这个过程少则二十分钟多则一个小时而且经常漏掉关键信息。后来我琢磨既然 WorkBuddy 这类 AI 助手已经能帮我处理不少日常事务为什么不干脆让它每天定时给我生成一份“AI 日报”直接推送到微信上这样我通勤路上或者刚到工位扫一眼就知道今天该关注什么。这个想法的核心其实就三件事定时触发、内容聚合与 AI 摘要、微信推送。听起来简单但真动手做的时候坑一个接一个。比如 WorkBuddy 的定时任务怎么配、AI 摘要用哪个模型、微信推送走什么通道最稳、日报内容怎么组织才不废话这些都需要一个个敲定。我前后折腾了大概一周中间推翻了两版方案最后跑通的这套流程已经稳定运行了两个多月每天早上十点半准时送达几乎没有漏推过。这篇文章就是把这套方案的完整思路、关键细节、实操步骤和踩过的坑全部摊开讲。不管你是刚接触 WorkBuddy 的新手还是已经在用 AI 助手做自动化但还没打通“定时推送”这条链路的老手都能从中找到可以直接抄作业的部分。我会尽量把每个选择背后的“为什么”讲清楚而不是只丢一堆配置让你自己猜。2. 整体方案设计与核心思路拆解2.1 三个核心模块的职责划分整套方案我拆成了三个独立但又串联的模块每个模块只干一件事这样出问题的时候排查起来非常快。第一个模块是定时触发器。它的职责只有一个每天上午十点半准时唤醒后续流程。我试过用系统自带的计划任务也试过用 WorkBuddy 内置的定时能力最后选了后者原因后面细说。这个模块的关键是“稳”不能因为某天机器休眠或者网络波动就跳过执行。第二个模块是内容采集与 AI 摘要。这是整个流程里最核心的部分。它需要从几个固定的信息源拉取原始内容然后交给 AI 模型做摘要和归类最终生成一份结构化的日报。这里涉及信息源的选择、Prompt 的设计、以及输出格式的约束。第三个模块是微信推送。生成的日报要送到微信上方式有好几种我对比了公众号模板消息、企业微信机器人、以及个人微信文件传输助手三种路径最终选了一个兼顾稳定性和个人使用习惯的方案。这三个模块之间通过一个中间文件或者内存变量传递数据不搞复杂的消息队列够用就行。整个架构用一句话概括就是定时器触发脚本脚本拉数据调 AI 生成日报日报通过推送通道发到微信。2.2 为什么选 WorkBuddy 而不是纯手写脚本你可能会问这东西用 Python 写个脚本加个 cron 不就完了为什么要用 WorkBuddy我一开始也是这么想的但实际用下来发现 WorkBuddy 有几个不可替代的优势。第一它自带任务编排和上下文管理。纯脚本的话每次执行都是无状态的你得自己处理“上次拉到哪了”“哪些内容已经推送过了”这类问题。WorkBuddy 的任务机制天然支持上下文传递省掉了很多状态管理的代码。第二它内置了模型调用能力。你不需要自己去处理 API Key 轮换、请求重试、超时降级这些琐事。我实测下来WorkBuddy 调用 deepseek 系列模型的稳定性比我手写的重试逻辑还要好一些尤其是在网络抖动的时候。第三规则可以持久化生效。WorkBuddy 支持给任务设定长期规则比如“所有日报必须用中文”“摘要不超过 500 字”“按重要性排序”这类约束设一次就对所有后续任务生效不用每次都在 Prompt 里重复写。这个特性在热词里也有人提到——“给 workbuddy 定几条规则后续对所有任务都生效”确实是个很实用的功能。当然WorkBuddy 也不是万能的。如果你的需求非常定制化比如需要调用十几个不同的 API 做复杂的数据清洗那纯脚本可能更灵活。但对于“定时生成日报并推送”这个场景WorkBuddy 的抽象层级刚刚好。2.3 日报内容的设计原则日报不是越长越好也不是信息越多越好。我一开始犯的错就是把所有原始信息一股脑塞进去结果每天早上看到一大坨文字根本不想读。后来我定了三条原则日报的可读性立刻上了一个台阶。原则一只保留“变化”和“新增”。昨天的旧闻不要再出现只推送过去 24 小时内新产生的内容。这个判断逻辑需要在采集阶段就做好过滤不能等到 AI 摘要的时候再处理否则会浪费 token。原则二按重要性分三档。我把日报内容分成“必看”“值得扫一眼”“存档备查”三个层级。必看的内容放在最前面用加粗标注值得扫一眼的用列表呈现存档备查的只给标题和链接。这样即使时间紧扫一眼前三行也能抓住重点。原则三每条摘要不超过两句话。AI 摘要很容易写成一大段读起来很累。我在 Prompt 里明确约束了“每条不超过 50 字两句话以内”效果立竿见影。如果某条信息确实复杂就拆成多条短摘要而不是写成一条长摘要。这三条原则看起来简单但真正落地的时候需要反复调 Prompt。我大概改了七八版才达到比较满意的效果。后面在“核心细节解析”那部分我会把最终的 Prompt 模板完整贴出来。3. 核心细节解析与实操要点3.1 定时触发器的配置细节WorkBuddy 的定时任务配置入口在任务管理面板里找到“触发器”或者“Schedule”选项新建一个定时规则。时间设定为每天上午 10:30时区确认是本地时区不要选 UTC否则会差八个小时。这里有一个很容易忽略的细节执行时间的容错窗口。如果你的机器在 10:30 那一刻正好处于休眠或者网络切换状态任务可能会被跳过。WorkBuddy 提供了一个“错过执行后补跑”的选项我建议打开它容错窗口设为 30 分钟。这样即使 10:30 没跑成10:31 到 11:00 之间只要机器恢复任务会自动补执行。另一个细节是执行超时时间。默认可能是 60 秒但采集加 AI 摘要加推送整个流程跑下来通常需要 30 到 90 秒取决于信息源的数量和模型响应速度。我把超时设成了 180 秒避免因为模型偶尔慢一点就整个任务失败。注意如果你用的是 WorkBuddy 国际版定时器的时区选项可能默认不是本地时区一定要手动确认。我有个朋友就是因为这个原因日报每天凌晨三点推送他还以为是 bug。3.2 信息源的选择与采集策略信息源的选择直接决定了日报的质量。我目前固定采集三类来源工作群聊的关键消息、邮件里的重要通知、几个固定信息站点的更新。群聊消息的采集是最麻烦的。微信群本身不提供官方的消息导出接口我的做法是用一个中间层把关键群的消息同步到一个可读取的地方然后再由 WorkBuddy 去拉取。这个中间层可以用微信小程序开发里的消息订阅能力来做也可以用一些开源的本地工具做消息转发。具体选哪个取决于你的技术栈我选的是自己写了一个简单的转发脚本把指定群的消息写入一个本地 JSON 文件WorkBuddy 直接读文件就行。邮件这块相对简单用 IMAP 协议拉取过去 24 小时的新邮件按发件人和关键词做初步过滤。我设的过滤规则是发件人在白名单里或者主题包含“通知”“变更”“审批”这类关键词。过滤后的邮件再交给 AI 做摘要。信息站点的更新采集用 RSS 或者网页监控都行。我固定监控了五个站点每个站点只取最新的一到两条更新。这里的关键是去重同一个内容可能在多个站点出现需要在采集阶段就用 URL 或者标题做去重否则日报里会出现重复条目。3.3 AI 摘要的 Prompt 设计与参数调优Prompt 的设计是整份日报质量的决定性因素。我前后改了七八版最终稳定下来的模板大概是这样的你是一个工作日报助手。请根据以下原始信息生成一份简洁的日报。 要求 1. 只保留过去24小时内新增或变化的内容旧内容不要出现。 2. 按重要性分为三档【必看】【值得扫一眼】【存档备查】。 3. 每条摘要不超过50字两句话以内。 4. 用中文输出不要用markdown表格用纯文本加短横线列表。 5. 如果某类信息没有新内容直接跳过不要写“无更新”。 原始信息如下 {{raw_content}}这个 Prompt 里有几个关键点值得展开说。第一“只保留变化”这个约束必须写死在 Prompt 里不能指望模型自己判断。我试过不写这条结果模型把三天前的旧闻也摘要进来了。第二输出格式要明确约束我一开始没约束格式模型有时候输出表格有时候输出列表推送到微信上表格会乱掉。第三空内容要跳过否则日报里会出现一堆“无更新”很影响阅读体验。模型选择方面我主力用 deepseek 系列响应速度和摘要质量都比较均衡。如果某天信息量特别大我会切换到参数更大的模型但日常用默认的就够了。温度参数建议设低一点0.3 左右这样输出更稳定不会每天风格差异太大。3.4 微信推送通道的选型对比微信推送这块我试了三种方案各有优劣列个表对比一下方案稳定性配置难度个人使用体验适用场景企业微信机器人高低需要单独装企业微信团队协作场景公众号模板消息中中需要认证公众号对外服务场景个人微信文件传输助手中高低最自然直接在微信里看个人自用场景我最终选的是个人微信文件传输助手方案。原因很简单我每天本来就开着微信日报直接出现在文件传输助手里点开就能看不需要额外打开企业微信或者关注公众号。实现方式是通过一个本地的小程序或者自动化工具把生成的日报文本发送到文件传输助手。这里不展开具体工具名称思路就是用微信的桌面端自动化能力模拟一次“发送消息”的操作。注意这个方案依赖桌面端微信保持登录状态。如果微信掉线了推送就会失败。我的做法是在推送脚本里加一个检查如果发送失败就记录日志第二天日报里会附带一条“昨日推送失败”的提醒。4. 实操过程与核心环节实现4.1 从零搭建的完整步骤假设你现在从零开始我按顺序把每一步都列出来你跟着做就行。第一步在 WorkBuddy 里新建一个任务。任务名称随便起比如“每日AI日报”。任务类型选“定时任务”或者“Schedule Task”。如果你用的是 WorkBuddy 国际版界面语言可能是英文的找“Scheduled”或者“Cron”相关的选项。第二步配置定时触发器。时间设为每天 10:30时区选本地时区打开“错过补跑”容错窗口 30 分钟超时时间 180 秒。保存后可以先手动触发一次确认任务能正常启动。第三步编写采集脚本。这部分取决于你的信息源。如果信息源是本地文件直接用 WorkBuddy 的文件读取能力就行。如果是远程接口用 HTTP 请求节点拉取。我建议把采集逻辑拆成三个独立的子步骤群聊消息采集、邮件采集、站点更新采集。每个子步骤输出一个独立的列表最后合并去重。第四步配置 AI 摘要节点。把上一步合并后的原始内容作为输入粘贴我前面给的 Prompt 模板模型选 deepseek温度设 0.3最大输出长度设 2000 token 左右。这里要注意如果原始内容特别长可能需要先做一次粗筛把明显不相关的内容去掉再交给模型做精细摘要。第五步配置微信推送节点。把 AI 摘要的输出作为输入通过你选的推送通道发送。如果是文件传输助手方案需要确保桌面端微信处于登录状态并且自动化工具已经配置好。第六步串联所有节点并测试。在 WorkBuddy 的任务编排界面里把采集、摘要、推送三个节点按顺序连起来。先手动执行一次完整流程检查每一步的输出是否符合预期。特别要检查日报的格式在微信里显示是否正常有没有乱码或者截断。4.2 关键参数的计算与选择过程有几个参数我调了好几次才找到比较合适的值这里把计算过程分享一下。采集时间窗口24 小时。这个很好理解日报覆盖的是“昨天十点半到今天十点半”的内容。但实际实现的时候我用的时间戳是“当前时间减去 25 小时”多留一个小时作为缓冲避免因为任务执行延迟导致漏掉边界内容。AI 摘要的最大输出长度2000 token。我统计了一下日报正文通常在 800 到 1500 字之间加上格式标记2000 token 足够覆盖。如果设得太小摘要会被截断设得太大模型可能会输出冗余内容。2000 是一个比较安全的中间值。推送重试次数3 次间隔 10 秒。微信推送偶尔会因为桌面端卡顿而失败加一个简单的重试机制能显著提高成功率。我实测下来第一次失败后重试成功的概率大概在 70% 左右三次重试后基本不会失败。日报条目数量上限15 条。超过 15 条日报就太长了读起来很累。如果采集到的内容超过 15 条我会在 AI 摘要之前先做一次排序按来源权重和时间新鲜度取前 15 条。这个上限可以根据你的实际情况调整但建议不要超过 20 条。4.3 一次完整的执行记录我截取某天的实际执行日志把关键节点的时间戳和输出贴出来你可以直观感受一下整个流程的节奏。10:30:00 任务触发 10:30:02 开始采集群聊消息读取本地JSON文件 10:30:05 群聊消息采集完成共12条新消息 10:30:06 开始采集邮件连接IMAP服务器 10:30:12 邮件采集完成共5封新邮件过滤后保留3封 10:30:13 开始采集站点更新请求5个RSS源 10:30:18 站点更新采集完成共8条新内容 10:30:19 合并去重最终得到18条原始内容 10:30:20 调用AI摘要模型 10:30:47 AI摘要返回生成日报正文约1100字 10:30:48 开始推送到微信文件传输助手 10:30:52 推送成功 10:30:53 任务完成总耗时53秒从日志可以看出AI 摘要那一步耗时最长大概 27 秒。采集部分总共花了 18 秒推送只花了 4 秒。整体 53 秒完成在 180 秒的超时窗口内非常充裕。4.4 日报模板的最终形态经过多次调整最终的日报在微信里显示出来大概是这个样子的【今日AI日报】10月24日 【必看】 - 项目A的审批流程有变更需要在周五前重新提交材料。 - 服务器B的维护窗口调整到今晚凌晨2点预计影响1小时。 【值得扫一眼】 - 行业站点C发布了一篇关于自动化测试框架对比的文章结论是pytest在中小团队中性价比最高。 - 群聊里有人分享了deepseek最新API的调用示例支持流式输出。 【存档备查】 - 邮件关于Q4预算调整的通知链接 - 站点某工具发布v2.3版本更新了定时任务模块链接这个格式的好处是层次分明扫一眼就知道哪些必须处理哪些可以稍后看。每条摘要都控制在了两句话以内读起来不费劲。5. 常见问题与排查技巧实录5.1 任务没有按时触发怎么办这是最常见的问题排查顺序如下。先检查 WorkBuddy 的任务日志看有没有触发记录。如果没有触发记录说明是定时器本身的问题检查时区设置和“错过补跑”选项。如果有触发记录但任务很快失败看失败原因是什么通常是网络问题或者某个节点报错。我遇到过一次任务连续三天没触发最后发现是 WorkBuddy 的客户端在后台被系统休眠了。解决办法是在系统电源管理里把 WorkBuddy 加入白名单禁止休眠。如果你用的是笔记本合盖休眠也会导致任务跳过建议把执行时间设在你确定机器处于唤醒状态的时间段。5.2 AI 摘要质量不稳定的排查思路摘要质量波动通常有三个原因。第一原始内容质量差。如果采集到的内容本身就是一堆碎片化的短消息模型很难摘要出有价值的东西。解决办法是在采集阶段加更强的过滤只保留有完整语义的内容。第二Prompt 被意外修改。检查一下 Prompt 模板有没有被其他任务覆盖或者误改。第三模型版本变化。如果服务商更新了模型版本输出风格可能会有变化这时候需要重新调 Prompt。我一般会保留最近七天的日报存档如果某天质量明显下降就对比前几天的原始内容和 Prompt很快就能定位到原因。5.3 微信推送失败的几种典型情况推送失败的原因比较杂我整理了一个速查表现象可能原因解决办法推送无反应桌面端微信未登录检查微信登录状态重新登录推送内容截断消息长度超限拆分日报为多条消息发送推送延迟严重桌面端卡顿重启微信清理缓存间歇性失败自动化工具冲突检查是否有其他自动化任务占用微信注意如果你的微信提示版本过低需要先更新到最新版本再使用自动化推送。旧版本微信的接口兼容性不好容易出现各种奇怪的问题。5.4 几个我踩过的坑和对应的避坑技巧坑一日报里出现了昨天的旧内容。原因是我在采集阶段用的时间窗口是“当前时间减去 24 小时”但有些信息源的时间戳是服务器时间和本地时间有偏差。解决办法是统一用 UTC 时间戳做比较或者在采集后加一步“按内容哈希去重”把已经推送过的内容过滤掉。坑二AI 摘要把不重要的内容放在了必看里。这是因为 Prompt 里没有明确“重要性”的判断标准。后来我在 Prompt 里加了一句“重要性判断依据是否需要在 24 小时内采取行动”效果好了很多。坑三推送的日报在手机微信上格式乱掉。桌面端微信和手机端微信对文本格式的渲染不一样。解决办法是只用纯文本加短横线不要用任何 markdown 格式标记这样在两端显示都正常。坑四某天信息量特别大日报超过了 2000 字。读起来非常累。后来我加了硬性截断超过 15 条的内容自动归入“存档备查”只给标题和链接不展开摘要。5.5 如何让日报更“懂你”日报用久了你会发现有些内容你从来不看有些内容你每次都重点看。我的做法是每两周回顾一次日报把从来不看的来源从采集列表里去掉把经常看的来源提高权重。WorkBuddy 的规则系统支持给不同来源设不同的优先级设一次就长期生效。另外我还会在 Prompt 里加一句“如果某条内容与我的历史关注偏好不符可以降低其重要性等级”。虽然模型不一定能完美执行但加上这句话之后日报的整体相关性确实有提升。6. 后续可以继续折腾的方向这套方案跑通之后我又陆续加了几个小功能。一个是日报归档每天生成的日报自动保存到一个本地文件夹按日期命名方便以后回溯。另一个是异常提醒如果某天采集到的内容数量突然暴增或者暴减日报开头会加一条提醒让我知道可能有异常情况。还有一个正在尝试的方向是多端同步。目前日报只推送到微信我还在试能不能同时推送到其他常用的沟通工具上这样即使某天没开微信也能看到。不过这个涉及多个推送通道的适配还在折腾中。如果你也想搭一套类似的系统我的建议是先从最简单的版本开始只采集一个信息源只推送到一个通道跑通之后再逐步加功能。我一开始就想做“全能日报”结果配置太复杂调试了两天都没跑通后来砍到只剩邮件采集加微信推送半天就搞定了。先跑通再优化这个顺序很重要。