Class: CostTracker
Defined in: packages/orchestration/src/cost/cost-tracker.ts:65
Tracks cost per run and per agent based on token usage from DoneEvent.
Uses per-model pricing when a model is known, falls back to a blended rate. Since DoneEvent.tokens_used is a single number (no input/output split), we use the average of input and output rates as the blended per-model rate.
Constructors
Constructor
new CostTracker(
config?):CostTracker
Defined in: packages/orchestration/src/cost/cost-tracker.ts:72
Parameters
config?
Returns
CostTracker
Methods
estimateCost()
estimateCost(
tokensUsed,model?):number
Defined in: packages/orchestration/src/cost/cost-tracker.ts:88
Estimate cost from token count
Parameters
tokensUsed
number
model?
string
Returns
number
getAgentSpend()
getAgentSpend(
agentName):number
Defined in: packages/orchestration/src/cost/cost-tracker.ts:104
Parameters
agentName
string
Returns
number
getModelRate()
getModelRate(
model?):number
Defined in: packages/orchestration/src/cost/cost-tracker.ts:78
Get the blended rate ($/1M tokens) for a model
Parameters
model?
string
Returns
number
getRunCost()
getRunCost(
runId):number
Defined in: packages/orchestration/src/cost/cost-tracker.ts:100
Parameters
runId
string
Returns
number
getTicketSpend()
getTicketSpend(
ticketId):number
Defined in: packages/orchestration/src/cost/cost-tracker.ts:108
Parameters
ticketId
string
Returns
number
isOverBudget()
isOverBudget(
agent):boolean
Defined in: packages/orchestration/src/cost/cost-tracker.ts:112
Parameters
agent
Returns
boolean
isOverTicketBudget()
isOverTicketBudget(
agent,ticketId):boolean
Defined in: packages/orchestration/src/cost/cost-tracker.ts:117
Parameters
agent
ticketId
string
Returns
boolean
recordRunCost()
recordRunCost(
runId,agentName,ticketId,costUsd):void
Defined in: packages/orchestration/src/cost/cost-tracker.ts:94
Record cost for a run
Parameters
runId
string
agentName
string
ticketId
string
costUsd
number
Returns
void