TheAlphaEngineerCode/proofforge

GitHub: TheAlphaEngineerCode/proofforge

ProofForge 通过为每次代码变更生成可签名、可哈希验证的 proof-manifest,让 AI 生成或人工编写的代码变更都附带可独立验证的技术证据和风险评分。

Stars: 1 | Forks: 0

# ProofForge **具备可验证变更的自主软件工程** _具备可验证变更的自主软件工程_ [![License: Apache 2.0](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](./LICENSE) [![Spec: proof-manifest 1.0.0](https://img.shields.io/badge/proof--manifest-1.0.0-8A2BE2.svg)](./docs/evidence-spec.md) [![Status: Phases 0–4](https://img.shields.io/badge/status-phases_0--4-brightgreen.svg)](./ROADMAP.md)
## 问题 AI 编写代码的速度超过了任何团队的审查速度。但没有信任的速度是一种隐患:一个“看起来没问题”的 diff 可能会泄露机密、引入有漏洞的依赖项、导致性能倒退,或者将不可逆的迁移带入生产环境。无论变更是由人类编写还是由模型生成,最核心的问题都是一样的—— ## 解决方案 ProofForge 将每次变更视为一个 **Proof-Carrying Change(携带证明的变更)**:没有附加可验证的技术证据,任何修改都不会被认为是值得信任的。 对于任何 pull request 或 agent 生成的变更,ProofForge 都会在一个 **隔离的 sandbox** 内运行测试、安全扫描、依赖和许可证分析、性能基准测试以及架构检查,计算出一个 **透明的风险评分**,应用 **可配置的策略**,并生成一个经过签名且可哈希的 **`proof-manifest.json`**,任何其他机器都可以独立对其进行验证。 它有两种工作模式: - **验证模式** — 将其指向现有的 pull request;它会生成证据和结论。 - **Agent 模式** — 用自然语言描述任务;planning agent 会提出计划,implementation agent 会编写代码,一个 **独立的 reviewer agent** 会对代码进行评审,整个变更会连同其证据包一起交付。 ## 为什么与众不同 | 大多数 AI 开发工具 | ProofForge | | --- | --- | | 生成代码并祈祷它没问题 | 生成 **并且** 验证,作为独立的步骤 | | 模糊的“在我看来没问题” | 确定性的、**可解释的风险评分** | | 信任模型 | 必须由 **独立的 reviewer agent** 认可 | | 在任何地方运行任何东西 | **Sandbox 隔离**,默认无网络,绝不在主机上运行 | | 锁定于一家 AI 供应商 | **与供应商无关的** AI 层 | | 没有记录可查 | 经过签名、可哈希的 manifest,可通过 CLI 复现 | ## 架构(概览) ``` Web Dashboard → API Gateway → { Repository Analyzer · Agent Orchestrator · Evidence Engine } → Queue / Event Bus → Sandbox Workers → PostgreSQL · Object Storage · OpenTelemetry ``` 完整设计见 [ARCHITECTURE.md](./ARCHITECTURE.md),决策记录见 [docs/adr/](./docs/adr/)。 ## 快速开始 要求 **Node ≥ 20.11**、**pnpm ≥ 9**,以及(可选)用于本地基础设施的 **Docker**。 ``` git clone cd proofforge cp .env.example .env make setup # install JS + Python deps make build # build all packages make test # run the test suite ``` 启动本地基础设施(PostgreSQL、Redis、MinIO): ``` make docker-up ``` ### 使用 CLI 验证 manifest ``` # 从内置的 CLI package node packages/cli/dist/index.js manifest validate packages/evidence-spec/examples/valid/github-oauth.json node packages/cli/dist/index.js manifest inspect packages/evidence-spec/examples/valid/github-oauth.json node packages/cli/dist/index.js evidence verify packages/evidence-spec/examples/valid/github-oauth.json ``` ## 命令 | 命令 | 描述 | 状态 | | --- | --- | --- | | `proofforge manifest validate ` | 根据 schema 验证 manifest | ✅ | | `proofforge manifest inspect ` | 人类可读的摘要 | ✅ | | `proofforge evidence verify ` | 结构 + 哈希 + 签名验证 | ✅ | | `proofforge analyze ` | 分析代码仓库 | 🔜 阶段 2 | | `proofforge run --task "..."` | 运行 agent 任务 | 🔜 阶段 7 | | `proofforge policy validate ` | 验证策略文件 | 🔜 阶段 6 | 完整用法和退出代码请参阅 [docs/cli.md](./docs/cli.md)。 ## proof-manifest 每次分析都会生成一个 `proof-manifest.json`,将测试、安全性、质量、性能和运营证据绑定到特定的 commit,并由确定性的 SHA-256 `evidenceHash` 和可选的 ed25519 签名保护。该 schema 是唯一的真相来源(Zod → JSON Schema)—— 参阅 [docs/evidence-spec.md](./docs/evidence-spec.md)。 ## 路线图 基础部分以及 Evidence Spec + CLI 将优先发布;AI agents 将在坚实、可验证的基础之上最后推出。完整计划见 [ROADMAP.md](./ROADMAP.md)。 - **阶段 0** — 基础(monorepo、基础设施、CI)✅ - **阶段 1** — Evidence Spec + CLI ✅ - **阶段 2** — Repository Analyzer ✅ - **阶段 3** — Evidence Engine(sandboxed)✅ - **阶段 4** — API + Dashboard ✅ - **阶段 5** — GitHub App - **阶段 6** — Risk & Policy 引擎 - **阶段 7** — AI agents(与供应商无关) - **阶段 8** — 分布式 worker - **阶段 9** — SDK & 插件 ## 贡献 欢迎您的贡献 — 请参阅 [CONTRIBUTING.md](./CONTRIBUTING.md)、[行为准则](./CODE_OF_CONDUCT.md),以及关于报告漏洞的 [SECURITY.md](./SECURITY.md)。 ## 许可证 基于 **Apache License 2.0** 授权 — 详见 [LICENSE](./LICENSE)。本协议允许商业使用、修改和分发,前提是您必须保留必需的声明和条件。
标签:AI编程助手, MITM代理, WebSocket, 代码审查, 依赖分析, 搜索引擎查询, 数据管道, 测试用例, 用户代理, 自动化攻击, 请求拦截, 软件工程, 逆向工具