Rules: Budget

Иерархия бюджетов для контроля расходов на LLM и tools.

Иерархия бюджетов

System daily budget ($50)
  └→ Per-agent daily budget ($3-$10)
       └→ Per-task budget ($0.3-$10)
            └→ Per-tool-call limits

Каждый уровень enforce’ится независимо. Превышение любого → блокировка.

System Budget (MVP defaults)

ПараметрЗначение
Daily$50
Monthly$1,000
Alert threshold80% → Telegram notification
Hard stop100% → все pending ждут human reset

Per-Agent Daily Budget

AgentDaily limit
Agent-CEO$10
Directors (each)$8
Executors (each)$3
Cross-cutting (Judge, Librarian)$5

Per-Task Budget

Task typeDefault cost limit
Simple (classification, formatting)$0.30
Standard (research, analysis)$1.00
Complex research (multi-agent)$3.00
Deep research (full pipeline)$10.00

Задаётся в budget_usd при создании task. Наследуется от parent если не указан.

Per-Tool-Call Limits

ToolMax per task
web_fetch50
web_search20
memory.write100
embedding.generate200

Time Budgets

Task typeSoft limitHard limit
Simple2 min5 min
Standard10 min30 min
Research30 min2 hours
Deep research2 hours6 hours

Hard limit превышенstatus = 'failed' + escalation.

Token Budgets

Agent typeMax tokens per task
CEO100,000
Directors80,000
Executors30,000 — 50,000
Judge20,000

Включает input + output + tool responses.

Enforcement

Real-time Tracking

Policy Engine проверяет до каждого LLM call:

# Redis tracking running totals
budget = redis.get(f"budget:{task.id}")
 
if budget.tokens_used >= task.budget_tokens * 0.8:
    # Inject warning into agent context
    context.append("⚠️ You have used 80% of your token budget. Be concise.")
 
if budget.tokens_used >= task.budget_tokens:
    # Hard stop
    task.status = 'failed'
    task.error = 'budget_exceeded'
    escalate(task)

Overrun Handling

СобытиеРеакция
Первое превышениеWarning + escalation
3 превышения / 24ч от одного агентаAgent frozen до review
System daily 80%Telegram alert
System daily 100%Emergency mode

Emergency Mode

Когда daily cap достигнут:

  1. Только priority = 0 задачи выполняются (critical/human-requested)
  2. Все остальные → очередь до 00:00 UTC reset
  3. Telegram уведомление: “Daily budget exhausted. Only critical tasks processing.”
  4. Human может override: увеличить budget или approve specific tasks

Budget Reviews

ЦиклСодержание
DailyАвтоматический отчёт: spent vs budget, top consumers
WeeklyCost per task type + trends, anomalies
MonthlyReview defaults, adjust based on real data

Связанные документы