笑川:懒得重配100个 Skills?我用一套配置搞定 Claude Code+OpenClaw 双向同步
笑川:懒得重配100个 Skills?我用一套配置搞定 Claude Code+OpenClaw 双向同步
笑川:懒得重配100个 Skills?我用一套配置搞定 Claude Code+OpenClaw 双向同步 笑川:懒得重配100个 Skills?我用一套配置搞定 Claude Code+OpenClaw 双向同步 Modified April 6 Code block Plain Text Copy 这条命令把AutoClaw的现有配置复制一份,备份文件以 .bak 结尾 备份文件在 /.autoclaw/ 目录下,以 .bak 结尾。 如果之后需要恢复备份,执行: Code block Plain Text Copy cp r /.autoclaw/skills.bak /.autoclaw/skills 第四步:替换为符号链接 4.1 删除原有的配置目录 复制下面的命令,粘贴到终端,回车执行: Code block Plain Text Copy rm rf /.autoclaw/skills /.autoclaw/settings.json /.autoclaw/projects 4.2 创建符号链接 复制下面的命令,一次性全部粘贴执行: Code block Plain Text Copy ln s /dotfiles/skills /.autoclaw/skills ln s /dotfiles/settings.json /.autoclaw/settings.json ln s /dotfiles/projects /.autoclaw/projects 创建后, /.autoclaw/skills 就指向了 /dotfiles/skills 第五步:验证链接是否成功 复制下面的命令,粘贴到终端,回车执行: Code block Plain Text Copy ls la /.autoclaw/skills 应该看到类似这样的输出,有箭头 : Code block Plain Text Copy lrwxr xr x@ 1 xxx staff 32 Apr 6 14:35 skills /Users/xxx/dotfiles/skills 看到 说明链接成功。 再验证一下Skills数量: Code block Plain Text Copy ls /dotfiles/skills | wc l 应该显示一个数字(比如100多或150多)。如果和电脑A上的一样,说明同步成功了。 第六步:设置自动同步 6.1 复制同步脚本 复制下面的命令,粘贴到终端,回车执行: Code block Plain Text Copy cp /dotfiles/sync.sh /dotfiles/sync autoclaw.sh 给电脑B的同步脚本起个不同的名字,避免和电脑A的冲突 这条命令把AutoClaw的现有配置复制一份,备份文件以 .bak 结尾 备份文件在 /.autoclaw/ 目录下,以 .bak 结尾。 如果之后需要恢复备份,执行: 第四步:替换为符号链接 4.1 删除原有的配置目录 复制下面的命令,粘贴到终端,回车执行: 4.2 创建符号链接 复制下面的命令,一次性全部粘贴执行: 创建后, /.autoclaw/skills 就指向了 /dotfiles/skills 第五步:验证链接是否成功 复制下面的命令,粘贴到终端,回车执行: 应该看到类似这样的输出,有箭头 : 看到 说明链接成功。 再验证一下Skills数量: 应该显示一个数字(比如100多或150多)。如果和电脑A上的一样,说明同步成功了。 第六步:设置自动同步 6.1 复制同步脚本 复制下面的命令,粘贴到终端,回车执行: 给电脑B的同步脚本起个不同的名字,避免和电脑A的冲突 给脚本添加执行权限 6.2 设置定时任务 复制下面的命令,粘贴到终端,回车执行: 这时候终端会进入vim编辑器。按 i 进入编辑模式。 输入(或者复制粘贴)这一行: 输入完成后,按 Esc 键,然后输入 :wq 回车保存退出。 定时任务设置完成!以后每6小时,AutoClaw这台Mac会自动检查并同步配置。 第三部分:GitHub SSH密钥配置(零基础详细版) 如果你在执行上面的步骤时,终端报错提示 Permission denied (publickey) 或者 Could not resolve hostname ,说明你这台Mac还没有配置SSH密钥来连接GitHub。 什么是SSH密钥? SSH密钥可以理解为一把证明你身份的「数字钥匙」。 GitHub存了你这把钥匙的「锁」,你每次连接的时候,GitHub会问你「你有钥匙吗」——有就让你过,没有就不让。 步骤一:检查是否已有密钥 复制下面的命令,粘贴到终端,回车执行: 看输出结果: • 如果输出了一串字母数字 (以 ssh ed25519 或 ssh rsa 开头),说明你已经有密钥了,跳到「步骤三」 • 如果提示 No such file or directory ,说明没有密钥,继续下一步 步骤二:生成新密钥 2.1 执行生成命令 复制下面的命令, 把「你的GitHub注册邮箱」替换成你GitHub账号的实际邮箱 (比如 lihua@gmail.com ): lihua@gmail.com C 后面是备注,一般填邮箱地址,方便识别这把密钥是谁的 2.2 按回车接受默认保存位置 执行后会显示: 直接按回车,接受默认的保存位置。 2.3 设置密码(直接回车跳过) 接着会显示: 直接回车,不要设置密码。 ( 设了密码以后每次用还要输入,比较麻烦) 然后会让你再确认一次,同样直接回车: 再直接回车一次。 2.4 看到成功提示 看到类似这样的输出,说明成功了: 步骤三:查看并复制公钥 3.1 执行查看命令 复制下面的命令,粘贴到终端,回车执行: 3.2 复制公钥内容 终端会输出一行很长的字符,大概长这样: 鼠标选中这整行,Command+C 复制。从 ssh ed25519 开始,一直到邮箱结束。 步骤四:在GitHub上添加公钥 4.1 打开GitHub SSH设置页面 在浏览器地址栏输入: https://github.com/settings/keys 或者:登录GitHub后,点击右上角头像 → Settings → SSH and GPG keys 4.2 点击添加按钮 点击绿色的 New SSH key 按钮。 4.3 填写信息 在页面上填写: • T itle (标题):随便起个名字,比如「我的Mac」或「MacBook Pro」 • Key type (密钥类型):选择 Authentication Key • Key (密钥):Command+V 把刚才复制的公钥粘贴到这里 4.4 保存 点击绿色的 Add SSH key 按钮。 如果GitHub要求输入密码验证,输入你的GitHub密码即可。 添加成功后,页面会回到SSH keys列表,你刚添加的密钥应该在里面。 步骤五:验证连接是否成功 5.1 执行验证命令 复制下面的命令,粘贴到终端,回车执行: 5.2 看输出结果 如果看到类似这样的文字: 说明连接成功了! (后面的文字是GitHub的标准提示,不用管) 如果看到 Permission denied ,说明有问题,需要检查密钥是否正确添加。 踩过的坑 说几个容易出问题的地方。 第一个,SSH密钥。 两台Mac都要能访问GitHub才能push。如果你只有一台Mac配了SSH密钥,另一台clone的时候没问题,但push的时候会报错。所以确保两台都添加了SSH公钥到GitHub。 第二个,history.jsonl。 这是对话历史记录,里面可能包含一些敏感信息。不要同步这个文件,已经在.gitignore里了,但如果你之前没有注意,push之前检查一下。 第三个,冲突处理。 极小概率情况下,两台Mac同时修改了同一个文件,这时候Git会报冲突。它会告诉你哪个文件有冲突,你手动打开文件看看,保留你要的内容,然后重新commit就行。正常情况下很少遇到。 第四个,首次同步。 如果你的Skills很多(像我一样有一百多个),首次push可能比较慢,耐心等一下。后续增量更新就很快了。 说点我自己想说的事 说到底,这其实是个「效率 vs 成本」的问题。 为了这个同步方案,我花了大概半天时间研究+配置。但配好之后,长期节省的时间远不止这个量级。 更重要的是,我现在 真的在用 AutoClaw了。碎片时间、外出场景,手机上直接处理。不用再纠结「这个需求要不要等回家再说」。 工具是拿来用的,不是拿来凑合的。 把工具适配成自己顺手的形状,这个投入是值得的。 总结 核心步骤就这些: 1. GitHub上建一个仓库 2. 电脑A:复制配置 → push到仓库 → 创建符号链接 → 设置自动同步 3. 电脑B:克隆仓库 → 备份原配置 → 创建符号链接 → 设置自动同步 配好之后,两台Mac的配置就是打通的。改一处,另一处自动同步。 如果你想省事情,你可以直接把我这篇文章同时扔给claude code 和openclaw,让他们自己去做执行! 有问题可以评论区聊。 🔗 原文链接: https://mp.weixin.qq.com/s/ivrz MmM... https://mp.weixin.qq.com/s/ivrz MmM... 笑川 AI产品 笑川 AI产品 笑川AI进化论2026年4月6日 16:40 美国 上周给自己放了个小假,溜出去转了几天。 结果一场航空管制,把我扣在机场里,刷手机刷了整整2个小时。偏偏还有个挺急的活儿要处理,电脑却老老实实躺在托运的行李箱里! 那时候,我才想起,手机里还有一个「装好了半个月,从来没真用过」的 AutoClaw。 真正让我懒得去弄的原因是的是:那台主力 Mac 上的 Claude Code,我折腾了一年,配了一百多个 Skills、七八个 Agent,再加上一堆 Workflow 和自定义规则。 要我在AutoClaw上从零再走一遍这个流程?光想想就觉得血压往上冲。 所以这一个月,我的真实状态一直是:Claude Code 真香,AutoClaw 当展品,偶尔点开看看界面就关掉。 直到那天被困在机场,我才意识到: 再不把这俩搞到一起用,以后还要被这样折腾很多次。那一瞬间,是真的有点受不了了。 一、现状 先说说我之前的情况。 我有两台Mac。 Mac A : 主力工作机,装的是Claude Code。用了很久了,Skills配了n个,包括代码审查的、需求分析的、写口播稿的、做图片的……还有几个Agent Team,专门处理不同类型的任务。这台机器上的配置,就是我的「战斗力」。 Mac B : 备用机,平时不怎么开。出于安全考虑,只装了AutoClaw。 问题在于,这两套配置是完全独立的。 我在Mac A上更新一个Skill,想在Mac B上用?对不起,没有这个功能。AutoClaw有新的Workflow,想同步到Mac A?也不行。 简单来说,我有两套「配置库」,但它们互相不认识。 二、解决思路 我想,既然都是配置文件,能不能让它们共享一套? 顺着这个思路,我仔细研究了一下Claude Code和AutoClaw的目录结构。 结果出乎意料——它们的配置结构几乎一模一样。 核心都是这几个: • skills/ —— 技能配置 • settings.json —— 用户设置 • projects/ —— 项目记忆 • agents/ —— 子代理配置 区别只在于根目录:Claude Code用 /.claude/ ,AutoClaw用 /.autoclaw/ 。 这就好办了。 三、结果 配置完成之后,是这样的体验: 在家里Mac A上改一个Skill配置 , 比如加了一条规则。6小时之内,系统自动把这个改动push到GitHub。人在外面,掏出手机打开AutoClaw——用的已经是最新配置了。 或者 在AutoClaw里新建了一个Workflow , 回家打开Mac A,pull一下,最新内容就在了。 双向同步,谁改的都行,另一台机器自动同步。 四、具体方案 我的思路是这样的: 找一个中间站,两台Mac都从这个中间站读写。这个中间站,就是Git仓库。 具体来说: • 我在Mac A上,把 /.claude/ 里的核心配置复制到一个叫 /dotfiles/ 的Git仓库 • Mac B上,通过符号链接,让 /.autoclaw/skills 这些目录指向 /dotfiles/ • 这样,两台Mac看到的其实是同一套文件 • 任何一边的修改,commit之后push到GitHub,另一边pull一下就同步了 核心原理就这一句话:符号链接 + Git双向同步。 完整操作流程 下面开始详细操作步骤。零基础也能看懂,一步一步照着做就行。 先说明一下通用操作方式: • 文中所有以 bash 包裹的代码块,都是终端命令 • 复制代码 → 鼠标选中代码块,Command+C 复制 • 粘贴到终端 → 在终端窗口按 Command+V 粘贴,然后按回车执行 • 每条命令执行完后,终端会显示结果,如果没有报错就继续下一步 第一部分:电脑A(Claude Code)配置导出 第一步:打开终端 在Mac上按 Command + 空格 ,搜索「终端」或「Terminal」,回车打开。 终端界面大概是这样的,一个黑色的窗口,里面有文字提示符 % 或 用户名 @ Mac % 。 第二步:创建Git仓库 在终端里 一条一条 执行下面的命令。复制一条,粘贴到终端,回车执行,等执行完再执行下一条: 这条命令的意思是:在你的用户目录下创建一个叫 dotfiles 的文件夹。 这条命令的意思是:进入 dotfiles 文件夹。以后所有操作都在这个文件夹里进行。 这条命令的意思是:把这个文件夹初始化为Git仓库。执行后会看到 "Initialized empty Git repository" 的提示。 执行完这三条命令,你的 /dotfiles/ 目录就变成了一个Git仓库。 第三步:复制核心配置到仓库 复制下面 的 全部命令 , 一 次性粘贴到终端,回车执行: 这条命令的作用是把Claude Code的配置复制到dotfiles仓库里。 cp 是复制命令, r 表示递归复制整个文件夹 /.claude/ 是Claude Code的配置目录( 代表你的用户文件夹) /dotfiles/ 是刚才创建的仓库文件夹 执行完后,你的配置就已经复制到 /dotfiles/ 里了。 第四步:设置.gitignore(告诉Git哪些文件不要上传) 复制下面的命令,粘贴到终端,回车执行: 这条命令的作用是创建一个 .gitignore 文件,告诉Git哪些文件不需要上传到GitHub 。 比如 history.jsonl 是对话历史记录,有隐私信息,不需要同步,所以要排除。 第 五步:在GitH ub上创建仓库 这一步需要你有一个GitHub账号。 先判断自己有没有GitHub账号: 打开浏览器,访问 https://github.com 。 • 如果 你已经登 录看到个人主页 → 你有账号,继续往下看 • 如果你看到登录/注册页面 → 你还没有账号,需要先注册(见下方「没有GitHub账号怎么办」) 没有GitHub账号怎么办? 注册一个就好,全程免费。 5.1a 点击注册 在登录页面点击「Sign up」,或者直接访问: https://github.com/signup 5.1b 填写信息 • Enter your email :填一个常用的邮箱,比如 lihua@gmail.com lihua@gmail.com • Create a password :设置一个密码,至少8位 • Username :起一个用户名,以后你的仓库地址会包含这个名字,比如 lihua • 点击绿色的 Continue 按钮 5.1c 验证邮箱 GitHub会往你的邮箱发一封验证邮件,打开邮件点击验证链接即可。 5.1d 注册完成 验证完成后,回到 https://github.com ,用刚注册的账号密码登录即可。 备注:注册是免费的,个人开发者账号完全够用。如果后续需要私有仓库(不让别人看到的仓库),个人免费账号也支持,不用付费。 有GitHub账号的继续往下看 5.1 登录GitHub 打开浏览器,访问 https://github.com ,登录你的账号。 5.2 新建仓库 点击右上角的「+」号,选择「New repository」。 或者直接访问: https://github.com/new 5.3 填写仓库信息 在页面上填写: • Repository name (仓库名称):填 dotfiles • Description (描述):填 Claude Code 和 AutoClaw 配置同步 (不填也行) • Visibility :选择 Private (私有仓库,这样别人看不到你的配置) • 不要勾选 "Add a README file"(因为我们本地已经有仓库了) • 然后点击绿色的 Create repository 按钮 5.4 复制仓库地址 创建成功后,页面会跳转到新仓库。 你会看到一个 "Quick setup" 页面,里面有一行绿色的地址: 鼠 标选中 这行地址,Command+C 复制下来。重要:这里的 「你的用户名」需要替换成你刚才注册/使用的GitHub用户名。 比如你GitHub用户名是 lihua ,那这行地址就是 git@github.com:lihua/dotfiles.git git@github.com 比如是 zhangsan ,那就是 git@github.com:zhangsan/dotfiles.git git@github.com 第六步:把本地仓库关联到GitHub 6.1 确认当前在dotfiles目录 如果终端关掉了,重新打开后执行: 6.2 添加远程仓库地址 复制下面的命令, 把「你的用户名」替换成你实际的GitHub用户名 (注意只替换那两处,命令本身不要改): 例如你的用户名是 lihua ,就改成: git remote add origin git@github.com:lihua/dotfiles.git git@github.com 这条命令是把分支名改成 main 这条命令是把本地仓库推送到GitHub 第一次push的时候,终端可能会显示这样的提示: 输入 yes 回车即可。 如果推送成功,你会看到类似这样的输出: 看到「To github.com」开头的内容,说明推送成功了! github.com 第七步:创建符号链接 之前复制是为了把现有配置上传到GitHub。现在要把原目录替换成符号链接,这样Mac A才会真正从 /dotfiles/ 读写配置。 7.1 删除原有的配置目录 复制下面的命令,粘贴到终端,回车执行: rm rf 是强制删除命令,删除后这些目录就不存在了(别担心,备份在dotfiles里) 7.2 创建符号链接 复制下面的命令,一次性全部粘贴执行: ln s 是创建符号链接的命令 格式是: ln s 真实文件夹 链接位置 创建后, /.claude/skills 实际上就指向了 /dotfiles/skills 执行完之后, /.claude/skills 这些目录,实际上都指向了 /dotfiles/ 里的对应内容。 7.3 验证链接是否成功 复制下面的命令,粘贴到终端,回车执行: 应该看到类似这样的输出,有箭头 : 看到 符号和 dotfiles 字样,说明链接成功了! 第八步:设置自动同步 我不想每次手动push,所以设了个定时任务,每6小时自动同步一次。 8.1 创建同步脚本 复制下面的全部命令,一次性粘贴到终端,回车执行: 这条命令创建了一个自动同步脚本,功能是:先拉取最新内容,如果没有改动就跳过,有改动就提交并推送 8.2 给脚本添加执行权限 复制下面的命令,粘贴到终端,回车执行: chmod +x 是给脚本添加执行权限,让它可以运行 8.3 设置定时任务 复制下面的命令,粘贴到终端,回车执行: 这时候终端会进入一个编辑器界面(vim)。 vim 是一个在终端里编辑文本的工具,界面不太友好,按错了可能会卡住,所以这里详细说明: 首先,你会看到类似这样的界面: 按键盘上的字母 i 进入编辑模式 你会看到屏幕最下方变成 INSERT ,这时候就可以输入内容了。 然后,输入(或复制粘贴)这一行: 输入完成后,按 Esc 键退出编辑模式 你会看到 INSERT 消失了。 接着,输入 :wq 回车保存退出 输入的时候屏幕没有反应,直接输入就行: • 输入冒号 : • 输入字母 w • 输入字母 q • 按回车 如果一切正常,终端会退回到正常的命令界面。 保存成功后,你会看到终端回到正常的提示符界面。 :wq 的意思是: :w = 保存(write), :q = 退出(quit) 这行的意思是:每6小时的第0分钟,自动运行一次sync.sh脚本。 如果保存成功,终端会回到正常界面。 第二部分:电脑B(AutoClaw)配置同步 现在换到另一台Mac。这台Mac上已经装有AutoClaw。 第一步:打开终端 同样按 Command + 空格 ,搜索「终端」,回车打开。 第二步:克隆仓库 复制下面的命令, 把「你的用户名」替换成你实际的GitHub用户名 : git clone 是从GitHub下载仓库的命令 执行后,GitHub上的dotfiles仓库会被下载到你Mac的用户目录下 如果这是这台Mac第一次连接GitHub,终端会问: 输入 yes 回车即可。 等待下载完成。如果你的配置很多(像我有一百多个Skills),可能需要等一两分钟。 第三步:备份原有配置 重要!在做任何修改之前,必须先备份。万一出问题还能恢复。 复制下面的全部命令,一次性粘贴到终端,回车执行: