SuperAPI AI 工具集

convex-deploy-guard

部署与运维

查看项目

更新于 10-15 21:51

技能介绍

用途:这是 Convex 项目的部署纪律技能,用于避免把命令发到错误的部署目标。每个 Convex 项目通常有多个部署(个人 dev、preview、prod,且一台机器上可能跨多个项目)。本技能要求先识别、再宣告、后执行,并把 prod 视为需逐操作、逐会话授权。

主要流程:1) 行动前识别:读取 .env.local 中的 CONVEX_DEPLOYMENT、convex.json,以及 CONVEX_DEPLOY_KEY 是否设置,或调用官方 Convex MCP status 工具;将目标分类为 local-anonymous、dev、preview、prod,若两个来源不一致需先解决。2) 宣告:在任何影响部署的命令前用一行说明目标,例如 target: dev(joyful-capybara-123, personal dev);不得在发现目标的同一瞬间执行命令。3) prod 需本会话内全新的明确同意:npx convex deploy(解析为 prod 时)、npx convex run --prod、对 prod 执行 env set、prod 快照导入导出、以 prod 权限启动 MCP 前,须说明将在哪个部署上改变什么并取得明确同意;先前或针对其他目标的同意不延续。

MCP 安全默认值:以非 prod 范围启动官方 MCP(--deployment dev);两个 prod 相关标志风险不同,须分开:只读 prod 审计(advisor/insights 读取数据、日志、洞察)仅传 --cautiously-allow-production-pii(只读工具);--dangerously-enable-production-deployments(启用可变 prod 工具)除非用户本会话明确要求改变 prod,否则保持关闭,默认不得配成对使用。只读会话模式:用户声明只读后须绝对遵守,不部署、不改 env、不通过 run 变更、不导入;启动 MCP 时加 --disable-tools run,envSet,envRemove。若部署看似无变化,不要重复部署,应重新执行第一步,确认是否落在了与观察不同的部署上。无法确定命令目标时必须查明(status 工具、比较 npx convex env list 指纹),不得猜测。该技能可组合,作为 ship、env、migrate、seed 的第 0 步,本身不是部署工具。