AxAgentContextEvent type AxAgentContextEvent =
| {
actionLogEntryCount : number ;
checkpointActive : boolean ;
effectiveBudgetChars : number ;
fixedPromptChars : number ;
guidanceLogEntryCount : number ;
kind : "budget_check" ;
mutablePromptChars : number ;
pressure : AxAgentContextPressure ;
stage : AxAgentContextStage ;
targetPromptChars : number ;
turn : number ;
}
| {
coveredTurns : number [];
kind : "checkpoint_created" | "checkpoint_cleared" ;
reason : "over_budget" | "under_budget" | "disabled" ;
stage : AxAgentContextStage ;
summaryChars? : number ;
turn : number ;
}
| {
kind : "tombstone_created" ;
resolvedByTurn : number ;
source : "deterministic" | "model" ;
stage : AxAgentContextStage ;
summaryChars : number ;
turn : number ;
}
| {
kind : "action_compacted" ;
mode : "distill" | "compact" ;
originalChars : number ;
reason : "structured_output" | "superseded" | "pressure" | "proactive" | "lean" ;
renderedChars : number ;
stage : AxAgentContextStage ;
turn : number ;
}
| {
domain : "modules" | "skills" | "memories" ;
kind : "relevance_ranking" ;
shortlist : object [];
stage : AxAgentContextStage ;
suppressed : boolean ;
taskChars : number ;
}
| {
fieldName : string ;
kind : "field_auto_promoted" ;
originalChars : number ;
promptPreviewChars? : number ;
stage : AxAgentContextStage ;
turn : number ;
}; Defined in: https://github.com/ax-llm/ax/blob/e4219a44b7581a55a40d9dd62d2c281062ff078d/src/ax/agent/contextEvents.ts#L5
Type declaration {
actionLogEntryCount : number ;
checkpointActive : boolean ;
effectiveBudgetChars : number ;
fixedPromptChars : number ;
guidanceLogEntryCount : number ;
kind : "budget_check" ;
mutablePromptChars : number ;
pressure : AxAgentContextPressure ;
stage : AxAgentContextStage ;
targetPromptChars : number ;
turn : number ;
} Name Type actionLogEntryCountnumbercheckpointActivebooleaneffectiveBudgetCharsnumberfixedPromptCharsnumberguidanceLogEntryCountnumberkind"budget_check"mutablePromptCharsnumberpressureAxAgentContextPressurestageAxAgentContextStagetargetPromptCharsnumberturnnumber
{
coveredTurns : number [];
kind : "checkpoint_created" | "checkpoint_cleared" ;
reason : "over_budget" | "under_budget" | "disabled" ;
stage : AxAgentContextStage ;
summaryChars? : number ;
turn : number ;
} Name Type coveredTurnsnumber[]kind"checkpoint_created" | "checkpoint_cleared"reason"over_budget" | "under_budget" | "disabled"stageAxAgentContextStagesummaryChars?numberturnnumber
{
kind : "tombstone_created" ;
resolvedByTurn : number ;
source : "deterministic" | "model" ;
stage : AxAgentContextStage ;
summaryChars : number ;
turn : number ;
} Name Type kind"tombstone_created"resolvedByTurnnumbersource"deterministic" | "model"stageAxAgentContextStagesummaryCharsnumberturnnumber
{
kind : "action_compacted" ;
mode : "distill" | "compact" ;
originalChars : number ;
reason : "structured_output" | "superseded" | "pressure" | "proactive" | "lean" ;
renderedChars : number ;
stage : AxAgentContextStage ;
turn : number ;
} Name Type kind"action_compacted"mode"distill" | "compact"originalCharsnumberreason"structured_output" | "superseded" | "pressure" | "proactive" | "lean"renderedCharsnumberstageAxAgentContextStageturnnumber
{
domain : "modules" | "skills" | "memories" ;
kind : "relevance_ranking" ;
shortlist : object [];
stage : AxAgentContextStage ;
suppressed : boolean ;
taskChars : number ;
} Name Type Description domain"modules" | "skills" | "memories"- kind"relevance_ranking"- shortlistobject[]Items surfaced to the model, most relevant first ([] if suppressed). stageAxAgentContextStage- suppressedbooleanTrue when the low-confidence guard emitted nothing. taskCharsnumberLength of the ranked task string (not the text — avoids log bloat).
Emitted once per ranked domain per forward when the advisory relevance
ranker runs (relevanceRanking plus the domain’s prerequisite: modules
need functionDiscovery; skills/memories need their catalogs). Records
the shortlist actually surfaced to the model.
To measure whether the hint helps, an observer joins per forward:
shortlist.map((s) => s.id) against what the model then loaded — for
modules the internal discover calls (onFunctionCall with
kind:'internal', name:'discover', args.request) and the module part
of external qualifiedNames; for skills onLoadedSkills/used(id); for
memories onLoadedMemories/used(id).
{
fieldName : string ;
kind : "field_auto_promoted" ;
originalChars : number ;
promptPreviewChars? : number ;
stage : AxAgentContextStage ;
turn : number ;
} Name Type Description fieldNamestring- kind"field_auto_promoted"- originalCharsnumber- promptPreviewChars?numberChars kept inline as a preview; undefined => runtime-only. stageAxAgentContextStage- turnnumber-
Emitted once per field per run when autoUpgrade.contextFields keeps an
oversized undeclared input value runtime-only. The value stays available
in the code runtime as inputs.<fieldName>; the prompt carries a
truncated preview (or nothing when promptPreviewChars is undefined)
plus a contextMetadata entry.