Skip to main content
API reference sections

Schema

SessionSummary

Type object

Shape

FieldTypeDescription
idrequiredTerminalSessionId
parent_session_idTerminalSessionId or null
profilerequiredSessionProfileKey

Stable identity for a launch profile. Built-ins remain readable across machines; user-created profiles are opaque UUIDs.

display_namerequiredstring
working_directorystring or null
moderequiredSessionMode
processrequiredProcessState
controllerrequiredControllerState
managedManagedState or null
active_turn_idAgentTurnId or null
attentionrequiredAttentionState
pending_attachment_countrequiredinteger (uint32, >= 0)
capabilitiesCapabilitySet

Default []

project_idProjectId or null

The project this session was placed in, if any. Absent from a peer that predates projects, which is why it defaults rather than being required; absent for a session nobody placed, which the tree draws under its virtual Unassigned bucket rather than a persisted project.

Default null

handoverHandoverState

Protocol v14. Where a controller handover stands. Idle from a peer that predates handovers, which is the truth on a host that has none.

Default "idle"

modelModelIdentity or null

Protocol v14. The model the session asked for and the one last reported, for a managed session whose adapter can say. None from a raw session, an older peer, or an adapter that reports neither.

Default null

originSessionOrigin

Protocol v16. What created this session. Manual from a peer that predates origins, which is the truth for every session a window made. A chat's session is never drawn by a window, a tray or a flyout: its chat is its view.

Default {"kind":"manual"}

created_at_msrequiredinteger (int64)
Example
{
  "id": "00000000-0000-4000-8000-000000000000",
  "parent_session_id": "00000000-0000-4000-8000-000000000000",
  "profile": {
    "kind": "built_in",
    "value": "string"
  },
  "display_name": "string",
  "working_directory": "string",
  "mode": {
    "kind": "raw_pty"
  },
  "process": {
    "kind": "starting"
  },
  "controller": "detached",
  "managed": "idle",
  "active_turn_id": "00000000-0000-4000-8000-000000000000",
  "attention": {
    "unread_count": 0,
    "requires_user": false,
    "reason": "background_output"
  },
  "pending_attachment_count": 0,
  "capabilities": [],
  "project_id": "00000000-0000-4000-8000-000000000000",
  "handover": "idle",
  "model": {
    "requested": "string",
    "reported": "string"
  },
  "origin": {
    "kind": "manual"
  },
  "created_at_ms": 0
}

The contract has no example values, so example bodies are generated from each schema: every field is shown with a placeholder of its type.

Used by

Generated from contract version 1. Last updated .

Privacy choices

Choose which optional tools Koru may use on this site. Your choice is saved in a cookie in this browser for 12 months. Privacy policy

Privacy choices

Keep you signed in, protect forms and remember your language and this choice.

Always on

PostHog and Google Analytics 4 measure page views and actions such as downloads, using cookies or local storage.

PostHog records how pages are used, with form inputs masked and private pages excluded. Needs Analytics.

Ahrefs Web Analytics measures visits and where they come from, and Google Ads measures whether our ads led to a visit or download.