通过 Git 在多台机器(本地 Mac 和远程 VPS)间同步 OpenClaw 工作区。实现个性、记忆和技能的无缝迁移。适用于:(1) 关机前推送更改,(2) 在新机器上拉取最新工作区,(3) 检查同步状态,(4) 迁移 OpenClaw。
Claw Roam - OpenClaw 工作空间同步是一项面向实际任务的技能,主要用于通过 Git 将您的 OpenClaw 工作空间同步到机器上;您可以: 将本地 Mac 作为主机工作, 旅行时可以无缝切换到 VPS;
从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。
执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。该技能适合用于一次性任务,也可以接入自动化工作流,与其他技能或上层代理配合完成更完整的业务链路;在组合使用时,应明确每一步的输入输出关系,并避免不同步骤之间出现参数冲突。
通过 Git 在多台设备间同步你的 OpenClaw 工作区。这使你可以:
多设备协作推荐的分支模型:
main = 共享基线分支remote = 当前服务器(VPS)所用分支local = 你的笔记本/桌面电脑所用分支# 查看当前同步状态(含当前分支) claw-roam status # 一键全量同步(推荐) claw-roam sync # 或分步执行: # 提交并推送当前分支 claw-roam push "msg" # 拉取当前分支的最新内容 claw-roam pull # (可选)将其他设备分支合并至当前分支 claw-roam merge-from local claw-roam merge-from remote
提交并推送工作区至远程 Git 仓库。
claw-roam push [message]
git add -A)从远程拉取最新工作区并完成同步。
claw-roam pull
检查本地与远程之间的同步状态。
claw-roam status
claw-roam sync
在一个命令中执行完整的同步流程:
工作流示意图:
┌─────────────┐ commit+push ┌─────────────┐
│ local │ ───────────────────▶│ origin/local│
│ 分支 │ │ │
└──────┬──────┘ └─────────────┘
│
│ merge main
▼
┌─────────────┐ merge+push ┌─────────────┐
│ local │ ───────────────────▶│ main │
│ 分支 │ │ (shared) │
└─────────────┘ └──────┬──────┘
│
┌──────────────────────┘
│ pull
▼
┌─────────────┐
│ remote │
│ 分支 │
└─────────────┘
推荐的日常工作流:
# 在每台设备上仅需运行: claw-roam sync
该命令确保:
cd ~/.openclaw/workspace git init git remote add origin
git add -A git commit -m "initial" git push -u origin main
cd ~ git cloneopenclaw-workspace ln -s openclaw-workspace ~/.openclaw/workspace
针对多设备场景,推荐采用如下分支策略:
local (Mac) ──┐
├──► main (shared) ◄── merge & push
remote (VPS) ─┘
本地 Mac:
cd ~/.openclaw/workspace git checkout -b local git push -u origin local
远程 VPS:
cd ~/.openclaw/workspace git checkout -b remote git push -u origin remote
在每台设备上执行:
claw-roam merge-from main
claw-roam push "update memory"
git checkout main git merge local -m "merge: local -> main" git push origin main git checkout local
# 从 main 拉取,再合并推送至 main claw-roam merge-from main && git checkout main && git merge local && git push && git checkout local
若执行 merge-from main 时出现冲突:
# 保留你的版本 git checkout --oursgit add -A && git commit -m "merge: resolved conflicts" # 或保留 main 分支的版本 git checkout --theirs git add -A && git commit -m "merge: resolved conflicts"
适用于无需分支管理的轻量级部署:
照常使用 OpenClaw。关机前执行:
claw-roam push "end of day sync"
或通过 cron 自动推送:
# 添加至 crontab */10 * * * * cd ~/.openclaw/workspace && git add -A && git commit -m "auto: $(date)" && git push
claw-roam pushclaw-roam pullclaw-roam pushclaw-roam pull被同步的内容(跨设备保持一致):
SOUL.md —— 你的智能体人格定义MEMORY.md —— 长期记忆memory/*.md —— 每日对话日志skills/ —— 所有已安装技能AGENTS.md、USER.md —— 上下文配置文件TOOLS.md —— 设备相关配置HEARTBEAT.md —— 周期性任务定义不被同步的内容(设备专属):
请执行上述初始化步骤,完成 Git 仓库配置。
若你在两台设备上均进行了编辑但未及时同步:
# 在希望保留其变更的设备上执行 git pull --strategy=ours git push
请确认 Git 远程地址已配置正确的认证方式(SSH 密钥或访问令牌)。
可直接调用内置脚本:
~/.openclaw/workspace/skills/claw-roam/scripts/claw-roam.sh push ~/.openclaw/workspace/skills/claw-roam/scripts/claw-roam.sh pull ~/.openclaw/workspace/skills/claw-roam/scripts/claw-roam.sh status
相关专题
热门下载
相关下载
精品课程
共6课时 | 54.7万人学习
共89课时 | 134.1万人学习
共49课时 | 82.5万人学习
最新文章