Rust is a strong fit for agent runtimes, but until now it has largely lacked a first-class runtime and budget enforcement layer.
We built cycles to add pre-execution budget and action control to Rust agents with an API that leans into ownership and compile-time safety.
The key ideas:
-
commit(self)consumes the guard, so double-commit becomes a compile-time error -
#[must_use]helps catch ignored reservations -
Droptriggers best-effort release if a guard is never finalized - one lifecycle works across simple calls, streaming, and multi-agent workflows
The guide walks through three integration levels:
-
with_cycles()for simple LLM/tool calls -
ReservationGuardfor streaming and manual commit - low-level client methods for custom lifecycles
It also covers caps-aware execution:
- max token caps
- tool allow/deny lists
- step limits
- cooldowns
And a practical rollout path:
- start in
dry_run - inspect decisions and caps
- move to partial enforcement
- then hard limits
Full guide: https://runcycles.io/blog/how-to-add-budget-and-action-guardrails-to-rust-ai-agents-with-cycles
Docs: https://runcycles.io/quickstart/getting-started-with-the-rust-client
Repo: https://github.com/runcycles/cycles-client-rust
Top comments (0)