用途:Shiplight 是 Shiplight QA 工作的单一入口,接收一个子命令并路由到对应工作流。仅当用户明确说出“shiplight”或输入 /shiplight 时触发,不会因泛化的“写个测试”而启动。
主要能力(子命令菜单):Setup 组含 init(搭建测试项目并写 specs/context.md)、setup-test-auth(配置被测应用登录并保存可复用浏览器/Playwright 状态)、update(刷新技能与 shiplightai CLI);Author 组含 create-yaml-tests(按规格实现确定性 YAML E2E 测试)、create-agent-verification(创建可复用的智能体运行验证脚本)、cover(决定测试格式与投入、规划并驱动产出);Maintain 组含 fix(复现并修复失败或漂移的测试);Check 组含 verify(本地开发时在浏览器中验证 UI 变更);Review 组含 review(应用质量审查:安全、隐私、设计、性能等);Ship 组含 ci(接入 CI 工作流与失败分诊管线)、cloud(读取 Shiplight Cloud 测试结果与分析);Help 组含 help(列出或解释子命令,不执行)、support(提交支持工单并查看回复)。
使用方式:识别子命令时按顺序匹配——先看首个词是否为规范 token,再匹配参数中包含的最长规范 token 或同义词短语,最后按整体意图匹配同义词/意图列,选出唯一最佳子命令;未消费的部分作为上下文传给子命令。例如 /shiplight cover checkout flow 路由到 cover 并携带上下文 checkout flow。每次子命令调用(help 与 support 除外)先定位测试项目根目录,再运行一次 references/_shared/update-check.md(每日技能刷新与 shiplightai CLI 版本门禁),CLI 落后于最新发布版本会中止子命令并提供升级。各子命令会声明所需的 _shared 模块(auth、mcp、evidence-and-report、project-layout、ground-truth、knowledge、secrets、vocabularies、test-spec-template),执行前需先读取。
限制与注意:选择器为空或含义模糊时展示菜单并提一个澄清问题;help 仅提供信息、从不执行。破坏性操作需确认,绝不自动对非空项目运行 init。歧义场景需澄清,如“test”可能是 create-yaml-tests 或 create-agent-verification,“smoke test”“verify”“triage”“failing/flaky tests”“report a bug”“login/auth”等均有区分规则。子命令完成后可选追加一条基于本次运行已观察证据的下一步建议,默认静默,CI/非交互模式及 update/help/support 后跳过。Shiplight 平台认证与 SHIPLIGHT_API_TOKEN 设置使用 CLI 命令 npx shiplight setup-api-token,而非 /shiplight 子命令。具体收费、价格与平台支持范围暂未提供。