WSL2 环境下 AI 助手调用摄像头方案实践
本文旨在解决在 WSL2 环境中让 AI 助手访问摄像头硬件的技术问题,对比了多种方案的可行性与实现路径。
探索过程
第一阶段:OpenClaw Node 配对(失败)
尝试在 Windows 上安装 Node.js 和 npm 以控制摄像头,但因 WSL2 网络隔离问题放弃。具体过程如下:
1. 安装 Node.js 下载绿色版 Node.js (v24.14.0),配置环境变量:
$nodePath = "D:\WSL\node-v24.14.0-win-x64"
$env:Path += ";$nodePath"
[Environment]::SetEnvironmentVariable("Path", $env:Path, "User")
2. 遇到的问题及解决
- PowerShell 执行策略限制
报错:
npm : File ... cannot be loaded because running scripts is disabled on this system.解决:Set-ExecutionPolicy RemoteSigned -Scope CurrentUser - npm 需要 Git
报错:
npm error code ENOENT ... spawn git解决:手动下载并安装 Git for Windows (v2.47.1)。 - npm 配置错误
之前尝试
npm config set git false导致后续安装失败。 解决:npm config delete git
3. 安装 OpenClaw Node
# 安装 openclaw
npm install -g openclaw
# 安装 node 服务
openclaw node install
# 启动 node
openclaw node restart
# 查看状态
openclaw node status
4. 配对失败原因分析
- 端口占用:WSL Gateway 已占用 18789 端口,Windows Node 无法绑定。
- 网络隔离:WSL2 运行在 Hyper-V 虚拟机中,与 Windows 主机网络隔离。WSL 的 localhost (127.0.0.1) Windows 访问不到。
- 配置验证失败:
尝试修复配置:Invalid config at /home/kim/.openclaw/openclaw.json: - plugins.slots.memory: plugin not found: memory-coreopenclaw config.set agents.defaults.memorySearch.enabled false openclaw doctor --fix
最终因 WSL2 架构限制导致 Windows Node 无法与 WSL Gateway 建立稳定连接,即使通过端口转发能连通,device signature 验证也无法通过。
第二阶段:浏览器方案(临时可用)
使用第三方网站测试摄像头功能,虽可预览但无法满足自动化需求。


