Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Elixir
  3. Jido

Jido

Apache-2.0Elixirv2.3.2

An autonomous agent framework for Elixir, built for distributed, multi-agent systems and dynamic workflows.

Visit WebsiteGitHubGitHub
1.8k stars111 forks0 contributors

What is Jido?

Jido is an autonomous agent framework for Elixir that helps developers build agent systems as ordinary Elixir and OTP software. It provides a formalized architecture for creating distributed, cooperating agents with built-in supervision and fault tolerance, separating pure state transformations from side effects.

Target Audience

Elixir developers building multi-agent systems, workflows, or complex stateful applications that require reliable coordination, fault tolerance, and a structured approach to managing side effects.

Value Proposition

Developers choose Jido because it formalizes the agent pattern on top of OTP/GenServer, providing a structured, testable architecture with clear separation of pure state logic and side effects, while maintaining the reliability and concurrency benefits of the BEAM ecosystem.

Overview

🤖 Autonomous agent framework for Elixir. Built for distributed, autonomous behavior and dynamic workflows.

Use Cases

Best For

  • Building multi-agent systems with formalized parent-child hierarchies and signal routing.
  • Creating stateful workflows where business logic needs to be cleanly separated from side effects for testability.
  • Developing fault-tolerant, supervised agent systems that leverage OTP's concurrency and reliability patterns.
  • Implementing complex, durable workflows with plan-based orchestration and partition-safe tenancy.
  • Extending agent capabilities with composable plugins for state isolation and lifecycle management.
  • Running deterministic agent logic in production with GenServer-based runtime and configurable execution strategies like Finite State Machines (FSM).

Not Ideal For

  • Simple, single-process applications where raw GenServer or Task abstractions are sufficient without agent coordination.
  • Rapid prototyping scenarios where the overhead of defining schemas, actions, and directives slows down iteration.
  • Teams not using Elixir or the BEAM ecosystem, as Jido is tightly integrated with OTP and lacks cross-language support.
  • Applications with strict real-time latency requirements where Jido's abstraction layer and signal routing might introduce unnecessary delays.

Pros & Cons

Pros

Immutable Functional Core

Based on pure functional design with cmd/2, ensuring deterministic state transformations and easy testing without processes, as highlighted in the README's core loop and separation of state from effects.

OTP Integration

Seamlessly built on GenServer with built-in supervision, parent-child hierarchies, and fault tolerance, leveraging BEAM's concurrency model for reliable production deployment, as shown in the runtime integration features.

Clear Effect Separation

Directives like Emit and Spawn explicitly describe side effects, separating them from state logic, which improves testability and maintainability, with typed directives covered in the guides.

Extensible Architecture

Supports composable plugins for reusable capabilities and multiple execution strategies like FSM, allowing customization without modifying core agent logic, as detailed in the plugins and strategies documentation.

Cons

Ecosystem Maturity

While core features are robust, companion packages like jido_ai are separate, and the overall ecosystem is smaller compared to more established frameworks, potentially requiring custom integrations for advanced use cases.

Setup Complexity

Without using Igniter, manual installation involves configuring instances and supervision trees, which can be cumbersome for newcomers or simple projects, as noted in the installation guide with multiple steps.

Overhead for Simple Agents

The formalized architecture, including schemas and directives, adds boilerplate for agents that don't need multi-agent coordination or complex state management, making it less efficient for trivial use cases compared to raw OTP.

Frequently Asked Questions

Quick Stats

Stars1,771
Forks111
Contributors0
Open Issues2
Last commit14 hours ago
CreatedSince 2024

Tags

#ai#functional-programming#elixir#event-driven-architecture#workflow#workflow-orchestration#otp#elixir-package#autonomous-agents#distributed-systems#multi-agent-systems#agent#agent-framework#ai-agents#gen-server#core#artificial-intelligence#orchestration

Built With

G
GenServer
E
Elixir
O
OTP

Links & Resources

Website

Included in

Elixir13.1k
Auto-fetched 7 hours ago

Related Projects

m2cgenm2cgen

Transform ML models into a native code (Java, C, Python, Go, JavaScript, Visual Basic, C#, R, PowerShell, PHP, Dart, Haskell, Ruby, F#, Rust) with zero dependencies

Stars2,994
Forks264
Last commit1 year ago
NxNx

Multi-dimensional arrays (tensors) and numerical definitions for Elixir

Stars2,896
Forks227
Last commit1 day ago
AxonAxon

Nx-powered Neural Networks

Stars1,687
Forks127
Last commit9 days ago
ReqLLMReqLLM

Composable Elixir library for LLM interactions built on Req and Finch

Stars548
Forks175
Last commit12 hours ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub