SuperAPI AI 工具集

wendy-cloud-iterate

部署与运维

查看项目

更新于 10-16 04:26

技能介绍

用途

wendy-cloud-iterate 是一个用于 Wendy Cloud 仓库的自主持续集成循环技能。它面向需要反复迭代云栈、查找并修复缺陷的场景,把环境检查、启动开发栈、运行测试、诊断修复、提交 PR 和自定进度串成一个可循环执行的工作流。

主要能力

技能在每次会话最开始时执行前置检查,逐项确认并补齐以下依赖:Homebrew、Docker Desktop(含守护进程启动与就绪等待)、GitHub CLI(含登录状态检查)、Swift 工具链、protoc、wendy CLI、pki-core 仓库与 cloud 仓库,以及用于自主浏览器控制的 Chrome MCP。未满足的必需项会汇总为 BLOCKED 列表并以退出码 1 终止;Chrome MCP 不可用时,wendy auth login 需要用户手动完成。

技能被授予的自主权限包括:无需询问即可克隆或拉取 wendylabsinc 组织下的任意仓库、运行任意仓库中的 make 目标、运行 docker compose 命令(up、down、restart、logs)、运行 wendy CLI 命令、编辑源码以修复缺陷并在之后提交、向当前分支推送提交、通过 gh pr create 发起拉取请求。缺失的仓库、二进制或配置文件由技能自行补齐。

使用方式

开发栈启动有两种方式,位于 cloud 仓库根目录:make dev-docker(broker 运行在 Docker 中,无需 Swift 工具链)或 make dev-local(在主机上构建 broker,重建更快)。两者均为零参数脚本,会启动 Postgres、Swift broker、tunnel-broker 与 gRPC-web Envoy,初始化开发用户与组织,并在首次运行时把 docker-compose.override.yml.example 复制为被 gitignore 的 docker-compose.override.yml。

CLI 对本地栈的认证流程(文档标注为端到端已知损坏,编号 WDY-2330):运行 wendy auth login --cloud http://localhost:9200 --cloud-grpc localhost:50051 --json,从输出中读取回调端口,使用 Chrome MCP 工具导航到 cli-auth URL,必要时点击 Dev Login,选择 wendylabsinc 组织,等待证书签发完成。

测试方面,Swift 集成测试是主要信号:在 cloud 仓库运行 make test-swift;若需过滤特定测试,可用 swift test --filter TestCreateAsset。测试使用 BrokerFixture(进程内 gRPC、MockPKIServer、真实 Postgres),无需真实 Swift broker 或 pki-core,约 60 个测试分布在 6 个套件中。

缺陷修复遵循固定流程:先记录当前分支为 BASE_BRANCH,再创建 worktree(git worktree add "$BASE/.worktrees/$BRANCH" -b "$BRANCH"),派发子代理在 worktree 内实现并测试修复,执行 UI 冒烟测试并按需扩充测试计划,然后 gh pr create 发起 PR 并用 gh pr checks --watch 等待全部检查通过,最后 gh pr merge --squash --delete-branch 合并并清理 worktree。修复不允许直接提交到当前分支。若修复超过 30 行、跨多个子系统、15 分钟内无法定位根因或需要架构改动,则改为开 Linear issue。

循环的节奏根据结果调整:发现并修复失败后 5 分钟复查,发现但未修复失败后 10 分钟,一切正常则 30 分钟。连续三次干净迭代后循环自行终止,并输出终止消息;也可在调用提示中传入 no-auto-terminate 让其持续运行。每次迭代结束记录迭代摘要,包括测试通过数、已应用修复、冒烟测试执行情况、设备可达状态与连续干净计数。

适用场景

适用于需要对 Wendy Cloud 云栈进行持续迭代、自动发现并修复缺陷、并希望由 PR 流程保证变更质量的开发场景。也适用于在真实 WendyOS 设备上做可选验证的场景。

限制

文档明确标注本地栈的 CLI 认证流程端到端已知损坏(WDY-2330),dev cookie 产生的会话虽被 UI 接受,但所有承载数据的 RPC 都返回 UNAUTHENTICATED;相关步骤只能视为流程形态,而非获得可用证书的方法。UI 冒烟测试计划自述当前也无法通过(WDY-2330)。设备测试为可选:未连接设备时可跳过;若生产证书缺少 clientAuth 扩展密钥用途(已知的云 PKI 缺陷),则跳过 mTLS 检查。生产 CLI 证书缺少 clientAuth 同样是已知问题,测试应使用本地栈。