Sign inSign up

zamorofthat/elida

By zamorofthat

•Updated about 2 hours ago

Session-aware security proxy for AI agents. Kill switch, policy engine, OWASP LLM Top 10 protection.

Image
0

10K+

zamorofthat/elida repository overview

⁠ELIDA - Edge Layer for Intelligent Defense of Agents

Session-aware reverse proxy for securing AI agent traffic. Think of it as a Session Border Controller (SBC) for AI.

⁠Features

  • Session Tracking - Track agent sessions by client IP + backend
  • Kill Switch - Instantly terminate runaway or compromised agents
  • Policy Engine - OWASP LLM Top 10 security rules built-in
  • Multi-Backend - Route to OpenAI, Anthropic, Mistral, Ollama, etc.
  • WebSocket Support - Real-time voice agents (OpenAI Realtime, Deepgram)
  • Audit Logging - Full request/response capture for compliance
  • Dashboard - Built-in web UI for monitoring sessions

⁠Quick Start

docker run -d \
  -p 8080:8080 \
  -p 9090:9090 \
  -e ELIDA_BACKEND=https://api.openai.com \
  zamorofthat/elida:latest

Then configure your AI tools to use http://localhost:8080 as the API base URL.

⁠With Policy Engine

docker run -d \
  -p 8080:8080 \
  -p 9090:9090 \
  -e ELIDA_BACKEND=https://api.openai.com \
  -e ELIDA_POLICY_ENABLED=true \
  -e ELIDA_POLICY_PRESET=standard \
  zamorofthat/elida:latest

⁠Environment Variables

VariableDescriptionDefault
ELIDA_LISTENProxy listen address:8080
ELIDA_BACKENDDefault backend URLhttp://localhost:11434
ELIDA_CONTROL_LISTENControl API address:9090
ELIDA_POLICY_ENABLEDEnable security policiesfalse
ELIDA_POLICY_PRESETPreset: minimal, standard, strictstandard
ELIDA_POLICY_MODEMode: enforce or auditenforce
ELIDA_STORAGE_ENABLEDEnable session history (SQLite)false
ELIDA_SESSION_STORESession store: memory or redismemory
ELIDA_REDIS_ADDRRedis address for scalinglocalhost:6379

⁠Endpoints

PortPurpose
8080Proxy - point your AI tools here
9090Control API & Dashboard

⁠Control API

# Health check
curl http://localhost:9090/control/health

# List active sessions
curl http://localhost:9090/control/sessions

# Kill a session
curl -X POST http://localhost:9090/control/sessions/{id}/kill

# View dashboard
open http://localhost:9090/

⁠Multi-Backend Configuration

Mount a config file for advanced routing:

docker run -d \
  -p 8080:8080 \
  -p 9090:9090 \
  -v $(pwd)/elida.yaml:/etc/elida/elida.yaml \
  zamorofthat/elida:latest \
  -config /etc/elida/elida.yaml

Example elida.yaml:

listen: ":8080"
backends:
  openai:
    url: "https://api.openai.com"
    models: ["gpt-*", "o1-*"]
    default: true
  anthropic:
    url: "https://api.anthropic.com"
    models: ["claude-*"]
  mistral:
    url: "https://api.mistral.ai"
    models: ["mistral-*"]
control:
  enabled: true
  listen: ":9090"
policy:
  enabled: true
  preset: standard

⁠Kubernetes / Helm

helm install elida ./deploy/helm/elida

⁠Tags

  • latest - Latest stable release
  • vX.Y.Z - Specific version
  • main - Latest from main branch

Tag summary

Content type

Image

Digest

sha256:cc4a66937…

Size

23.8 MB

Last updated

about 2 hours ago

docker pull zamorofthat/elida