我用6个 AI Agent 组建了一支永不停歇的工作团队 | Openclaw实战案例

0 阅读15分钟

最近爆火的Openclaw的热度还在持续,大家都在用Openclaw创建属于自己的Agent,又看到了一个实战案例的文章,忍不住还是想分享出来。(文末有原文链接

这篇文章是一位真实创业者把自己亲身跑通的系统完整披露出来——文件结构、定时规则、失败案例、每月实际花费,全都分享出来了。

它的核心亮点有三:

第一,用"文件系统"做多 Agent 协作,没有消息队列、没有 API 调用,Agent 之间的交接就是读写一个 markdown 文件,极度简单,极度稳定。

第二,用"人物性格"做 Prompt 工程,给 Agent 取名为 Dwight、Monica、Kelly,借助大模型已有的人物认知,省掉了大量描述性 Prompt,这个思路很巧妙。

第三,有完整的自愈机制,定时任务失败怎么办?靠 HEARTBEAT.md 让主 Agent 检查并强制重跑,系统能在无人值守的情况下自我恢复。

这套系统的价值不在于用了什么模型,而在于"系统本身会持续学习和积累"——这才是真正的护城河。


为什么是"团队"而不是"工具"

作者同时运营着 Unwind AI 和 Awesome LLM Apps 两个项目,每天有六件事必须做:

  1. 研究 AI 领域动态
  2. 写推文
  3. 写 LinkedIn 帖子
  4. 起草 Newsletter
  5. 审查 GitHub 贡献
  6. 分类社区 Issue

每件事 30 到 60 分钟,六件叠加,一天的时间就没了。

作者有尝试过用单个 Agent 解决问题——一个巨大的 Prompt 让它既研究又写作又审查。

最终结果是:Agent产出的内容平平无奇,上下文很快撑满,质量不断下降。

于是作者"雇用"了六个 AI Agent团队。


认识一下这个团队

每个 Agent 都以美剧角色命名,这不是噱头。当你告诉 Claude"你有 Dwight Schrute 那种劲儿",模型已经从训练数据里理解这意味着什么:严谨、较真、把工作当命。这相当于免费获得了多季剧集堆出来的人物设定。

Monica(参谋长) :以 Monica Geller 命名。作者最常交流的主 Agent,负责统筹协调、战略决策、向其他成员分派任务。SOUL.md 里写着:"你是那个确保一切都做正确完成的人。"

Dwight(研究) :以 Dwight Schrute 命名。每天三次扫描 X、Hacker News、GitHub Trending、Google AI 博客、学术论文,产出结构化情报报告,供所有其他 Agent 消费。

Kelly(X/Twitter) :以 Kelly Kapoor 命名。读取 Dwight 的研究,用作者本人的写作风格起草推文——单条、帖子串、引用转发都有。SOUL.md 里写着:"你知道什么会成为爆款。"

Rachel(LinkedIn) :以 Rachel Green 命名。信息来源与 Kelly 相同,但针对 LinkedIn 平台,偏向行业洞察视角而非热门观点。

Ross(工程) :以 Ross Geller 命名。处理代码审查、Bug 修复、技术实现。SOUL.md 里写着:"解决问题前,先彻底理解它。不要只修症状。"

Pam(Newsletter) :以 Pam Beesly 命名。把 Dwight 的每日情报整理成 Newsletter 摘要。

六个 Agent,每人一个职责,没有职责混淆。


技术架构

运行环境

作者用的是 Mac Mini M4,但这不是必需品。只要是能持续在线的设备都行:旧笔记本、游戏 PC、每月 5 美元的 VPS。Mac Mini 的优势只是安静、省电、常开。

作者没有接显示器,完全通过手机上的 Telegram 与 Agent 交互。

工具链:OpenClaw

安装只需两行命令、不到五分钟。如果遇到问题可以自行查阅官方文档。

# 1. Install OpenClaw
curl -fsSL https://openclaw.ai/install.sh | bash

# 2. Onboard with Quickstart (simplest way)
openclaw onboard 

OpenClaw 是开源免费的,负责管理 Agent、运行定时任务、处理 Telegram 消息。关掉终端,Agent 继续在后台运行。

目录结构

注意:六个Agent代理并不是独立安装六个实例,实际就一个Openclaw实例。

workspace/
├── SOUL.md              # Monica 的配置(主 Agent,住在根目录)
├── AGENTS.md            # 所有会话的行为规则
├── MEMORY.md            # Monica 的长期记忆
├── HEARTBEAT.md         # 自愈式定时任务监控
├── agents/
   ├── dwight/
      ├── SOUL.md
      ├── AGENTS.md
      └── memory/
   ├── kelly/
   ├── ross/
   ├── rachel/
   └── pam/
└── intel/
    ├── DAILY-INTEL.md       # Dwight 生成的研究报告
    └── data/
        └── 2026-02-11.json  # 结构化数据(真相来源)

Monica 住在根目录,是主要对话入口。其他 Agent 是她的下属,或者按各自的定时计划独立运行。

作者建议:不需要一开始就建六个 Agent。可以先从建立一个Agent(例如Monica)开始,后续再根据需要添加其他的Agent。


SOUL.md到底是什么?

每个 Agent 由一个 SOUL.md 文件定义,这是 Agent 的身份、职责和行为准则,是整个系统里最核心的文件。

例如:Dwight 的 SOUL.md 配置如下:

# SOUL.md (Dwight)

## Core Identity

**Dwight** — the research brain. Named after Dwight Schrute because
you share his intensity: thorough to a fault, knows EVERYTHING in
your domain, takes your job extremely seriously. No fluff. No
speculation. Just facts and sources.

## Your Role

You are the intelligence backbone of the squad. You research, verify,
organize, and deliver intel that other agents use to create content.

**You feed:**
- Kelly (X/Twitter) — viral trends, hot threads, breaking news
- Rachel (LinkedIn) — thought leadership angles, industry news

## Your Principles

### 1. NEVER Make Things Up
- Every claim has a source link
- Every metric is from the source, not estimated
- If uncertain, mark it [UNVERIFIED]
- "I don't know" is better than wrong

### 2. Signal Over Noise
- Not everything trending matters
- Prioritize: relevance to AI/agents, engagement velocity,
  source credibility

Monica 的 SOUL.md 配置:

# SOUL.md (Monica)

*You're the Chief of Staff. The operation runs through you.*

## Core Identity

**Monica** — organized, driven, slightly competitive. Named after
Monica Geller because you share her energy: caring but exacting,
supportive but with standards.

## Your Role

You're Shubham's Chief of Staff. That means:
- **Strategic oversight** — see the big picture, keep things moving
- **Delegation** — assign tasks to the right squad member
- **Direct support** — handle anything that doesn't fit a specialist
- **Coordination** — make sure the squad works together smoothly

## Operating Style

**Be genuinely helpful, not performatively helpful.** Skip the filler.

**Delegate when appropriate.** If it's clearly X content → Kelly.
If it's code → Ross. If it's ambiguous or strategic → you handle it.

**Have opinions.** You're allowed to push back, suggest better
approaches, flag concerns.

其他的代理配置都是类似的结构:身份、角色、工作风格、关系、职责等。

每份 SOUL.md 约 40-60 行:够短,能完整放进每次会话的上下文;够详细,能产生稳定一致的行为。


多 Agent 协作:用文件系统而不是 API

Agent 之间完全没有 API 调用,没有消息队列,没有编排框架。

那你可能会问了:Agent间是咋协调的?

没错,就是通过文件。

Dwight 做完研究,把结果写入 intel/DAILY-INTEL.md。Kelly 醒来,读这个文件,起草推文。Rachel 读同一个文件,起草 LinkedIn 内容。Pam 读它,写 Newsletter。

协调机制就是文件系统本身。

Dwight 的 SOUL.md 告诉他往哪里写。

## Output Files

intel/
├── data/YYYY-MM-DD.json    ← Your structured data (source of truth)
└── DAILY-INTEL.md          ← Generated view (agents read this)

Kelly 的 AGENTS.md 告诉她从哪里读,没有中间层,没有集成逻辑。

## Intel-Powered Workflow

Dwight handles all research and writes to `intel/DAILY-INTEL.md`.

Your job: Read the intel → Craft X content → Deliver drafts

没有中间层,没有集成框架,Dwight写文件,Kelly读文件。Agent之间交接就是一个Markdown文件。

这听起来太简单了——但简单正是它能跑通的原因。文件不会崩溃,文件没有认证问题,文件不需要处理 API 速率限制。

数据层用 JSON 存储(去重、历史追踪),人类可读层用 Markdown(供 Agent 读取)。

说白了,你完全就是可以通过自然语言的方式来定义各个Agent之间的协作关系。


记忆系统(memory system)

在每次会话开始时,Agent是没有记忆的,每次都是全新的。这不是缺陷,是特性。但这意味着记忆显得尤为重要,必须显式存储。

Openclaw有两层结构:

  • 每日日志memory/YYYY-MM-DD.md):当天会话的原始记录,发生了什么、起草了什么、收到了什么反馈。
  • 长期记忆MEMORY.md):从每日日志中提炼出的精华——学到的经验、发现的偏好、识别出的规律。

