Iron AOL
Agents you declare in markdown, not code.
A runtime that compiles a folder of markdown into a supervised ROS 2 process, and writes everything it did to a ledger nobody can rewrite.
What it does
Agents declared as markdown folders — SKILL.md, capabilities.md, flows/, tests/
ROS 2 Jazzy lifecycle nodes for deterministic process supervision
Durable journaled jobs that resume instead of restarting after a crash
Append-only memory ledger giving a tamper-evident action history
NATS messaging with a portable-skill / local-capability split
On camera
The long version
Agent frameworks usually ask you to subclass something and wire components together in code, which means the behaviour of a system lives scattered across a codebase. Iron inverts that: an agent is a folder of markdown — what it knows, which tools it may touch, what memory it may read and write — and the runtime compiles that folder into a running process.
Those processes are ROS 2 lifecycle nodes, so an agent has real, inspectable states — unconfigured, inactive, active, finalized — and a supervisor can start, pause, and reap them deterministically instead of hoping a loop exits. Jobs are journaled and durable: a crash mid-task resumes where it stopped rather than starting over.
Every action an agent takes lands in an append-only memory ledger that cannot be rewritten after the fact, which is what makes the system auditable in a way a chat transcript never is. Messaging runs over NATS, and skills stay portable across deployments while capability grants stay local to one.