AxAgentContextEvent Generated TypeScript API reference. typescript api api/reference build/apidocs/TypeAlias.AxAgentContextEvent.md type AxAgentContextEvent

AxAgentContextEvent

TypeScript
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;
};

Defined in: https://github.com/ax-llm/ax/blob/3306475085414d36aee4411ad2466e08e53bef8a/src/ax/agent/contextEvents.ts#L5

Type declaration

TypeScript
{
  actionLogEntryCount: number;
  checkpointActive: boolean;
  effectiveBudgetChars: number;
  fixedPromptChars: number;
  guidanceLogEntryCount: number;
  kind: "budget_check";
  mutablePromptChars: number;
  pressure: AxAgentContextPressure;
  stage: AxAgentContextStage;
  targetPromptChars: number;
  turn: number;
}
NameType
actionLogEntryCountnumber
checkpointActiveboolean
effectiveBudgetCharsnumber
fixedPromptCharsnumber
guidanceLogEntryCountnumber
kind"budget_check"
mutablePromptCharsnumber
pressureAxAgentContextPressure
stageAxAgentContextStage
targetPromptCharsnumber
turnnumber
TypeScript
{
  coveredTurns: number[];
  kind: "checkpoint_created" | "checkpoint_cleared";
  reason: "over_budget" | "under_budget" | "disabled";
  stage: AxAgentContextStage;
  summaryChars?: number;
  turn: number;
}
NameType
coveredTurnsnumber[]
kind"checkpoint_created" | "checkpoint_cleared"
reason"over_budget" | "under_budget" | "disabled"
stageAxAgentContextStage
summaryChars?number
turnnumber
TypeScript
{
  kind: "tombstone_created";
  resolvedByTurn: number;
  source: "deterministic" | "model";
  stage: AxAgentContextStage;
  summaryChars: number;
  turn: number;
}
NameType
kind"tombstone_created"
resolvedByTurnnumber
source"deterministic" | "model"
stageAxAgentContextStage
summaryCharsnumber
turnnumber
TypeScript
{
  kind: "action_compacted";
  mode: "distill" | "compact";
  originalChars: number;
  reason: "structured_output" | "superseded" | "pressure" | "proactive" | "lean";
  renderedChars: number;
  stage: AxAgentContextStage;
  turn: number;
}
NameType
kind"action_compacted"
mode"distill" | "compact"
originalCharsnumber
reason"structured_output" | "superseded" | "pressure" | "proactive" | "lean"
renderedCharsnumber
stageAxAgentContextStage
turnnumber
TypeScript
{
  domain: "modules" | "skills" | "memories";
  kind: "relevance_ranking";
  shortlist: object[];
  stage: AxAgentContextStage;
  suppressed: boolean;
  taskChars: number;
}
NameTypeDescription
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).

Docs