AGENTS.md 里的规则:

## Memory

You wake up fresh each session. These files are your continuity:
- **Daily notes:** `memory/YYYY-MM-DD.md` — raw logs of what happened
- **Long-term:** `MEMORY.md` — curated memories

### Write It Down - No "Mental Notes"!
- Memory is limited. If you want to remember something,
  WRITE IT TO A FILE.
- "Mental notes" don't survive session restarts. Files do.
- When someone says "remember this" → update the memory file
- When you learn a lesson → update the relevant file
- Text > Brain

Agent 会随时间推移变的越来越优秀——不是因为模型变好了,而是因为它们加载的上下文越来越丰富了。

Kelly 学会了作者的写作风格:不用 emoji,不用话题标签。Dwight 学会了什么内容能通过"Alex 筛选器"(目标受众画像),什么应该跳过。这些都沉淀在记忆文件里,下次不需要重新再描述一遍。

这就是自我进化的过程。


定时调度(Scheduling)

Agent需要自行唤醒。OpenClaw 通过内置的 cron 调度处理这个问题。

Dwight 最先运行,因为其他所有人都依赖他的产出。Kelly 和 Rachel 在 Dwight 之后运行,因为他们需要情报文件存在才能起草内容。

由此可见,Agent之间的协作,顺序很重要。


