NewEvery agent tool call now routes through the governed MCP gateway — policy check, audit log, then dispatch.Read the changelogarrow_forward
XOOZLYAI Orchestrator
routeHow it workssmart_toyAgent fleetshieldGovernance & trustsellPricingmenu_bookDocsarticleBloghistoryChangelog
Log inStart free
grid_viewProductsrouteHow it workssmart_toyAgent fleetshieldGovernance & trustsellPricingmenu_bookDocsarticleBloghistoryChangelogHelp centreLog in
Start free
  1. XOOZLY
  2. chevron_rightDocumentation
Loading the knowledge base…
XOOZLYAI Orchestrator

Ready to orchestrate your AI fleet with total confidence?

Start a project, set a cost cap, and watch the loop run with every tool call policy-checked and logged before it leaves the platform.

Start freearrow_forwardSee what shipped
  • check_circleNo credit card required
  • check_circleYour keys, your model spend
  • check_circleEvery tool call audited

Platform

  • All productsarrow_forward
  • Orchestration looparrow_forward
  • Agent fleetarrow_forward
  • Governed control planearrow_forward
  • Pricingarrow_forward

Trust & legal

  • Trust centrearrow_forward
  • Security & compliancearrow_forward
  • AI use policyarrow_forward
  • Report a vulnerabilityarrow_forward
  • Data subject requestsarrow_forward

Resources

  • Documentation & guidesarrow_forward
  • Engineering & research blogarrow_forward
  • Changelogarrow_forward
  • Uptime & reliabilityarrow_forward

Browse by domain

  • Strategy & Researcharrow_forward
  • Developmentarrow_forward
  • QAarrow_forward
  • Governance & Orchestrationarrow_forward
  • All 10 domainsarrow_forward
XOOZLY
© 2026 XOOZLY · 61 agents · 10 domains · 8 SDLC stationsAI use policyarrow_forwardLog inarrow_forward99.9% uptime SLAarrow_forward
  1. XOOZLY
  2. chevron_rightDocumentation
  3. chevron_rightGuide
Loading this guide…
  1. XOOZLY
  2. chevron_rightDocumentation
  3. chevron_rightSetting a per-project cost cap
arrow_backBack to the knowledge base
schedule3 min read·verifiedChecked against the code on 25 October 2026
Core concepts & getting startedper-project-cost-capcodeapi-server/domains/projects_cost/service.pycodeapi-server/domains/runs_execution/service.py

FinOps & fleet governance

Setting a per-project cost cap

An agent fleet spends money the moment it plans. A recursive planning loop or a misconfigured retry can burn a month's allocation before anyone reads a billing alert, so XOOZLY treats the project's cap as a precondition of starting a run rather than a figure to reconcile afterwards.

open_in_newOpen Set a cost cap in the consolearrow_forward
01

Why the cap is a precondition, not a budget alert

Stored as
cost_caps.centsInteger cents, never a float
Checked
Pre-flightBefore StartAgentRun, not after
On breach
Auto-pauseThe project pauses, not just the run

A billing alert tells you what you already spent. For a fleet issuing planning calls and tool calls continuously, that is the wrong instrument: by the time an org-level alert fires, the spend it describes is finished. The cap is therefore evaluated as a precondition — a run that would exceed it does not start.

dangerousAFTER THE SPENDReconciled

A budget alert

Spend is measured after the fact and compared against a budget on a schedule. Anything between two checks is unbounded, so a retry loop is only visible once it has finished being expensive.

shieldBEFORE THE SPENDEnforced

A hard cap

The project's remaining allowance is read before the run is accepted. A run that does not fit is refused at that point, and a breach discovered mid-cycle pauses the project rather than letting the next step proceed.

02

Setting one

  1. 1Open the project you want to limitCaps are per project, so pick the project whose fleet you are limiting. A cap on one project does not constrain another.
  2. 2Set the cap amountThe figure is money, held as integer cents. A cap of zero is valid and meaningful: it blocks all spend rather than meaning “unlimited”.
  3. 3Agree who can resume after a breachA breach pauses the project. Resuming is deliberately a restricted action rather than something any member can clear, so decide who holds that role before you need it.
lockThere is no override pathA cap is a system boundary, not a warning a user can dismiss or override through the API. If a run needs more headroom, the cap itself is what changes — and that change is an audited event, not a silent edit.
03

What a breach actually does

  1. pause_circleThe project pausesThe run stops at its next step boundary rather than mid-write, and the project is marked paused. Work already recorded stays recorded — the pause is a refusal to continue, not a rollback.
  2. play_circleA person decides what happens nextRaising the cap, or the period rolling over, is what lets work proceed again. Resuming is restricted to the roles your organization assigned that capability.
04

Who can lift a pause

Resuming a paused project is deliberately not something every member can do. A pause means the project has already spent its allowance, so clearing it is a spending decision, and the roles your organization assigned that capability are the ones that can make it.

historyRaising a cap is auditedChanging the figure writes an audit record like any other governed change. That is the point: a cap that could be quietly raised during an incident and quietly lowered afterwards would not be a control.
05

What the cap does not cover

The cap governs what the fleet spends on your project. It is not a per-agent budget, not a rate limit, and not a quota on how many runs you may queue — a run that fits inside the remaining allowance starts regardless of how many ran before it.

  • It is per project. One project's cap does not constrain another's.
  • It gates the run at the point of starting, so a long run that was within budget when it began is not killed mid-flight by a later check — it stops at its next step boundary instead.
  • Request-rate limits are a separate concern with their own configuration; do not expect the cap to stand in for one.

boltPut it into practice

Run a fleet with these guardrails on from day one.

Hard cost caps, one audited gateway in front of every tool call, and versioned rule files — the defaults, not an enterprise add-on.

Start freearrow_forward

On this page

5 sections
  1. 1. Why the cap is a precondition, not a budget alertchevron_right
  2. 2. Setting onechevron_right
  3. 3. What a breach actually doeschevron_right
  4. 4. Who can lift a pausechevron_right
  5. 5. What the cap does not coverchevron_right
feedbackSomething missing?

Related guides

  • articleConnecting your first MCP serverConnect an MCP server
  • articleUnderstanding run states and lifecycle transitionsRun log
  • articleHow rule files govern an agent, and how a version is approvedAgent fleet