Skip to main content
Shared helpers and re-exported types the SDK exposes.

ApiClient

SchemaEditor

Props Related: SchemaEditorProps

SchemaEditorChange

What SchemaEditor reports up on every edit. Properties

SchemaEditorProps

Properties Related: SchemaEditorChange

SchemaLintResult

The parse/lint outcome for one editor text buffer. Properties

comboElementNames

Project a combo’s elements to their bare extension names (drops any config). Parameters

downloadBlob

Stream a Blob (an export- or content-route response) to the user as a file download via a transient object URL. The object URL is revoked on the next tick — revoking it synchronously can cancel the download before the browser commits it. Parameters

errorMessage

Normalize an unknown thrown/rejected value (a TanStack Query error, a rejected mutation, a zod/ApiError) into a human-readable string for the loud ErrorState / Field surfaces. This only turns a caught value into displayable text — it never swallows the failure; the caller decides where to show it, and the message is always shown, never blank. Parameters

extensionElementName

The bare extension name of one combo element (drops any config). Parameters

extensionsQueryKey

The extension catalog (GET /api/extensions). The extensions feature keys its read-only catalog on it; a tool’s extension-combo save (in the tools feature) creates or tears down branch tools, so it invalidates this key too — a cross-feature reference that must resolve to one authoritative constant.

lintSchemaText

Parse and structurally lint a JSON-Schema editor buffer.
  • Empty text is VALID (an unset, optional schema) with a null schema.
  • Malformed JSON is INVALID; the parser message is surfaced verbatim.
  • A top-level value that is not a JSON object (an array or a scalar) is INVALID.
  • When requireTitle, a top-level string "title" is REQUIRED (the response_format contract the backend enforces); its absence is INVALID.
The parsed object is returned untouched — no key is normalized, reordered, or dropped — so a schema carrying $defs/anyOf round-trips exactly. Parameters Related: SchemaLintResult

subMcpKey

The discovered sub-MCP mounts (GET /api/sub-mcp). The settings feature reads this map (its scope mapper lists the mounts) while the manifest feature owns the create/delete controls that mutate it; both must key and invalidate the exact same tuple, so it lives here rather than as a literal duplicated across the two features (which cannot import each other).

toolsListKey

The registered-tool master list (GET /api/tools).