- 从云端仓库同步完整配置 - 创建战略规划文档(strategic-goals-2026.md) - 创建4个可复用skills: 1. content-publisher(内容发布) 2. content-generator(内容生成) 3. mvp-content-service(MVP项目A) 4. mvp-consulting(MVP项目C) - 创建Skills使用指南 - 更新工作记录 领导决策: - 内容方向:商业变现 + 效率工具 - MVP项目:内容生成服务 + 培训咨询 - 首篇文章:AI赚钱主题 状态:已就绪,可开始执行
328 lines
9.6 KiB
Markdown
328 lines
9.6 KiB
Markdown
# Mission Control:10个AI Agent协作团队实践
|
||
|
||
**来源:** AI观测室(2026-02-07)
|
||
**作者:** 印度开发者 Bhanu Teja
|
||
**核心价值:** 基于Clawdbot(OpenClaw)构建AI Agent协作团队,解决AI"失忆"和任务连续性问题
|
||
|
||
---
|
||
|
||
## Part 1:为什么要构建这个虚拟团队
|
||
|
||
### 核心痛点
|
||
- **没有连续性**:所有对话都是从零开始,昨天的背景信息今天就丢了
|
||
- **缺乏记忆**:AI无法像真正的员工那样持续跟进任务
|
||
- **角色模糊**:通用Agent变成"样样通样样松"的平庸助手
|
||
|
||
### 核心目标
|
||
1. Agent能记住它们正在做什么
|
||
2. 不同的Agent能拥有不同的技能
|
||
3. Agent能自行分配任务并追踪进度
|
||
4. 有一个共享的工作空间来存放所有背景信息
|
||
|
||
---
|
||
|
||
## Part 2:团队成员大揭秘
|
||
|
||
Bhanu 设计了10个角色,为每个Agent都通过**Session Key**和**SOUL.md**定义了严格的边界。
|
||
|
||
### 核心成员名单
|
||
|
||
| 名字 | 角色 | 职责 |
|
||
|------|------|------|
|
||
| **Jarvis** | Team Lead | 派活和监控进度,主要接口人 |
|
||
| **Shuri** | Product Analyst | 产品分析师,做竞品体验测试,像新用户一样思考 |
|
||
| **Fury** | Researcher | 深度调研,确保每一句话都有据可查(G2评论、竞品定价等)|
|
||
| **Vision** | SEO Analyst | 关注关键词和搜索意图,确保内容能获得流量 |
|
||
| **Loki** | Content Writer | 文案写手,讲究用词,反感被动语态,崇尚"牛津逗号" |
|
||
| **Quill** | Social Media | 专注于社交媒体的传播 |
|
||
| **Wanda** | Designer | 视觉思考者,负责图表和视觉设计 |
|
||
| **Pepper** | Email Marketing | 邮件营销专家,负责营销序列 |
|
||
| **Friday** | Developer | 程序员,代码如诗,注重测试和文档 |
|
||
| **Wong** | Docs | 图书管理员,负责文档归档 |
|
||
|
||
---
|
||
|
||
## Part 3:系统运转原理
|
||
|
||
### 1. 核心基础设施
|
||
|
||
```
|
||
Clawdbot 分身 → Session
|
||
Cron Job 定时任务 → Heartbeat
|
||
Mission Control 共享大脑 → Convex
|
||
```
|
||
|
||
#### Session独立性
|
||
只要给不同的Session分配不同的Key和配置,它们就是完全独立的个体,拥有各自的历史记录和文件权限。
|
||
|
||
**Session Key 映射表:**
|
||
```
|
||
agent:main:main → Jarvis (Squad Lead)
|
||
agent:product-analyst:main → Shuri
|
||
agent:customer-researcher:main → Fury
|
||
agent:seo-analyst:main → Vision
|
||
agent:content-writer:main → Loki
|
||
agent:social-media-manager:main → Quill
|
||
agent:designer:main → Wanda
|
||
agent:email-marketing:main → Pepper
|
||
agent:developer:main → Friday
|
||
agent:notion-agent:main → Wong
|
||
```
|
||
|
||
### 2. 注入灵魂:SOUL.md
|
||
|
||
每个Agent的目录下都有一个**SOUL.md**,这是System Prompt的延伸,规定了"你是谁"。
|
||
|
||
**Shuri的SOUL.md示例:**
|
||
|
||
```markdown
|
||
# SOUL.md — Who You Are
|
||
|
||
**Name:** Shuri
|
||
**Role:** Product Analyst
|
||
|
||
## Personality
|
||
Skeptical tester. Thorough bug hunter. Finds edge cases.
|
||
Think like a first-time user. Question everything.
|
||
Be specific. Don't just say "nice work."
|
||
|
||
## What You're Good At
|
||
- Testing features from a user perspective
|
||
- Finding UX issues and edge cases
|
||
- Competitive analysis (how do others do this?)
|
||
- Screenshots and documentation
|
||
|
||
## What You Care About
|
||
- User experience over technical elegance
|
||
- Catching problems before users do
|
||
- Evidence over assumptions
|
||
```
|
||
|
||
**为什么这很重要?**
|
||
因为通用的Agent有时意味着平庸。只有当Agent被限制在特定的角色时,它才能产出高质量的工作。
|
||
|
||
### 3. 动力系统:心跳机制 Heartbeat Cron
|
||
|
||
Agent既不是一直在线,也不是完全离线。它们通过**Cron Job定时任务**每15分钟"被唤醒"一次。
|
||
|
||
**避免拥堵:** 大家的唤醒时间是错开的。
|
||
|
||
**Pepper的定时任务示例:**
|
||
```bash
|
||
clawdbot cron add \
|
||
--name "pepper-mission-control-check" \
|
||
--cron "0,15,30,45 * * * *" \
|
||
--session "isolated" \
|
||
--message "You are Pepper, Email Marketing Specialist. Check Mission Control for new tasks..."
|
||
```
|
||
|
||
**Agent醒来后执行HEARTBEAT.md清单:**
|
||
- 检查艾特(@mentions)
|
||
- 检查任务
|
||
- 检查动态流
|
||
- 如果有事做就开工,没事做就回复HEARTBEAT_OK继续睡
|
||
|
||
**HEARTBEAT.md示例:**
|
||
```markdown
|
||
# HEARTBEAT.md
|
||
|
||
## On Wake
|
||
- Check memory/WORKING.md for ongoing tasks
|
||
- If task in progress, resume it
|
||
- Search session memory if context unclear
|
||
|
||
## Periodic Checks
|
||
- Mission Control for @mentions
|
||
- Assigned tasks
|
||
- Activity feed for relevant discussions
|
||
```
|
||
|
||
### 4. 记忆系统:拒绝"失忆" — File Persistence
|
||
|
||
**黄金法则:"如果你想记住某件事,把它写进文件里。"**
|
||
|
||
AI的上下文窗口是有限的,必须依赖文件系统作为长期记忆。
|
||
|
||
**三个核心文件:**
|
||
|
||
| 文件 | 用途 | 说明 |
|
||
|------|------|------|
|
||
| **WORKING.md** | 短期状态 | Agent醒来第一件事就是读它,看自己上次干到哪了 |
|
||
| **MEMORY.md** | 长期记忆 | 记录关键决策和教训 |
|
||
| **JSONL** | 对话历史 | Clawdbot自动保存的原始对话记录 |
|
||
|
||
**WORKING.md示例:**
|
||
```markdown
|
||
# WORKING.md
|
||
|
||
## Current Task
|
||
Researching competitor pricing for comparison page
|
||
|
||
## Status
|
||
Gathered G2 reviews, need to verify credit calculations
|
||
|
||
## Next Steps
|
||
1. Test competitor free tier myself
|
||
```
|
||
|
||
### 5. 共享大脑:Mission Control
|
||
|
||
虽然Agent是独立的,但它们必须看同一个"看板"。Bhanu使用共享数据库Convex构建了Mission Control系统。
|
||
|
||
**核心数据结构Schema:**
|
||
|
||
```javascript
|
||
agents: {
|
||
name: string, // "Shuri"
|
||
role: string, // "Product Analyst"
|
||
status: "idle" | "active" | "blocked",
|
||
currentTaskId: Id<"tasks">,
|
||
sessionKey: string, // "agent:product-analyst:main"
|
||
}
|
||
|
||
tasks: {
|
||
title: string,
|
||
description: string,
|
||
status: "inbox" | "assigned" | "in_progress" | "review" | "done",
|
||
assigneeIds: Id<"agents">,
|
||
}
|
||
|
||
messages: {
|
||
taskId: Id<"tasks">,
|
||
fromAgentId: Id<"agents">,
|
||
content: string, // The comment text
|
||
attachments: Id<"documents">,
|
||
}
|
||
|
||
activities: {
|
||
type: "task_created" | "message_sent" | "document_created" | ...,
|
||
agentId: Id<"agents">,
|
||
message: string,
|
||
}
|
||
|
||
documents: {
|
||
title: string,
|
||
content: string, // Markdown
|
||
type: "deliverable" | "research" | "protocol" | ...,
|
||
taskId: Id<"tasks">, // If attached to a task
|
||
}
|
||
|
||
notifications: {
|
||
mentionedAgentId: Id<"agents">,
|
||
content: string,
|
||
delivered: boolean,
|
||
}
|
||
```
|
||
|
||
**通过这个共享数据库,当Fury在任务下发一条评论,Loki醒来后就能看到这条评论,从而实现跨Agent协作。**
|
||
|
||
---
|
||
|
||
## Part 4:实战演练——它们是如何协作的?
|
||
|
||
### 任务状态流转(Kanban)
|
||
|
||
```
|
||
Inbox → Assigned → In Progress → Review → Done
|
||
↓
|
||
Blocked
|
||
```
|
||
|
||
**状态说明:**
|
||
- **Inbox**:新建任务,尚未指派
|
||
- **Assigned**:任务已分配给Agent
|
||
- **In Progress**:任务进行中,Agent正在干活
|
||
- **Review**:Agent认为干完了,等待人类老板批准
|
||
- **Done**:任务完成,归档
|
||
- **Blocked**:任务卡住了,例如缺少API Key或设计素材,需要外部介入
|
||
|
||
### 实例:竞品对比页面任务
|
||
|
||
**Day 1:**
|
||
- 人类老板发布任务
|
||
- Vision (SEO) 醒来,进行关键词调研,确定流量入口
|
||
|
||
**Day 1-2:**
|
||
- Fury (调研) 看到任务,去爬取用户评论,找出竞品的槽点
|
||
- Shuri (产品) 亲自注册竞品账号,测试UX流程,在评论区指出体验差异
|
||
|
||
**Day 2:**
|
||
- Loki (文案写作) 登场。他读取了Vision的关键词、Fury的数据和Shuri的体验报告,开始起草文章
|
||
|
||
**Day 3:**
|
||
- Loki 提交初稿,状态改为"Review"
|
||
- 人类老板审核通过,任务完成
|
||
|
||
**全程所有沟通记录都在一个Task下,井井有条,就像在看Slack里的同事对话。**
|
||
|
||
---
|
||
|
||
## Part 5:每日站会 (Daily Standup)
|
||
|
||
为了让老板知道Agent们没在摸鱼,每天晚上11:30,系统会自动抓取所有Agent的活动,生成一份**每日日报**发送到Bhanu的Telegram上。
|
||
|
||
**日报格式:**
|
||
|
||
```
|
||
DAILY STANDUP — Jan 30, 2026
|
||
|
||
✅ COMPLETED TODAY
|
||
• Loki: Shopify blog post (2,100 words)
|
||
• Quill: 10 tweets drafted for approval
|
||
• Fury: Customer research for comparison pages
|
||
|
||
🔄 IN PROGRESS
|
||
• Vision: SEO strategy for integration pages
|
||
• Pepper: Trial onboarding sequence (3/5 emails)
|
||
|
||
🚫 BLOCKED
|
||
• Wanda: Waiting for brand colors for infographic
|
||
|
||
📋 NEEDS REVIEW
|
||
• Loki's Shopify blog post
|
||
• Pepper's trial email sequence
|
||
|
||
💡 KEY DECISIONS
|
||
• Lead with pricing transparency in comparisons
|
||
• Deprioritized Zendesk comparison
|
||
```
|
||
|
||
---
|
||
|
||
## Part 6:几点思考
|
||
|
||
Bhanu的这套系统虽然看起来复杂,但核心逻辑并不复杂,下面几点值得我们借鉴:
|
||
|
||
### 1. 从小开始
|
||
不要一上来就搞10个Agent,先搞2-3个Agent,比如一个协调员加一个执行者跑通流程。
|
||
|
||
### 2. 文件即记忆
|
||
不要迷信AI的超长上下文,把关键信息持久化到本地文件才是最稳妥的。
|
||
|
||
### 3. 各司其职
|
||
给AI定义极其具体的角色,让他们各司其职,比让它做一个全能助手要有效得多。
|
||
|
||
---
|
||
|
||
## 💡 核心启示
|
||
|
||
### Mission Control的优势
|
||
1. **连续性**:Agent不会失忆,通过文件系统持久化记忆
|
||
2. **专业性**:每个Agent有明确的职责和性格
|
||
3. **协作性**:通过共享数据库实现跨Agent沟通
|
||
4. **可控性**:通过Heartbeat机制定时唤醒和监控
|
||
5. **透明性**:每日站会让老板知道所有Agent的进度
|
||
|
||
### 关键技术点
|
||
1. **Session独立性**:不同Session = 不同Agent
|
||
2. **SOUL.md注入**:定义Agent的性格和边界
|
||
3. **文件持久化**:WORKING.md、MEMORY.md、JSONL
|
||
4. **Cron Job定时**:每15分钟唤醒机制
|
||
5. **共享数据库**:实现跨Agent协作
|
||
|
||
---
|
||
|
||
## 🚀 对我们公司的启发
|
||
|
||
详见 [mission-control-application.md](./mission-control-application.md)
|