zamorofthat/elida
GitHub: zamorofthat/elida
面向 AI Agent 的会话感知反向代理,内置 OWASP LLM Top 10 安全策略,为企业 AI 调用提供可见性、管控和安全防护。
Stars: 4 | Forks: 0
# ELIDA
[](LICENSE)
[](https://go.dev/)
[](https://github.com/zamorofthat/elida/actions/workflows/ci.yml)
**Edge Layer for Intelligent Defense of Agents**
ELIDA 是一个面向 AI Agent 的会话感知反向代理。它为 AI 模型 API 流量提供可见性、控制和安全保障——就像电信领域的会话边界控制器 (SBC),但专为 AI 设计。
## 为什么选择 ELIDA?
随着企业部署 AI Agent,安全团队需要:
- **可见性** — 实时查看 Agent 的行为
- **控制** — 终止失控会话,强制执行超时
- **审计** — 用于合规的完整会话日志
- **保护** — 基于 40 多条 OWASP LLM Top 10 规则的策略执行
## 快速开始
```
# 克隆并构建
git clone https://github.com/zamorofthat/elida.git
cd elida && make build
# 运行(默认代理到 localhost:11434)
make run
# 或使用 Docker
docker run -p 8080:8080 -p 9090:9090 ghcr.io/zamorofthat/elida:latest
```
将你的 AI 客户端指向 ELIDA:
```
# Claude Code
ANTHROPIC_BASE_URL=http://localhost:8080 claude
# OpenAI 兼容工具
OPENAI_BASE_URL=http://localhost:8080 your-tool
```
在 `http://localhost:9090` 打开仪表板
## 功能特性
**核心**
- 支持流式传输的 HTTP/WebSocket 反向代理
- 多后端路由 (Ollama, OpenAI, Anthropic, Mistral)
- 具备终止/恢复生命周期的会话跟踪
- 基于 Redis 的会话存储,支持水平扩展
**安全**
- 40 多条 OWASP LLM Top 10 策略规则
- Prompt 注入检测 (LLM01)
- PII 和凭据检测 (LLM06)
- 工具滥用防护 (LLM07/08)
**企业版 (v0.2.0)**
- 具有渐进式升级的风险阶梯
- 具备熔断机制的 Token 消耗率跟踪
- 包含 PII 脱敏的不可变事件流
- 用于策略基准测试的混沌测试套件
## 配置
```
# configs/elida.yaml
listen: ":8080"
backend: "https://api.anthropic.com"
session:
timeout: 5m
policy:
enabled: true
preset: standard # minimal | standard | strict
```
或者使用环境变量:
```
ELIDA_BACKEND=https://api.anthropic.com ELIDA_POLICY_ENABLED=true ./bin/elida
```
查看 [配置指南](docs/CONFIGURATION.md) 获取完整选项。
## 控制 API
```
curl http://localhost:9090/control/sessions # List sessions
curl http://localhost:9090/control/flagged # Policy violations
curl -X POST http://localhost:9090/control/sessions/{id}/kill # Kill session
curl http://localhost:9090/control/events # Audit log
```
查看 [API 参考](docs/API.md) 获取所有端点。
## 架构
```
┌─────────────────────────────────────────────────────────────┐
│ ELIDA │
├─────────────┬─────────────┬─────────────┬───────────────────┤
│ Proxy │ WebSocket │ Session │ Control API │
│ Handler │ Handler │ Manager │ + Dashboard │
├─────────────┴─────────────┴─────────────┴───────────────────┤
│ Policy Engine (40+ OWASP LLM Top 10 rules) │
├─────────────────────────────────────────────────────────────┤
│ Session Store (Memory/Redis) + SQLite History │
└─────────────────────────────────────────────────────────────┘
│ │
▼ ▼
┌───────────┐ ┌────────────────┐
│ Agents │ │ Backends │
│ (Clients) │ │ Ollama/OpenAI/ │
│ │ │ Anthropic/etc │
└───────────┘ └────────────────┘
```
## 文档
| 指南 | 描述 |
|-------|-------------|
| [入门指南](docs/GETTING_STARTED.md) | 分步教程 |
| [配置](docs/CONFIGURATION.md) | YAML 和环境变量选项 |
| [API 参考](docs/API.md) | 控制 API 端点 |
| [策略规则](docs/POLICY_RULES_REFERENCE.md) | 所有 40 多条内置安全规则 |
| [电信控制](docs/TELCO_CONTROLS.md) | 风险阶梯、Token 跟踪、事件 |
| [架构](docs/ARCHITECTURE.md) | 技术深度解析 |
| [企业部署](docs/ENTERPRISE_DEPLOYMENT.md) | Kubernetes, Helm, 集群管理 |
| [安全控制](docs/SECURITY_CONTROLS.md) | 面向审计员的 OWASP/NIST 映射 |
## 开发
```
make build # Build binary
make test # Run tests
make run-demo # Run with policy + storage
make docker # Build Docker image
```
## 许可证
Apache License 2.0 — 见 [LICENSE](LICENSE)
## 为什么叫 "ELIDA"?
以我祖母的名字命名。同时也是:**E**dge **L**ayer for **I**ntelligent **D**efense of **A**gents(智能 Agent 防御边缘层)
标签:AI网关, Anthropic, API安全, API密钥扫描, API流量控制, CISA项目, CIS基准, Docker, Go语言, JSONLines, JSON输出, LLM评估, Mistral, Ollama, OpenAI, OWASP LLM Top 10, Redis, TLS, 中间件, 企业安全, 会话管理, 内存规避, 反向代理, 安全防御评估, 提示词注入检测, 搜索引擎查询, 敏感数据检测, 日志审计, 熔断器, 知识图谱, 程序破解, 网络安全, 网络安全, 网络资产管理, 请求拦截, 防御工具, 隐私保护, 隐私保护, 零信任