lcasarin-maker/Coder_Cerberus

GitHub: lcasarin-maker/Coder_Cerberus

面向 AI 辅助开发的多维度代码质量与安全门禁工具,在 Git 提交前自动检测并阻断 AI 生成代码中的缺陷与风险。

Stars: 2 | Forks: 0

# 🛡️ Coder Cerberus v0.6 — 代码质量与安全守护者 [![Version](https://img.shields.io/badge/version-v0.6-blueviolet.svg?style=flat-square)](PLAN.md) [![Audit](https://img.shields.io/badge/audit--12d-APPROVED-success.svg?style=flat-square)](scripts/Full_dimensions_audit.py) [![Tests](https://img.shields.io/badge/tests-passing-success)](#) [![MCP](https://img.shields.io/badge/MCP-compatible-brightgreen.svg?style=flat-square)](#integrations) [![Python](https://img.shields.io/badge/python-3.13+-yellow.svg?style=flat-square)](#) ## 什么是 Cerberus? **Cerberus 是一个防御性的代码质量与安全防火墙** —— 它不负责编排 agent(这是 LangGraph 或 CrewAI 等框架的工作),而是**验证、保护并守卫**人类和 AI agent 生成的代码。 它充当自动化的零信任守门人,在每次代码提交前审计每一个变更。您可以将它视为一个毫不松懈的审查者,它能够: - ✅ **验证代码是否正常工作** —— 捕获静默的运行时失败和死代码。 - ✅ **保证文档和清晰度** —— 强制要求对每一处变更提供严格的解释。 - ✅ **防止不良编码习惯** —— 阻止会导致技术债务的模式。 - ✅ **保持项目同步** —— 自动将协议更新传播到所有卫星项目。 - ✅ **监控 tokenomics** —— 在本地跟踪 AI 使用情况和执行成本。 每次保存或提交变更时,Cerberus 都会执行 15 个不同的验证域(D1 到 D15),在允许代码被暂存或推送之前确保绝对合规。 ## Cerberus 验证内容 | 域 | 审计内容 | |--------|----------------| | **D1: 完整性** | 确保工作区中不存在“幽灵”或未声明的文件。 | | **D2: 完备性** | 阻止空占位符、未解决的 TODO 和不完整的逻辑。 | | **D3: 死代码** | 通过检测未使用的 import 和死定义来强制保持代码库整洁。 | | **D4: 反面条条代码** | 控制认知复杂度和深层嵌套级别(最大深度为 4)。 | | **D5: 异常路径** | 审计 try-except 块,确保异常被正确记录和传播。 | | **D6: 反垃圾代码** | 阻止 AI 幻觉、格式垃圾和低质量的代码结构。 | | **D7: 数据安全** | 检查硬编码的凭证、密钥和危险的系统操作。 | | **D8: 对抗性覆盖率** | 确保活动逻辑具有相应的单元/集成测试。 | | **D9: 测试纯度** | 阻止伪造的测试、绕过检查的 mock,并验证逻辑纯度。 | | **D10: Tokenomics** | 对 token 使用量和开发者成本进行计量和监控。 | | **D11: 依赖安全性** | 根据供应链漏洞利用和漏洞目录验证软件包。 | | **D12: 漂移保护** | 确保卫星仓库与核心规则保持严格同步。 | | **D13: 验证债务** | 跟踪审计债务、修复状态和事后复盘跟进。 | | **D14: 叙述严谨性** | 审计 agent 的文本表述,以确保清晰度、证据充分、无歧义以及思维链的严谨性。 | | **D15: Agent 安全** | 减轻 agent 劫持风险并锁定安全边界。 | ## 🔗 集成(与其他系统互补) | 系统 | 角色 | 与 Cerberus 的集成 | |---------|-----------|----------------------| | **LangGraph** | 编排 agent 流。 | Cerberus 验证 LangGraph 输出的源代码。 | | **CrewAI** | 协调 agent 团队。 | Cerberus 审计团队创建的决策和文件。 | | **MCP** | 工具的协议标准。 | Cerberus 保护 MCP 连接免受静默失败和漂移的影响。 | | **您的工作区** | 您正在编辑的活动仓库。 | Cerberus hook 会在每次保存/提交时自动运行。 | *Cerberus 不与编排系统竞争;它是用来保护它们的。当这些系统在构建和自动化时,Cerberus 就是防止失败蔓延到生产环境的免疫系统。* ## 如何使用 ### 自动本地审计 ``` python scripts/Full_dimensions_audit.py . ``` 这将运行全套验证,并输出: - ✅ **APPROVED** —— 一切合规,您可以安全提交。 - ❌ **REJECTED** —— 检测到违规;准确指出需要修复的内容及位置。 ### 同步卫星项目 ``` python scripts/protocol_cli propagate --apply ``` 确保所有活动的卫星项目采用与核心相同版本的统一标准。 ### 快速提交(增量验证) ``` python scripts/protocol_cli check --incremental --preset core ``` 仅审计已暂存的文件,并在 3 秒内仅运行受本地变更影响的测试。 ## 当前状态 - **Version:** v0.6. - **Audit Verdict:** APPROVED. - **Fast lane:** `scripts/run_compliance_tests.py --preset fast` 已完成端到端验证,并跳过了繁重的 Full dimensions 和权限审计步骤。 - **Current satellite state:** 只读的 `.protocol-core/` 推出已完成;`.protocol-inbox/` 已初始化;卫星命名模板/守卫已发布。 - **Current remaining debt:** Z2/D3 vendoring 清理仍然活跃,Quenza 和 RED-Python 尚待处理。 - **Cleanup:** `deprecated/` 已清理了 460 个过时文件,仅保留了最少的清理元数据。 ## 重要文档 - **[PLAN.md](PLAN.md)** — 已完成和即将到来的冲刺。 - **[STATUS.md](STATUS.md)** — 动态路线图、最新变更和下一次会话详情。 - **[AUDIT_TRAIL.md](AUDIT_TRAIL.md)** — 只追加的按时间顺序排列的会话回顾。 - **[VibeCoding_GoldenStandard](https://github.com/lcasarin-maker/VibeCoding_GoldenStandard)** — 权威规则目录(独立仓库)。 ## 快速入门 1. **克隆此仓库**并导航至根目录。 2. **安装依赖项:** pip install -r requirements.txt 3. **执行初始审计:** python scripts/Full_dimensions_audit.py . 4. **Git Hooks:** 安装后,pre-commit 和 pre-push hook 将自动验证您的工作。 ## 常见问题解答 **Cerberus 会阻碍我的工作流吗?** 不会。它只会阻止那些日后必定会导致失败的代码(不完整的逻辑、粗暴吞没异常的代码、未经核实的 import)。它是免疫系统,而不是瓶颈。 **我可以绕过验证吗?** 异常情况可以在 `docs/rules.md` 中记录为有正当理由的豁免,但需接受 Full dimensions 审查。 **Last Update:** 2026年6月 **Maintainer:** Luis Casarin **Repository:** [lcasarin-maker/Coder_Cerberus](https://github.com/lcasarin-maker/Coder_Cerberus)
标签:AI辅助开发, Git钩子, Python, SOC Prime, 开发工具, 无后门, 逆向工具