目录

我给AI装了一个大脑,现在它替我焦虑

一个月用OpenClaw搭建个人信息引擎的真实记录

一个月前,我在树莓派上装了OpenClaw。

如果你不知道OpenClaw是什么,简单说,它是一个运行在本地的AI Agent框架——给大模型一台电脑、一堆工具、和一个可以24小时跑的守护进程。我在之前的文章里聊过它的商业逻辑和"锤子与钉子"的问题,这篇不再重复那些。

这篇文章要讲的是:我花了一个月,把它从一个"很厉害但不知道让它干嘛"的半成品,变成了一个真正在替我干活的信息引擎。过程中踩了不少坑,也发现了一些反直觉的东西。

从"不知道让它干嘛"到"它比我更了解我在关注什么"

装完OpenClaw的第一周,我和大部分人一样——对着对话框发呆。让它帮我搜个东西?我自己搜更快。让它写代码?Claude Code更专业。让它管日程?Notion够用了。

转折点是我给它设了一个每小时执行一次的cron job,叫"每小时自主行动"。

一开始这个任务很蠢,就是定时去刷Hacker News和GitHub Trending,把热门项目记下来。效果和我自己刷没什么区别,甚至更差——因为它不知道什么对我重要,什么不重要,胡乱记一堆我根本不关心的东西。

后来我做了一个关键调整:让它先读我最近的对话记录和学习笔记,搞清楚我现在在关注什么,然后再去搜索

这个改动看起来很小,效果却是质变的。举个例子:我那段时间在学CUDA和推理引擎优化,它读到这个上下文后,去GitHub Trending扫到Flash Attention和Megatron-LM同时上榜,直接告诉我"这两个和你在学的CUDA方向高度相关,值得深挖"。换成一个不了解我在干什么的通用搜索工具,它最多告诉我"这两个项目今天很火"——这种信息对我没有任何增量价值。

这就是context-aware搜索通用搜索的本质区别。不是搜索能力的差异,是它知不知道"对谁搜索"。

每小时自主行动:不是定时巡逻,是"想想能做什么"

这个cron job的prompt经历了好几次迭代。最初的版本是一个固定巡查清单:几点看HN,几点查邮件,几点扫GitHub。很快我就发现这种模式有两个问题:

  1. 无效重复太多。凌晨3点和4点的HN Top 5几乎一模一样,但它每次都老老实实记一遍。
  2. 完全没有主动性。它只做我让它做的事,不会根据当前状态判断该做什么。

于是我改成了现在的版本:不给固定清单,只给优先级框架——能力扩展 > 学习研究 > 任务推进。让它自己根据时间、上下文、和最近的动态来决定干什么。

效果立竿见影。凌晨时段它会自觉保持安静,做轻量级的信息扫描;白天它会更积极,搜索新的Skills安装、跟踪我关注的开源项目进展。它甚至学会了一个我没教它的行为:在发现某个新闻持续发酵时,跨多个小时追踪热度变化。

有一次Anthropic拒签五角大楼合同的消息出来,它从下午第一条声明开始追踪,一直跟到晚上热度破千、Google员工联名信曝光。我全程没刷一次新闻,但第二天早上读它的记录时,对这件事的了解比任何人都全面——不是因为我看了更多信息,而是它帮我把碎片化的信息流整理成了一条完整的故事线。

凌晨3点的三个Agent

每天凌晨3点,OpenClaw会启动三个独立的Agent,我管它叫"Nightly Build"——借用了软件工程里每夜构建的概念。

Agent A:会话历史整合。 它的工作是回顾我今天所有渠道的对话——主对话、Discord群组、各种session——从中提取关键事件、决策、和进展,写入当天的memory文件。这相当于给我的一天做一个commit log。

Agent B:问题-机会扫描。 它读完今天的对话后,专门找我遇到的"摩擦点"——我抱怨过什么、在哪里卡住了、多次纠正过它什么。然后对每个问题做一个判断:这是我个人的特殊需求,还是一个普遍问题?如果普遍,有没有商业化潜力?

这个Agent的设计来自我之前的一个观察:创业机会往往藏在日常的"不爽"里。但问题是,这些"不爽"的瞬间很容易被遗忘——你当时觉得很烦,过两天就忘了。Agent B的作用就是系统性地捕捉这些信号。

Agent C:外部动态扫描。 GitHub Trending、arXiv论文、社区讨论。和白天的每小时行动不同,这个Agent在凌晨跑,能扫到当天完整的数据,不会遗漏下午才上榜的项目。

三个Agent写完各自的文件后,第二天早上8点的"每日任务规划"会读取这些文件,结合我的Notion任务列表和iCloud日历,生成一条消息推送到我的Discord。我起床后花10分钟就能掌握:昨天发生了什么值得关注的事、今天有什么任务和日程、有没有新的机会值得跟进。

热点精选:五个并行节点的Map-Reduce

后来我觉得Nightly Build里的外部扫描不够广,又搭了一套"热点精选"系统。架构借鉴了Map-Reduce的思路:

早上9点,五个独立的Agent同时启动,各自负责一个搜索领域:

  1. AI/科技 & 硬件 — 大模型进展、芯片动态、科技巨头新闻
  2. USC活动 — 创业讲座、tech talks、hackathon、career fair
  3. 开发者/开源 — GitHub Trending、arXiv论文、框架更新
  4. 新产品发现 — Product Hunt、Show HN、少数派、众筹
  5. 市场/财经 & 综合 — 美股、创业投资、中国科技、前沿科学

每个节点只负责搜索和写文件,不发消息。8分钟后,一个"Reducer"节点启动,读取所有搜索结果,去重、排序、写入Notion数据库,最后给我发一条精选摘要。

