remote coding
上一篇居然是4月初,已经有二十多天没写部落格了(大嘘)
这几天用AI用的很爽了,感觉AI进化太快了。那么我们也不能原地不长进,要多用AI,跟紧时代的步伐防止很快被时代淘汰。只用claude-code或者是codex还是不够的,这次我们尝试加入skill,尽量实现一个完全自动化的流程。
不过要小心数据可别泄露了
openclaw with API
之前用的本地模型笨笨的,而且还吃本地内存显存,导致跑不了什么大程序,在本地内存吃力的情况下显然不是一个好选择,我们这次切换成API接入外部模型。
首先重新配置一下openclaw,运行openclaw onboard,这次在config handling选择use existing values来稍微节省一点时间。
这次主要的改变是在模型选择的时候选择(已经买过API的)非本地模型,比如我这里选择Anthropic,在Anthropic auth method下选择Anthropic API key.
如果你是自己买的API,直接填入自己的API即可。
如果是买了中转API,这个时候一般会提供两个环境变量,一般是xxx_BASE_URL,连接到中转站,一个是xxx_API_KEY(或者是其他名字),是中转站提供我们的密钥,这个密钥作为openclaw onboard中要填入的API。之后我们还需要把BASE_URL填到~/.openclaw/openclaw.json下。不过也可以使用openclaw config set命令,可以更加安全一些:
1 | openclaw config set 'models.providers.anthropic' '{ |
如果用的是OpenAI:
1 | openclaw config set 'models.providers.openai' '{ |
之后切换model可以通过openclaw models set openai/gpt-5.2.
如果想配置多个模型,可以在models这一项中加入多个{}实现,比如:
1 | openclaw config set 'models.providers.anthropic' '{ |
配置完成之后可以打开openclaw tui简单对话几句,确认没有问题。
environment variable
如果要openclaw启动claude-code或者codex,还要保证openclaw看得见相关的环境变量。比如我这里是system user service,所以openclaw-gateway.service不自起shell,不读.zshrc,所以如果用openclaw打开子进程应该是看不见相关的API KEY或者是中转KEY,具体可以通过一些命令查一查确认(大家可以问AI,或者cat /proc/$(systemctl --user show -p MainPID --value openclaw-gateway)/environ | tr '\0' '\n' | grep -E 'ANTHROPIC|OPENAI|CODEX' | sort),总之我这里是openclaw看不到这些环境变量,所以无法让openclaw启动claude-code/codex.
那么就只能手动写一个variable文件然后让openclaw gateway显式的去读这个文件。
创建配置文件:
1 | mkdir -p ~/.config/environment.d |
显式读:
1 | mkdir -p ~/.config/systemd/user/openclaw-gateway.service.d |
重载systemd, 重启gateway.
1 | systemctl --user daemon-reload |
验证是否读到:
1 | cat /proc/$(systemctl --user show -p MainPID --value openclaw-gateway)/environ | tr '\0' '\n' | grep -E 'ANTHROPIC|OPENAI|CODEX' | sort |
所以现在如果要修改API的话,需要改三个地方:~/.zshrc, ~/.openclaw/openclaw.json, ~/.config/environment.d/openclaw.conf
get skills!
关于skill,其本质上是一个用来指导AI行为的markdown文件,理论上在任何agent能够读取到的位置放一个markdown文件,让AI读取并遵守和用任何方式安装任何skill是一样的,只不过官方指定的方法(也就是把这个markdown放到官方指定的路径下)会自动把这个markdown的内容注入到context window,否则需要告诉AI让它去读。
所以关于skill的安装其实不需要看很玄幻的东西,直接把markdown下载下来就好了。claude-code的话如果在项目根目录写了CLAUDE.md,他会覆盖默认路径下的skill,因此直接把skill文件的内容复制到CLAUDE.md最后即可,反而比官方安装好用(我认为,因为不同项目大概率还是要用不同的skill)
对于openclaw来说的话,只需要找一个好用的skill就行了,不用一直换,所以可以放到默认阅读的文件夹下,也就是~/.openclaw/skills/.
deepseek v4
最近deepseekv4发布了,有API降价活动,听说是这个活动会延续到5月底,这里也把deepseek跟openclaw和claude-code接入一下尝尝新。
在deepseek的官方文档中说到Deepseek使用和OpenAI/Anthropic兼容的API格式,因此deepseek应该是可以当成一个中转的claude-code/codex来使用的。
首先是将deepseek接入claude-code/codex,需要在.zshrc中写入:
1 | #export OPENAI_BASE_URL=https://api.deepseek.com |
关于openclaw,首先记得把.zshrc下的新的variable复制到.config/environment.d/openclaw.conf中保证openclaw开的子进程可以读到环境变量,然后我们进行openclaw的配置。
~/.zshrc和~/.config/environment.d/openclaw.conf应该不必多说了,主要还是~/.openclaw/openclaw.json,通过openclaw config set修改依旧是最安全的:
1 |
|
然后重启gateway就完成了deepseek主脑的openclaw.
toys and tools homepage
toys and tools homepage is here.



