根据提供的错误信息,你在安装 openclaw@2026.3.1 时遇到了 Git 仓库访问权限问题。以下是逐步排查和解决方案:
错误原因分析
错误提示:
fatal: Could not read from remote repository.
Please make sure you have the correct access rights and the repository exists.
这表明你的 Git 客户端无法访问 git+ssh://git@github.com/whiskeysockets/libsignal-node.git,可能原因包括:
- SSH 密钥未配置:你的 SSH 公钥未添加到 GitHub 账户。
- 仓库不存在或私有:该仓库可能已被删除或设为私有。
- 网络问题:防火墙或代理阻止了 Git 连接。
解决方案
1. 检查仓库是否存在
访问以下链接确认仓库是否存在:
https://github.com/whiskeysockets/libsignal-node
- 如果仓库不存在或已被删除,需联系包维护者更新依赖。
- 如果仓库存在但为私有,确保你有访问权限。
2. 配置 SSH 密钥(适用于 GitHub)
若仓库存在且为公开,但未配置 SSH 密钥:
-
生成 SSH 密钥(如尚未生成):
bashssh-keygen -t ed25519 -C "your_email@example.com"默认路径下会生成
~/.ssh/id_ed25519和~/.ssh/id_ed25519.pub。 -
将公钥添加到 GitHub:
- 复制公钥内容:
cat ~/.ssh/id_ed25519.pub - 登录 GitHub → Settings → SSH and GPG keys → New SSH key,粘贴内容并保存。
- 复制公钥内容:
-
测试 SSH 连接:
bashssh -T git@github.com成功会显示类似
Hi username! You've successfully authenticated...。
3. 更换 Git 协议(临时解决方案)
如果 SSH 有问题,可尝试切换为 HTTPS 协议:
bash
# 在项目根目录下找到 package-lock.json 或 npm-shrinkwrap.json
# 将所有 "git+ssh://git@github.com/" 替换为 "https://github.com/"
# 例如:
# 原始依赖项:
"libsignal-node": "git+ssh://git@github.com/whiskeysockets/libsignal-node.git#v1.0.0",
# 修改为:
"libsignal-node": "https://github.com/whiskeysockets/libsignal-node.git#v1.0.0",
然后重新运行 npm install。
4. 检查网络和代理
-
确保网络畅通,无防火墙或代理阻止 Git 访问。
-
临时禁用代理测试:
bash# 对于 HTTP 代理 unset http_proxy https_proxy # 对于 SOCKS 代理 unset all_proxy
5. 清除 npm 缓存并重试
bash
npm cache clean --force
npm install
总结
优先检查 SSH 密钥配置和仓库访问权限。若问题依旧,尝试更换 Git 协议或联系包维护者确认依赖项的正确性。