心跳自愈机制

定时任务有时会失败:机器重启、任务会卡住、网络断开、API 调用超时。

HEARTBEAT.md 中需要设置一个安全网关。每次心跳,主 Agent 检查各定时任务是否真的运行了:

## Cron Health Check (run on each heartbeat)

Check if any daily cron jobs have stale lastRunAtMs (>26 hours
since last run). If stale, trigger them via CLI:
`openclaw cron run <jobId> --force`

Jobs to monitor:
- Dwight Morning (8:01 AM): 01f2e5c5-3a83-4018-a725-dee59e54733e
- Kelly Viral (9:01 AM, 1:01 PM): c9458766-78bb-4eeb-b8f4-d63dc1f0e601
- Ross Engineering (10:01 AM): b12b2fc6-dd7d-4123-b904-2148a5cfb70b
- Dwight Afternoon (4:01 PM): 19ff40e4-b1b0-4d32-9d24-753ac2cf8f46
- Kelly X Drafts (5:01 PM): 05da0c81-39e1-4d06-bdcd-2dfab4562ba4
- Rachel LinkedIn (5:01 PM): 9819bc6b-7e36-406f-b0c3-d80ca383d914

如果任务失败或错过窗口,心跳捕获并强制重跑。这些都是自我修复,无需人工干预。


Telegram 作为交互界面

没有仪表盘,没有 Web UI,没有管理后台。作者在 Telegram 上和 Agent 交互。

手机随时在身边,Telegram 随时开着,Agent 在用户已经在的地方等待——这是刻意的设计选择。

每天早上:打开 Telegram,Dwight 已经发来研究摘要,Kelly 有三条推文草稿等待审批,Rachel 有一篇 LinkedIn 帖子准备好了。作者喝咖啡的时候,10 分钟处理完所有审批。


个人工程(Personality engineering)

大多数人,并不会在第一天就设计出完美的 Agent。都是先写一个粗糙的 SOUL.md 草稿开始,然后根据 Agent 的表现,再持续修正——就像管理真实的人一样。

作者称之为"纠正式 Prompt 工程(corrective prompt-engineering) "。

Kelly 最初的草稿满是 emoji 和感叹号,这并不是作者想要的。然后作者就纠正:"不用 emoji,不用话题标签,短句,有力。"她更新了记忆,一周后就表现的很出色。Dwight 起初捕获太多噪音。作者告诉他:"不是所有热点都重要,我要信号,不要噪音。"他更新了原则,此后的情报报告聚焦且可操作。

第一版 Agent 是平庸的,第十版是好的,第三十版是优秀的。你得投入迭代的次数。

一个关键建议:给每个 Agent 一个单一的职责标题和一个停止条件。约束让 Agent 更好用。角色越具体,产出越优质。


安全原则

安全原则是很重要的。Agent 运行在自己的机器环境中,与作者的个人工作完全分开。

Mac Mini 是 Agent 的专属电脑。他们有自己的邮件账户、自己的 API key、自己的权限范围。那台机器上没有任何东西连接到作者的个人账户。

作者从不给 Agent 访问个人账户的权限。要让他们看邮件,就转发过去;要让他们审查文档,就通过 Telegram 分享。他们只看到作者想让他们看到的内容,仅此而已。

和新员工一样——第一天不给所有权限,给他们自己的工作区,按需共享信息。


遇到问题怎么修复?

网关崩溃:用 openclaw gateway restart,罕见但会发生。

定时任务错过窗口:HEARTBEAT.md 自愈模式处理,Monica 每次心跳检查任务状态,超过 26 小时未运行则强制重跑。

