CodexQA

AI 负责写,CodexQA 负责证明

理解应用全貌智能测试智能代码覆盖率AI 用例生成AI 缺陷检测E2E 自动化

每一步都附证据,Agent 读完就能修,合并放行有据可依。

用 codexqa-defect-analyzer 审这个分支。 需求:退款不得超过剩余可退余额。

盲测回放发现 7 处缺陷,0 误报不建议合并看报告
  • 11 个开源技能
  • 公开盲测 7/7 召回,0 误报
  • 本地运行,无需账号
  • 支持私有化部署
  • 可接国产大模型

01为什么需要验证

AI 只能证明它写完了, CodexQA 负责证明代码是对的

AI 写得越快,质量验证越跟不上。

02验证方法

独立于 Agent 的验证层,六步验到敢放行

图谱查波及、双路查缺陷、浏览器留证据,11 个开源技能装进你的 Coding Agent。

看全部 11 个技能
  1. 在本地建出架构知识图谱:模块怎么分层、真实依赖和枢纽在哪。需求有没有缺口、能不能测,也先登记清楚。

    • code-wiki
    • requirement-analyzer

另有 rootcause-analyzer 做异常根因分析,skill-router 按你的描述自动选技能。全部在本地运行,不需要账号,也不需要额外的模型 Key。

03公开证据

可信不靠 AI 自证,靠证据

召回 7/7、0 误报,用例 7/7、需求 9/14、代码 93.2%、接口 33/39、调用链 2/2。 每个数字都能复跑,没覆盖到的也列出来。

  1. 01

    独立验证,对照公开答案

    ground-truth.json

    验证方不是写代码的 Agent,结果逐条对照标准答案:7 处缺陷全部找到,4 个干扰项没有误报。

  2. 02

    每个结论都附证据

    JSON

    位置、期望、实际和触发条件按 JSON 输出,Agent 直接读取修复;判定不报的也写明理由。

  3. 03

    查到哪、没查到哪都公开

    用例、需求、代码、接口、调用链五个维度逐项给数,缺口一并列出。

    • 7/7用例覆盖
    • 9/14需求覆盖
    • 93.2%代码覆盖
    • 33/39接口覆盖
    • 2/2调用链
defect-report.htmlcodexqa-defect-analyzer
inventory-service/feature/reservation-v2→main
不建议合并
改动函数
12
发现缺陷
7
可疑写法核实
4处正确,未误报
与答案对照
7/7
编号问题
D3退款金额没有按剩余可退余额封顶对应本次需求refund.js:18 · §11
D5网关退款失败,仍记账并返回成功refund.js:56 · §12
D2两个并发预留可能同时成功,造成超卖inventory.js:49 · §4
D4正好 10 件、50 件时拿不到阶梯折扣pricing.js:32 · §8
D6临界区抛错时锁不释放,后续操作卡死db.js:186 · §14
D7提交后状态未更新,过期任务重复释放库存reservation.js:93 · §5
D1预留过期释放后,可用库存缓存没有失效reservation.js:162 · §6
检测来源规则扫描0/7AI 语义检测7/77 处都没有语法特征,102 条 Semgrep 种子规则一处未中
自己核对$ node examples/inventory-service/verify.mjsPASS: 7 seeded defects reproduce, 4 decoys behave correctly.
结论与答案一致缺陷的位置、期望与实际已交回 Agent 修复回放 · 公开盲测样例

结果来自一次记录运行(Composer,2026-09-08):一个模型、一次运行,不是多模型基准。

不是给人看的报告, 是 Agent 能直接修的反馈

每个发现都带位置、期望、实际和触发条件, Agent 读完就改,改完再验,直到通过。

Coding AgentAgent 只看代码时

“退款逻辑已完成,测试全部通过。”

测试全部通过

它的测试走过的路径

  • 网关成功 → 记账,返回成功已测
  • 网关失败 → 不改账本,返回失败未测

它写的测试没有覆盖网关失败这条路径。

feedback.jsonCodexQA 返回

