核心用途
JS Eyes 是一套面向 OpenClaw 的浏览器自动化技术栈,本技能负责将其从 ClawHub 安装包转化为可用的自动化环境。核心能力包括:
- 插件部署:配置 OpenClaw 加载
openclaw-plugin路径,启用js-eyes插件并暴露工具 - 服务器管理:内置 HTTP/WebSocket 服务器(默认 localhost:18080),支持浏览器扩展连接
- 扩展技能系统:动态发现、安装、热加载第三方技能(零重启),覆盖 Bilibili、GitHub、Reddit、YouTube、知乎等 10+ 平台
- 安全诊断:
js-eyes doctor验证部署状态,支持 token 管理、egress 策略、consent 审批
显著优点
1. 零重启热加载:技能目录变更通过 chokidar 实时感知,300ms 内生效,开发迭代效率高
2. 双轨部署模式:支持 ClawHub 包部署与源码开发部署,Native Messaging 实现本地 token 安全同步
3. 分层安全模型:allowRawEval 控制脚本执行、egressAllowlist 管控外联、toolPolicies 审批敏感操作
4. 丰富的扩展生态:内置 10 个第一方技能,支持 registry 安装与外部目录 link 挂载
潜在局限
- 浏览器扩展需独立安装:主包不包含扩展,需用户手动从 GitHub Releases 安装
- Node.js 22+ 硬性依赖:旧版本无法运行
- 默认启用 raw eval:跟随本技能部署会设置
allowRawEval: true,doctor会标记为 insecure(预期行为) - Windows 路径敏感:JSON 配置推荐正斜杠
适合人群
- 需要自动化操作浏览器完成表单填写、数据采集、多平台内容管理的开发者
- 愿意在本地运行 Node 服务并接受浏览器扩展方案的技术用户
- 需要快速迭代自定义技能的扩展开发者
常规风险
| 风险点 | 说明 |
|--------|------|
| 本地服务器暴露 | 默认绑定 loopback,需确认未误配 `allowRemoteBind` |
| Token 泄露 | `server.token` 用于浏览器认证,勿提交至版本控制 |
| Raw eval 执行 | 开启后 `execute_script` 可执行任意 JS,配合 `egressAllowlist` 使用 |
| 技能完整性 | 手动修改技能文件会触发 integrity 错误,需重新 `approve` |
| Native Messaging 配置失效 | 浏览器重启前 manifest 变更不生效,易误判为连接故障 |