$worker

session-manager

v0.2.2

Durable, reactive, branching store of typed conversation entries with six emitted trigger types.

  • macOS: arm64 · x64
  • Linux: arm64 · armv7 · x64
  • Windows: arm64 · x64 · x86

functions

28

session::append

function

Append one entry (idempotent on entry_id); fires session::message-added.

request
  • customany of

    Append a bookkeeping `kind: "custom"` entry instead of a message (e.g. the harness's compaction record). Custom entries do not count toward `message_count` and are only returned by `session::messages` when `include_custom` is set.

    any of (2)
    variant 1
    • custom_typestringrequired

      App-defined discriminator (e.g. `"compaction"`).

    • dataunknown

      Opaque app data.

    variant 2
    valuenull
  • entry_idstring

    Caller-supplied id for idempotent appends: appending an id that already exists is a no-op — the existing entry is returned and no event fires.

  • messageany of

    The message to append (a `kind: "message"` entry). Exactly one of `message` / `custom` must be supplied.

    any of (2)
    variant 1
    one of (4)
    variant 1
    • contentone of[]required
      … expand 5 nested
      one of (5)
      variant 1
      • textstringrequired
      • typestringrequiredenum: text
      variant 2
      • datastringrequired

        Base64-encoded image bytes.

      • mimestringrequired

        MIME type, e.g. `image/png`.

      • typestringrequiredenum: image
      variant 3
      • signaturestring
      • textstringrequired
      • typestringrequiredenum: thinking
      variant 4
      • argumentsunknown

        Model-produced arguments (JSON).

      • function_idstringrequired

        The iii function id to invoke.

      • idstringrequired

        Unique per call, echoed by the result.

      • typestringrequiredenum: function_call
      variant 5
      • contentunknown[]required
      • function_call_idstringrequired
      • is_errorboolean
      • typestringrequiredenum: function_result
    • rolestringrequiredenum: user
    • timestampinteger· int64required

      Milliseconds since epoch.

    variant 2
    • contentone of[]required
      … expand 5 nested
      one of (5)
      variant 1
      • textstringrequired
      • typestringrequiredenum: text
      variant 2
      • datastringrequired

        Base64-encoded image bytes.

      • mimestringrequired

        MIME type, e.g. `image/png`.

      • typestringrequiredenum: image
      variant 3
      • signaturestring
      • textstringrequired
      • typestringrequiredenum: thinking
      variant 4
      • argumentsunknown

        Model-produced arguments (JSON).

      • function_idstringrequired

        The iii function id to invoke.

      • idstringrequired

        Unique per call, echoed by the result.

      • typestringrequiredenum: function_call
      variant 5
      • contentunknown[]required
      • function_call_idstringrequired
      • is_errorboolean
      • typestringrequiredenum: function_result
    • error_kindany of
      … expand 2 nested
      any of (2)
      variant 1
      valuestringenum: auth_expired, rate_limited, context_overflow, transient, permanent
      variant 2
      valuenull
    • error_messagestring
    • modelstringrequired
    • native_stop_reasonstring

      Provider's raw finish reason, passed through untouched.

    • providerstringrequired
    • rolestringrequiredenum: assistant
    • stop_reasonstringrequiredenum: end, length, function_call, aborted, error

      Why an assistant message stopped generating.

    • timestampinteger· int64required

      Milliseconds since epoch.

    • usageany of
      … expand 2 nested
      any of (2)
      variant 1
      • cache_readinteger· uint64min 0
      • cache_writeinteger· uint64min 0
      • cost_usdnumber· double
      • inputinteger· uint64min 0
      • outputinteger· uint64min 0
      • reasoninginteger· uint64min 0
      variant 2
      valuenull
    • warningsstring[]

      Report-and-continue notices (e.g. dropped unsupported param).

    variant 3
    • contentone of[]required
      … expand 5 nested
      one of (5)
      variant 1
      • textstringrequired
      • typestringrequiredenum: text
      variant 2
      • datastringrequired

        Base64-encoded image bytes.

      • mimestringrequired

        MIME type, e.g. `image/png`.

      • typestringrequiredenum: image
      variant 3
      • signaturestring
      • textstringrequired
      • typestringrequiredenum: thinking
      variant 4
      • argumentsunknown

        Model-produced arguments (JSON).

      • function_idstringrequired

        The iii function id to invoke.

      • idstringrequired

        Unique per call, echoed by the result.

      • typestringrequiredenum: function_call
      variant 5
      • contentunknown[]required
      • function_call_idstringrequired
      • is_errorboolean
      • typestringrequiredenum: function_result
    • detailsunknown

      Opaque structured payload kept alongside the rendered content.

    • function_call_idstringrequired

      Echoes the `function_call` block id this result answers.

    • function_idstringrequired
    • is_errorboolean
    • rolestringrequiredenum: function_result
    • timestampinteger· int64required

      Milliseconds since epoch.

    variant 4
    • contentone of[]required
      … expand 5 nested
      one of (5)
      variant 1
      • textstringrequired
      • typestringrequiredenum: text
      variant 2
      • datastringrequired

        Base64-encoded image bytes.

      • mimestringrequired

        MIME type, e.g. `image/png`.

      • typestringrequiredenum: image
      variant 3
      • signaturestring
      • textstringrequired
      • typestringrequiredenum: thinking
      variant 4
      • argumentsunknown

        Model-produced arguments (JSON).

      • function_idstringrequired

        The iii function id to invoke.

      • idstringrequired

        Unique per call, echoed by the result.

      • typestringrequiredenum: function_call
      variant 5
      • contentunknown[]required
      • function_call_idstringrequired
      • is_errorboolean
      • typestringrequiredenum: function_result
    • custom_typestringrequired

      App-defined discriminator.

    • detailsunknown
    • displaystring
    • rolestringrequiredenum: custom
    • timestampinteger· int64required

      Milliseconds since epoch.

    variant 2
    valuenull
  • originobject

    Opaque correlation (e.g. `{ "turn_id": ... }`), echoed on events.

  • parent_idstring

    Override the parent (default: active leaf). Appending always moves the active leaf to the new entry.

  • session_idstringrequired
response
  • entry_idstringrequired
  • parent_idstring
  • timestampinteger· int64required

session::append-many

function

Append several message entries in order; fires session::message-added per entry.

request
  • messagesone of[]required

    Messages appended in order, each chained to the previous one. Not idempotent — use `session::append` with `entry_id` where redelivery is possible.

    one of (4)
    variant 1
    • contentone of[]required
      … expand 5 nested
      one of (5)
      variant 1
      • textstringrequired
      • typestringrequiredenum: text
      variant 2
      • datastringrequired

        Base64-encoded image bytes.

      • mimestringrequired

        MIME type, e.g. `image/png`.

      • typestringrequiredenum: image
      variant 3
      • signaturestring
      • textstringrequired
      • typestringrequiredenum: thinking
      variant 4
      • argumentsunknown

        Model-produced arguments (JSON).

      • function_idstringrequired

        The iii function id to invoke.

      • idstringrequired

        Unique per call, echoed by the result.

      • typestringrequiredenum: function_call
      variant 5
      • contentunknown[]required
      • function_call_idstringrequired
      • is_errorboolean
      • typestringrequiredenum: function_result
    • rolestringrequiredenum: user
    • timestampinteger· int64required

      Milliseconds since epoch.

    variant 2
    • contentone of[]required
      … expand 5 nested
      one of (5)
      variant 1
      • textstringrequired
      • typestringrequiredenum: text
      variant 2
      • datastringrequired

        Base64-encoded image bytes.

      • mimestringrequired

        MIME type, e.g. `image/png`.

      • typestringrequiredenum: image
      variant 3
      • signaturestring
      • textstringrequired
      • typestringrequiredenum: thinking
      variant 4
      • argumentsunknown

        Model-produced arguments (JSON).

      • function_idstringrequired

        The iii function id to invoke.

      • idstringrequired

        Unique per call, echoed by the result.

      • typestringrequiredenum: function_call
      variant 5
      • contentunknown[]required
      • function_call_idstringrequired
      • is_errorboolean
      • typestringrequiredenum: function_result
    • error_kindany of
      … expand 2 nested
      any of (2)
      variant 1
      valuestringenum: auth_expired, rate_limited, context_overflow, transient, permanent
      variant 2
      valuenull
    • error_messagestring
    • modelstringrequired
    • native_stop_reasonstring

      Provider's raw finish reason, passed through untouched.

    • providerstringrequired
    • rolestringrequiredenum: assistant
    • stop_reasonstringrequiredenum: end, length, function_call, aborted, error

      Why an assistant message stopped generating.

    • timestampinteger· int64required

      Milliseconds since epoch.

    • usageany of
      … expand 2 nested
      any of (2)
      variant 1
      • cache_readinteger· uint64min 0
      • cache_writeinteger· uint64min 0
      • cost_usdnumber· double
      • inputinteger· uint64min 0
      • outputinteger· uint64min 0
      • reasoninginteger· uint64min 0
      variant 2
      valuenull
    • warningsstring[]

      Report-and-continue notices (e.g. dropped unsupported param).

    variant 3
    • contentone of[]required
      … expand 5 nested
      one of (5)
      variant 1
      • textstringrequired
      • typestringrequiredenum: text
      variant 2
      • datastringrequired

        Base64-encoded image bytes.

      • mimestringrequired

        MIME type, e.g. `image/png`.

      • typestringrequiredenum: image
      variant 3
      • signaturestring
      • textstringrequired
      • typestringrequiredenum: thinking
      variant 4
      • argumentsunknown

        Model-produced arguments (JSON).

      • function_idstringrequired

        The iii function id to invoke.

      • idstringrequired

        Unique per call, echoed by the result.

      • typestringrequiredenum: function_call
      variant 5
      • contentunknown[]required
      • function_call_idstringrequired
      • is_errorboolean
      • typestringrequiredenum: function_result
    • detailsunknown

      Opaque structured payload kept alongside the rendered content.

    • function_call_idstringrequired

      Echoes the `function_call` block id this result answers.

    • function_idstringrequired
    • is_errorboolean
    • rolestringrequiredenum: function_result
    • timestampinteger· int64required

      Milliseconds since epoch.

    variant 4
    • contentone of[]required
      … expand 5 nested
      one of (5)
      variant 1
      • textstringrequired
      • typestringrequiredenum: text
      variant 2
      • datastringrequired

        Base64-encoded image bytes.

      • mimestringrequired

        MIME type, e.g. `image/png`.

      • typestringrequiredenum: image
      variant 3
      • signaturestring
      • textstringrequired
      • typestringrequiredenum: thinking
      variant 4
      • argumentsunknown

        Model-produced arguments (JSON).

      • function_idstringrequired

        The iii function id to invoke.

      • idstringrequired

        Unique per call, echoed by the result.

      • typestringrequiredenum: function_call
      variant 5
      • contentunknown[]required
      • function_call_idstringrequired
      • is_errorboolean
      • typestringrequiredenum: function_result
    • custom_typestringrequired

      App-defined discriminator.

    • detailsunknown
    • displaystring
    • rolestringrequiredenum: custom
    • timestampinteger· int64required

      Milliseconds since epoch.

  • originobject

    Opaque correlation echoed on every emitted event.

  • parent_idstring

    Parent of the first appended entry (default: active leaf).

  • session_idstringrequired
response
  • entry_idsstring[]required
  • last_entry_idstringrequired

session::config-status

function

Report the last configuration hot-reload outcome: last_outcome (applied|rejected), last_error, and rejected_reloads (count since boot). A rejected outcome or non-zero count means a stored config was refused and the active storage adapter diverged from the central store. Takes no arguments.

request
empty object
response
  • last_errorstring

    Build error from the most recent rejected reload (why it was refused).

  • last_outcomeone ofrequired

    Outcome of the most recent hot-reload attempt, exposed via `session::config-status`.

    one of (2)
    variant 1
    valuestringenum: applied
    variant 2
    valuestringenum: rejected
  • rejected_reloadsinteger· uint64requiredmin 0

    Cumulative count of rejected reloads since boot (never reset).

session::create

function

Create a session at status idle; fires session::created.

request
  • descriptionstring

    Session description. Default "".

  • metadataobject

    App-defined metadata persisted onto `SessionMeta` — the tenancy hook (e.g. `{ "owner": "u_1" }`) that `session::list` and every trigger config can filter on.

  • titlestring

    Session title; may be refined later with `session::set-meta`. Default "".

response
  • metaobjectrequired

    A session's metadata record.

    • created_atinteger· int64required

      Milliseconds since epoch.

    • descriptionstringrequired
    • forked_fromstring

      Source session id when created by `session::fork`.

    • message_countinteger· uint64requiredmin 0

      Number of `kind: "message"` entries (custom entries are bookkeeping and not counted).

    • metadataobject

      App-defined; the tenancy hook (e.g. `{ "owner": "u_1" }`) that `session::list` and every trigger config can filter on.

    • session_idstringrequired
    • statusstringrequiredenum: idle, working, done, error

      Coarse session lifecycle status, rendered directly by consumers.

    • status_reasonstring

      Short cause, set on `error`, cleared on any other status.

    • titlestringrequired
    • updated_atinteger· int64required

      Milliseconds since epoch.

  • session_idstringrequired

session::delete

function

Delete a session and its entries; fires session::deleted.

request
  • session_idstringrequired
response
  • deletedbooleanrequired

    False when the session did not exist (no event fires).

session::ensure

function

Idempotently ensure a session with a given id exists; fires session::created only when it creates.

request
  • descriptionstring

    Description applied only when the session is created.

  • metadataobject

    Metadata applied only when the session is created.

  • session_idstringrequired

    Caller-chosen session id to ensure.

  • titlestring

    Title applied only when the session is created.

response
  • createdbooleanrequired

    True when this call created the session (and fired `session::created`).

  • metaobjectrequired

    A session's metadata record.

    • created_atinteger· int64required

      Milliseconds since epoch.

    • descriptionstringrequired
    • forked_fromstring

      Source session id when created by `session::fork`.

    • message_countinteger· uint64requiredmin 0

      Number of `kind: "message"` entries (custom entries are bookkeeping and not counted).

    • metadataobject

      App-defined; the tenancy hook (e.g. `{ "owner": "u_1" }`) that `session::list` and every trigger config can filter on.

    • session_idstringrequired
    • statusstringrequiredenum: idle, working, done, error

      Coarse session lifecycle status, rendered directly by consumers.

    • status_reasonstring

      Short cause, set on `error`, cleared on any other status.

    • titlestringrequired
    • updated_atinteger· int64required

      Milliseconds since epoch.

  • session_idstringrequired

session::fork

function

Copy history up to an entry into a new session (copy-on-fork); fires session::created.

request
  • entry_idstringrequired

    Fork point: the root -> entry path is copied (copy-on-fork, fresh entry ids) and becomes the new session's active path.

  • session_idstringrequired

    Source session.

  • titlestring

    Title for the new session (default: the source's title).

response
  • metaobjectrequired

    A session's metadata record.

    • created_atinteger· int64required

      Milliseconds since epoch.

    • descriptionstringrequired
    • forked_fromstring

      Source session id when created by `session::fork`.

    • message_countinteger· uint64requiredmin 0

      Number of `kind: "message"` entries (custom entries are bookkeeping and not counted).

    • metadataobject

      App-defined; the tenancy hook (e.g. `{ "owner": "u_1" }`) that `session::list` and every trigger config can filter on.

    • session_idstringrequired
    • statusstringrequiredenum: idle, working, done, error

      Coarse session lifecycle status, rendered directly by consumers.

    • status_reasonstring

      Short cause, set on `error`, cleared on any other status.

    • titlestringrequired
    • updated_atinteger· int64required

      Milliseconds since epoch.

  • session_idstringrequired

    The new session's id (`forked_from` is set on its meta).

session::get

function

Read one session's metadata (null when unknown).

request
  • session_idstringrequired
response
any of (2)
variant 1
  • metaobjectrequired

    A session's metadata record.

    • created_atinteger· int64required

      Milliseconds since epoch.

    • descriptionstringrequired
    • forked_fromstring

      Source session id when created by `session::fork`.

    • message_countinteger· uint64requiredmin 0

      Number of `kind: "message"` entries (custom entries are bookkeeping and not counted).

    • metadataobject

      App-defined; the tenancy hook (e.g. `{ "owner": "u_1" }`) that `session::list` and every trigger config can filter on.

    • session_idstringrequired
    • statusstringrequiredenum: idle, working, done, error

      Coarse session lifecycle status, rendered directly by consumers.

    • status_reasonstring

      Short cause, set on `error`, cleared on any other status.

    • titlestringrequired
    • updated_atinteger· int64required

      Milliseconds since epoch.

variant 2
valuenull

session::get-message

function

Read a single entry by id (null when unknown).

request
  • entry_idstringrequired
  • session_idstringrequired
response
any of (2)
variant 1
  • entryone ofrequired

    The entry envelope giving each stored item identity, ordering and a parent link (used for forking), discriminated by `kind`.

    one of (2)
    variant 1
    • idstringrequired
    • kindstringrequiredenum: message
    • messageone ofrequired

      The canonical transcript message union, discriminated by `role`.

      … expand 4 nested
      one of (4)
      variant 1
      • contentone of[]required
        … expand 5 nested
        one of (5)
        variant 1
        • textstringrequired
        • typestringrequiredenum: text
        variant 2
        • datastringrequired

          Base64-encoded image bytes.

        • mimestringrequired

          MIME type, e.g. `image/png`.

        • typestringrequiredenum: image
        variant 3
        • signaturestring
        • textstringrequired
        • typestringrequiredenum: thinking
        variant 4
        • argumentsunknown

          Model-produced arguments (JSON).

        • function_idstringrequired

          The iii function id to invoke.

        • idstringrequired

          Unique per call, echoed by the result.

        • typestringrequiredenum: function_call
        variant 5
        • contentunknown[]required
        • function_call_idstringrequired
        • is_errorboolean
        • typestringrequiredenum: function_result
      • rolestringrequiredenum: user
      • timestampinteger· int64required

        Milliseconds since epoch.

      variant 2
      • contentone of[]required
        … expand 5 nested
        one of (5)
        variant 1
        • textstringrequired
        • typestringrequiredenum: text
        variant 2
        • datastringrequired

          Base64-encoded image bytes.

        • mimestringrequired

          MIME type, e.g. `image/png`.

        • typestringrequiredenum: image
        variant 3
        • signaturestring
        • textstringrequired
        • typestringrequiredenum: thinking
        variant 4
        • argumentsunknown

          Model-produced arguments (JSON).

        • function_idstringrequired

          The iii function id to invoke.

        • idstringrequired

          Unique per call, echoed by the result.

        • typestringrequiredenum: function_call
        variant 5
        • contentunknown[]required
        • function_call_idstringrequired
        • is_errorboolean
        • typestringrequiredenum: function_result
      • error_kindany of
        … expand 2 nested
        any of (2)
        variant 1
        valuestringenum: auth_expired, rate_limited, context_overflow, transient, permanent
        variant 2
        valuenull
      • error_messagestring
      • modelstringrequired
      • native_stop_reasonstring

        Provider's raw finish reason, passed through untouched.

      • providerstringrequired
      • rolestringrequiredenum: assistant
      • stop_reasonstringrequiredenum: end, length, function_call, aborted, error

        Why an assistant message stopped generating.

      • timestampinteger· int64required

        Milliseconds since epoch.

      • usageany of
        … expand 2 nested
        any of (2)
        variant 1
        • cache_readinteger· uint64min 0
        • cache_writeinteger· uint64min 0
        • cost_usdnumber· double
        • inputinteger· uint64min 0
        • outputinteger· uint64min 0
        • reasoninginteger· uint64min 0
        variant 2
        valuenull
      • warningsstring[]

        Report-and-continue notices (e.g. dropped unsupported param).

      variant 3
      • contentone of[]required
        … expand 5 nested
        one of (5)
        variant 1
        • textstringrequired
        • typestringrequiredenum: text
        variant 2
        • datastringrequired

          Base64-encoded image bytes.

        • mimestringrequired

          MIME type, e.g. `image/png`.

        • typestringrequiredenum: image
        variant 3
        • signaturestring
        • textstringrequired
        • typestringrequiredenum: thinking
        variant 4
        • argumentsunknown

          Model-produced arguments (JSON).

        • function_idstringrequired

          The iii function id to invoke.

        • idstringrequired

          Unique per call, echoed by the result.

        • typestringrequiredenum: function_call
        variant 5
        • contentunknown[]required
        • function_call_idstringrequired
        • is_errorboolean
        • typestringrequiredenum: function_result
      • detailsunknown

        Opaque structured payload kept alongside the rendered content.

      • function_call_idstringrequired

        Echoes the `function_call` block id this result answers.

      • function_idstringrequired
      • is_errorboolean
      • rolestringrequiredenum: function_result
      • timestampinteger· int64required

        Milliseconds since epoch.

      variant 4
      • contentone of[]required
        … expand 5 nested
        one of (5)
        variant 1
        • textstringrequired
        • typestringrequiredenum: text
        variant 2
        • datastringrequired

          Base64-encoded image bytes.

        • mimestringrequired

          MIME type, e.g. `image/png`.

        • typestringrequiredenum: image
        variant 3
        • signaturestring
        • textstringrequired
        • typestringrequiredenum: thinking
        variant 4
        • argumentsunknown

          Model-produced arguments (JSON).

        • function_idstringrequired

          The iii function id to invoke.

        • idstringrequired

          Unique per call, echoed by the result.

        • typestringrequiredenum: function_call
        variant 5
        • contentunknown[]required
        • function_call_idstringrequired
        • is_errorboolean
        • typestringrequiredenum: function_result
      • custom_typestringrequired

        App-defined discriminator.

      • detailsunknown
      • displaystring
      • rolestringrequiredenum: custom
      • timestampinteger· int64required

        Milliseconds since epoch.

    • originobject

      Opaque writer-supplied correlation (e.g. `{ turn_id }`).

    • parent_idstring
    • revisioninteger· uint64min 0

      Starts at 0; increments on every content update.

    • timestampinteger· int64required

      Milliseconds since epoch (entry creation time).

    variant 2
    • custom_typestringrequired
    • dataunknown
    • idstringrequired
    • kindstringrequiredenum: custom
    • originobject

      Opaque writer-supplied correlation (e.g. `{ turn_id }`).

    • parent_idstring
    • revisioninteger· uint64min 0

      Starts at 0; increments on every content update.

    • timestampinteger· int64required

      Milliseconds since epoch (entry creation time).

variant 2
valuenull

session::list

function

List sessions with pagination, ordering, and status/metadata filters.

request
  • cursorstring

    Opaque pagination cursor from a previous response.

  • limitinteger· uintmin 0

    Page size. Default 50, clamped to the configured maximum.

  • metadataobject

    Equality filter against `SessionMeta.metadata` (tenancy): every given key must equal the stored value.

  • orderany of

    Sort order. Default `updated_desc`.

    any of (2)
    variant 1
    valuestringenum: created_asc, created_desc, updated_desc
    variant 2
    valuenull
  • statusany of

    Only sessions with this status.

    any of (2)
    variant 1
    valuestringenum: idle, working, done, error
    variant 2
    valuenull
response
  • next_cursorstring

    Present when more pages remain.

  • sessionsobject[]required
    • created_atinteger· int64required

      Milliseconds since epoch.

    • descriptionstringrequired
    • forked_fromstring

      Source session id when created by `session::fork`.

    • message_countinteger· uint64requiredmin 0

      Number of `kind: "message"` entries (custom entries are bookkeeping and not counted).

    • metadataobject

      App-defined; the tenancy hook (e.g. `{ "owner": "u_1" }`) that `session::list` and every trigger config can filter on.

    • session_idstringrequired
    • statusstringrequiredenum: idle, working, done, error

      Coarse session lifecycle status, rendered directly by consumers.

    • status_reasonstring

      Short cause, set on `error`, cleared on any other status.

    • titlestringrequired
    • updated_atinteger· int64required

      Milliseconds since epoch.

session::messages

function

Load the active path as messages with entry ids, oldest first; pagination and role filtering.

request
  • cursorstring

    Opaque pagination cursor from a previous response.

  • from_entry_idstring

    Treat this entry as the leaf: return its parent chain, root -> entry, oldest first (branch view).

  • include_customboolean

    Interleave `kind: "custom"` entries at their path position. Default false.

  • limitinteger· uintmin 0

    Page size. Default 50, clamped to the configured maximum.

  • rolesstring[]enum: user, assistant, function_result, custom

    Only messages with these roles. Setting this also excludes `kind: "custom"` entries (it is an explicit narrowing to roles).

  • session_idstringrequired
response
  • messagesobject[]required
    • customany of
      any of (2)
      variant 1
      • custom_typestringrequired

        App-defined discriminator (e.g. `"compaction"`).

      • dataunknown

        Opaque app data.

      variant 2
      valuenull
    • entry_idstringrequired
    • messageany of
      any of (2)
      variant 1
      one of (4)
      variant 1
      • contentone of[]required
        … expand 5 nested
        one of (5)
        variant 1
        • textstringrequired
        • typestringrequiredenum: text
        variant 2
        • datastringrequired

          Base64-encoded image bytes.

        • mimestringrequired

          MIME type, e.g. `image/png`.

        • typestringrequiredenum: image
        variant 3
        • signaturestring
        • textstringrequired
        • typestringrequiredenum: thinking
        variant 4
        • argumentsunknown

          Model-produced arguments (JSON).

        • function_idstringrequired

          The iii function id to invoke.

        • idstringrequired

          Unique per call, echoed by the result.

        • typestringrequiredenum: function_call
        variant 5
        • contentunknown[]required
        • function_call_idstringrequired
        • is_errorboolean
        • typestringrequiredenum: function_result
      • rolestringrequiredenum: user
      • timestampinteger· int64required

        Milliseconds since epoch.

      variant 2
      • contentone of[]required
        … expand 5 nested
        one of (5)
        variant 1
        • textstringrequired
        • typestringrequiredenum: text
        variant 2
        • datastringrequired

          Base64-encoded image bytes.

        • mimestringrequired

          MIME type, e.g. `image/png`.

        • typestringrequiredenum: image
        variant 3
        • signaturestring
        • textstringrequired
        • typestringrequiredenum: thinking
        variant 4
        • argumentsunknown

          Model-produced arguments (JSON).

        • function_idstringrequired

          The iii function id to invoke.

        • idstringrequired

          Unique per call, echoed by the result.

        • typestringrequiredenum: function_call
        variant 5
        • contentunknown[]required
        • function_call_idstringrequired
        • is_errorboolean
        • typestringrequiredenum: function_result
      • error_kindany of
        … expand 2 nested
        any of (2)
        variant 1
        valuestringenum: auth_expired, rate_limited, context_overflow, transient, permanent
        variant 2
        valuenull
      • error_messagestring
      • modelstringrequired
      • native_stop_reasonstring

        Provider's raw finish reason, passed through untouched.

      • providerstringrequired
      • rolestringrequiredenum: assistant
      • stop_reasonstringrequiredenum: end, length, function_call, aborted, error

        Why an assistant message stopped generating.

      • timestampinteger· int64required

        Milliseconds since epoch.

      • usageany of
        … expand 2 nested
        any of (2)
        variant 1
        • cache_readinteger· uint64min 0
        • cache_writeinteger· uint64min 0
        • cost_usdnumber· double
        • inputinteger· uint64min 0
        • outputinteger· uint64min 0
        • reasoninginteger· uint64min 0
        variant 2
        valuenull
      • warningsstring[]

        Report-and-continue notices (e.g. dropped unsupported param).

      variant 3
      • contentone of[]required
        … expand 5 nested
        one of (5)
        variant 1
        • textstringrequired
        • typestringrequiredenum: text
        variant 2
        • datastringrequired

          Base64-encoded image bytes.

        • mimestringrequired

          MIME type, e.g. `image/png`.

        • typestringrequiredenum: image
        variant 3
        • signaturestring
        • textstringrequired
        • typestringrequiredenum: thinking
        variant 4
        • argumentsunknown

          Model-produced arguments (JSON).

        • function_idstringrequired

          The iii function id to invoke.

        • idstringrequired

          Unique per call, echoed by the result.

        • typestringrequiredenum: function_call
        variant 5
        • contentunknown[]required
        • function_call_idstringrequired
        • is_errorboolean
        • typestringrequiredenum: function_result
      • detailsunknown

        Opaque structured payload kept alongside the rendered content.

      • function_call_idstringrequired

        Echoes the `function_call` block id this result answers.

      • function_idstringrequired
      • is_errorboolean
      • rolestringrequiredenum: function_result
      • timestampinteger· int64required

        Milliseconds since epoch.

      variant 4
      • contentone of[]required
        … expand 5 nested
        one of (5)
        variant 1
        • textstringrequired
        • typestringrequiredenum: text
        variant 2
        • datastringrequired

          Base64-encoded image bytes.

        • mimestringrequired

          MIME type, e.g. `image/png`.

        • typestringrequiredenum: image
        variant 3
        • signaturestring
        • textstringrequired
        • typestringrequiredenum: thinking
        variant 4
        • argumentsunknown

          Model-produced arguments (JSON).

        • function_idstringrequired

          The iii function id to invoke.

        • idstringrequired

          Unique per call, echoed by the result.

        • typestringrequiredenum: function_call
        variant 5
        • contentunknown[]required
        • function_call_idstringrequired
        • is_errorboolean
        • typestringrequiredenum: function_result
      • custom_typestringrequired

        App-defined discriminator.

      • detailsunknown
      • displaystring
      • rolestringrequiredenum: custom
      • timestampinteger· int64required

        Milliseconds since epoch.

      variant 2
      valuenull
  • next_cursorstring

    Present when more pages remain.

session::on-config-change

function

Internal: hot-reload session-manager from the authoritative configuration when it changes — rebuilds the storage adapter and event plumbing on an adapter change (replaying current state to subscribers) and swaps the list limits otherwise.

request
  • idstring

    Configuration id that changed (advisory; the handler re-fetches the value).

response
  • okbooleanrequired

session::set-active-leaf

function

Move the active path to end at a given entry (branch switch).

request
  • entry_idstringrequired

    The entry the active path should end at. Subsequent `session::append` without `parent_id` chains from here.

  • session_idstringrequired
response
  • active_leafstringrequired

session::set-meta

function

Update a session's title/description/metadata; fires session::meta-updated.

request
  • descriptionstring

    New description (omit to keep the current one).

  • metadataobject

    New metadata object — **replaces** the stored one wholesale.

  • session_idstringrequired
  • titlestring

    New title (omit to keep the current one).

response
  • metaobjectrequired

    A session's metadata record.

    • created_atinteger· int64required

      Milliseconds since epoch.

    • descriptionstringrequired
    • forked_fromstring

      Source session id when created by `session::fork`.

    • message_countinteger· uint64requiredmin 0

      Number of `kind: "message"` entries (custom entries are bookkeeping and not counted).

    • metadataobject

      App-defined; the tenancy hook (e.g. `{ "owner": "u_1" }`) that `session::list` and every trigger config can filter on.

    • session_idstringrequired
    • statusstringrequiredenum: idle, working, done, error

      Coarse session lifecycle status, rendered directly by consumers.

    • status_reasonstring

      Short cause, set on `error`, cleared on any other status.

    • titlestringrequired
    • updated_atinteger· int64required

      Milliseconds since epoch.

session::set-status

function

Set status idle/working/done/error; fires session::status-changed (no-op when unchanged).

request
  • reasonstring

    Short cause stored as `status_reason` — kept on `error`, cleared on any other status.

  • session_idstringrequired
  • statusall ofrequired

    Target status: `idle` / `working` / `done` / `error`.

    all of (1)
    variant 1
    valuestringenum: idle, working, done, error
response
  • previous_statusstringrequiredenum: idle, working, done, error

    Coarse session lifecycle status, rendered directly by consumers.

  • statusstringrequiredenum: idle, working, done, error

    Coarse session lifecycle status, rendered directly by consumers.

session::store::delete-active-leaf

function

Internal store protocol: clear a session's active leaf pointer.

request
  • session_idstringrequired
response
  • okbooleanrequired

session::store::delete-entries

function

Internal store protocol: delete every entry of a session.

request
  • session_idstringrequired
response
  • okbooleanrequired

session::store::delete-meta

function

Internal store protocol: delete one SessionMeta.

request
  • session_idstringrequired
response
  • okbooleanrequired

session::store::get-active-leaf

function

Internal store protocol: read a session's active leaf pointer.

request
  • session_idstringrequired
response
  • entry_idstring

    `null` when the session has no active leaf.

session::store::get-entry

function

Internal store protocol: read one SessionEntry (null when unknown).

request
  • entry_idstringrequired
  • session_idstringrequired
response
any of (2)
variant 1
one of (2)
variant 1
  • idstringrequired
  • kindstringrequiredenum: message
  • messageone ofrequired

    The canonical transcript message union, discriminated by `role`.

    … expand 4 nested
    one of (4)
    variant 1
    • contentone of[]required
      … expand 5 nested
      one of (5)
      variant 1
      • textstringrequired
      • typestringrequiredenum: text
      variant 2
      • datastringrequired

        Base64-encoded image bytes.

      • mimestringrequired

        MIME type, e.g. `image/png`.

      • typestringrequiredenum: image
      variant 3
      • signaturestring
      • textstringrequired
      • typestringrequiredenum: thinking
      variant 4
      • argumentsunknown

        Model-produced arguments (JSON).

      • function_idstringrequired

        The iii function id to invoke.

      • idstringrequired

        Unique per call, echoed by the result.

      • typestringrequiredenum: function_call
      variant 5
      • contentunknown[]required
      • function_call_idstringrequired
      • is_errorboolean
      • typestringrequiredenum: function_result
    • rolestringrequiredenum: user
    • timestampinteger· int64required

      Milliseconds since epoch.

    variant 2
    • contentone of[]required
      … expand 5 nested
      one of (5)
      variant 1
      • textstringrequired
      • typestringrequiredenum: text
      variant 2
      • datastringrequired

        Base64-encoded image bytes.

      • mimestringrequired

        MIME type, e.g. `image/png`.

      • typestringrequiredenum: image
      variant 3
      • signaturestring
      • textstringrequired
      • typestringrequiredenum: thinking
      variant 4
      • argumentsunknown

        Model-produced arguments (JSON).

      • function_idstringrequired

        The iii function id to invoke.

      • idstringrequired

        Unique per call, echoed by the result.

      • typestringrequiredenum: function_call
      variant 5
      • contentunknown[]required
      • function_call_idstringrequired
      • is_errorboolean
      • typestringrequiredenum: function_result
    • error_kindany of
      … expand 2 nested
      any of (2)
      variant 1
      valuestringenum: auth_expired, rate_limited, context_overflow, transient, permanent
      variant 2
      valuenull
    • error_messagestring
    • modelstringrequired
    • native_stop_reasonstring

      Provider's raw finish reason, passed through untouched.

    • providerstringrequired
    • rolestringrequiredenum: assistant
    • stop_reasonstringrequiredenum: end, length, function_call, aborted, error

      Why an assistant message stopped generating.

    • timestampinteger· int64required

      Milliseconds since epoch.

    • usageany of
      … expand 2 nested
      any of (2)
      variant 1
      • cache_readinteger· uint64min 0
      • cache_writeinteger· uint64min 0
      • cost_usdnumber· double
      • inputinteger· uint64min 0
      • outputinteger· uint64min 0
      • reasoninginteger· uint64min 0
      variant 2
      valuenull
    • warningsstring[]

      Report-and-continue notices (e.g. dropped unsupported param).

    variant 3
    • contentone of[]required
      … expand 5 nested
      one of (5)
      variant 1
      • textstringrequired
      • typestringrequiredenum: text
      variant 2
      • datastringrequired

        Base64-encoded image bytes.

      • mimestringrequired

        MIME type, e.g. `image/png`.

      • typestringrequiredenum: image
      variant 3
      • signaturestring
      • textstringrequired
      • typestringrequiredenum: thinking
      variant 4
      • argumentsunknown

        Model-produced arguments (JSON).

      • function_idstringrequired

        The iii function id to invoke.

      • idstringrequired

        Unique per call, echoed by the result.

      • typestringrequiredenum: function_call
      variant 5
      • contentunknown[]required
      • function_call_idstringrequired
      • is_errorboolean
      • typestringrequiredenum: function_result
    • detailsunknown

      Opaque structured payload kept alongside the rendered content.

    • function_call_idstringrequired

      Echoes the `function_call` block id this result answers.

    • function_idstringrequired
    • is_errorboolean
    • rolestringrequiredenum: function_result
    • timestampinteger· int64required

      Milliseconds since epoch.

    variant 4
    • contentone of[]required
      … expand 5 nested
      one of (5)
      variant 1
      • textstringrequired
      • typestringrequiredenum: text
      variant 2
      • datastringrequired

        Base64-encoded image bytes.

      • mimestringrequired

        MIME type, e.g. `image/png`.

      • typestringrequiredenum: image
      variant 3
      • signaturestring
      • textstringrequired
      • typestringrequiredenum: thinking
      variant 4
      • argumentsunknown

        Model-produced arguments (JSON).

      • function_idstringrequired

        The iii function id to invoke.

      • idstringrequired

        Unique per call, echoed by the result.

      • typestringrequiredenum: function_call
      variant 5
      • contentunknown[]required
      • function_call_idstringrequired
      • is_errorboolean
      • typestringrequiredenum: function_result
    • custom_typestringrequired

      App-defined discriminator.

    • detailsunknown
    • displaystring
    • rolestringrequiredenum: custom
    • timestampinteger· int64required

      Milliseconds since epoch.

  • originobject

    Opaque writer-supplied correlation (e.g. `{ turn_id }`).

  • parent_idstring
  • revisioninteger· uint64min 0

    Starts at 0; increments on every content update.

  • timestampinteger· int64required

    Milliseconds since epoch (entry creation time).

variant 2
  • custom_typestringrequired
  • dataunknown
  • idstringrequired
  • kindstringrequiredenum: custom
  • originobject

    Opaque writer-supplied correlation (e.g. `{ turn_id }`).

  • parent_idstring
  • revisioninteger· uint64min 0

    Starts at 0; increments on every content update.

  • timestampinteger· int64required

    Milliseconds since epoch (entry creation time).

variant 2
valuenull

session::store::get-meta

function

Internal store protocol: read one SessionMeta (null when unknown).

request
  • session_idstringrequired
response
any of (2)
variant 1
  • created_atinteger· int64required

    Milliseconds since epoch.

  • descriptionstringrequired
  • forked_fromstring

    Source session id when created by `session::fork`.

  • message_countinteger· uint64requiredmin 0

    Number of `kind: "message"` entries (custom entries are bookkeeping and not counted).

  • metadataobject

    App-defined; the tenancy hook (e.g. `{ "owner": "u_1" }`) that `session::list` and every trigger config can filter on.

  • session_idstringrequired
  • statusstringrequiredenum: idle, working, done, error

    Coarse session lifecycle status, rendered directly by consumers.

  • status_reasonstring

    Short cause, set on `error`, cleared on any other status.

  • titlestringrequired
  • updated_atinteger· int64required

    Milliseconds since epoch.

variant 2
valuenull

session::store::list-entries

function

Internal store protocol: list every entry of a session.

request
  • session_idstringrequired
response
  • entriesone of[]required
    one of (2)
    variant 1
    • idstringrequired
    • kindstringrequiredenum: message
    • messageone ofrequired

      The canonical transcript message union, discriminated by `role`.

      … expand 4 nested
      one of (4)
      variant 1
      • contentone of[]required
        … expand 5 nested
        one of (5)
        variant 1
        • textstringrequired
        • typestringrequiredenum: text
        variant 2
        • datastringrequired

          Base64-encoded image bytes.

        • mimestringrequired

          MIME type, e.g. `image/png`.

        • typestringrequiredenum: image
        variant 3
        • signaturestring
        • textstringrequired
        • typestringrequiredenum: thinking
        variant 4
        • argumentsunknown

          Model-produced arguments (JSON).

        • function_idstringrequired

          The iii function id to invoke.

        • idstringrequired

          Unique per call, echoed by the result.

        • typestringrequiredenum: function_call
        variant 5
        • contentunknown[]required
        • function_call_idstringrequired
        • is_errorboolean
        • typestringrequiredenum: function_result
      • rolestringrequiredenum: user
      • timestampinteger· int64required

        Milliseconds since epoch.

      variant 2
      • contentone of[]required
        … expand 5 nested
        one of (5)
        variant 1
        • textstringrequired
        • typestringrequiredenum: text
        variant 2
        • datastringrequired

          Base64-encoded image bytes.

        • mimestringrequired

          MIME type, e.g. `image/png`.

        • typestringrequiredenum: image
        variant 3
        • signaturestring
        • textstringrequired
        • typestringrequiredenum: thinking
        variant 4
        • argumentsunknown

          Model-produced arguments (JSON).

        • function_idstringrequired

          The iii function id to invoke.

        • idstringrequired

          Unique per call, echoed by the result.

        • typestringrequiredenum: function_call
        variant 5
        • contentunknown[]required
        • function_call_idstringrequired
        • is_errorboolean
        • typestringrequiredenum: function_result
      • error_kindany of
        … expand 2 nested
        any of (2)
        variant 1
        valuestringenum: auth_expired, rate_limited, context_overflow, transient, permanent
        variant 2
        valuenull
      • error_messagestring
      • modelstringrequired
      • native_stop_reasonstring

        Provider's raw finish reason, passed through untouched.

      • providerstringrequired
      • rolestringrequiredenum: assistant
      • stop_reasonstringrequiredenum: end, length, function_call, aborted, error

        Why an assistant message stopped generating.

      • timestampinteger· int64required

        Milliseconds since epoch.

      • usageany of
        … expand 2 nested
        any of (2)
        variant 1
        • cache_readinteger· uint64min 0
        • cache_writeinteger· uint64min 0
        • cost_usdnumber· double
        • inputinteger· uint64min 0
        • outputinteger· uint64min 0
        • reasoninginteger· uint64min 0
        variant 2
        valuenull
      • warningsstring[]

        Report-and-continue notices (e.g. dropped unsupported param).

      variant 3
      • contentone of[]required
        … expand 5 nested
        one of (5)
        variant 1
        • textstringrequired
        • typestringrequiredenum: text
        variant 2
        • datastringrequired

          Base64-encoded image bytes.

        • mimestringrequired

          MIME type, e.g. `image/png`.

        • typestringrequiredenum: image
        variant 3
        • signaturestring
        • textstringrequired
        • typestringrequiredenum: thinking
        variant 4
        • argumentsunknown

          Model-produced arguments (JSON).

        • function_idstringrequired

          The iii function id to invoke.

        • idstringrequired

          Unique per call, echoed by the result.

        • typestringrequiredenum: function_call
        variant 5
        • contentunknown[]required
        • function_call_idstringrequired
        • is_errorboolean
        • typestringrequiredenum: function_result
      • detailsunknown

        Opaque structured payload kept alongside the rendered content.

      • function_call_idstringrequired

        Echoes the `function_call` block id this result answers.

      • function_idstringrequired
      • is_errorboolean
      • rolestringrequiredenum: function_result
      • timestampinteger· int64required

        Milliseconds since epoch.

      variant 4
      • contentone of[]required
        … expand 5 nested
        one of (5)
        variant 1
        • textstringrequired
        • typestringrequiredenum: text
        variant 2
        • datastringrequired

          Base64-encoded image bytes.

        • mimestringrequired

          MIME type, e.g. `image/png`.

        • typestringrequiredenum: image
        variant 3
        • signaturestring
        • textstringrequired
        • typestringrequiredenum: thinking
        variant 4
        • argumentsunknown

          Model-produced arguments (JSON).

        • function_idstringrequired

          The iii function id to invoke.

        • idstringrequired

          Unique per call, echoed by the result.

        • typestringrequiredenum: function_call
        variant 5
        • contentunknown[]required
        • function_call_idstringrequired
        • is_errorboolean
        • typestringrequiredenum: function_result
      • custom_typestringrequired

        App-defined discriminator.

      • detailsunknown
      • displaystring
      • rolestringrequiredenum: custom
      • timestampinteger· int64required

        Milliseconds since epoch.

    • originobject

      Opaque writer-supplied correlation (e.g. `{ turn_id }`).

    • parent_idstring
    • revisioninteger· uint64min 0

      Starts at 0; increments on every content update.

    • timestampinteger· int64required

      Milliseconds since epoch (entry creation time).

    variant 2
    • custom_typestringrequired
    • dataunknown
    • idstringrequired
    • kindstringrequiredenum: custom
    • originobject

      Opaque writer-supplied correlation (e.g. `{ turn_id }`).

    • parent_idstring
    • revisioninteger· uint64min 0

      Starts at 0; increments on every content update.

    • timestampinteger· int64required

      Milliseconds since epoch (entry creation time).

session::store::list-metas

function

Internal store protocol: list every SessionMeta.

request
empty object
response
  • metasobject[]required
    • created_atinteger· int64required

      Milliseconds since epoch.

    • descriptionstringrequired
    • forked_fromstring

      Source session id when created by `session::fork`.

    • message_countinteger· uint64requiredmin 0

      Number of `kind: "message"` entries (custom entries are bookkeeping and not counted).

    • metadataobject

      App-defined; the tenancy hook (e.g. `{ "owner": "u_1" }`) that `session::list` and every trigger config can filter on.

    • session_idstringrequired
    • statusstringrequiredenum: idle, working, done, error

      Coarse session lifecycle status, rendered directly by consumers.

    • status_reasonstring

      Short cause, set on `error`, cleared on any other status.

    • titlestringrequired
    • updated_atinteger· int64required

      Milliseconds since epoch.

session::store::publish-events

function

Internal store protocol: ingest a bridged instance's event envelopes and fan them out to local subscribers and every attached bridge.

request
  • eventsobject[]required

    Event envelopes produced by a bridged instance's mutation.

    • payloadunknownrequired

      The spec payload for that trigger type.

    • session_metadataobject

      `SessionMeta.metadata` as of the mutation.

    • trigger_typestringrequired

      One of the six public trigger type ids.

response
  • publishedinteger· uintrequiredmin 0

    Number of well-formed envelopes accepted and fanned out.

session::store::put-entry

function

Internal store protocol: write one SessionEntry.

request
  • entryone ofrequired

    The entry envelope giving each stored item identity, ordering and a parent link (used for forking), discriminated by `kind`.

    one of (2)
    variant 1
    • idstringrequired
    • kindstringrequiredenum: message
    • messageone ofrequired

      The canonical transcript message union, discriminated by `role`.

      … expand 4 nested
      one of (4)
      variant 1
      • contentone of[]required
        … expand 5 nested
        one of (5)
        variant 1
        • textstringrequired
        • typestringrequiredenum: text
        variant 2
        • datastringrequired

          Base64-encoded image bytes.

        • mimestringrequired

          MIME type, e.g. `image/png`.

        • typestringrequiredenum: image
        variant 3
        • signaturestring
        • textstringrequired
        • typestringrequiredenum: thinking
        variant 4
        • argumentsunknown

          Model-produced arguments (JSON).

        • function_idstringrequired

          The iii function id to invoke.

        • idstringrequired

          Unique per call, echoed by the result.

        • typestringrequiredenum: function_call
        variant 5
        • contentunknown[]required
        • function_call_idstringrequired
        • is_errorboolean
        • typestringrequiredenum: function_result
      • rolestringrequiredenum: user
      • timestampinteger· int64required

        Milliseconds since epoch.

      variant 2
      • contentone of[]required
        … expand 5 nested
        one of (5)
        variant 1
        • textstringrequired
        • typestringrequiredenum: text
        variant 2
        • datastringrequired

          Base64-encoded image bytes.

        • mimestringrequired

          MIME type, e.g. `image/png`.

        • typestringrequiredenum: image
        variant 3
        • signaturestring
        • textstringrequired
        • typestringrequiredenum: thinking
        variant 4
        • argumentsunknown

          Model-produced arguments (JSON).

        • function_idstringrequired

          The iii function id to invoke.

        • idstringrequired

          Unique per call, echoed by the result.

        • typestringrequiredenum: function_call
        variant 5
        • contentunknown[]required
        • function_call_idstringrequired
        • is_errorboolean
        • typestringrequiredenum: function_result
      • error_kindany of
        … expand 2 nested
        any of (2)
        variant 1
        valuestringenum: auth_expired, rate_limited, context_overflow, transient, permanent
        variant 2
        valuenull
      • error_messagestring
      • modelstringrequired
      • native_stop_reasonstring

        Provider's raw finish reason, passed through untouched.

      • providerstringrequired
      • rolestringrequiredenum: assistant
      • stop_reasonstringrequiredenum: end, length, function_call, aborted, error

        Why an assistant message stopped generating.

      • timestampinteger· int64required

        Milliseconds since epoch.

      • usageany of
        … expand 2 nested
        any of (2)
        variant 1
        • cache_readinteger· uint64min 0
        • cache_writeinteger· uint64min 0
        • cost_usdnumber· double
        • inputinteger· uint64min 0
        • outputinteger· uint64min 0
        • reasoninginteger· uint64min 0
        variant 2
        valuenull
      • warningsstring[]

        Report-and-continue notices (e.g. dropped unsupported param).

      variant 3
      • contentone of[]required
        … expand 5 nested
        one of (5)
        variant 1
        • textstringrequired
        • typestringrequiredenum: text
        variant 2
        • datastringrequired

          Base64-encoded image bytes.

        • mimestringrequired

          MIME type, e.g. `image/png`.

        • typestringrequiredenum: image
        variant 3
        • signaturestring
        • textstringrequired
        • typestringrequiredenum: thinking
        variant 4
        • argumentsunknown

          Model-produced arguments (JSON).

        • function_idstringrequired

          The iii function id to invoke.

        • idstringrequired

          Unique per call, echoed by the result.

        • typestringrequiredenum: function_call
        variant 5
        • contentunknown[]required
        • function_call_idstringrequired
        • is_errorboolean
        • typestringrequiredenum: function_result
      • detailsunknown

        Opaque structured payload kept alongside the rendered content.

      • function_call_idstringrequired

        Echoes the `function_call` block id this result answers.

      • function_idstringrequired
      • is_errorboolean
      • rolestringrequiredenum: function_result
      • timestampinteger· int64required

        Milliseconds since epoch.

      variant 4
      • contentone of[]required
        … expand 5 nested
        one of (5)
        variant 1
        • textstringrequired
        • typestringrequiredenum: text
        variant 2
        • datastringrequired

          Base64-encoded image bytes.

        • mimestringrequired

          MIME type, e.g. `image/png`.

        • typestringrequiredenum: image
        variant 3
        • signaturestring
        • textstringrequired
        • typestringrequiredenum: thinking
        variant 4
        • argumentsunknown

          Model-produced arguments (JSON).

        • function_idstringrequired

          The iii function id to invoke.

        • idstringrequired

          Unique per call, echoed by the result.

        • typestringrequiredenum: function_call
        variant 5
        • contentunknown[]required
        • function_call_idstringrequired
        • is_errorboolean
        • typestringrequiredenum: function_result
      • custom_typestringrequired

        App-defined discriminator.

      • detailsunknown
      • displaystring
      • rolestringrequiredenum: custom
      • timestampinteger· int64required

        Milliseconds since epoch.

    • originobject

      Opaque writer-supplied correlation (e.g. `{ turn_id }`).

    • parent_idstring
    • revisioninteger· uint64min 0

      Starts at 0; increments on every content update.

    • timestampinteger· int64required

      Milliseconds since epoch (entry creation time).

    variant 2
    • custom_typestringrequired
    • dataunknown
    • idstringrequired
    • kindstringrequiredenum: custom
    • originobject

      Opaque writer-supplied correlation (e.g. `{ turn_id }`).

    • parent_idstring
    • revisioninteger· uint64min 0

      Starts at 0; increments on every content update.

    • timestampinteger· int64required

      Milliseconds since epoch (entry creation time).

  • session_idstringrequired
response
  • okbooleanrequired

session::store::put-meta

function

Internal store protocol: write one SessionMeta.

request
  • metaobjectrequired

    A session's metadata record.

    • created_atinteger· int64required

      Milliseconds since epoch.

    • descriptionstringrequired
    • forked_fromstring

      Source session id when created by `session::fork`.

    • message_countinteger· uint64requiredmin 0

      Number of `kind: "message"` entries (custom entries are bookkeeping and not counted).

    • metadataobject

      App-defined; the tenancy hook (e.g. `{ "owner": "u_1" }`) that `session::list` and every trigger config can filter on.

    • session_idstringrequired
    • statusstringrequiredenum: idle, working, done, error

      Coarse session lifecycle status, rendered directly by consumers.

    • status_reasonstring

      Short cause, set on `error`, cleared on any other status.

    • titlestringrequired
    • updated_atinteger· int64required

      Milliseconds since epoch.

response
  • okbooleanrequired

session::store::set-active-leaf

function

Internal store protocol: move a session's active leaf pointer.

request
  • entry_idstringrequired
  • session_idstringrequired
response
  • okbooleanrequired

session::update-message

function

Replace a message entry's content (optimistic concurrency via expected_revision); fires session::message-updated.

request
  • contentone of[]required

    New content for the message (full replacement).

    one of (5)
    variant 1
    • textstringrequired
    • typestringrequiredenum: text
    variant 2
    • datastringrequired

      Base64-encoded image bytes.

    • mimestringrequired

      MIME type, e.g. `image/png`.

    • typestringrequiredenum: image
    variant 3
    • signaturestring
    • textstringrequired
    • typestringrequiredenum: thinking
    variant 4
    • argumentsunknown

      Model-produced arguments (JSON).

    • function_idstringrequired

      The iii function id to invoke.

    • idstringrequired

      Unique per call, echoed by the result.

    • typestringrequiredenum: function_call
    variant 5
    • contentunknown[]required
    • function_call_idstringrequired
    • is_errorboolean
    • typestringrequiredenum: function_result
  • detailsunknown

    New `details` — only for `function_result` / `custom` messages.

  • entry_idstringrequired
  • expected_revisioninteger· uint64min 0

    Optimistic concurrency: when supplied and it does not match the entry's current revision, nothing is written and `{ updated: false, revision }` returns the current revision.

  • originobject

    Opaque correlation echoed on the event.

  • session_idstringrequired
response
  • revisioninteger· uint64requiredmin 0

    The entry's revision after this call (unchanged on a mismatch).

  • updatedbooleanrequired

triggers

7

session::created

trigger

A new session exists (via session::create or session::fork).

invocation
valueunknown
return
valueunknown

session::deleted

trigger

A session and its entries were removed.

invocation
valueunknown
return
valueunknown

session::message-added

trigger

A message entry was appended to a session.

invocation
valueunknown
return
valueunknown

session::message-updated

trigger

A message entry's content changed (e.g. streaming deltas).

invocation
valueunknown
return
valueunknown

session::meta-updated

trigger

A session's title/description/metadata changed.

invocation
valueunknown
return
valueunknown

session::status-changed

trigger

A session's status changed (idle/working/done/error).

invocation
valueunknown
return
valueunknown

session::store::events

trigger

Internal: event-envelope feed for bridged session-manager instances. Not for direct consumption — bind the six public session::* types instead.

invocation
valueunknown
return
valueunknown