Class TokenBudget

java.lang.Object
com.tnsai.coordination.production.TokenBudget

public final class TokenBudget extends Object
Per-agent token budget management for multi-agent orchestration. Tracks token usage and enforces budgets to prevent runaway costs.

Example usage:


 TokenBudget budget = new TokenBudget(100_000); // Global budget
 budget.allocate("agent-a", 30_000);
 budget.allocate("agent-b", 70_000);

 budget.consume("agent-a", 5_000);
 if (budget.canConsume("agent-a", 10_000)) { ... }
 
  • Constructor Details

    • TokenBudget

      public TokenBudget(long globalBudget)
  • Method Details

    • allocate

      public void allocate(String agentId, long tokens)
      Allocates a token budget for a specific agent.
    • consume

      public void consume(String agentId, long tokens)
      Records token consumption for an agent.
    • canConsume

      public boolean canConsume(String agentId, long tokens)
      Checks if an agent can consume the specified tokens without exceeding their budget.
    • remaining

      public long remaining(String agentId)
      Returns remaining tokens for an agent.
    • globalRemaining

      public long globalRemaining()
      Returns global remaining tokens.
    • usagePercent

      public double usagePercent(String agentId)
      Returns usage percentage for an agent (0-100).
    • globalUsagePercent

      public double globalUsagePercent()
      Returns global usage percentage (0-100).
    • allAllocations

      public Map<String,Long> allAllocations()
      Returns a snapshot of all agent budgets.
    • globalBudget

      public long globalBudget()
      Returns the global budget limit.
    • globalConsumed

      public long globalConsumed()
      Returns total tokens consumed globally.