karlalbert152-sys/gatkeeper
GitHub: karlalbert152-sys/gatkeeper
一款基于 Rust 的 AI 原生安全情报平台,通过多智能体和后台模拟引擎实现对代码漏洞的预测性分析与持续监控。
Stars: 0 | Forks: 0
# 🛡️ GatKeeper
### 拥有潜意识引擎的 AI 原生安全情报平台
**不是 linter。不是 scanner。是一个永不停止思考的同事。**
[](https://www.rust-lang.org/)
[](LICENSE)
[]()
[](.github/workflows/ci.yml)
[](CONTRIBUTING.md)
[](https://github.com/karlalbert152-sys/gatkeeper/issues)
[](https://github.com/karlalbert152-sys/gatkeeper/stargazers)
[](https://discord.gg/gatkeeper)
[📄 项目分析 (EN)](docs/GatKeeper_Analysis_EN.pdf) •
[🇫🇷 法语](README_FR.md) •
[🤝 贡献](CONTRIBUTING.md) •
[💬 Discord](https://discord.gg/gatkeeper)
## 🧠 什么是 GatKeeper?
GatKeeper 是一个**下一代代码情报平台**,它不仅能扫描你的代码——它还会**思考它,模拟它的未来,并在漏洞出现之前进行预测**。
传统的安全工具(如 SonarQube、Snyk、Semgrep)是被动的,与之不同的是,GatKeeper 是**预测性和主动性的**:
| 维度 | 经典 SAST | AI 助手 | **GatKeeper** |
|-----------|-------------|---------------|---------------|
| 方法 | 被动 | 辅助 | **预测性与主动性** |
| 理解 | 语法层面 | 部分上下文 | **语义 + 意图** |
| 项目记忆 | ✗ | ✗ | **✓** |
| 未来模拟 | ✗ | ✗ | **✓** |
| 100% 本地部署 | 部分 | ✗ | **✓** |
| Multi-agents | ✗ | ✗ | **✓** |
## 🏗️ 架构
```
┌─────────────────────────────────────────────────────────────┐
│ LAYER 1: INTERFACE │
│ CLI (Rust) │ Neovim Plugin │ VSCode Extension │ Dashboard │
├─────────────────────────────────────────────────────────────┤
│ LAYER 2: INTEGRATION │
│ Git Hooks │ GitHub Actions │ GitLab CI │ Jenkins │ API │
├─────────────────────────────────────────────────────────────┤
│ LAYER 3: INTELLIGENCE │
│ ┌─────────────────┐ ┌──────────────────────────────────┐ │
│ │ Subconscious Eng │ │ 6 AI Agents (Security, Logic, │ │
│ │ 24/7 simulation │ │ Performance, Compliance, Secret,│ │
│ │ Rouge/Jaune/Vert │ │ SupplyChain) │ │
│ └─────────────────┘ └──────────────────────────────────┘ │
│ ┌─────────────────┐ ┌──────────────────────────────────┐ │
│ │ DNA Engine │ │ Tree-sitter Parser (15+ langs) │ │
│ │ Git memory │ │ C, C++, Rust, Python, JS, Go... │ │
│ └─────────────────┘ └──────────────────────────────────┘ │
│ ┌─────────────────┐ ┌──────────────────────────────────┐ │
│ │ Ollama (local) │ │ Sandbox Attack (gVisor + Docker) │ │
│ └─────────────────┘ └──────────────────────────────────┘ │
├─────────────────────────────────────────────────────────────┤
│ LAYER 4: DATA │
│ SQLite (local) │ PostgreSQL (Enterprise) │ CVE DB (OSV) │
└─────────────────────────────────────────────────────────────┘
```
## ✨ 核心功能
### 🧠 潜意识引擎
核心差异化优势。在后台 24/7 持续运行:
- **Rouge (红色)** — 威胁模拟:模拟真实攻击者并计算攻击路径
- **Jaune (黄色)** — 混沌工程:注入故障以发现隐藏的崩溃点
- **Verte (绿色)** — 代码演进:生成更安全、更快的代码替代方案
### 🤖 6 个专用 AI Agent
| Agent | 领域 |
|-------|--------|
| **SecurityAgent** | SQL/XSS/LDAP 注入、时序攻击、弱加密、OWASP Top 10 |
| **LogicAgent** | 竞态条件、死锁、边缘情况 |
| **PerformanceAgent** | 内存泄漏、N+1 查询、不必要的内存分配 |
| **ComplianceAgent** | GDPR、SOC2、ISO27001、HIPAA |
| **SecretAgent** | 硬编码的 API 密钥、JWT token、密码 |
| **SupplyChainAgent** | Typosquatting(域名抢注/拼写错误)、废弃依赖项、CVE、许可证冲突 |
### 🧬 DNA 引擎
为你的代码库建立鲜活的记忆:
- 加密指纹识别
- 架构模式检测
- 代码不变式提取
- Git 行为基线
### 📄 .gat 报告格式
附加于每次扫描的结构化、可版本控制、机器可读的报告。
## 🚀 快速开始
### 前置条件
- **Rust** 1.75+ ([安装](https://rustup.rs/))
- **Git**
### 安装
```
git clone https://github.com/karlalbert152-sys/gatkeeper.git
cd gatkeeper
cargo build --release
```
### 使用方法
```
# 在你的项目中初始化 GatKeeper
gatkeeper init
# 运行全面的安全扫描
gatkeeper scan
# 生成报告
gatkeeper report
# 检查项目状态
gatkeeper status
```
## 📁 项目结构
```
gatkeeper/
├── crates/
│ ├── gatkeeper-cli/ # CLI binary
│ ├── gatkeeper-core/ # Core types & config
│ ├── gatkeeper-parser/ # Tree-sitter multi-lang parser
│ ├── gatkeeper-agents/ # 6 specialized AI agents
│ ├── gatkeeper-subconscious/ # Subconscious Engine
│ └── gatkeeper-dna/ # DNA Engine (memory)
├── gatkeeper-lenses/ # Intent comprehension
├── migrations/ # SQLite schema
├── templates/ # .gat template, config
├── tests/ # Integration tests
├── scripts/ # PDF generation
└── docs/ # Documentation + PDFs
```
## 🛠️ 技术栈
| 组件 | 技术 | 原因 |
|-----------|-----------|-----|
| CLI | **Rust** + Clap | 原生性能,内存安全 |
| 解析 | **Tree-sitter** | 支持 15+ 种语言,增量解析,可嵌入 |
| Async | **Tokio** | 数百万并发任务,零开销 |
| 本地 LLMs | **Ollama** | 零 API 成本,绝对隐私 |
| 存储 | **SQLite** | 轻量级,便携,无需服务器 |
| 仪表盘 | **React** + TypeScript | 丰富的实时 UI |
| API | **Axum** (Rust) | 与 CLI 一致,卓越的性能 |
## 📊 关键指标
| 指标 | 数值 |
|--------|-------|
| 每晚模拟的场景 | **48,000+** |
| 专用 AI agents | **6** |
| 时间跨度预测 | **30 天** |
| 支持的语言 | **15+** |
| 可寻址市场 | **$25B** |
| 为客户节省的审计成本 | **80%** |
## 📄 文档
- [项目分析 (EN)](docs/GatKeeper_Analysis_EN.pdf) — 完整的 14 页分析文档
- [项目分析 (FR)](docs/GatKeeper_Analysis_FR.md) — 法语版本
## 🗺️ 路线图
- [x] **第 1 阶段 — MVP**(第 1-3 个月):CLI、Tree-sitter、6 个 agent、.gat 格式、基础潜意识引擎
- [ ] **第 2 阶段 — Alpha**(第 4-6 个月):Dashboard web、DNA 引擎 v1、CI/CD 集成
- [ ] **第 3 阶段 — Beta**(第 7-12 个月):Sandbox、合规性、What-If(假设分析)、公开发布
- [ ] **第 4 阶段 — 企业版**(第 2 年):本地部署、fine-tuning、Telepathy、Quantum
## 📜 许可证
该项目基于 **GNU Affero General Public License v3.0** 授权 —— 详情请参阅 [LICENSE](LICENSE) 文件。
这意味着:
- ✅ 你可以使用、修改和分发此软件
- ✅ 你可以将其用于商业用途
- ⚠️ 如果你修改并分发它,你**必须**以 AGPLv3 许可证发布你的修改
- ⚠️ 如果你将其作为网络服务(SaaS)使用,你**必须**向用户提供源代码
**“在你睡觉的时候,我发现了 3 件你需要知道的事情。”**
*GatKeeper —— 第一个会思考的安全工具。*
标签:AI风险缓解, Rust, SAST, 人工智能, 代码智能, 可视化界面, 用户模式Hook绕过, 盲注攻击, 网络流量审计, 通知系统, 静态应用安全测试