What you write
You write one ordinary async function. Rebuno runs that handler for you. Route every non-deterministic effect through the kernel, which records the outcome. Three ways to do it:@rebuno.tool
Records a
tool_call step: actions the agent takes, such as a search, an
email, or a database write.rebuno.http_client()
Records an
llm_call step: calls to an LLM provider.rebuno.step()
Records a
local step: local non-determinism such as the clock, a random
choice, or a fresh id.Sections
Quickstart
Install, configure, and run a complete example.
Agents
The
Agent host, input binding, run vs app, and lifecycle.Tools
@tool, wrap_tool, idempotency, subagents, blocking work, and MCP tools.LLM calls
http_client() and RebunoTransport.Local steps
rebuno.step() for durable local work.Resources
Checkpoint external state for forks.
Clients
Creating and inspecting executions, and approvals.
Errors
The exception hierarchy.
How it works
Step identity, replay, heartbeats, and the kernel protocol.