lcasarin-maker/Coder_Cerberus
GitHub: lcasarin-maker/Coder_Cerberus
面向 AI 辅助开发的多维度代码质量与安全门禁工具,在 Git 提交前自动检测并阻断 AI 生成代码中的缺陷与风险。
Stars: 2 | Forks: 0
# 🛡️ Coder Cerberus v0.6 — 代码质量与安全守护者
[](PLAN.md)
[](scripts/Full_dimensions_audit.py)
[](#)
[](#integrations)
[](#)
## 什么是 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, 开发工具, 无后门, 逆向工具