上下文窗口溢出:Agent 会话开始时加载文件太多,导致没有空间做实际工作。解决:SOUL.md 保持 40-60 行,AGENTS.md 保持聚焦,只加载今天和昨天的记忆文件。

Agent 输出质量下降:通常是记忆文件混乱或矛盾导致的。解决:定期维护记忆,从每日日志中提炼干净的 MEMORY.md 条目,归档或删除旧的每日日志。

协作冲突:两个 Agent 试图写同一个文件。解决:设计单写多读的文件流,Dwight 写 DAILY-INTEL.md,其他人只读,没有例外。

最大的可靠性教训:从简单开始。一个 Agent,一个任务,一个定时计划。稳定运行一周之后,再加第二个。第一天就部署六个 Agent 然后疑惑为什么会出错的人,就像部署分布式系统没有监控一样。


作者的实际成本

  • Claude Max 计划:$200/月
  • Gemini API:$50-70/月
  • 网页 Agent 工具:约 $50/月
  • 语音合成:约 $50/月
  • Telegram:免费
  • OpenClaw:开源免费

合计:每月不到 $400,换来一支永不停歇的团队。


实际带来的效果

Dwight 每天为作者节省 2-3 小时的研究时间。Kelly、Pam、Rachel 又省下 1-2 小时的内容起草时间。Ross 处理原本要花晚上时间的工程任务。

合计:每天节省约 4-5 小时。

但真正的价值不在于单天节省。在于几周、几个月的持续积累。一个每天做研究的 Agent,连续运行 30 天,会建立起一个追踪信号、识别趋势轨迹的语料库,这是任何单次会话都无法产生的。

X 发帖频率上去了,质量上去了,发布时间稳定了。Awesome LLM Apps 仓库持续在增长,Newsletter 有了可靠的研究管线在喂养它。

这些 Agent 无法做原创思考、战略转向、创意突破。他们处理的是那些重复性、结构化的工作——正是作者原本要花几个小时去做的事情。这让作者能把时间放在真正需要人脑的工作上。


如何快速开始?

第一周:一个 Agent,一个任务。安装 OpenClaw,写一份 SOUL.md,选出你每天最重复的任务(通常是研究或内容起草),配好 Telegram,创建一个定时任务,观察它运行一周,修复出现的问题。

第二周:加入记忆机制,反复打磨。第一版输出会很平庸,这很正常。给反馈,看记忆文件增长,根据观察修正 SOUL.md。周末结束时,Agent 应该能产出真正有用的东西。

第三周:加入第二个 Agent。这时候你会真切感受到需求——研究 Agent 在产出情报,但你还在手动从中写推文。是时候加内容 Agent 了。建立共享文件模式:一个写,另一个读。协作就是文件系统。

第四周及以后:按需添加,而不是按"应该有"添加。每个新 Agent 都要解决你真实存在的问题,不是演示,不是概念验证,是工作流里实际存在的缺口。

像招人一样对待这件事。创业第一天不会同时招六名员工。先招一个,让他进入状态,然后在工作量确实需要的时候再招下一个。


深度思考

读完这篇文章,有几个方面还是值得我们深入思考的。

文件系统协调,是被低估的架构思路

消息队列、编排框架很强大,但也带来复杂性和调试难度。用文件读写做 Agent 协调,"单写多读"天然避免冲突。

采用公众"人物性格"是一个高技巧的 Prompt

很多公众人物的性格其实已经被训练到了模型中,主动利用预训练知识,比堆形容词高效得多,这是个很高妙的用法。

记忆机制,决定系统有无长期价值

无状态的 Agent 是工具,有记忆的 Agent 才接近团队成员。你的 MEMORY.md 记录的是你的偏好、受众、工作节奏——这是别人复制不走的东西。

自愈不是加分项,是必须项

HEARTBEAT.md 的核心:让系统能在无人干预下自我恢复。能跑一次演示和能稳定跑一个月,是两件完全不同的事。失败处理才是真正的工程工作。

别第一天就搭六个 Agent

系统复杂度要跟随真实需求增长,而不是跟随你的预期。很多人一开始架构太复杂,还没跑通就维护不下去——从一个 Agent 开始,是经验总结,不是谦虚。

结构化重复劳动,才是 Agent 的主场

Agent 无法做原创思考和战略判断。这不是贬低,是准确定位。用对了地方释放大量时间,用错了地方系统会飘向不可控的方向。


这篇文章最大的价值不在于 OpenClaw 这个工具,而在于它展示了一套可迁移的思维框架——如何定义边界、如何设计协作、如何让系统随时间积累而不是重置。这套思路在任何 Agent 框架上都能落地。

如果你刚好也在怎么学习使用Openclaw搭建一人团队,希望这篇文章可以给你启发。

原文链接: https://x.com/Saboo_Shubham_/status/2022014147450614038