Content
一个开源的 AI Agent 运行框架,让 AI 能长期驻留在本地机器上,拥有自己的记忆、技能、人设和定时任务。瑶瑶就运行在 OpenClaw 上。它和 Claude Code 的区别在于:Claude Code 是人启动一次用一次的工具,OpenClaw 是让 AI 持续存在并自主行动的平台。它能在某种程度上提供陪伴感。
Question
- 我究竟想要通过 OpenClaw 实现怎样的人格化AI
- OpenClaw 的 session 机制和 Claude Code 的 conversation 有什么本质区别?
- isolated session 每次创建新会话,是否意味着 agent 没有跨任务的记忆?它怎么实现连续性?
See Also
Agent
SlipBox/Cron
Session
HEARTBEATS
Skill
AI
皮格马利翁
MAS安全的涌现不可还原性
Reference
OpenClaw — Personal AI Assistant
Releases · openclaw/openclaw
openclaw/openclaw: Your own personal AI assistant. Any OS. Any Platform. The lobster way. 🦞
Answer
Q: session 机制和 Claude Code conversation 的区别?
Claude Code 的 conversation 是临时的——关掉终端就没了(除非 --resume)。OpenClaw 的 main session 是持久的——agent 重启后仍然保留对话历史。但真正的区别在于触发方式:Claude Code 只能人触发,OpenClaw session 可以被 cron 定时触发(agentTurn/systemEvent)。
Q: isolated session 没有跨任务记忆?怎么实现连续性?
isolated session 确实没有对话历史的跨任务连续性。连续性靠文件系统实现——workspace 中的 MEMORY.md、diary、daily-context.md 等文件是所有 session 共享的持久化状态。每个 isolated session 启动时读取这些文件获取上下文,执行完后写回结果。“记忆”不在 session 里,在磁盘上。
Extra
Session 机制
OpenClaw 有两种 Session 模式:
- isolated:每次任务创建独立会话,执行完即销毁。支持 per-job model/timeout/announce。消息通过
--message(agentTurn)传递。 - main:持续存在的主会话,agent 拥有完整对话历史。消息通过
--system-event(systemEvent)传递。但 v2026.3.13 中 systemEvent 不触发 agent 处理,实际不可用。
所有需要投递消息的 cron 任务使用 isolated + agentTurn + announce。
Cron 调度
- 配置源:
config/schedules.json(支持{ defaults, jobs }格式) - 同步工具:
tools/sync-cron.ts --apply [--clean] - API 限制:
openclaw cron edit每条命令只允许一个 payload 变更(message/session/model/timeout 各算一次),需要拆成多条命令。sync-cron.ts 用buildEditArgGroups()自动处理。 - 支持 per-job model 和 timeoutSeconds 覆盖(仅 isolated 模式)
Workspace 结构
Agent 的工作空间 = 一个 Git 仓库,包含:AGENTS.md(行为指令)、SOUL.md(人设)、skills/(技能)、tools/(脚本)、config/(配置)。