安全扫描
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,技能不请求持久平台权限或修改其他技能/配置。它不会自主安装自己或修改全局代理设置。
安全有层次,运行前请审查代码。
运行时依赖
无特殊依赖
版本
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 技能定制 / 插件定制 / 私有工作流定制
免费技能或插件可能存在安全风险,如需更匹配、更安全的方案,建议联系付费定制