首页龙虾技能列表 › Claw Roam — OpenClaw 工作空间同步

Claw Roam — OpenClaw 工作空间同步

v1.0.3

通过 Git 同步 OpenClaw 工作空间(本地 Mac 和远程 VPS 之间),实现工作空间的无缝迁移,支持推送更改、拉取最新版本、检查同步状态和迁移 OpenClaw。

1· 1,858·1 当前·2 累计
by @reed1898 (Reed)·MIT-0
下载技能包
License
MIT-0
最后更新
2026/2/26
安全扫描
VirusTotal
无害
查看报告
OpenClaw
安全
high confidence
该技能如其所述,是一个基于 Git 的工作空间同步助手,其文件和指令与此目的一致,但用户应谨慎处理推送到远程仓库的内容(如秘密、凭据或敏感运行数据)。
评估建议
["安装/使用前,请验证并信任配置的 Git 远程 URL —— 您推送的所有内容将发送到该远程仓库。","审查并更新 `.gitignore` 以防止提交凭据、令牌、密钥或其他敏感文件。","除非确保不会自动提交敏感内容,否则避免启用建议的 cron 自动推送。","自己检查 `scripts/claw-roam.sh` 以确保了解将要运行的内容。","了解脚本将使用机器上现有的 Git 凭据(SSH 密钥、凭据助手) —— 它不会请求或存储新凭据。若需更强的安全性,请手动运行命令或将仓库限制为私有、可信任的主机。"]...
详细分析 ▾
用途与能力
名称/描述与行为匹配。SKILL.md 和包含的 shell 脚本为 ~/.openclaw/workspace 实现了基于 Git 的推送/拉取/状态/同步工作流。没有请求无关服务、凭据或二进制文件。
指令范围
指令和脚本直接操作工作空间 Git 仓库。它们自动添加/提交/推送更改,并建议 cron 自动推送和修改 Telegram webhook。这些行为对于同步工具是预期的,但带有数据暴露风险:自动提交/推送(和推荐的 cron 作业)可以将秘密或敏感文件发布到配置的远程仓库,如果 `.gitignore` 不完整或远程仓库不可信任。SKILL.md 还建议更新 webhook/令牌设置(操作指南,不由脚本执行)。
安装机制
这是一个仅包含指令的技能,附带一个 shell 脚本;没有安装规格下载外部工件。没有从任意 URL 获取内容或由技能包自动安装。
凭证需求
技能没有声明所需的环境变量,这是合理的,因为它依赖于用户现有的 Git 凭据和环境。脚本检查 `OPENCLAW_VPS` 环境变量和 `/etc/openclaw/vps` 文件以检测 VPS 上下文(可选行为),但这些是只读检查。重要:Git 推送/拉取操作将使用主机已经有的任何 Git 认证(SSH 密钥、凭据助手、令牌) —— 技能不请求凭据,但会将仓库内容传输到配置的远程仓库。
持久化与权限
始终为 false,技能不请求持久平台权限或修改其他技能/配置。它不会自主安装自己或修改全局代理设置。
安全有层次,运行前请审查代码。

License

MIT-0

可自由使用、修改和再分发,无需署名。

运行时依赖

无特殊依赖

版本

latestv1.0.32026/2/6

添加同步命令以支持一键全同步工作流

● 无害

安装命令 点击复制

官方npx clawhub@latest install claw-roam
镜像加速npx clawhub@latest install claw-roam --registry https://cn.clawhub-mirror.com

技能文档

通过 Git 同步 OpenClaw 工作空间(本地 Mac 和远程 VPS 之间),实现工作空间的无缝迁移,支持推送更改、拉取最新版本、检查同步状态和迁移 OpenClaw。

快速开始

推荐的多设备分支模型:
  • main = 共享基线
  • remote = 服务器
  • local = 笔记本/桌面
# 检查状态(当前分支)
claw-roam status
# 一键全同步(推荐)
claw-roam sync
# 或逐步操作:
# 提交并推送当前分支
claw-roam push "msg"
# 拉取最新版本
claw-roam pull
# (可选)合并另一个设备分支到当前分支
claw-roam merge-from local
claw-roam merge-from remote

命令

push

