你好,我是茂林,一个AI爱好者,最近一直在折腾OpenClaw/Hermes,踩过老多坑了。我把踩过的坑整理出来,帮你少走弯路。
解决什么问题
你同时在做多个项目,A项目的记忆跑到B项目来了,智能体混着给建议,越用越乱。这是 OpenClaw 多项目最常见的问题,用工作区隔离一步就能解决。
原因分析
OpenClaw 默认在全局工作区加载记忆,如果你多个项目都用同一个工作区,所有项目的记忆都会混在一起,智能体无法区分。
解决方法:每个项目一个独立工作区
OpenClaw 原生支持多工作区,你只需要:每个项目单独一个目录,进去再启动 OpenClaw。
具体操作步骤
第一步:为每个项目创建独立目录
# 项目A
mkdir -p ~/projects/project-a
cd ~/projects/project-a
# 项目B
mkdir -p ~/projects/project-b
cd ~/projects/project-b
第二步:在项目目录放自己的 memory.md
每个项目目录里都可以有自己的 memory.md,放这个项目专属的记忆:
# 项目A 专属记忆
- 项目介绍:个人博客网站
- 技术栈:WordPress + PHP + MySQL
- 代码位置:/var/www/html/
- 域名:maolin.xin
第三步:进入项目目录再启动 OpenClaw
# 做项目A就进A目录开
cd ~/projects/project-a
claw
# 做项目B就进B目录开
cd ~/projects/project-b
claw
就这么简单,完成了!
工作原理
OpenClaw 启动的时候,会自动加载当前目录下的 memory.md。不同目录不同 memory.md,自然就隔离了,绝不会串台。全局记忆 + 项目记忆还会自动合并,兼顾通用信息和项目信息。
最佳实践
目录结构推荐
~/
projects/
my-blog/
memory.md # 项目A专属记忆
...
ai-prompt-lib/
memory.md # 项目B专属记忆
...
novel-writing/
memory.md # 项目C专属记忆
...
记忆放什么
每个项目的 memory.md 只放这个项目专属信息:
- ✅ 项目介绍和目标
- ✅ 技术栈和工具版本
- ✅ 代码/文件位置
- ✅ 项目规范和约定
通用信息(你的名字、偏好、习惯)放全局记忆就行,不用每个项目复制一遍。
验证隔离是否生效
启动后问智能体:"告诉我这个项目的核心信息是什么?",如果它只说对应当前项目的信息,说明隔离生效了。
常见问题
Q:我已经在一个目录里混了好几个项目,能拆分吗?
A:能,新建目录,把对应文件移过去,复制一份 memory.md 进去就行,没有迁移成本。
Q:每个项目都要重新配置一遍吗?
A:不用,全局配置在 ~/.config/openclaw/,所有项目共用,不用重复配。只有记忆是隔离的。
Q:语义搜索会跨项目吗?
A:OpenClaw 语义搜索默认搜当前工作目录下的文件,所以也会隔离,不会搜到别的项目。
总结
一句话解决多项目记忆混淆:每个项目一个目录,进目录再启动。没有复杂配置,一步搞定。