Rensei docs

Inspect typed delegation capability availability.

Returns the exact capability probe consumed by the Rensei CLI. An empty mcpTools or lifecycle array remains a fail-closed declaration: typed dispatch and session lifecycle are not usable. Advertisement is all-or-nothing - the CLI requires every entry, so a partial list disables typed dispatch entirely. `lifecycle` is an inventory of served routes: all four exist under /api/cli/sessions/{sessionId} and admitted typed dispatch allocates a durable ledger session. `mcpTools` is NOT a tool inventory: it is the version handshake that unlocks those routes, and no platform MCP facade defines tools by those names - POST /api/cli/mcp serves `dispatch`, `get_receipt`, and `list_workflows` only. Do not issue tools/call against an mcpTools name.

GET
/api/cli/dispatch/capabilities

Authorization

headerAuthorizationBearer <rsk_live_*>

Rensei API key presented as Authorization: Bearer rsk_live_. Required API-key scopes are recorded per operation in x-rensei-required-scopes.

Response Body

Version document. Empty operation lists mean typed dispatch remains unsupported.

application/json
  1. response
contractVersions*array<string>
mcpTools*array<>
Itemsitems <= 5
lifecycle*array<>
Itemsitems <= 4
Example Request
curl -X GET 'https://app.rensei.ai/api/cli/dispatch/capabilities'
Example Response
{  "contractVersions": [    "donmai.execution-cell/v1alpha1"  ],  "mcpTools": [    "dispatch_child"  ],  "lifecycle": [    "watch"  ]}

Get the assembled audit receipt for an inbound dispatch.

Returns the assembled receipt for one dispatched run: what it cost, which models it used, how it was decided - and, once the run is terminal, the child's own answer (`summary`) plus a typed `exitReason` (passed | failed | blocked | timeout | cancelled | unknown). `workType` names the session work type and its registry role (null for an unknown or retired name); null when no work type was recorded. `reasoningEffort` reports the effort the run executed at, as its runner reported it. `capabilitiesNotDelivered` lists the non-essential capability demands the resolved harness profile could not deliver, so the session ran without them. `resolvedParams` reports, for each resolved Agent Dispatch parameter, the value and the scope that supplied it (system | org | project | workflow | caller | default); secret-typed parameters (`callbackUrl`) report scope only, never a value. `result` carries the run's typed outcome as its runner reported it: the review `verdict` (APPROVE | APPROVE_WITH_FOLLOWUPS | REQUEST_CHANGES as delivered, or FAILED for a review that ended failed, blocked or timed out without delivering one; review work only), the run's `pullRequest` ({ number, url, headSha }, also on failed and blocked runs; for review work it is the PR the reviewer reported, usually the one under review and unverified by the runner, with the review session's own head) and `ciState`; `reviewedHeadSha`, when present, is the PR head pinned in the dispatch review target, independent of the workarea head. `reviewedPullRequest`, when present, names that pinned target ({ repo, number, url }), independently of the runner-reported PR; absent when the target repository is invalid. A null member means the runner never reported it. `promptTruncation` reports, for each capped starting-prompt section, the before (originalChars) and after (keptChars) sizes. `terminalReason` carries the structured failure reason (`code`, `message`, `phase`, `decidedBy`, `at`) for a terminal `failed` session, as stamped by the writer that ended it; null when the run ended any other way or predates the stamp. `pendingAdmission` reports the last observed reason, rule, attempts and observedAt while the session is pending; null otherwise. An old observedAt means no recent admission observation, not a fresh host diagnosis. `inferences[].reasoningTokens` carries the reported reasoning count (an output subset, never priced twice; null means not reported). The Ed25519 signature is over `decision.entryHash` and is unaffected by these fields; `receiptIntegrity.receiptVersion` names the sealed field set: newly assembled receipts are 'v11' (adds `executionSelection.placementSource/placementPoolId/placementFallbackFrom` and, on review-target receipts, `result.reviewedHeadSha` and the pinned `result.reviewedPullRequest` when its repository is valid), 'v12' is an accepted spelling for the v10 body plus inference `reasoningTokens` (never sealed), and archived ones stay valid as 'v10' (adds `capabilitiesNotDelivered`), 'v9' (adds `terminalReason`), 'v8' (adds `promptTruncation`), 'v7' (adds `result`), 'v6' (adds `resolvedParams`), 'v5' (adds `continuedPullRequest`), 'v4' (adds `budgetBreach`), 'v3' (adds `reasoningEffort`), 'v2' (adds the answer fields) or 'v1' (the original body).

Discover cards and their project workflow backing.

Discovery for card-based dispatch: lists visible cards with published workflow backing and an install/activate hint when unbacked for the project (same resolver, same visibility and publication rules). With `card`, returns that one card's detail - the per-card help the CLI prints and the typed parameter schema (`paramSchema`: the workflow's caller-settable parameters with defaults and constraints, plus the card's declared inputs) the CLI validates and prompts against before dispatching.