zamorofthat/elida

GitHub: zamorofthat/elida

面向 AI Agent 的会话感知反向代理,内置 OWASP LLM Top 10 安全策略,为企业 AI 调用提供可见性、管控和安全防护。

Stars: 4 | Forks: 0

# ELIDA [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](LICENSE) [![Go Version](https://img.shields.io/badge/Go-1.24+-00ADD8?logo=go)](https://go.dev/) [![CI](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/1aca8fda5e220451.svg)](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, 中间件, 企业安全, 会话管理, 内存规避, 反向代理, 安全防御评估, 提示词注入检测, 搜索引擎查询, 敏感数据检测, 日志审计, 熔断器, 知识图谱, 程序破解, 网络安全, 网络安全, 网络资产管理, 请求拦截, 防御工具, 隐私保护, 隐私保护, 零信任