NylorunDocsBeta
BuildRunDeployReferenceMore

Events

Canonical LiveEvent types emitted by OSS Runtime.

@nylorun/core/contracts · beta

Wire shape:

{
  eventId: string;
  sessionId: string;
  turnId: string;
  cursor: string;
  createdAt: string;
  type: string;
  payload: JsonValue;
}

History: GET /v1/sessions/:id/items returns { items, cursor }. Optional ?agent= keeps events whose payload.agent.delegationId or payload.agent.path matches (session.history({ agent })). Live SSE: GET /v1/sessions/:id/events. SessionClient.observe parses JSON data and ignores SSE events named heartbeat or ready. The server also sends : keepalive comments.

Runtime LiveEvent.type

typeWhen
command.messageUser message accepted
command.approveApproval command
command.respondResponse command
command.cancelCancel command
turn.completedDurable success (output in payload)
turn.pausedWaiting on interactions
turn.failedFailure
turn.cancelledCancel (reason)
turn.waitingWaiting on remote work
turn.uncertainUncertain turn
action.pendingTool or hook action offered
action.claimedExecutor claimed
action.completedResult applied
action.uncertainExpired non-hook claim
effect.uncertainLost or cancelled effect
sandbox.stateSandbox lifecycle
sandbox.execSandbox exec audit
delegation.startedAn agent used as a tool began. Payload includes agent: { id, path, delegationId } and task.
delegation.completedThat child settled. Payload includes agent plus status and outcome.

Harness-internal observations (tool.started, model.requested, …) are not wire events. Do not treat onEvent from @nylorun/harness/run as Runtime SSE.

Guide: Run: events.

On this page