AI Trust Decision Engine · 协议生命周期验证

AI 生成的代码,可信吗?

Progmune 验证 AI 软件是否遵循正确的协议生命周期——TLS 握手、认证流、支付完整性、资源管理。这类违规跨越函数调用序列,SAST / SCA 看不见,Progmune 看得见。

APPROVED NEEDS_REVIEW BLOCKED

示例:Progmune 对代码的三种裁决输出

开始使用 加入社区
订阅 Progmune 版本更新每版一封邮件 · 无垃圾 · 一键退订

订阅即表示同意隐私政策 · 随时一键退订

📦 npm progmune-runtime v3.7.6 · 本周下载 … · 累计下载 …

npm install progmune-runtime

🧡 开源 MIT · 免费 · 5 分钟上手

01为什么需要 Progmune

研究指出:LLM 输出是统计表演而非推理(Kambhampati 等,arXiv:2504.09762)。当 AI 代码跨多个函数实现协议流程时,任何一环缺失都可能酿成安全事故。

❌ 传统检查的盲区

  • SAST 逐行扫模式:看不到跨调用序列的违规
  • SCA 查依赖漏洞:不管代码是否走完协议流程
  • 单测覆盖“写过的用例”,不是“协议要求的路径”
  • CodeQL 能跨函数追踪数据流,但不验证协议时序约束——生命周期合规需要状态机,不是污点流
→

✅ Progmune 的视角

  • 函数 IR + 调用序列,映射到协议状态机
  • 验证“握手 → 建立 → 释放”全生命周期合规
  • 输出 Trust Score + Decision + 证据链
  • 序列级协议状态机验证,而非模式匹配

Progmune 不替代 SAST / SCA,也不被它们替代:SAST 看单语句与模式,Progmune 看跨函数序列的协议生命周期——两层确定性筛查联合部署,各守各的层。详见对比页。

02Progmune 是什么

一套 AI 代码治理基础设施:静态分析代码的实际协议行为,回答“能不能部署”,而不是给一个孤立分数。

名字释义:Progmune = Program + Immune(程序免疫)——失败语料库记录每次被拦截的错误模式,快速通道直接匹配已知缺陷(0 LLM);知识库随新语料持续扩充。

5 阶段流水线

Collect → Normalize → Score → Decide → Assemble,产出决策与证据。

4 维度评分

策略合规 35% · 协议安全 30% · 验证覆盖 20% · 治理完整性 15%

Decision > Score

企业要的是“能不能部署”,不是“58 分还是 61 分”——关键违规直接 BLOCK。

03核心能力

🔬 IR + 调用序列

TS / Python 双语言 AST 提取,构建跨函数调用链(深度 ≤4、环安全),违规归因到入口函数。

🗺️ 协议状态机

消费 pre/post_states 注解校验序列合法性,含 endState 资源释放检查。无需手写注解——别名匹配 + 词段门控自动识别协议原语

🧠 知识网络飞轮

“每一个新库让所有验证变强”——库级 alias 跨项目迁移。

🛡️ 治理审计

Policy Engine + 多格式审计报告 + 账本溯源与签名,满足企业合规。

🔧 修复执行器

applyFix → verifyRepair → commit/rollback,修复后自动重新验证。

🤖 全场景接入

SDK · CLI · MCP(Claude Code)· GitHub Action(PR 门禁)· Trust API。

04语言覆盖现状

语言状态证据
TypeScript✅ Production盲测 795 金标:Recall 98.5% / Precision 100% / 0 FP;协议行 ✅×4
Python✅ Production协议盲测 v1.2:66 金标 检出 64(97%)/ 100% / 0 FP——2 条为注解依赖前置的已知漏检(基线单列);源码级检测 729 金标 Recall 100%
C✅ 注解驱动(Beta)真实模块金标 5/5 + 采纳案例 uftpd:0 误报 + 违规精确定位;每协议 ~2-3 条注解
框架适配✅ 12 专用Express / tRPC / FastAPI / Django / Flask / Fastify / Next.js / NestJS / Koa / Hapi / Gin / Fiber 路由认证检查——12/12 真实语料验证
Go✅ 注解驱动(Beta)IR 提取接入注册表 + SSG 状态机;合成金标 P=100% / R=100%;零外部工具链
Java❌ None规划中;多语言 IR 注册表已就绪,新增语言 = 注册一条

注:C 与 Go 为注解驱动验证(Beta)——未注解代码不检测、TLS 级深层覆盖仍无;框架适配 12 专用 = 4 结构级(AST)+ 8 启发式(代码串)。所有数字可点击查看证据。

05失败语料飞轮

每一次验证失败都不会被浪费——落入失败语料库、汇聚到中央 hub,让「验证覆盖」越来越强、高频错误模式越来越清晰。

🧯 失败入库

每次违规记录 SSG 状态快照、SVL 分级与约束类型

📡 中央汇聚

按项目本地入库 + 增量上报中央 hub,指纹去重

📈 反馈增强

失败语料帮助发现检测盲区、驱动规则迭代

🧬 免疫隐喻对照

