stderrOptionnel
((event: { readonly kind: "stderr"; readonly text: string; readonly truncated?: boolean; } & { readonly subagentId?: string; } & { readonly pass: number; readonly at: string; readonly seq?: number; readonly source?: ObservationSource; readonly scope?: ObservationScope; }) => void | Promise<void>) | undefined
Reçoit la stderr de l’agent ligne par ligne, chacune d’au plus 8192 caractères ; truncated signale une ligne coupée.
model-routeOptionnel
((event: ModelRouteEvent & { readonly subagentId?: string; } & { readonly pass: number; readonly at: string; readonly seq?: number; readonly source?: ObservationSource; readonly scope?: ObservationScope; }) => void | Promise<void>) | undefined
Traiter la sélection effective de modèle d’une étape routée, avec motif de repli et confiance facultative.
subagentOptionnel
((event: { readonly kind: "subagent"; readonly id: string; readonly callId: string; readonly name: string; readonly status: "started" | "finished" | "failed"; readonly conversation?: string; } & { readonly subagentId?: string; } & { readonly pass: number; readonly at: string; readonly seq?: number; readonly source?: ObservationSource; readonly scope?: ObservationScope; }) => void | Promise<void>) | undefined
Reçoit le démarrage, la fin ou l’échec d’un sous-agent du harness intégré, avec l’appel de délégation et l’identifiant de transcript quand il est stocké.
finishedOptionnel
((event: { readonly kind: "finished"; } & { readonly subagentId?: string; } & { readonly pass: number; readonly at: string; readonly seq?: number; readonly source?: ObservationSource; readonly scope?: ObservationScope; }) => void | Promise<void>) | undefined
Reçoit la fin réussie du tour de l’agent, avant qu’Outpost ne collecte les commits et ne fasse le ménage.
message-usageOptionnel
((event: { readonly kind: "message-usage"; readonly tokens: Usage; readonly messageId?: string; readonly parentCallId?: string; } & { readonly subagentId?: string; } & { readonly pass: number; readonly at: string; readonly seq?: number; readonly source?: ObservationSource; readonly scope?: ObservationScope; }) => void | Promise<void>) | undefined
Reçoit l’usage que Claude Code rapporte pour chaque message, avec ses identifiants de message et d’appel parent. Il est informatif : l’usage du dispatch compte les totaux des tours.
stoppedOptionnel
((event: { readonly kind: "stopped"; readonly reason: "completion" | "idle-timeout" | "deadline" | "aborted" | "oversized-event" | "steered"; } & { readonly subagentId?: string; } & { readonly pass: number; readonly at: string; readonly seq?: number; readonly source?: ObservationSource; readonly scope?: ObservationScope; }) => void | Promise<void>) | undefined
Reçoit la raison pour laquelle Outpost a arrêté le processus de l’agent : completion, idle-timeout, deadline, aborted, oversized-event ou steered.
steerOptionnel
((event: { readonly kind: "steer"; readonly text: string; readonly mode: SteeringMode; } & { readonly subagentId?: string; } & { readonly pass: number; readonly at: string; readonly seq?: number; readonly source?: ObservationSource; readonly scope?: ObservationScope; }) => void | Promise<void>) | undefined
Reçoit une consigne de steering remise à l’agent et indique si elle a été injectée ou reprise.
reasoningOptionnel
((event: { readonly kind: "reasoning"; readonly text: string; readonly parentCallId?: string; } & { readonly subagentId?: string; } & { readonly pass: number; readonly at: string; readonly seq?: number; readonly source?: ObservationSource; readonly scope?: ObservationScope; }) => void | Promise<void>) | undefined
Reçoit le texte de raisonnement lisible exposé par l’agent ou le modèle.
file-changeOptionnel
((event: { readonly kind: "file-change"; readonly changes: unknown; readonly callId?: string; } & { readonly subagentId?: string; } & { readonly pass: number; readonly at: string; readonly seq?: number; readonly source?: ObservationSource; readonly scope?: ObservationScope; }) => void | Promise<void>) | undefined
Reçoit les modifications de fichiers rapportées par Codex, sans modification.
model-requestOptionnel
((event: { readonly kind: "model-request"; readonly request: unknown; } & { readonly subagentId?: string; } & { readonly pass: number; readonly at: string; readonly seq?: number; readonly source?: ObservationSource; readonly scope?: ObservationScope; }) => void | Promise<void>) | undefined
Reçoit chaque requête du harness intégré au modèle quand le hub est verbose ; elle peut contenir des instructions privées.
model-responseOptionnel
((event: { readonly kind: "model-response"; readonly response: unknown; } & { readonly subagentId?: string; } & { readonly pass: number; readonly at: string; readonly seq?: number; readonly source?: ObservationSource; readonly scope?: ObservationScope; }) => void | Promise<void>) | undefined
Reçoit chaque réponse du modèle au harness intégré quand le hub est verbose.
model-retryOptionnel
((event: { readonly kind: "model-retry"; readonly attempt: number; readonly message?: string; } & { readonly subagentId?: string; } & { readonly pass: number; readonly at: string; readonly seq?: number; readonly source?: ObservationSource; readonly scope?: ObservationScope; }) => void | Promise<void>) | undefined
Reçoit une nouvelle tentative rapportée par le provider de modèle, avec son numéro et son message.
model-errorOptionnel
((event: { readonly kind: "model-error"; readonly message: string; } & { readonly subagentId?: string; } & { readonly pass: number; readonly at: string; readonly seq?: number; readonly source?: ObservationSource; readonly scope?: ObservationScope; }) => void | Promise<void>) | undefined
Reçoit le message d’une requête au modèle du harness intégré qui a échoué.
hookOptionnel
((event: { readonly kind: "hook"; readonly phase: string; readonly changed: boolean; } & { readonly subagentId?: string; } & { readonly pass: number; readonly at: string; readonly seq?: number; readonly source?: ObservationSource; readonly scope?: ObservationScope; }) => void | Promise<void>) | undefined
Reçoit un hook du harness intégré terminé, avec sa phase et s’il a changé quelque chose.
instructions-loadedOptionnel
((event: { readonly kind: "instructions-loaded"; readonly count: number; } & { readonly subagentId?: string; } & { readonly pass: number; readonly at: string; readonly seq?: number; readonly source?: ObservationSource; readonly scope?: ObservationScope; }) => void | Promise<void>) | undefined
Reçoit le nombre de sources d’instructions non vides résolues pour un tour du harness intégré.
skills-loadedOptionnel
((event: { readonly kind: "skills-loaded"; readonly names: readonly string[]; } & { readonly subagentId?: string; } & { readonly pass: number; readonly at: string; readonly seq?: number; readonly source?: ObservationSource; readonly scope?: ObservationScope; }) => void | Promise<void>) | undefined
Reçoit les skills nouvellement chargés dans une conversation du harness intégré.
tool-outputOptionnel
((event: { readonly kind: "tool-output"; readonly callId: string; readonly channel: "stdout" | "stderr"; readonly text: string; } & { readonly subagentId?: string; } & { readonly pass: number; readonly at: string; readonly seq?: number; readonly source?: ObservationSource; readonly scope?: ObservationScope; }) => void | Promise<void>) | undefined
Reçoit la sortie des commandes d’outils du harness intégré par morceaux d’au plus 8192 caractères, reliés par callId.
phaseOptionnel
((event: { readonly kind: "phase"; readonly name: string; readonly agent?: string; readonly branch?: string; readonly directory?: string; } & { readonly subagentId?: string; } & { readonly pass: number; readonly at: string; readonly seq?: number; readonly source?: ObservationSource; readonly scope?: ObservationScope; }) => void | Promise<void>) | undefined
Reçoit une phase du dispatch (preparing prompt, running, preparation failed) avec le nom de l’agent, la branche et le répertoire du workspace quand ils sont connus.
summaryOptionnel
((event: { readonly kind: "summary"; readonly durationMs: number; readonly status: number; readonly tokens: Usage; } & { readonly subagentId?: string; } & { readonly pass: number; readonly at: string; readonly seq?: number; readonly source?: ObservationSource; readonly scope?: ObservationScope; }) => void | Promise<void>) | undefined
Reçoit la fin d’une passe : sa durée, son statut de sortie et son usage total de tokens.
warningOptionnel
((event: { readonly kind: "warning"; readonly message: string; } & { readonly subagentId?: string; } & { readonly pass: number; readonly at: string; readonly seq?: number; readonly source?: ObservationSource; readonly scope?: ObservationScope; }) => void | Promise<void>) | undefined
Reçoit un avertissement non bloquant, comme un usage incomplet ou une divergence de rejeu en mode warn.
textOptionnel
((event: { readonly kind: "text"; readonly text: string; } & { readonly subagentId?: string; } & { readonly pass: number; readonly at: string; readonly seq?: number; readonly source?: ObservationSource; readonly scope?: ObservationScope; }) => void | Promise<void>) | undefined
Reçoit un bloc de texte de l’agent.
text-deltaOptionnel
((event: { readonly kind: "text-delta"; readonly text: string; } & { readonly subagentId?: string; } & { readonly pass: number; readonly at: string; readonly seq?: number; readonly source?: ObservationSource; readonly scope?: ObservationScope; }) => void | Promise<void>) | undefined
Reçoit un fragment de texte diffusé par Claude Code avec partialMessages ou par le harness intégré.
resultOptionnel
((event: { readonly kind: "result"; readonly text: string; } & { readonly subagentId?: string; } & { readonly pass: number; readonly at: string; readonly seq?: number; readonly source?: ObservationSource; readonly scope?: ObservationScope; }) => void | Promise<void>) | undefined
Reçoit le texte de la réponse finale de l’agent pour le tour.
promptOptionnel
((event: { readonly kind: "prompt"; readonly text: string; } & { readonly subagentId?: string; } & { readonly pass: number; readonly at: string; readonly seq?: number; readonly source?: ObservationSource; readonly scope?: ObservationScope; }) => void | Promise<void>) | undefined
Reçoit le prompt rendu envoyé au début de chaque passe.
toolOptionnel
((event: { readonly kind: "tool"; readonly name: string; readonly input: unknown; readonly callId?: string; readonly parentCallId?: string; } & { readonly subagentId?: string; } & { readonly pass: number; readonly at: string; readonly seq?: number; readonly source?: ObservationSource; readonly scope?: ObservationScope; }) => void | Promise<void>) | undefined
Reçoit un appel d’outil avec son nom, son entrée brute et, quand le protocole les fournit, ses identifiants d’appel et d’appel parent.
tool-resultOptionnel
((event: { readonly kind: "tool-result"; readonly callId: string; readonly name: string; readonly isError: boolean; readonly preview: string; readonly characters: number; readonly parentCallId?: string; } & { readonly subagentId?: string; } & { readonly pass: number; readonly at: string; readonly seq?: number; readonly source?: ObservationSource; readonly scope?: ObservationScope; }) => void | Promise<void>) | undefined
Reçoit un résultat d’outil avec son identifiant d’appel, son indicateur d’erreur, ses 2000 premiers caractères et sa longueur totale.
stepOptionnel
((event: { readonly kind: "step"; readonly index: number; } & { readonly subagentId?: string; } & { readonly pass: number; readonly at: string; readonly seq?: number; readonly source?: ObservationSource; readonly scope?: ObservationScope; }) => void | Promise<void>) | undefined
Reçoit le début d’une étape du harness intégré, avant sa requête au modèle.
tool-deniedOptionnel
((event: { readonly kind: "tool-denied"; readonly callId: string; readonly name: string; readonly reason: string; } & { readonly subagentId?: string; } & { readonly pass: number; readonly at: string; readonly seq?: number; readonly source?: ObservationSource; readonly scope?: ObservationScope; }) => void | Promise<void>) | undefined
Reçoit un appel d’outil du harness intégré refusé par les permissions ou un hook, avec la raison.
stop-preventedOptionnel
((event: { readonly kind: "stop-prevented"; readonly message: string; } & { readonly subagentId?: string; } & { readonly pass: number; readonly at: string; readonly seq?: number; readonly source?: ObservationSource; readonly scope?: ObservationScope; }) => void | Promise<void>) | undefined
Reçoit une réponse finale refusée par un hook d’arrêt du harness intégré, avec le message renvoyé au modèle.
compactionOptionnel
((event: { readonly kind: "compaction"; readonly strategy: string; readonly messages: number; } & { readonly subagentId?: string; } & { readonly pass: number; readonly at: string; readonly seq?: number; readonly source?: ObservationSource; readonly scope?: ObservationScope; }) => void | Promise<void>) | undefined
Reçoit une compaction de l’historique du harness intégré, avec le nom de la stratégie et le nombre de messages obtenu.
conversationOptionnel
((event: { readonly kind: "conversation"; readonly id: string; } & { readonly subagentId?: string; } & { readonly pass: number; readonly at: string; readonly seq?: number; readonly source?: ObservationSource; readonly scope?: ObservationScope; }) => void | Promise<void>) | undefined
Reçoit l’identifiant de conversation natif dès que l’agent le rapporte.
usageOptionnel
((event: { readonly kind: "usage"; readonly tokens: Usage; readonly cumulative?: boolean; } & { readonly subagentId?: string; } & { readonly pass: number; readonly at: string; readonly seq?: number; readonly source?: ObservationSource; readonly scope?: ObservationScope; }) => void | Promise<void>) | undefined
Reçoit chaque incrément de tokens compté dans l’usage du dispatch ; les totaux de session arrivent déjà convertis en incréments.
failureOptionnel
((event: { readonly kind: "failure"; readonly message: string; } & { readonly subagentId?: string; } & { readonly pass: number; readonly at: string; readonly seq?: number; readonly source?: ObservationSource; readonly scope?: ObservationScope; }) => void | Promise<void>) | undefined
Reçoit un échec rapporté par le protocole de l’agent. Les rejets sans échec protocolaire, comme les timeouts, ne produisent pas d’événement failure.
quotaOptionnel
((event: { readonly kind: "quota"; readonly message: string; readonly resetAt?: string; } & { readonly subagentId?: string; } & { readonly pass: number; readonly at: string; readonly seq?: number; readonly source?: ObservationSource; readonly scope?: ObservationScope; }) => void | Promise<void>) | undefined
Reçoit un signal de limite d’usage ou de débit, avec son heure de réinitialisation quand elle est rapportée. Le signal seul ne fait pas échouer le tour.
fallbackOptionnel
((event: { readonly kind: "fallback"; readonly from: FallbackCandidate; readonly to: FallbackCandidate; readonly failure: FallbackTrigger; readonly message: string; readonly resetAt?: string; } & { readonly subagentId?: string; } & { readonly pass: number; readonly at: string; readonly seq?: number; readonly source?: ObservationSource; readonly scope?: ObservationScope; }) => void | Promise<void>) | undefined
Reçoit le passage d’un agent de secours à son candidat suivant, avec les deux candidats, la catégorie d’échec et son message.
rawOptionnel
((event: { readonly kind: "raw"; readonly value: unknown; readonly bytes?: number; readonly truncated?: boolean; } & { readonly subagentId?: string; } & { readonly pass: number; readonly at: string; readonly seq?: number; readonly source?: ObservationSource; readonly scope?: ObservationScope; }) => void | Promise<void>) | undefined
Reçoit chaque ligne brute du protocole, qui peut contenir des prompts, des contenus de fichiers ou des secrets.