多 agent 共享记忆与项目协作架构。支持项目状态隔离、知识库共享、跨项目搜索、版本控制、里程碑跟踪、周报和交接文档。适用于多个 agent 协作开发多个项目的场景。
本 skill 定义了一套完整的多 agent 共享记忆与项目协作架构,解决以下核心问题:
必须使用的场景:
触发词:
/root/.openclaw/
├── workspace-commander/ # 个人工作区(私有)
├── workspace-maker/
├── workspace-vibe/
├── workspace-killjoy/
├── workspace-main/
│
├── projects/ # 项目状态(隔离)
│ ├── <project-name>/
│ │ ├── status/ # 当前状态(每日更新)
│ │ │ ├── maker.md
│ │ │ ├── vibe.md
│ │ │ ├── commander.md
│ │ │ └── killjoy.md
│ │ │
│ │ ├── todos.md # 待办事项(实时更新)
│ │ ├── context.md # 项目背景/目标(初始化后很少改)
│ │ │
│ │ ├── weekly/ # 每周总结(每周一篇)
│ │ │ ├── 2026-W10.md
│ │ │ └── 2026-W11.md
│ │ │
│ │ ├── handoffs/ # 交接文档(重大节点更新)
│ │ │ ├── 2026-03-09-Phase1-交接.md
│ │ │ └── latest.md # 符号链接,指向最新版本
│ │ │
│ │ ├── docs/ # 设计文档(按需创建)
│ │ │ ├── requirements/
│ │ │ │ └── YYYY-MM-DD-HH-mm-需求-{描述}.md
│ │ │ └── specs/
│ │ │ └── YYYY-MM-DD-HH-mm-设计-{描述}.md
│ │ │
│ │ ├── logs/ # 开发日志(每次完成任务后)
│ │ │ └── YYYY-MM-DD-HH-mm-开发日志-{任务名}.md
│ │ │
│ │ └── milestones/ # 里程碑跟踪(每周更新)
│ │ └── milestones.md
│ │
│ └── <another-project>/
│
├── knowledge/ # 共享知识库(跨项目)
│ ├── decisions/
│ │ └── decisions.md # 关键决策(跨项目)
│ ├── patterns/
│ │ └── patterns.md # 技术模式/经验(跨项目)
│ ├── glossary/
│ │ └── glossary.md # 术语表/概念定义
│ └── index/
│ └── keywords.txt # 关键词索引
│
└── archive/ # 归档(完整历史)
├── <project-name>/
│ └── YYYY-Wxx/
│ ├── status-snapshot.tar.gz
│ ├── weekly-YYYY-Wxx.md
│ └── summary.md
└── <another-project>/
projects/<project>/status/, todos.md, context.mdknowledge/decisions/, knowledge/patterns/, knowledge/glossary/archive/所有文档必须遵循时间戳命名:
YYYY-MM-DD-HH-mm-{类型}-{描述}.md
获取时间戳:
date +'%Y-%m-%d-%H-%M'
示例:
2026-03-09-14-30-需求-内容工厂.md2026-03-09-15-20-设计-文章生成流程.md2026-03-09-16-10-开发日志-功能A.md每个任务/决策都应该有明确的责任人:
每个文件保留最近 3 个版本:
file.md # 当前版本
file.md.1 # 上一个版本
file.md.2 # 上上个版本
备份脚本:
if [ -f file.md ]; then
cp file.md.1 file.md.2
cp file.md file.md.1
fi
echo "新内容" > file.md
所有模板文件位于:~/.openclaw/skills/multi-agent-memory/templates/
详细模板内容见 templates/ 目录。
# 1. 确定当前项目
PROJECT=$(cat ~/workspace-<agent>/current-project.txt)
# 2. 读取项目核心文件
read /root/.openclaw/projects/$PROJECT/context.md
read /root/.openclaw/projects/$PROJECT/todos.md
read /root/.openclaw/projects/$PROJECT/status/*.md
# 3. 读取最新周报和里程碑
LATEST_WEEKLY=$(ls -t /root/.openclaw/projects/$PROJECT/weekly/ 2>/dev/null | head -1)
if [ -n "$LATEST_WEEKLY" ]; then
read /root/.openclaw/projects/$PROJECT/weekly/$LATEST_WEEKLY
fi
read /root/.openclaw/projects/$PROJECT/milestones/milestones.md
# 4. 如果需要跨项目知识,搜索知识库
grep -rn "关键词" /root/.openclaw/knowledge/
PROJECT=$(cat ~/workspace-<agent>/current-project.txt)
TIMESTAMP=$(date +'%Y-%m-%d-%H-%M')
# 1. 备份并更新 status
STATUS_FILE="/root/.openclaw/projects/$PROJECT/status/<agent>.md"
if [ -f "$STATUS_FILE" ]; then
cp "$STATUS_FILE.1" "$STATUS_FILE.2" 2>/dev/null
cp "$STATUS_FILE" "$STATUS_FILE.1"
fi
# 2. 写入开发日志
cat > /root/.openclaw/projects/$PROJECT/logs/$TIMESTAMP-开发日志-{任务名}.md <<EOF
# 开发日志 - {任务名}
**时间:** $(date +'%Y-%m-%d %H:%M')
**负责人:** <AGENT>
**项目:** $PROJECT
## 完成的工作
- ...
## 遇到的问题
- ...
## 解决方案
- ...
## 下一步
- ...
EOF
# 3. 更新 todos.md 和 status
# 4. 如果有新知识,追加到 knowledge/
PROJECT="<project-name>"
WEEK=$(date +'%Y-W%V')
# 1. 写入周报(使用模板)
# 2. 更新里程碑
# 3. 归档本周数据
mkdir -p /root/.openclaw/archive/$PROJECT/$WEEK/
tar -czf /root/.openclaw/archive/$PROJECT/$WEEK/status-snapshot.tar.gz \
/root/.openclaw/projects/$PROJECT/status/
~/.openclaw/skills/multi-agent-memory/scripts/init-project.sh <project-name>
echo "<project-name>" > ~/workspace-<agent>/current-project.txt
~/.openclaw/skills/multi-agent-memory/scripts/daily-check.sh <project-name>
# 搜索知识库
grep -rn "PostgreSQL" /root/.openclaw/knowledge/
# 搜索项目文档
grep -rn "PostgreSQL" /root/.openclaw/projects/<project>/docs/
# 跨项目搜索
grep -rn "PostgreSQL" /root/.openclaw/projects/
project-management - 项目结构和工作流管理doc-todo-log-loop - 基于日志记录驱动的轻量级项目开发和管理方案milestone-tracker - 里程碑跟踪ZIP package — ready to use