What do you mean exactly? If you need a notification engine, reaching for a pubsub implementation is very easy with phoenix’s popularity and quite battle tested. I’ve implemented notifications at scale a few times in the ecosystem. What problems are you encountering that you don’t feel you have a tool in the shed to work with in this case?
It's less about the language syntax and more about the capabilities of the underlying Erlang runtime. There's also Gleam on top of Erlang if you like stronger typing (gleam.run).
- How "robust" do I build the Agent GenServer? There is a working implementation in the repo, but it's simplistic. How robust should the event implementation of Signals be? I'd love feedback on that
- Examples of Agents and Actions - the other repo's in the org have some basic examples, and I'm building out chat first as that is the most requested - but expansion there would be fantastic
To run multiple agents in TypeScript, you're typically reaching for a package like 'pm2'. This starts a Node.js process for each Agent, then you need another tool like Redis for them to communicate.
Adding Docker adds even more weight.
You could run multiple agents in a single Node.js process, but you'll eventually face event-loop conflicts.
With Elixir and BEAM, you already have the tools to run agents as a lightweight Erlang process. You also have built-in PubSub for inter-agent communication (via a package).
This provides the ability for safely running 1000's of agents in a single BEAM Node. This is much more robust and efficient then Node.js and TypeScript.
AGI?