nrrso

nrrso

SwarmEx - a lightweight, Elixir-based library designed for orchestrating AI agents

Hi everyone! :honeybee:

I’m excited to introduce SwarmEx — a lightweight, Elixir-based library designed for orchestrating AI agents with control, flexibility, and ease. Inspired by OpenAI’s Swarm Python library, SwarmEx provides core tools to help developers create, coordinate, and manage AI agent networks.

Why SwarmEx?

SwarmEx was built to make agent orchestration in Elixir not just effective but enjoyable. Whether you’re managing complex workflows, handling specialized agents, or developing autonomous systems, SwarmEx gives you a straightforward framework with:

  • Seamless tool integration for custom tasks
  • Observability through built-in telemetry (WIP)
  • Robust error handling for dependable fault tolerance (WIP)
  • A streamlined developer experience

SwarmEx isn’t a one-to-one implementation of the OpenAI Swarm library but is inspired by its core ideas.

Getting Started

Installing SwarmEx is as easy as adding it to your mix.exs dependencies:

def deps do
  [
    {:swarm_ex, "~> 0.1.0"}
  ]
end

For a practical introduction, check out the following Livebook, where you can explore how to set up and interact with agents in real time:

Run in Livebook

Documentation & Feedback

Full documentation is available on Hexdocs. I would love to hear your feedback, ideas, or use cases! Feel free to open issues, submit PRs, or simply reach out.

Please keep in mind: SwarmEx is in alpha and rough around the edges but already usable.

Thanks, and looking forward to your feedback and ideas,
Norris

Most Liked

nrrso

nrrso

Thanks! I think that elixir lends itself very well for certain ML use-cases, like in the case of LLM agents. Sadly because of lacking tooling in the ecosystem we have a chicken and egg problem right now. And as always in the elixir community, beginner friendly material that is up to date is rare as well.

I am planning to add additional livebook’s with some more complex examples that mirror some examples of the openai/swarm repo. Sadly a day has only 24 hours :slight_smile:

Yeah, second post is not from me. Just flagged it as Spam / Off-Topic.

nulltree

nulltree

Nice, thanks for a cool contribution to the ecosystem - hope I find the time to check it out soon!

Btw I assume the second message is not you again, but a AI generated summary of your post of a newly registered user/bot? :smile:

Where Next?

Popular in Libraries Top

josevalim
Hi everyone, We would like to announce that Plataformatec is working on a new MySQL driver called MyXQL. Our goal is to eventually integ...
New
mhanberg
I just released the first version of Temple: an HTML DSL for Elixir and Phoenix! You can read this blog post or the docs for more info...
New
tmbb
I’ve been working on two packages (not on hex.pm yet) to build admin interfaces for phoenix apps: bureaucrat - which contains a bunch ...
New
OvermindDL1
Been making an MLElixir thing (not released yet…) for fun in spare time in the past day. I’m just trying to see how much I can get an ML...
132 13487 106
New
archan937
It is a well-know topic within the Elixir community: “To mock or not to mock? :)” Every alchemist probably has his / her own opinion con...
New
Crowdhailer
I have been updating a library that allows you to pipe between functions that use the erlang result tuple convention. Assuming you have...
New
josevalim
Yes, yet another parser combinator library! Most of the parser combinators in the ecosystem are either compile-time, often using AST tra...
159 18262 141
New
wmnnd
Hi there, for my project DBLSQD, I needed a file storage solution that is a bit more flexible than Arc. Because I thought others might f...
New
OvermindDL1
I created a new library (rather I pulled out a couple files from my big project), it manages an operating system PID file for the BEAM. ...
New
Qqwy
While not as prevalent as in imperative languages, arrays (collections with efficient random element access) are still very useful in Eli...
New

Other popular topics Top

JDanielMartinez
Hi! May someone helps me, please! I have two apps into an umbrella project: the first one is Database, which manages queries, and the se...
New
yurko
Here are few pieces of (common) Linux knowledge that we use for reasonably small one server apps. We use Ubuntu but this should work for ...
New
Tee
can someone please explain to me how Enum.reduce works with maps
New
_russellb
I want to try my hand at web scraping. What tools/libraries do I need to use. I’m hoping to turn this into something professional so don’...
New
nsuchy
Hi. I’ve noticed that Windows Powershell has it’s own IEX command and you cannot access Elixir’s IEX due to the conflict. This isn’t a cr...
New
aadeshere1
I have a another noob question about loop. Since elixir is immutable, while loop is not directly possible. total = 10 while total != 0 ...
New
fayddelight
I tried installing elixir 1.11.2 erlang 23.3.4 via asdf in my zsh shell. Enabled the versions locally and globally. When I list them ...
New
msaraiva
Surface is an experimental library built on top of Phoenix LiveView and its new LiveComponent API that aims to provide a more declarative...
564 42633 214
New
AstonJ
by Lance Halvorsen Elixir and Phoenix are generating tremendous excitement as an unbeatable platform for building modern web application...
460 27162 124
New
magnetic
Hey :wave:t3: Elixir community, I’ve been learning Elixir, and working on some side projects. My editor of choice is VSCode, and althoug...
New

Sub Categories:

We're in Beta

About us Mission Statement