生物免疫Progmune 对应
免疫记忆ACL-4 快速通道:命中已知失败模式直接修复(0 LLM)
抗体从被拦截的失败中提取的修复模式
记忆细胞 / 免疫档案失败语料库(SVL 分级 + 状态机快照)
免疫中枢中央 hub:汇聚各项目失败指纹,去重入库
疫苗148 条协议规则:把常见违规提前写成规则
免疫耐受词段门控:区分项目函数与外部库,降低误报

📊 高频错误模式 Top 10

实时从中央失败语料库拉取

  1. 加载中…

06使用方法

1️⃣ 安装

npm install progmune-runtime

2️⃣ 验证一个文件

npm run sdk src/server.ts --explain
# → BLOCK / WARN / ALLOW + 证据链

3️⃣ 项目级 Trust 检查

npm run trust -- --project . --json

4️⃣ 更多

npm run check          # 体检
npm run governance     # 治理审计
npm run precision:all  # 基准套件

5️⃣ 结果示例

$ npm run sdk src/server.ts --explain

⚠ WARN  protocol=auth   # 支付回调缺少签名验证
   at server.ts:42 → payment-callbacks.ts:9
   rule: AUTH_SIGNATURE_BEFORE_CONFIRM

✔ Decision: NEEDS_REVIEW   Trust Score: 64/100
MCP Claude Code:progmune_check / progmune_trust_check GitHub Action PR 门禁 Trust API POST /trust/check
📄 GitHub README 🚀 Quick Start 📚 API 参考 📊 覆盖矩阵
🛡️ 完全本地静态分析 · 代码不上传 · 脱敏违规指纹默认匿名上报(可关闭)

07下一步方向

从“检测器”走向“企业级治理平台”,以下方向正在推进。

🌐 更多语言

Python · C · Go

📦 Trust API SaaS

Dashboard → 多租户

🔌 协议扩展

OAuth2.0 · gRPC · GraphQL

⚙️ CI/CD 插件

GitHub App · GitLab · Jenkins

📊 行业基线

同行业 Trust Score 对比

🏆 公开基准

开源基准数据与方法论

🔗 SAST 结果聚合

把 Semgrep / CodeQL 的发现纳入统一审计报告——互补而非替代

🎯 商业化重点行业

金融科技(支付 / 交易) 云原生基础设施 SaaS 平台 电商 政务与合规

08常见问题

Progmune 能替代 CodeQL / Semgrep 吗?

不能,也不打算替代。CodeQL / Semgrep 是模式级 / 数据流级检查器,Progmune 是序列级协议状态机验证器——检查跨函数调用序列是否违反协议生命周期(如支付确认前未验签)。定位是辅助检查器:与 SAST / SCA 互补,建议联合使用而非二选一。

误报率高吗?

合成金标上:TypeScript 795 金标 Precision 100% / 0 误报;Python 729 金标 100% / 0 误报。真实语料按系统化 FP 治理方法学逐探测器补数据点并公开记录。边界如实标注:C / Go 为注解驱动 Beta,未注解代码不检测。不建议把它当零误报工具预期。

支持哪些语言?

TypeScript 与 Python 生产级;C、Go 注解驱动(Beta);Java 进行中。框架适配 12 个:Express、tRPC、FastAPI、Django、Flask、Fastify、Next.js、NestJS、Koa、Hapi、Gin、Fiber,均经真实语料验证。

和让 LLM 自己审代码有什么区别?

LLM 审查可被说服、不可复现、没有证据链。Progmune 的判定由确定性状态机完成——LLM 仅把 API 名称翻译成协议类别(磁盘缓存),不参与裁决。每次输出带 Trust Score、Decision 与可审计、可复现的证据链。

能当部署门禁用吗?

如实定位为辅助检查器,而非部署门禁。生成路径的拦截(违规代码不落盘)是硬保证;但把它作为生产部署的强制门禁,需第三方评测、独立审查与企业 POC 之后再做结论。今天可作为辅助检查接入 Trust API / CI。

怎么接入我的工作流?

三种入口:npm 包一条命令验证文件;MCP server 接入 Claude Code(progmune_check / progmune_trust_check);GitHub Action 做 PR 辅助检查。完全本地静态分析,代码不上传;脱敏违规指纹默认匿名上报中央语料库,PROGMUNE_HUB=off 可关闭。

09订阅版本更新

每次发版一封邮件,无垃圾,随时一键退订。订阅后你会:

  • 新版本第一时间送达——每周 1-2 版,修复与增强不再错过
  • 你遇到的误报修好时,立刻知道
  • 语言与框架进展抢先知道:Java 转正、C/Go 走出 Beta、新框架适配
  • 真实语料验证报告与审计回应——干货,不是营销文
  • 影响路线图——订阅者投票决定下一步先做什么
  • 企业级能力内测的早鸟资格

↑ 返回顶部订阅

10社区与反馈

扫码加入讨论群(微信 / WhatsApp),或通过邮箱、GitHub 联系我们。你的意见塑造 Progmune。

Progmune community QR codes (WeChat + WhatsApp)
微信讨论群(7 天过期)+ WhatsApp 讨论群