About

Learning agents
by building them.

In early 2026 I got curious about agents — not the demos, but what it takes to make one genuinely useful. So I built one: a working back office for a real business, with agents answering real questions from real data, every day, for people who noticed when it was wrong.

Living with it for a few months was the interesting part. Almost none of the work turned out to be the agent loop. It was everywhere the agents lived — the channels, the schedule, the history, the answers that had to arrive as something you could read at a glance. That half was entirely general, and rebuilding it for the next project would have been a waste, so I pulled the two apart.

What they actually are

Agentino is the loop. A tool is a decorated function, the schema comes from its signature, and the runtime handles the round-trip, the retries and the dispatch. I wrote it to understand the lower-level details rather than to compete with anything — you learn what a framework is deciding for you by deciding it yourself once. Small enough to read end to end in an afternoon, which was the point.

Runspace is everywhere the agents live: channels you reach them in, a scheduler, gateways to Telegram and WhatsApp, and a rendering layer so an answer can be a chart rather than a paragraph describing one.

It does not require Agentino. Runspace talks to whichever harness you already run — Claude Code, Codex, OpenClaw, pi, or Agentino — and depends on none of them. That separation is the useful half: the loop is the part everyone already has an opinion about, and the workspace around it is the part that gets rebuilt from scratch on every project.

The documentation has the full picture, and the writing has the reasoning behind the parts I found interesting.

I decided to open source both. None of it is a claim to have solved anything — the field moves faster than any one person can follow, and there are larger, better-resourced frameworks that already cover much of this ground. I am publishing it anyway: it works, it is small enough to read in an evening, and the parts I found genuinely hard turned out to be the parts nobody writes about.

Then I built a demo close to what I actually do all day. Almanac watches the LLM inference landscape — what launched, what it costs, how fast it answers back — files a short read each morning, and says so plainly when nothing has moved. Inference deployment is my day job, so I can tell when the demo is wrong, and a demo you cannot check is worth very little. Its whole source is on GitHub too.

Everything here is Apache-2.0. I would rather it was used than kept. Issues, pull requests and awkward questions are all welcome.

Iliya Slavutin

My day job is LLM inference — deploying it, and making it faster and cheaper. I run Axeltec, where that is the whole business: inference and runtime engineering for silicon vendors and AI infrastructure companies. Agentino and Runspace were the same curiosity pointed somewhere new.

If you have something interesting — agents heading for production, or an inference bill growing faster than the usage under it — I am happy to talk, and happy to consult where it fits.

Bug reports and feature requests are better as GitHub issues — they stay visible to everyone else who hits the same thing. Security problems should go through a private advisory, not email or Telegram.

Both projects are on the front page, with the one question that tells you which of them you need.

Back to the projects →