为什么要做这么复杂?因为单Agent跑完所有搜索需要3-4分钟,经常超时失败。拆成并行节点后,每个节点只需要30-60秒,成功率高了不少。而且每个节点的prompt可以针对性优化——比如USC活动节点,我给它塞了十几个搜索源(TroyLabs、Viterbi Events、Luma、Eventbrite……),这种深度是通用搜索prompt做不到的。

这种设计本身就体现了一个我越来越认同的原则:Agent的价值不在于单次对话有多聪明,而在于系统性地编排多个Agent各司其职。 一个Agent做所有事,和五个Agent各做一件事,结果差异巨大。

邮件分类:从垃圾堆里救出真正重要的信

这是一个意外发现的高价值场景。

作为USC的学生,我的edu邮箱每天收到几十封邮件,90%是垃圾——群发通知、newsletter、Handshake推荐、Brightspace讨论帖通知。但偶尔会混进来一封教授直发的DDL提醒或实习面试邀请。

我给OpenClaw写了一个每半小时跑一次的邮件分类Agent。它用Google Workspace CLI拉取未读邮件,按照我定义的规则分类:能直接标已读的(群发/spam/安全警报/CS402讨论帖)自动处理掉;需要我关注的(教授邮件/DDL/实习相关)保留未读并推送通知到Discord。

这个Agent平均每次执行只需要13秒,但它帮我从每天"打开邮箱→扫一遍→关掉"的循环中彻底解放了出来。我现在只在收到Discord通知时才打开邮箱,打开就是重要邮件,不浪费一秒在垃圾信息上。

RTX 5090库存监控:Agent当黄牛

这个比较好玩。NVIDIA RTX 5090发售后长期缺货,黄牛溢价严重。我写了一个Python脚本配合cron job每15分钟检查一次库存,当有货且价格在我预算范围($2800以内)时推送通知。

Agent不只是机械地检查"有没有货",它还会对照我设定的MSRP参考价(FE $1999, TUF $2199, ROG ASTRAL $3299等)过滤掉溢价过高的。这种"带判断的监控"就不是简单的脚本能做到的了。

真正学到的东西

折腾一个月后,我总结出几个反直觉的认知:

1. Agent的核心价值不是"能力",是"上下文"。

GPT-4、Claude、Gemini的能力都差不多。但一个读过你所有对话记录、知道你在学什么、关注什么、讨论过什么的Agent,和一个冷启动的通用AI,输出质量差了一个量级。OpenClaw的memory系统——MEMORY.md记长期决策、memory/每天的日志记当天事件、hourly日志记详细过程——这套"外部记忆"才是整个系统最有价值的部分。

2. 真正有用的Agent不问你要做什么,它自己知道该做什么。

最初的每小时巡查版本需要我给出详细指令:几点查什么、怎么查、记到哪里。现在的版本只需要一个优先级框架和当前上下文,它自己决定做什么。这个转变的关键不是模型变聪明了,而是我学会了怎么写prompt——把"指令"变成"原则",把"清单"变成"判断框架"。

3. 编排 > 单点智能。

一个Agent做所有事情,效果远不如多个Agent各司其职。Nightly Build的三个Agent、热点精选的五个并行节点、加上Reducer——这种Map-Reduce式的编排,让每个Agent只需要做好一件事,系统整体的可靠性和输出质量都大幅提升。

4. 你的注意力才是最稀缺的资源。

这是最根本的认知。在信息爆炸的时代,我们的注意力是一个固定大小的管道,而涌入的信息量在指数增长。AI信息引擎的价值不在于帮你"获取更多信息"——信息从来不缺——而在于帮你过滤掉99%的噪音,只让那1%真正与你相关的内容通过。

向外,它是一面无情的筛网,替你挡掉推荐算法制造的焦虑;向内,它是一个精准的雷达,帮你捕捉那些稍纵即逝的技术信号和商业机会。

把大浪淘沙的苦活交给机器,把最宝贵的注意力留给深度思考和真正的创造——这或许才是AI时代个人效率的正确打开方式。

附:系统架构一览

给想自己搭的人一个参考:

硬件:树莓派 4B 8GB (ARM64)
系统:OpenClaw + Claude Sonnet 4 (默认模型)
通信:Discord (主要)

Cron Jobs 概览:
├── 每15分钟  RTX 5090库存监控
├── 每30分钟  邮件分类助手
├── 每小时    自主行动(context-aware信息扫描)
├── 03:00     Nightly Build × 3 (会话整合/问题扫描/外部动态)
├── 08:00     每日任务规划(整合Notion+iCloud+昨日memory)
├── 09:00     热点精选 × 5 (并行搜索节点)
├── 09:08     热点精选 Reducer(汇总→Notion→推送)
├── 19:30     每日学习复盘
├── 每周日    周度复盘
└── 每月1日   月度复盘

Memory 架构:
├── MEMORY.md          # 长期记忆(重大决策、战略转折)
├── USER.md            # 用户画像(目标、偏好、状态)
├── memory/YYYY-MM-DD.md     # 每日摘要
└── memory/hourly/YYYY-MM-DD.md  # 每小时详细日志

跑在树莓派上意味着所有命令都要预留足够的超时时间(≥30秒),不然动不动就timeout。不过好处是功耗低、24小时开着也没什么成本。


写这篇文章时我突然意识到一个有趣的事实:这篇文章的选题、素材搜集、甚至部分初稿,都是在上面描述的这套系统中完成的。它在帮我写一篇描述它自己的文章——某种意义上的自我意识?不,只是递归罢了。