{

// 位置

"location": "src/refund.js:56–91 · refundOrder",

// 期望

"expected": "网关退款失败时不改账本,返回失败(需求第 12 条)",

// 实际

"actual": "捕获异常后伪造本地回执,账本照常记账并返回 ok: true",

// 触发

"trigger": "gateway.failNextRefunds(1) 后调用 refundOrder"

}

  1. 交回 Agent
  2. 按期望修复
  3. 重新验证
  4. 通过

示例取自公开样例 inventory-service 的标准答案(缺陷 D5)。

04交付流程

Agentic SDLC: 不换流程,让 AI 研发真正落地

沿用你现有的需求、代码仓库、CI 和发布流程,每个环节交给一个 Agent;组件测试、集成测试两道门禁把关,不过关就带着根因和证据退回编码。

Timo · 内部使用 · 预计 2026 Q4 开放

  1. 1需求规格(Spec)需求分析把需求写成规格说明,明确功能点和验收标准。AI 需求分析师
  2. 2技术设计(Spec)技术设计 Agent分析现有代码与依赖,产出技术设计文档和影响范围。AI 架构分析师
  3. 3编码实现编码 Agent以需求规格和技术设计为基线实现代码,补写单元测试,完成构建与静态扫描后提交。AI 开发工程师
  4. 4组件测试与质量门禁组件测试 Agent执行单元测试并统计覆盖率,做接口测试和代码评审。未通过门禁时,由缺陷分析师做根因分析,返回编码。AI 测试工程师AI 代码评审AI 缺陷分析师
  5. 5测试准备(测试左移)并行测试设计 Agent、测试数据准备 Agent基于需求规格和技术设计,并行产出测试用例集和测试数据集。AI 测试工程师
  6. 6集成测试与质量门禁集成测试 Agent:接口集成测试、端到端测试使用测试用例集和测试数据集执行集成测试。未通过门禁时,附测试证据返回编码。AI 测试工程师AI 缺陷分析师
  7. 7发布上线发布流程组件测试和集成测试两道质量门禁全部通过后,按企业发布流程上线。
  • 01规格驱动开发

    需求规格和技术设计先写成 Spec,编码与测试都以 Spec 为基线,做到可追溯。

  • 02双质量门禁

    组件测试和集成测试各设一道质量门禁,全部通过才进入发布上线。

  • 03缺陷闭环

    未通过门禁的缺陷附根因分析和测试证据返回编码 Agent,修复后重新回归。

  • 04测试左移

    编码的同时,按 Spec 完成测试设计和测试数据准备,不占用关键路径。

流程示意。Timo 目前内部使用。

05企业服务

不只是工具,帮企业落地 AI 软件工程

从一个试点项目开始,和你的团队把 AI 用进需求、开发、测试和上线,全部可私有化。

预约评估

06安全与私有化

代码和数据, 留在你的边界之内

担心代码外泄、安全评审过不了?从开发者本机的一个技能,到桌面端、大模型与解决方案整套私有化,按你的安全要求来部署。

  • 本地执行

    CodexQA Skills 在你的 Agent 里本地运行,报告写在本机磁盘上,不需要账号。源码上下文怎么处理,取决于你用的 Agent 和模型。

  • 大模型私有化

    可以接入企业内部部署的大模型,包括国产大模型。私有化部署并使用内部模型时,代码和数据可以全部留在企业网络内。

  • 整套方案私有化

    Timo 支持企业内网与私有化部署,大模型和质量保证等解决方案可以一起部署到企业内部;CodexQA 平台可评估私有化部署。

  • 开源可审查

    技能集以 Apache-2.0 / MIT 协议开源,指令和脚本可以逐行审查;部分技能用到的本地分析引擎单独分发、闭源。

07开始使用

三种用法,从一个技能到整套平台

先在自己的 Agent 里免费装技能,团队需要时再接平台,或评估私有化部署。

一行命令,接入你的 Agent

不用账号、不用网关,按提示选择 Cursor、Claude Code、Codex 或 OpenClaw。

CodexQA Skills 的开源仓库 openqa-cn/codexqa 采用 Apache-2.0 协议(其中用例生成技能为 MIT),技能的指令和脚本都可以逐行审查。

npx skills add openqa-cn/codexqa --skill codexqa-skill-router

从一个试点项目开始

选一个真实项目,在内网或用脱敏代码跑一次验证。30 分钟沟通,给出评估和落地建议。