返回文档中心
GC-LIGHT SKILL / USAGE & SAFETY

使用与安全规则

使用统一设备控制 Skill 操作当前支持的 Mini,并理解目标确认、变更验证与异常处理规则。

GC Light Control SkillAgent Skill 指南
文档目录

如何提出请求

告诉 Agent 要使用 gclight-control,并提供目标串口、希望读取或修改的状态,以及状态变更所需的明确参数。该 Skill 是 GC Light 设备族的统一入口,当前 gcli 仅支持 Mini。Windows 端口通常类似 COM3,Linux 端口通常类似 /dev/ttyACM0;请使用系统实际分配的端口。

只读请求示例:

使用 gclight-control 查询 COM3 上 Mini 的序列号和当前输出状态。
使用 gclight-control 读取 /dev/ttyACM0 上 Mini 的实际电流、温度和蓝牙状态。

状态变更示例:

使用 gclight-control 将 /dev/ttyACM1 上 Mini 的电流设为 120 mA 并开启输出,然后验证状态。
立即关闭 COM3 上 Mini 的激光输出,并确认 output_enabled 为 false。

支持的操作

意图Agent 使用的 gcli 操作
探测已知候选端口mini discover <PORT> [...]
查询身份mini -p <PORT> info
查询输出状态与实际电流mini -p <PORT> state
查询全部或指定状态字段mini -p <PORT> status [FIELD ...]
设置电流并开启输出mini -p <PORT> laser-on --current-ma <MA>
关闭输出mini -p <PORT> laser-off
只修改电流设定mini -p <PORT> set-current --current-ma <MA>
查询或切换蓝牙`mini -p bluetooth get
执行设备自检mini -p <PORT> self-test
读取有限数量的主动上报mini -p <PORT> events --count <N> --event-timeout <SECONDS>

可查询的状态字段为 output-state、actual-current、actual-voltage、temperature-1、pd-data、current-setting 和 bluetooth-state。电流单位为 mA,电压单位为 mV,温度单位为摄氏度。

如果你希望自己运行这些命令,请查看 gcli 命令参考。

Skill 如何执行状态变更

laser-on、laser-off、set-current、蓝牙开关和 self-test 都属于设备状态变更。Skill 只会在请求明确授权对应操作时执行。

开启输出

开光前,Agent 应先查询 info 和 state,使设备序列号与变更前输出状态可见。变更命令只执行一次,然后再次查询 state,确认实际 output_enabled 状态。

关闭输出

对于紧急或明确的关光请求,Agent 应先发送 laser-off,再进行可选诊断,最后查询 state 并确认 output_enabled 为 false。

设置电流或切换蓝牙

设置电流后查询 current-setting 与 output-state;切换蓝牙后执行 bluetooth get。命令退出成功但没有后续状态证据,不足以证明变更已经生效。

超时、失败与不确定结果

  • 成功的设备命令通常向 stdout 写入一个紧凑 JSON 值;Agent 只在退出码为 0 后解析或报告它。
  • 参数解析错误返回退出码 2;设备、传输或运行时错误返回退出码 1。Agent 应保留具体错误文本。
  • 状态变更命令超时或结果不明确时,设备可能已经执行操作。Agent 不会盲目重试,而是先查询当前状态;若目标状态仍不确定,再征求你的确认。
  • events 请求必须包含有限的数量和单次等待超时,避免 Agent 无限等待。
  • 退出 AI 客户端、结束 gcli 或断开串口都不等同于关闭激光输出。

结果报告应包含已选串口、已知时的设备序列号、命令结果,以及用于确认状态的后续查询。只看到命令构造完成、回执存在或测量值为零,都不能单独作为成功证据。