Skip to content
🚀 EDDI 6.5.0

19 LLM providers, knowledge bases that crawl your site and read your files, and conversations that follow compatible agent versionsWhat's new

Managed Cloud Get Started

The Enterprise
AI Orchestrator

The open-source platform for deploying governed, multi-agent AI systems: self-hosted, configuration-driven, and compliance-ready. Now in v6.

Run EDDI locally
curl -fsSL https://raw.githubusercontent.com/labsai/EDDI/main/install.sh | bash
Other ways to install →
EDDI AI Orchestrator

The Problem

Enterprise AI orchestration is fragmented and painful. Teams are stuck in a broken lifecycle:

The Prototype Trap

Teams prototype with Flowise, n8n, or scripts, then rewrite everything from scratch for production. Visual prototypes are discarded entirely.

Boilerplate Fatigue

Using AI libraries means building REST controllers, auth layers, and state management from scratch. Every prompt tweak requires redeployment.

BPMN Friction

Forcing non-deterministic AI agents into deterministic Camunda/Temporal workflows creates severe impedance mismatches and brittle architectures.

The Solution

EDDI is a deployable AI orchestration platform, not a library. Visual management, config-as-code, and enterprise security, out of the box:

01

Configuration-as-Code

Agent logic, pipelines, and tool definitions are JSON configurations, not compiled code. Prompt engineers iterate instantly via the React UI or REST API, without redeployment.

02

84 MCP Tools

EDDI exposes its capabilities via the Model Context Protocol, enabling Claude Desktop to interact. Agents can also consume external MCP tools.

03

Security-First

No eval(), no escapes. Vault integration, URL validation, and cryptographic audit trails are architectural foundations.

04

Observability

Every pipeline step is logged with an immutable audit trail: tokens, cost, timing, tool calls. Full CQRS telemetry ledger.

05

Enterprise Concurrency

Built on an enterprise-grade runtime with millions of lightweight threads for I/O-bound LLM workloads. No event loop blocking, no single-threaded bottlenecks.

06

Multi-Agent Orchestration

Intent-based agent discovery, managed conversations, and group collaboration: agents deliberate in seven styles, vote, co-edit shared work products, and give humans a seat at the table.

Config and UI, side by side

What an agent does is a set of JSON documents you can read, diff and version. The Manager edits the same documents.

behavior.json
{
  "behaviorGroups": [
    {
      "name": "",
      "behaviorRules": [
        {
          "name": "Ask for City",
          "actions": [
            "ask_for_city"
          ],
          "conditions": [
            {
              "type": "inputmatcher",
              "configs": {
                "expressions": "trigger(current_weather)"
              },
              "conditions": []
            }
          ]
        }
      ]
    }
  ]
}
EDDI Manager: the detail page of an agent with its environments and workflow
Manager screenshot

A Behavior Rule is plain JSON: when the parsed input matches trigger(current_weather), emit the action ask_for_city. Tasks and output listen for that action. The Manager shows an agent and the workflow that runs its rules.

"The engine is strict so the AI can be creative."
Project Philosophy

How a Conversation Turn Flows

InputChat · Slack · API · MCPParserNormalize, dictionariesBehavior RulesDecide, emit actionsTasksLLM · HTTP · MCP · RAGOutputTemplates, quick repliesTool boundaryApprovals · allow-lists · vaultConversation memoryProperties that outlive the context window · history · rolling summaries · user memory

Select a stage to see what it does, its config and what it writes.

Behavior Rules

What happens here

Behavior Rules are IF-THEN conditions over the expressions and the conversation memory. Every matching rule emits actions. Routing is configuration rather than code, so the same input takes the same path every time.

Each pipeline task writes one entry: HMAC-signed, append-only, sequence-checked.

Illustrative example values

Config
{
  "behaviorGroups": [
    {
      "name": "",
      "behaviorRules": [
        {
          "name": "Ask for City",
          "actions": [
            "ask_for_city"
          ],
          "conditions": [
            {
              "type": "inputmatcher",
              "configs": {
                "expressions": "trigger(current_weather)"
              },
              "conditions": []
            }
          ]
        }
      ]
    }
  ]
}
Example audit entry
{
  "id": "0b5e9a0c-6f3d-4b1e-9d57-2c1f8a7e4d10",
  "conversationId": "6650f1c2a7b94e0012ab34cd",
  "agentId": "support-agent",
  "agentVersion": 1,
  "userId": "user-4711",
  "environment": "production",
  "stepIndex": 0,
  "taskId": "ai.labs.behavior",
  "taskType": "behavior_rules",
  "taskIndex": 1,
  "durationMs": 1,
  "input": {
    "expressions": [
      "trigger(current_weather)"
    ]
  },
  "output": {
    "behavior_rules:success": [
      "Ask for City"
    ]
  },
  "actions": [
    "ask_for_city"
  ],
  "cost": 0,
  "timestamp": "2026-10-14T09:12:41.208Z",
  "hmac": "v4:a3f1c09e5b7d2468a3f1c09e5b7d2468a3f1c09e5b7d2468a3f1c09e5b7d2468",
  "agentSignature": "MEUCIQDk3x…9fQ==",
  "sequence": 1
}
Every turn runs the same pipeline. Behavior rules decide what happens by emitting actions, and tasks listen for them: an LLM call, an HTTP call, an MCP tool, a knowledge-base lookup. Each tool call crosses the same governed boundary, and memory carries what matters from one turn, and one conversation, to the next.
UNIDO Recognition

