How-To Guides
27 integrations: OpenAI, Anthropic, Groq, AutoGen, Spring AI, LangChain, LangGraph, AnyAgent, Vercel AI, Next.js, Django, Flask, MCP, and more. Budget patterns, estimation, error handling.
Browse guides
Stop runaway agent spend and risky actions before they execute.
Self-hosted, no prompt storage. Apache 2.0.
Cost runaway
Same agent. Same bug.
Without Cycles: ~$10 in 12s — the pace behind $4,200 incidents.
With Cycles: $1 cap, before the next action ran.
reserve → deny → no downstream call
Blast radius
Same workflow. Different boundary.
Without Cycles: All four actions execute — including the customer email.
With Cycles: Internal actions proceed; the email is blocked before it sends.
decide → DENY → no email send
@cycles reserves budget before the action runs. No remaining cycles — no action.
from runcycles import cycles
@cycles(estimate=5000, action_kind="llm.completion", action_name="openai:gpt-4o")
def ask(prompt: str) -> str:
return openai.chat.completions.create(
model="gpt-4o",
messages=[{"role": "user", "content": prompt}]
).choices[0].message.contentMost teams reach out for one of four reasons — they all land in the same inbox, and a founder reads every one.
Running a real agent workload and evaluating Cycles? Apply to become a design partner →
Found a bug or have a concrete technical issue? Open a GitHub issue instead — it’s faster for everyone.