Hello, OpenOtters
A short note on what OpenOtters is, why it exists, and where the project goes next.
by openotters

So this is the first post on the OpenOtters blog. Hi.
I've been wanting to write this up for a while and kept putting it off, mostly because I wasn't sure what the first post should be. In the end I decided it should be a small one. A "we exist, here is the door, please come in" kind of post.
OpenOtters is a way to build, ship, and run AI agents the same way you ship a container. You write an Agentfile, you build it into an OCI image, you run it. The runtime takes care of streaming, memory, sessions, tools, persistence, all that. There's no SDK to learn (you can still drop down to Go if you want, we just don't think you should have to most of the time).
The plan for this blog is pretty loose. Release notes when we cut a release. Design notes when something interesting lands. The occasional rant about why a particular trade-off looked the way it did at the time. We'll see.
Why declarative
The honest reason is that building an agent today still feels like building a small bespoke service every time. You pick an SDK. You wire up a model. You wire up some tools. Then memory. Then redeploy when any of that changes. It works, sure, but it's a long way from how the rest of the stack feels in 2026.
Containers don't make you write Go to define them. You write a Dockerfile. An Agentfile is the same idea, applied to agents. Pick a model. Give it a soul (we settled on that word and we're keeping it). Bind a few tools as container images. Done.
The same artifact runs locally, runs in CI, runs on a hosted daemon. Push it to a registry, pull it on another machine, otters run it. Boring on purpose.
Come hang out
We just opened a Slack workspace. It's quiet right now, which honestly is sort of nice. If you want to talk about the spec, contribute a tool, ask a question, or just lurk, the door is open: Join the OpenOtters Slack.
GitHub discussions is the other place we hang out, mostly for things that should stay searchable.
What's next
A few things on deck, in roughly the order I'd bet on them landing:
A stable Agentfile v1 with a real deprecation policy. More demo agents on ghcr.io/openotters (the connectivity probe is a placeholder, not a flagship). Better docs around the spawn environment, and a clearer story about what the runtime actually guarantees you when something misbehaves at 3am.
If any of that sounds interesting, the Slack link above is the fastest way in. Otherwise, brew install openotters/tap/otters, kick the tires, file the bug.
See you around.