核心定位
jqopenclaw-node-invoker 是一套面向远程节点的安全管控型系统能力调用框架,通过 Gateway 统一封装对 JQOpenClawNode 的 node.invoke 调用。该技能将底层复杂的跨节点操作抽象为标准化接口,覆盖文件读写、进程管理、系统信息采集、屏幕截图、弹窗通知、剪贴板操作及输入控制(鼠标/键盘)等全场景。
核心用法
调用流程(强制安全校验)
1. 节点识别:先执行 node.describe 获取 modelIdentifier,强匹配 JQOpenClawNode* 前缀,弱匹配需交叉验证命令集合与标识字段
2. 命令构造:严格按 command-spec.md 规范组装 params,统一使用 UUID 作为 idempotencyKey
3. 权限校验:file.write 必须显式 allowWrite=true,覆盖/删除/终止等破坏性操作需二次用户确认
4. 超时策略:按能力分级设置 timeoutMs(5-120秒),process.exec 最长支持 120 秒,截图采集 60 秒
5. 结果输出:先给结论,再列关键字段(如 bytesWritten、exitCode、timedOut、url),避免直接暴露原始 JSON
能力矩阵
| 领域 | 命令 | 关键特性 |
|:---|:---|:---|
| 文件操作 | `file.read` / `file.write` | 支持分块读取、正则搜索、目录遍历、回收站删除 |
| 进程管理 | `process.manage` | 仅限 Windows;list/search/kill 三模式;关键进程保护 |
| 远程执行 | `process.exec` | `program+arguments` 模式,不支持 command 字符串 |
| 系统感知 | `system.info` / `system.screenshot` | 环境信息采集与可视化回传 |
| 人机交互 | `system.notify` / `system.clipboard` / `system.input` | 弹窗、剪贴板读写、键鼠自动化(latest-wins 调度) |
显著优点
- 安全架构完备:多层权限 gate(Gateway 白名单 → 节点声明 → 显式授权 → 关键操作确认),破坏性操作链式拦截
- 防御性编程:详细的错误码体系(
INVALID_PARAMS/TIMEOUT/FILE_READ_FAILED/PROCESS_MANAGE_FAILED等),每个失败场景配套可执行的排查建议 - 跨平台兼容设计:
process.which探测可执行性,process.manage明确平台边界(Windows only) - 异步友好:
system.input/system.notify异步入队立即返回,system.input支持 latest-wins 抢占调度 - 精细超时控制:三层超时机制(调用端/网关超时、
node.invoke.timeoutMs、能力内部超时),取最小值生效
潜在局限
- 平台锁限制:进程管理仅限 Windows;剪贴板/输入/通知依赖图形环境
- 命令白名单依赖:Gateway 需预配置
gateway.nodes.allowCommands,未配置则全量阻断 - 无自动权限提升:遇到权限不足需用户手动处理,不自动绕过 UAC/sudo
- 输入动作不可回滚:
system.input一旦执行无法撤销,latest-wins 可能中断进行中序列 - 节点身份强校验:
modelIdentifier不匹配即拒绝,可能误杀兼容节点
适合人群
- 远程运维工程师:批量节点文件同步、进程巡检、异常终止
- 自动化测试团队:跨机器 UI 自动化(配合
system.input+system.screenshot) - 安全运维/DevSecOps:受控环境下的最小权限远程操作,需审计日志场景
- 技术支持/售后:远程诊断客户环境,采集系统信息、截图、弹窗提示
常规风险
| 风险类别 | 具体表现 | 缓解措施 |
|:---|:---|:---|
| 误操作数据丢失 | `file.write` 覆盖/删除未备份文件 | 强制 `allowWrite=true` + 用户确认 + 回收站删除 |
| 关键服务中断 | `process.manage` 终止系统进程 | 关键进程保护机制 + 仅允许自终止 |
| 权限横向移动 | 利用 `process.exec` 执行未授权命令 | Gateway 命令白名单 + 节点声明双重校验 |
| 信息泄露 | `system.clipboard` 读取敏感内容 | 操作审计 + 最小必要原则 |
| UI 自动化失控 | `system.input` 抢占式调度中断用户操作 | latest-wins 设计降低堆积风险,但需业务层编排 |
| 超时雪崩 | 多层超时叠加导致预期外失败 | 明确 `timeoutMs` 预算,复杂任务拆分调用 |
> 总体评估:该技能在安全管控与功能覆盖间取得较好平衡,适合有 Gateway 基础设施、需审计合规的受控环境,不推荐用于无网关防护的开放场景。