UNIDO Trusted Partner for Industrial AI

LABS.AI has been selected by the United Nations Industrial Development Organization (UNIDO) as a Trusted Partner for Industrial AI for the Global South.

Learn more about the partnership →

Trusted & Certified

Red Hat Certified ContainerCertified image, published in the Red Hat catalog
Apache 2.0 Licensed100% open-source & enterprise-ready
20,000+ Tests · Green in CIEvery merge passes the full suite, with >90% instruction coverage enforced
OpenSSF Best Practices: GoldGold badge, the top level of the OpenSSF Best Practices program
OpenSSF Best Practices
Docker Hub409K+ pulls on Docker Hub
Docker Pulls
CI Passing · CodeQL CleanAutomated builds, security scanning & code analysis
CICodeQL

Built on Proven Technology

Java 25Enterprise runtime
QuarkusCloud-native, fast
LangChain4jMulti-provider LLM support
MongoDBDocument store
PostgreSQLRelational store
DockerContainer-ready
KubernetesOrchestration
OpenShiftRed Hat certified

Next Steps

Frequently Asked Questions

What is EDDI?

EDDI is an open-source, enterprise-grade AI orchestration platform. It enables teams to build, configure, and deploy AI-powered agents using JSON configuration rather than compiled code. EDDI provides a complete platform with a production-ready React management UI (the EDDI Manager), built-in REST APIs, conversation state management, security (OIDC/Keycloak), immutable audit trails, and 84 MCP tools, all deployable via Docker or Kubernetes.

How is EDDI different from AI libraries and frameworks?

AI libraries like LangChain, Spring AI, and LangChain4j give you building blocks, but you still need to build REST controllers, authentication, conversation state management, audit logging, and management UIs yourself. EDDI is a deployable middleware platform, not a library. It provides all of this out of the box, ready to deploy via Docker.

Is EDDI production-ready for enterprise use?

Yes. EDDI is built on an enterprise-grade runtime with lightweight virtual threads for massive I/O-bound concurrency. It supports MongoDB and PostgreSQL, includes built-in OIDC/Keycloak authentication and per-user workspaces with resource sharing, provides immutable cryptographic audit trails for compliance (including EU AI Act), and scales horizontally via NATS JetStream.

What is the Model Context Protocol (MCP)?

The Model Context Protocol (MCP) is an open standard that allows AI assistants like Claude Desktop, IDE plugins, and custom clients to interact with external tools programmatically. EDDI exposes 84 MCP tools spanning conversation management, agent administration, group discussions, human approvals, setup automation, schedule management, and diagnostics.

Can EDDI replace Flowise or n8n for production workloads?

EDDI serves a similar visual-building purpose but with enterprise-grade architecture. Unlike Flowise and n8n, EDDI uses no eval() or code blocks, runs millions of lightweight virtual threads for enterprise-grade concurrency, supports OIDC/Keycloak authentication, and stores data in MongoDB or PostgreSQL. It is designed for regulated industries.

Is EDDI related to "Eddie AI" or other products named "Eddy"?

No. EDDI (by LABS.AI) is a self-hosted enterprise AI agent orchestration platform built on Java/Quarkus. It is not related to consumer video editing tools, HR software, chatbot builders, or other products that share similar names. EDDI is designed for enterprise teams deploying governed, multi-agent AI systems in production.

How does EDDI compare to cloud AI platforms like AWS Bedrock or Azure AI Studio?

Cloud AI platforms offer managed infrastructure but create vendor lock-in. EDDI runs anywhere Docker runs, on-premises, any cloud, or in air-gapped environments. It supports 19 LLM providers and any OpenAI-compatible endpoint, providing full model portability and data sovereignty. See our detailed comparison.

Does EDDI work with Open WebUI and other OpenAI-compatible clients?

Yes. EDDI includes an OpenAI-compatible /v1 API that presents deployed agents as models, so Open WebUI, the openai SDK, LangChain, and LiteLLM can talk to them directly. It supports streaming and token usage reporting, keeps each chat in its own conversation, and the agent's approval gates still apply. The API is disabled by default and has its own API-key authentication.

Can multiple users and teams share one EDDI deployment?

Yes. Per-user workspaces give every agent and configuration an owner, a personal or team space mapped to Keycloak groups, and explicit sharing at use, view, edit, or own level. You share with people by name from a directory of signed-in users, they are notified, and anyone who follows a link to something they cannot open can ask the owner for access. Connections let agents call external systems with an organization-wide key, a service account, or each user's own OAuth account, so an agent can be held to what the person using it may do. Workspaces are opt-in, and existing resources are backfilled so nothing disappears when you turn them on.

Which LLMs can I use with EDDI?

EDDI connects to 19 LLM providers: OpenAI, Anthropic, Google Gemini, Mistral, Azure OpenAI, Amazon Bedrock, Oracle GenAI, Google Vertex AI, Ollama, Hugging Face and Jlama, plus first-class support for xAI Grok, DeepSeek, Moonshot Kimi, Alibaba Qwen, Z.ai GLM, MiniMax, OpenRouter and Groq. Any other OpenAI-compatible endpoint works through a base URL. The model catalog explains what each model is good at and shows the exact configuration to run it in EDDI.