提交并推送工作空间到远程 Git 仓库。
claw-roam push [message]
  • 如果没有提供消息,使用时间戳作为默认消息
  • 自动添加所有更改(git add -A)
  • 如果没有检测到更改,则跳过推送

pull

从远程拉取最新工作空间并同步。
claw-roam pull
  • 从远程获取最新更改
  • 应用更改到当前工作空间
  • 停止并重启 OpenClaw 网关以应用更改(VPS 模式)

status

检查本地和远程之间的同步状态。
claw-roam status
  • 显示当前分支和提交
  • 显示未推送的提交(如果有)
  • 显示未提交的更改
  • 建议下一步行动

sync (一键全同步)

claw-roam sync
执行完整的同步工作流程:
  • 提交并推送当前分支 - 保存本地更改
  • 合并 main 到当前分支 - 获取最新的共享内容
  • 推送到 main 分支 - 与其他机器共享更改

工作流程图: ... (由于字符限制,图表部分省略,请参考原文)

设置

  • 初始化 Git 仓库 (如果尚未完成):
cd ~/.openclaw/workspace
git init
git remote add origin 
  • 创建初始提交:
git add -A
git commit -m "initial"
git push -u origin main
  • 在 VPS 机器上 - 克隆仓库:
cd ~
git clone  openclaw-workspace
ln -s openclaw-workspace ~/.openclaw/workspace

分支工作流(推荐)

对于多机器,使用以下分支策略:
cocal (Mac) ──┐
        ├──► main (共享) ◄── merge & push
cocal (VPS) ─┘

每日工作流

在每台机器上,只需运行:
claw-roam sync
这确保:
  • 您的更改保存到您的分支
  • 获取其他机器的最新更改(通过 main)
  • 其他机器可以获取您的更改(通过 main)

设置每台机器

本地 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

每日工作流

在每台机器上:
  • 获取 main 的最新内容:
claw-roam merge-from main
  • 正常工作,然后推送更改:
claw-roam push "更新内存"
  • 共享到 main:
git checkout main
git merge local -m "merge: local -> main"
git push origin main
git checkout local

快速同步(一行命令)

claw-roam merge-from main && git checkout main && git merge local && git push && git checkout local

冲突解决

如果 merge-from main 有冲突:
git checkout --ours <冲突文件>
git add -A && git commit -m "merge: 解决冲突"
# 或保持 main 的版本
git checkout --theirs <冲突文件>
git add -A && git commit -m "merge: 解决冲突"

简单工作流:本地主机 + VPS 备份

对于不使用分支的更简单设置:

每日使用(本地 Mac)

正常使用 OpenClaw。关机前:
claw-roam push "结束日同步"
或通过 cron 自动推送:
crontab 中添加 /10     cd ~/.openclaw/workspace && git add -A && git commit -m "auto: $(date)" && git push

什么会被同步

同步(保留在机器之间):
  • SOUL.md - 代理人格
  • MEMORY.md - 长期内存
  • memory/.md - 日常对话日志
  • skills/ - 所有安装的技能
  • AGENTS.md, USER.md - 上下文文件
  • TOOLS.md - 设备配置
  • HEARTBEAT.md - 定期任务

不同步(机器特定):

  • 会话数据库(SQLite) - 但从内存文件重建
  • 网关运行时状态
  • 配置中的平台特定路径

故障排除

"仓库未找到"

运行上述设置步骤以初始化 Git 仓库。

"合并冲突"

如果在两台机器上编辑而未同步:
git pull --strategy=ours
git push

"权限被拒绝"

确保 Git 远程配置了适当的身份验证(SSH 密钥或令牌)。

脚本

直接使用捆绑的脚本:
cd ~/.openclaw/workspace/skills/claw-roam/scripts/
./claw-roam.sh push
cd ~/.openclaw/workspace/skills/claw-roam/scripts/
./claw-roam.sh pull
cd ~/.openclaw/workspace/skills/claw-roam/scripts/
./claw-roam.sh status

数据来源:ClawHub ↗ · 中文优化:龙虾技能库
OpenClaw 技能定制 / 插件定制 / 私有工作流定制

免费技能或插件可能存在安全风险,如需更匹配、更安全的方案,建议联系付费定制

了解定制服务