Skip to main content
Build agents and clients for Rebuno. The SDK is async-only and needs Python 3.11 or later. See the Quickstart to install and run it.

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.
On a re-dispatch the handler runs again from the top. Any step with a recorded result replays it instead of running a second time.

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, blocking work, and MCP tools.

LLM calls

http_client() and RebunoTransport.

Local steps

rebuno.step() for durable local work.

Clients

Creating and inspecting executions, and approvals.

Errors

The exception hierarchy.

How it works

Step identity, replay, heartbeats, and the kernel protocol.