OpenClaw plugin – hard budget limits for agent tool calls
Reserve-before-execute budget protocol prevents agents from burning money unexpectedly.

Reserve-commit lifecycle blocks agent actions before execution, unlike standard rate limiters.
Backend developers building autonomous AI agents
LangSmith · Guardrails AI · OpenTelemetry
Cycles is an open protocol for pre-execution enforcement. The core mechanism: reserve exposure before the action runs, commit actual usage after, release the remainder if it fails. Every reservation is idempotent so retries don't double-count.
Atomic operations mean concurrent agents can't both see "enough budget" and both proceed. It's not a rate limiter. It's not an observability tool. It's a runtime authority that answers one question before every instrumented action: is this still allowed to proceed?
Three clients: Python (PyPI), TypeScript (npm), Spring Boot (Maven Central). Self-hostable server, Apache 2.0.
Integrations: OpenClaw, LangChain, Vercel, FastAPI
The demo shows the failure mode in 60 seconds — same agent, same bug, two outcomes: without Cycles it burns $6, with Cycles it stops at $1.
Happy to answer questions about the protocol design, the idempotency semantics, or the concurrency model.
Reserve-before-execute budget protocol prevents agents from burning money unexpectedly.
Pre-execution budget reservation stops runaway agents before they burn $200.
Wire-protocol interception means zero code changes; solves LLM control drift in production.
Interceptor layer blocks SQL injection and shell injection before agents execute them.
HarmActionsEval benchmark proves GPT and Claude fail at blocking harmful tool use.
VERONICA puts an enforcement shim between your agent and the model so you can halt costly spirals before a request hits the provider — it natively exposes hard budget enforcement, circuit breakers, retry containment and degradation levels. The README + runnable runaway-loop demo make the failure mode concrete and the API (BudgetEnforcer, RuntimeContext, BudgetExceeded) is small and practical. I'd like to see richer observability/adapter docs for common agent frameworks, but as an enforcement-first primitive this is a clever, useful tool.