节点参考

结构动作与流程控制字段

说明 If、Repeat、While、TryCatch、Race、SubFlow、Label、Goto、Break、Continue 等结构节点。

当前:结构动作与流程控制字段
节点参考

结构动作与流程控制字段

说明 If、Repeat、While、TryCatch、Race、SubFlow、Label、Goto、Break、Continue 等结构节点。

条件分支与变量分支

结构节点用于组织流程,不直接执行触控或识别。AI 应使用结构节点表达分支,而不是把所有可能性堆成线性步骤。

  • If — 条件分支。字段:conditionsconditiontimeConditionvarConditionthenBlockelseBlock。新脚本优先使用 conditions
  • VarSwitch — 变量分支。字段:keymatchModecasesdefaultBlockmatchMode 支持 TEXT_EQUALSTEXT_CONTAINSNUMBER_EQUALS
  • VarSwitchCase — 字段 matchValueblockdefaultBlock 用于无匹配时兜底。

循环结构

循环必须设置护栏,避免脚本无限执行。AI 输出循环时应同时说明退出条件。

  • Repeat — 固定次数循环。times 是次数;timesVarKey 不为空时从变量读取次数;block 是循环体;intervalMillis 是每轮间隔。
  • WhileVar — 变量条件循环。字段:keyopvalueblockintervalMillismaxIterationsestimateIterationsop 支持 LTLEEQNEGEGT
  • WhileVision — 视觉条件循环。字段:conditionblockintervalMillistimeoutMillismaxIterationsestimateIterations
  • Break — 跳出当前循环。
  • Continue — 跳过本轮剩余动作并进入下一轮。

兜底、竞速与复用

复杂脚本应通过 TryCatch 和子流程降低重复逻辑。Race 适合两个候选条件谁先满足就继续的场景。

  • Block — 结构分组。字段:blockconfig;不改变语义,只提高可读性或批量配置。
  • TryCatch — 失败兜底。tryBlock 中动作失败后进入 catchBlock
  • Race — 并行竞速。leftBlockrightBlock 同时启动,先完成的一路生效,另一路取消。
  • SubFlowDef — 子流程定义。字段:nameparamsblock;定义本身不按顺序执行。
  • CallSubFlow — 调用子流程。字段:targetNameparamBindings
  • ParamBinding — 字段 namevalueSubFlowParam — 字段 namedefaultValuerequireddescription

跳转与事件监听

跳转适合少量兜底路径;大量跳转会降低可维护性。事件监听适合在动作生命周期中触发提示、变量写入或子流程。

  • Label — 跳转标签。字段:name
  • Goto — 跳转到标签或节点。字段:target。运行时先在当前 block 查找,找不到再向外层冒泡;不支持跳进某个子块。
  • EventListener — 字段包括 eventNamelabelTargettargetSubFlowparamBindingsasyncwriteEventToVarseventNameVaractionTypeVarreasonVartargetTypeactionTargetIdactionTargetPathactionactionConfigvariableNode
  • EventTargetTypeLABELSUB_FLOWACTIONINLINE_ACTIONVARIABLE