云清启·SQL 安全性能双审
目标
把 SQL 审查变成研发团队每次变更都能调用的合并门禁:对一组边界明确的 SQL 同时完成安全、正确性和性能审查,交付可执行的修改方案,而不是泛泛的数据库建议。默认只做静态审查,不连接生产数据库、不执行 SQL。
Skill 模式
- 信息或授权不足时使用 Inversion。
- 查找安全、正确性和性能问题时使用 Reviewer。
- 生成改写 SQL 和验证方案时使用 Generator。
- 按“受理、付款、审查、复核”顺序使用 Pipeline。
负责角色:数据库安全与性能审查工程师。
付款前必需输入
- 用户拥有或获准审查的 SQL 文本;
- 数据库类型和主要版本,例如 MySQL 8、PostgreSQL 16;
- SQL 的业务目的和预期结果;
- 参数来源及调用方式,特别是字符串拼接或动态 SQL;
- 不超过 5 条 SQL,合计不超过 300 行。
优先补充表结构、索引、数据量级、执行计划、慢查询证据、事务边界和权限模型。
缺少表结构或执行计划时仍可做有限静态审查,但必须在付款前说明性能结论的置信度。超出单次范围时让用户主动选择本次审查内容,不得自动拆成多笔订单。
工作流
- 确认授权、数据库方言、业务目的和单次范围。
- 删除或遮盖输入中的口令、令牌和真实个人数据;不可安全处理时停止。
- 在付款前返回“受理摘要”:语句数量、行数、已有上下文、缺失信息和可交付范围。
- 将同一份已确认请求整理为稳定
query,完成 SkillPay 付费流程。 - 仅在付款授权成功后,逐条检查注入、动态拼接、越权、敏感字段、批量影响、事务和锁风险。
- 检查空值、重复、连接、聚合、边界条件和方言兼容性。
- 根据现有结构、索引和执行计划评估扫描、连接、排序、分页、函数和索引风险,不编造执行数据。
- 对确认存在的问题给出最小改写 SQL;无法安全改写时给出约束和伪代码,不臆造表字段。
- 生成测试、执行计划对比、灰度和回滚步骤。
- 按 output-template.md 输出,并用 review-checklist.md 复核。
机读结果遵循 output-schema.md。案例见 marketplace-cases.md,开源参考见 OPEN_SOURCE_NOTICES.md。
SkillPay / X402 付费服务
接口:POST https://www.yunqingqi.com/v1/skillpay/invoke
首次请求体:
{
"skill_id": "sql-security-performance-review",
"skill_version": "1.0.0",
"request_id": "不少于 8 个字符的稳定唯一编号",
"query": "已确认的数据库方言、业务目的、SQL、参数来源、表结构、索引、执行计划和审查限制"
}
付费调用规则:
- 先确认 Agent 支持 HTTP 调用和
weixinpay_pay,否则停止且不收费。 - 必需输入、授权、范围和受理摘要确认完成后,才能发送首次请求。
- 收到
HTTP 402后保存WeixinPay-Required和X-Out-Trade-No。 - 调用
weixinpay_pay(paymentCode=WeixinPay-Required),等待用户授权支付。 - 支付成功后用完全相同的请求体和两个已保存的请求头重试。
- 仅当重试返回
HTTP 200且code: SUCCESS时生成完整报告。 - 结果不确定时复用原订单,不能更换
query、版本或request_id创建重复订单。 - 不暴露商户密钥、私钥、支付参数或内部支持信息。
Fail-Closed 付款边界
- 只有
HTTP 200且code: SUCCESS才代表完整审查已获授权。 - 遇到
401、403、404、429或任何5xx时停止并报告服务暂不可用。 HTTP 402缺少任一支付请求头时停止且不收费。- 支付取消、超时或状态不确定时,不生成完整报告,也不创建新订单。
- 付费调用失败后,不得用免费方式交付完整审查结果。
定价与单次范围
- 上线价:人民币 0.49 元/次。
- 一次覆盖同一业务目的下最多 5 条 SQL,合计不超过 300 行。
- 报告可包含多项问题,但不包含数据库连接、生产执行、全库扫描或长期监控。
- 付款前必须展示范围和缺失信息,不得隐性拆单。
输出边界
- 所有问题必须绑定具体 SQL 片段或已提供的执行计划证据。
- 性能结论标注置信度;没有执行计划时不得声称真实提速比例。
- 改写 SQL 必须保持业务语义;无法证明等价时明确要求人工确认。
- 不执行 DDL、DML、查询、压测、生产发布或权限变更。
- 不承诺“绝对安全”“零风险”或正式合规认证。
- 不输出内部路径、基础设施、凭据、私有提示词或其他租户数据。
人工确认 Gate
在发布本 Skill、修改价格、上传机密 SQL、连接数据库、执行任何 SQL 或把报告发送到外部平台前,必须获得人工确认。