Skip to content

Manifest format

For a TS realm, generated by embabel-build-manifest (provided by @embabel/runtime-types) — never hand-authored. A wasm realm with no TS build hand-authors the same format (see Execution hosts). The host reads it at install time.

{
"version": 1,
"generatedAt": "2026-05-15T00:00:00Z",
"entries": [
{
"namespace": "docs_editor",
"name": "getOutline",
"description": "Return the heading outline …",
"inputSchema": { "type": "object", "properties": { "documentId": { "type": "string" } }, "required": ["documentId"] },
"outputSchema": { "type": "object", "properties": { /* … */ } }
}
]
}
Field Source Purpose
namespace src/api/<filename>.ts (kebab-case → snake) Gateway namespace; LLM sees this camelCased (docs_editor → docsEditor).
name exported function name Method name on the namespace.
description first JSDoc paragraph LLM-visible documentation.
inputSchema TS type of args parameter JSON Schema; drives the typed surface on the LLM side.
outputSchema TS type of the unwrapped Promise<T> Same.
schedule manifest author Optional cron expression (Spring 6-field); the host also runs the Realm Function on this cadence. See Execution hosts.
onType export class X extends Entity methods (or manifest author) The entry is a method on a declared type, surfaced as <obj>.<name>(args) rather than a bare gateway function.
className exported class name Set for class-based type methods; the class to instantiate before invoking name. Absent for the function form.