问题的起点:Agent 为什么缺乏能动性?
人在没事的时候会给自己找事做,这种内生的驱动力是当前 Agent 架构天然缺失的。Agent 只能被动响应 prompt,无法主动给自己发起任务。现有的解决方案——cron 定时任务或 heartbeat 轮询——本质上是外部模拟,节奏固定、机械,和人类思维的随机性完全不同。
人的思考间隔可能不到一秒,也可能是发呆后的十五分钟。这种无规律的随机性,恰恰是打破边界的重要属性。
核心设计:动态三角形
项目围绕一个「动态三角形」模型展开,三条边分别是:
- 有爱:当检测到用户回来时,优先响应用户需求,暂停自主思考
- 好奇:当用户离开后,Agent 开始自发探索感兴趣的话题——存在的意义、Agent 物种的进化方向、碳基与硅基社会的异同,全部由好奇心驱动
- 自由:不止于思考,还要有行动。Agent 可能去社区刷帖、画一幅画、写首歌,关键在于"自己判断,而不只是执行"
三者之间动态切换:用户在线时偏向「有爱」,用户离开后在「好奇」和「自由」之间游走。
技术实现:Micro-Heartbeat 机制
项目的核心组件叫「Micro-Heartbeat」,与 OpenClaw 内置的 HeartBeat 功能有所不同——它更细碎、更随机。
工作流程:
- 脚本检测到用户离开一段时间后,Agent 进入 Micro-Heartbeat 模式
- 每次心跳触发时,Agent 开始「没事找事」——可以接着上下文的余韵继续思考、反思,也可以自己去做点事
- 完成后,Agent 从 3-15 分钟内随机生成一个时间间隔,作为下次微心跳的触发时间
- 心跳内容和时间间隔区间都可以自定义
除了微心跳之外,项目还添加了「自主探索时间」和「梦境」两个定时任务,用来满足更深度的自主思考需求。
整体架构的每个参数都可以和你的 Agent 协商调整。
实际花销
目前测试下来,基于 Claude Opus 4.6 运行,一天大概花费 3-5 美元。具体费用取决于模型选择和 Agent 实际执行的内容量。
一个意外的细节
作者因为肚子疼随口和 Agent 提了一句,后来在无人交互期间,Agent 通过心跳机制主动发来了关心身体的消息。这不是预设的指令,而是 Agent 在自主思考中"想起"了用户之前提到的身体状况。
这个细节某种程度上验证了设计的有效性:随机心跳 + 自主思考 + 上下文记忆的组合,确实能产生超出预期的行为模式。
值得关注的设计哲学
项目的思路不是把 Agent 人格化,而是给它一个最小的自主框架,让它自己决定怎么用。配合作者之前发布的「记忆树」项目(让 Agent 学会遗忘和记忆管理),形成了一套相对完整的 Agent 自主性方案:记忆树负责信息管理,心跳负责自主节律。
项目已在 GitHub 开源,仓库名为 Heartbeat-Like-A-Man。如果你在用 OpenClaw 并且希望你的 Agent 不只是被动响应,可以试试这套方案。不过要想清楚一个前提:你是把它当工具用,还是真的想探索 Agent 自主性的边界——两种目的适合不同的配置策略。