SuperAPI AI 工具集

argent-lens

设计与创作

查看项目

更新于 10-16 09:30

技能介绍

Argent Lens 用于为界面元素提出多个视觉设计方案,让人类在 Argent Lens 窗口中挑选。该工作流默认关闭,使用前须先运行 argent enable argent-lens 启用;若 propose_variant / await_user_selection 返回 not-found,说明开关未开,需启用后重试。

用途与能力:实现多个候选设计,在设备上分别运行并截图,再用 propose_variant 暂存。每个元素在 Argent Lens 窗口中显示为浮动卡片,与实时模拟器画面中的真实元素以细线相连。人类可逐元素选择、附加自由评论,并按 Complete selection。await_user_selection 是唯一阻塞调用,返回决定。

核心规则:一个变体等于一张真实且不同的截图,预览图必须是该变体实际应用后拍摄的。不要提交未构建的变体,不要两个变体指向同一文件路径;若两张截图字节相同,说明变体并未生效。流程为计划、构建、导航、截图、提交,对每个元素的每个变体重复,最后 await 一次。

工具:propose_variant 不阻塞,为单个元素提交一个变体,每个变体调用一次;await_user_selection 阻塞,在所有变体提交后调用一次。propose_variant 参数包括 element、可选 match(by 为 text/label/identifier/role)、可选 udid、variant(name、summary、code?、filePath?、previewImage?、frame?)。同一 element 的重复调用会累积变体,不同 element 值生成不同卡片。务必传 udid,即截图所用模拟器或模拟器 id。

工作流:先解析模拟器(argent-ios-simulator-setup / argent-android-emulator-setup),React Native 使用 argent-react-native-app-workflow。步骤:规划变体;用 describe 或 RN 的 debugger-component-tree 获取精确匹配器;对每个变体执行构建、应用到设备、导航、截图、propose,然后还原更改;最后调用一次 await_user_selection 获取结果并应用。状态 completed 时按 selections 应用 chosenVariant,忽略 unselected 中的元素,并把 annotations 和 globalComment 当作变更请求;pending 不是错误,再次等待即可;no_proposals 表示尚未提交任何变体。

限制:每个元素至少两个变体;必须实际构建后再提交;每个变体须有不同截图;一次只让一个变体在屏幕上;提交前先还原;若无法产生可见差异(只读应用、无障碍损坏、包无法热重载等),应停止并告知用户,不要提交重复截图。重新提交会开始新回合并清除上一回合元素。