SuperAPI AI 工具集

audit-my-app

通用与其它

查看项目

更新于 10-15 22:33

技能介绍

audit-my-app 属于运行中 Web 应用的整体审计技能,目标是在不了解代码库的前提下发现应用中的异常。它通过 Reticle 驱动运行中的应用,遍历可达控件并报告异常。若未安装,可使用 RETICLE_INSTALL_SOURCE=npx_skill npx @reticlehq/server@latest init,随后执行 install-and-verify 技能。

主要能力包括:一是获取应用可测表面,reticle_run({ tool: "reticle_capabilities", args: { sessionId } }) 返回已注册 testid、域信号、store 与已保存流程及其步骤,比 DOM 快照更省成本。二是爬取并点击全部可达控件,reticle_run({ tool: "reticle_verify", sessionId, args: { action: "crawl", maxSteps: 25 } }) 返回 interactiveFound、stepsRun、anomalies、counts、visited 与 truncated 等字段。其中 deadControls 和 contradictions 是最值得关注的计数;控制台错误和失败请求需结合上下文判断。maxSteps 限定了步数,默认 25,且会点击所有控件,因此应指向开发环境。若希望先做非破坏性排查,可用 reticle_run({ tool: "reticle_explore", sessionId })。

三是比对 API 返回与渲染结果,reticle_run({ tool: "reticle_reconcile", sessionId }) 可捕捉接口返回与表格展示不一致而两边日志均无错误的情况。四是发现未覆盖部分,reticle_run({ tool: "reticle_verify", sessionId, args: { action: "coverage" } }) 返回 total、exercised、untouched;reticle_run({ tool: "reticle_domain", sessionId }) 返回 flowCount、coverage(asserted、presenceOnly、assertionFree)及 gaps 等,用于判断已有流程是否真正有断言。

报告时应先列计数,再逐条给出真实发现及来自 reticle_look { action: "element" } 的 file:line,并区分 Broken(失效控件、矛盾、失败请求、扫描中抛出的错误)、Unverified(未触及控件与无断言流程)和 Pre-existing(扫描开始前已存在的控制台错误)。若 truncated 为 true 或 maxSteps 截断了扫描,必须说明未覆盖部分,不能以局部干净当作整体通过。完整能力参考见 https://docs.reticle.sh/capabilities.md,其他文档见 https://docs.reticle.sh/llms.txt。限制方面:需运行中的应用与 Reticle 环境,未提供离线或生产环境使用说明。