Open Source
Explore the latest AI open-source projects from GitHub and HuggingFace.
Explore the latest AI open-source projects from GitHub and HuggingFace.
While the AI agent framework space is dominated by Python and JavaScript, Jido brings a fundamentally different approach by building autonomous agents on Elixir's OTP runtime. The name Jido comes from the Japanese word meaning "automatic" or "automated" (ji = self, do = movement). With 1,434 GitHub stars and 115 new stars gained in a single day, Jido is gaining traction among developers who value the concurrency, fault tolerance, and distribution capabilities that Elixir and the BEAM virtual machine provide.
Released under the Apache 2.0 license, Jido offers pure functional agents where state changes are data transformations and side effects are described as directives, not directly executed.
Jido's core innovation is the cmd/2 contract. Every agent operation receives an agent struct and an action, then returns an updated agent plus directives describing external effects. This separation of pure computation from side effects makes agent behavior deterministic, testable without running processes, and easy to reason about.
def cmd(agent, action) do
# Pure state transformation
updated_agent = apply_action(agent, action)
# Directives describe side effects
{updated_agent, [Directive.Emit.new("action_completed")]}
end
Agents communicate through CloudEvents-based signals routed by configurable strategies. This approach replaces ad-hoc message passing with a structured, standard protocol that enables interoperability between different agent implementations.
Jido supports parent-child agent relationships with full lifecycle management. Parent agents can spawn, monitor, and stop child agents, enabling complex multi-agent systems where responsibilities are distributed across a hierarchy.
Reusable capabilities are packaged as plugins with isolated state and lifecycle hooks. This composable design allows developers to mix and match capabilities without modifying the core agent logic.
| Strategy | Description | Best For |
|---|---|---|
| Direct | Immediate action execution | Simple workflows |
| FSM | Finite State Machine transitions | State-driven patterns |
| AgentServer | GenServer-backed persistent agent | Production deployment |
Jido requires Elixir 1.17+ and Erlang/OTP 26+. It uses NimbleOptions or Zoi for schema validation, ensuring that agent state always conforms to a declared schema. The framework runs on the BEAM VM, which natively supports lightweight processes (millions per node), preemptive scheduling, and hot code upgrades.
Installation uses the Igniter scaffolding tool:
mix igniter.install jido
Jido is part of a broader ecosystem of complementary packages:
The choice of Elixir is strategic. The BEAM VM was designed for telecom systems that require extreme reliability and concurrency. These same properties make it well-suited for multi-agent systems where many agents must run simultaneously, communicate reliably, and recover from failures without bringing down the entire system. Jido formalizes patterns that Elixir developers commonly reinvent when building agent systems.
Jido occupies a unique position in the AI agent framework landscape. By building on Elixir's OTP, it inherits decades of battle-tested distributed systems engineering. For teams already using Elixir or those building agents that demand high concurrency and fault tolerance, Jido provides a well-structured, functional approach that contrasts with the imperative patterns common in Python-based frameworks.
OpenClaw is an open-source, local-first AI gateway with 366K GitHub stars that routes AI responses through WhatsApp, Telegram, Slack, Discord, iMessage, Teams, and 15+ other platforms — zero cloud dependency.
OpenClaw
Open-source personal AI assistant connecting to 13+ messaging platforms with local gateway architecture, voice support, and multi-agent routing.