(no title)
pantsforbirds | 8 months ago
You can safely swap out agents without redeploying the application, the concurrency is way below the scale BEAM was built for, and creating stateful or ephemeral agents is incredibly easy.
My plan is to set up a base agent in Python, Typescript, and Rust using MCP servers to allow users to write more complex agents in their preferred programming language too.
nilslice|8 months ago
[0]: https://github.com/extism/extism [1]: https://github.com/extism/elixir-sdk
pantsforbirds|8 months ago
alberth|8 months ago
https://www.erlang.org/doc/apps/mnesia/mnesia.html
pantsforbirds|8 months ago
My original thought was to spin up SQLite databases as needed because they are super lightweight, well-tested, and supported by almost every programming language. If you want to set up an agent in another programming language via MCP, but you still want to be able to access the agent memory directly, you can use the same schema in a SQLite database.
I may end up using mnesia for more metadata or system-oriented data storage though. It's very well designed imo.
But one of the biggest reasons has just been the really nice integration with DuckDB. I can query all of the SQLite databases persisted in a directory and aggregate some metadata really easily.