Agent Registry

Zentinel has a growing ecosystem of agents for security, traffic management, and custom logic. This page catalogs official agents maintained by the Zentinel team and community-contributed agents.

Browse the full registry at zentinelproxy.io/agents

Official Agents

Official agents are maintained by the Zentinel Core Team and follow strict quality, security, and compatibility standards. All bundled agents are distributed via zentinel bundle install.

Core

AgentVersionStatusDescription
WAFv0.3.0StablePure Rust WAF with 285 detection rules, anomaly scoring, and API security
Denylistv0.3.0StableBlock requests based on IP addresses, CIDR ranges, or custom patterns with real-time updates
Rate Limiterv0.3.0DeprecatedToken bucket rate limiting with configurable windows per route, IP, or custom keys

Security

AgentVersionStatusDescription
ZentinelSecv0.3.0StablePure Rust ModSecurity-compatible WAF with full OWASP CRS support — no C dependencies
ModSecurityv0.3.0StableFull OWASP Core Rule Set (CRS) support via libmodsecurity with 800+ detection rules
IP Reputationv0.4.0StableIP threat intelligence with AbuseIPDB integration, file-based blocklists, and Tor exit node detection
Bot Managementv0.4.0StableComprehensive bot detection with multi-signal analysis, known bot verification, and behavioral tracking
Content Scannerv0.4.0StableMalware scanning agent using ClamAV daemon for file upload protection

API Security

AgentVersionStatusDescription
GraphQL Securityv0.4.0StableQuery depth limiting, complexity analysis, introspection control, and field-level authorization
gRPC Inspectorv0.4.0StableMethod authorization, rate limiting, metadata inspection, and reflection control for gRPC services
SOAPv0.4.0StableEnvelope validation, WS-Security verification, operation control, and XXE prevention
API Deprecationv0.4.0StableAPI lifecycle management with RFC 8594 Sunset headers, usage tracking, and automatic redirects

Protocol

AgentVersionStatusDescription
WebSocket Inspectorv0.4.0StableContent filtering, schema validation, and attack detection for WebSocket frames
MQTT Gatewayv0.4.0StableIoT protocol security with topic-based ACLs, client authentication, payload inspection, and QoS enforcement

Scripting

AgentVersionStatusDescription
Luav0.3.0StableEmbed custom Lua scripts for flexible request/response processing
JSv0.3.0StableJavaScript-based custom logic using the QuickJS engine
WASMv0.3.0StableExecute custom Wasm modules for high-performance request/response processing in any language

Utility

AgentVersionStatusDescription
Transformv0.4.0StableURL rewriting, header manipulation, and JSON body transforms
Audit Loggerv0.4.0StableStructured audit logging with PII redaction, multiple formats (JSON, CEF, LEEF), and compliance templates
Mock Serverv0.4.0StableConfigurable stub responses with templating, latency simulation, and fault injection
Chaosv0.4.0StableControlled fault injection for resilience testing with flexible targeting and safety controls
Image Optimizationv0.1.0StableOn-the-fly JPEG/PNG to WebP/AVIF conversion with content negotiation and filesystem caching

Identity

AgentVersionStatusDescription
SPIFFEv0.3.0StableSPIFFE/SPIRE workload identity authentication for zero-trust service-to-service communication

Planned

On the roadmap for future development.

AgentDescription
Adaptive ShieldSelf-learning threat detection using edge ML
Geo FilterGeographic IP-based request filtering
LLM GuardianAI-powered threat analysis for intelligent traffic decisions
Request HoldPause suspicious requests for async verification
Response CacheHigh-performance caching with TTL controls
TelemetryObservability agent for analytics and logging

Built-in Reference Agents

The Zentinel repository includes reference implementations for testing and as templates:

Echo Agent

A simple agent that echoes request metadata back as headers. Useful for testing and debugging.

# Run with Unix socket
zentinel-echo-agent --socket /tmp/echo.sock

# Run with gRPC
zentinel-echo-agent --grpc 0.0.0.0:50051

Source: agents/echo/

Features

  • Adds X-Echo-* headers with request metadata
  • Returns correlation ID, method, path, client IP
  • Supports verbose mode for additional debugging headers
  • Works with both Unix socket and gRPC transports

Community Agents

Community agents are created and maintained by the Zentinel community. They follow the agent protocol specification but are not officially supported.

No community agents registered yet.

Want to contribute? Submit your agent to the registry!

Submission Requirements

To submit a community agent:

  1. Implement the Agent Protocol
  2. Include a zentinel-agent.toml manifest
  3. Provide documentation and examples
  4. Open an issue with the community-agent template

Agent Manifest

Every agent should include a manifest file:

# zentinel-agent.toml
[agent]
name = "my-awesome-agent"
version = "0.1.0"
description = "Does awesome things with requests"
authors = ["Your Name <[email protected]>"]
license = "MIT OR Apache-2.0"
repository = "https://github.com/yourname/my-awesome-agent"

[protocol]
version = "1"
events = ["request_headers", "response_headers"]

[compatibility]
zentinel-proxy = ">=0.1.0"
zentinel-agent-protocol = "0.1"

[registry]
homepage = "https://example.com/my-agent"
documentation = "https://docs.example.com/my-agent"
keywords = ["zentinel", "agent", "awesome"]
categories = ["security"]  # security, traffic, observability, custom

Agent Configuration

Configure agents in your zentinel.kdl:

agents {
    // Official auth agent
    agent "auth" type="auth" {
        unix-socket "/var/run/zentinel/auth.sock"
        events "request_headers"
        timeout-ms 100
        failure-mode "closed"  // Block if agent fails
    }

    // Official WAF agent (gRPC)
    agent "waf" type="waf" {
        grpc "http://waf-service:50051"
        events "request_headers" "request_body"
        timeout-ms 200
        failure-mode "open"  // Allow if agent fails
        max-request-body-bytes 1048576  // 1MB
    }

    // Community or custom agent
    agent "custom-logic" type="custom" {
        grpc "http://localhost:50052"
        events "request_headers" "response_headers"
        timeout-ms 50
    }
}

Agent Types

TypeDescription
authAuthentication and authorization
wafWeb Application Firewall
rate_limitRate limiting and throttling
customCustom business logic

The type is informational and used for metrics/logging. All agents use the same protocol.