typecho 发布的文章

一、全局安装clawhub
npm install -g clawhub
二、使用clawhub安装技能
clawhub search 技能的名称(模糊查找,找到下载次数最多的下载)
三、安装抖音博主提到的8个必备技能
1、像杀毒软件一样扫描技能中的代码拦截恶意程序和窃取隐私的代码
clawhub install skill-vetter
2、找技能的技能,可以直接向龙虾询问相关技能的问题
clawhub install find-skills-skill
3、实时搜索技能。ai的知识库是有时间截至的。该技能能实时在线获取最新的知识数据。
clawhub install tavily-search
4、长期记忆.可以跨对话记住项目偏好,上下文。
clawhub install agent-memory
5、基于rust的无头浏览器自动化命令行工具。可以操控浏览器登陆网址、点击按钮、填写表单等操作
clawhub install agent-browser-clawdbot
6、自我迭代,会记录自我犯过的错误和纠正方法。越用越聪明,装上它龙虾进入自动进化阶段。
clawhub install self-improving
7、无论是几小时的录音还是几百页的文档,都能提炼出核心要点。
clawhub install summarize-pro

一、设置代理上网

⚠️ 请将 7890 替换为你本地代理软件的实际 HTTP 端口(这里不能用HTTP_PROXY和HTTPS_PROXY只能小写,否则代理不通,不知道为什么)

export http_proxy="http://127.0.0.1:7890"
export https_proxy="http://127.0.0.1:7890"

告诉 npm 客户端也走这个代理通道

npm config set proxy http://127.0.0.1:7890
npm config set https-proxy http://127.0.0.1:7890

3. 顺便拉长超时容忍度到 5 分钟,防止下载大包时断流

npm config set fetch-timeout 300000

如果你的代理在宿主机上,把 127.0.0.1 换成宿主机的内网 IP,例如:

export https_proxy="http://192.168.x.x:7890"

二、延长 NPM / NPX 的超时等待时间
NPM 默认的超时时间非常严格(15秒)。在下载较复杂的智能体插件(如 capability-evolver)时,如果网络稍有延迟就会直接熔断。我们可以强行把超时时间放大到 5分钟(300000毫秒):

Bash

将全局超时时间修改为 5 分钟

npm config set fetch-timeout 300000
npm config set fetch-retry-mintimeout 300000
npm config set fetch-retry-maxtimeout 300000

三、临时借用国内镜像源下载
如果设置了代理依然由于 TLS 证书或握手死锁导致超时,由于你只是想安装 clawhub 上的这个工具,我们可以临时将源切回国内腾讯云或淘宝镜像,让它快速把包扒下来:

Bash

1. 临时设置换源

使用官方源

npm config set registry https://registry.npmjs.org/

使用国内源

npm config set registry https://registry.npmmirror.com/

2. 再次尝试安装

npx clawhub@latest install autogame-17/capability-evolver
注意:安装成功后,如果你需要使用海外原生大模型组件,记得用 npm config set registry https://registry.npmjs.org/ 切回官方源。

如何恢复设置?

当你的任务顺利完成,不再需要通过代理访问外网,或者更换了网络环境时,你可以非常简单地把 npm 的代理通道彻底清除掉,让它恢复到默认的直连状态。

在你的 Kali 终端中,依次执行以下命令即可:

第一步:一键删除 npm 中的代理配置
执行 delete 命令可以把写入到 .npmrc 配置文件里的代理项完全拔除:

Bash

删除 HTTP 代理配置

npm config delete proxy

删除 HTTPS 代理配置

npm config delete https-proxy
第二步:清除终端窗口的局部环境变量
如果你之前在终端里还运行过 export http_proxy=...,这个变量在当前终端窗口关闭前会一直生效。你可以用 unset 强行注销它们:

Bash

注销终端临时的代理环境变量

unset http_proxy
unset https_proxy
(当然,如果你直接把当前的黑窗口/终端关闭,新开一个终端,这些 export 的变量也会自动消失)。

第三步:验证是否恢复成功
你可以运行以下命令来核对,如果返回的结果是 undefined 或者 null(空白),说明已经完美恢复,npm 重新回到了纯净的本地直连状态:

Bash
npm config get proxy
npm config get https-proxy

如果还是不行的话?

方案一:绕过 npx,直接全局安装 clawhub 客户端(最推荐)
很多时候 npx 会在内存里频繁初始化临时的包,从而导致代理环境变量丢失。我们直接把 clawhub 实体安装到 Kali 系统里,用它的原生命令去下载。

直接用全局命令把客户端死死装在系统里:

Bash
npm install -g clawhub
(如果这一步卡住,说明 npm 本身依然不通,请先用上一条回复里的 npm config set registry https://registry.npmmirror.com/ 换成国内源,先把客户端扒下来。)

安装成功后,直接使用原生的 clawhub 命令拉取插件:

Bash
clawhub install autogame-17/capability-evolver
💡 为什么这能行?:因为原生命令不再走 npx 的 15 秒强制熔断机制,它会严格遵循你本地配置的 fetch-timeout 超时容忍时间(5分钟),并更稳定地读取系统代理。

在最新版的 OpenClaw 中,控制智能体能否执行本地 shell 命令(如 bash 执行、运行本地脚本等),核心取决于它的 工具策略文件(Tools Profile) 以及内置的 审批策略(policyd / approvals)。

你之前遇到的飞书插件卡死报错中提到的 tools.profile: "coding",正是 OpenClaw 最严格的沙盒隔离模式——在这个模式下,为了系统安全,OpenClaw 会彻底锁死文件系统修改权限并禁止执行任何未授权的本地系统命令。

如果你需要在 Kali 虚拟机或本地环境中让 OpenClaw 拥有执行本地命令的能力,请按照以下两种官方标准安全策略进行调整:

方案一:切换工具策略 Profile 为 ops(运维/完全控制模式)
OpenClaw 官方内置了三种安全 Profile:coding(安全沙盒)、standard(标准权限)和 ops(DevOps 运维模式)。切换到 ops 后,大模型将自动解锁完整的系统 Shell 执行权限(exec、bash 工具)。

  1. 使用命令行一键切换:
    打开你的 Kali 终端,直接通过 OpenClaw CLI 将工具策略修改为 ops:

Bash
openclaw config set tools.profile "ops" --json

  1. 如果习惯直接改配置文件:
    打开你的 OpenClaw 全局配置文件(通常位于 ~/.openclaw/openclaw.json 或 .toml),找到 tools 节点,修改为:

JSON
{
"tools": {

"profile": "full"

}
}
注意:这里已经改为了:minimal\coding\messaging\full几个选项了

  1. 强制重启 OpenClaw 网关使策略生效:
    Bash
    openclaw gateway --force
    方案二:保留 coding / standard 安全墙,通过“人机协同审批”执行(最推荐)
    如果你不想给大模型“无限的 Root 权限”以防它误删系统文件(比如在 Kali 里不小心跑了危险的渗透脚本),你可以开启最新版特有的 policyd(策略守护) 机制。

这样设置后,大模型可以尝试执行本地命令,但每一次执行前,你的 Kali 终端或前端控制台都会弹出一个 [允许/拒绝] 的拦截窗口,必须由你手动敲击回车确认,命令才会真正下发给系统。

配置方法:

Bash

1. 开启命令执行工具

openclaw config set tools.exec.enabled true --json

2. 启用每一步命令都需要人类批准的策略

openclaw config set tools.exec.requireApproval true --json

3. 重启网关

openclaw gateway --force
⚠️ 在 Kali Linux 下让 OpenClaw 执行命令的“特有硬伤”
由于你把 OpenClaw 跑在 root@kalikvm8902 权限下,模型一旦解锁命令执行,就默认拥有最高统领官(Root 权限)。为了防止 Ollama 本地大模型产生幻觉导致灾难性后果,请务必注意:

工作区隔离(Workspace Restrict):
建议限制大模型读写文件的范围,只允许它折腾你指定的项目目录,严禁它乱动你的 /etc/apt 等系统根目录:

Bash
openclaw config set tools.fs.workspaceOnly true --json
测试连通:
策略调整完毕后,在 OpenClaw 聊天窗口中直接对它说:“帮我执行一条本地命令查看当前系统时间”。如果它能正常调用并返回 date 命令的结果,说明你的安全策略已经完美放行!

对于能够完全访问外网的环境,请直接使用以下官方标准源配置来修复:

See https://www.kali.org/docs/general-use/kali-linux-sources-list-repositories/

deb http://http.kali.org/kali kali-rolling main contrib non-free non-free-firmware

Additional line for source packages

deb-src http://http.kali.org/kali kali-rolling main contrib non-free non-free-firmware

第一步:强行覆盖为 2026 官方标准源
在你的 root@kalikvm8902 终端中,直接运行以下命令,将官方最权威的 Rolling 源写入:

Bash
echo "deb http://http.kali.org/kali kali-rolling main contrib non-free non-free-firmware" > /etc/apt/sources.list
echo "deb-src http://http.kali.org/kali kali-rolling main contrib non-free non-free-firmware" >> /etc/apt/sources.list
💡 关键点:注意末尾的 non-free-firmware。新版 Kali 将固件依赖彻底剥离到了这个新分支下。如果不写它,官方源在更新时就会因为找不到最新的依赖索引而报 Release 文件不匹配/缺失 的错误。

第二步:清理并强行刷新 APT 缓存
由于你之前被错误的缓存卡住了,必须强制清空本地索引重新拉取:

Bash

1. 清空本地过期的缓存

sudo apt-get clean

2. 允许释放不安全改变并强行更新(能完美解决部分 Release 签名过期问题)

sudo apt update --allow-insecure-repositories
第三步:手动安装 Node.js 和 编译环境
为了不再让外网脚本的自动打包逻辑报错,我们直接用官方源把它们塞进去:

Bash

1. 安装基础编译套件

sudo apt install -y build-essential cmake python3

2. 安装 Node.js 及其包管理器

sudo apt install -y nodejs npm
验证安装是否成功:

Bash
node -v
npm -v
只要能正常输出版本号,说明官方源已经彻底恢复健康。现在你可以直接重新拔起你的主程序安装脚本,它就会一路绿灯直接通过环境检查了!