Skip to main content
POST
Create a preset

Authorizations

x-api-key
string
header
required

Body

application/json

A preset-creation request.

description is the bound tool's LLM-facing docstring — REQUIRED non-empty on every create. extensions is the list of extension combos (each element an extension name or a {"name", "config"} mapping binding author config). output_schema is the optional author-set OUTPUT JSON Schema (an object schema). input_map is an optional jq program turning the caller's input (described by input_schema, which it needs) into the base tool's arguments, with $fixed holding fixed_kwargs; output_map is an optional jq program reshaping the base tool's result before output_schema is checked. Each map is the program text or a stored-body reference.

base_tool
string
required
description
string
required
name
string
required
extensions
((string | object)[])[]
fixed_kwargs
Fixed Kwargs · object
input_map

A renderable text: its source plus the parameters its render takes.

EXACTLY ONE source is set — content (the text inline) or id (the id of a stored resource holding the text); neither and both are refused at construction. kwargs are the render parameters for the TEXT and apply either way, so moving a text from inline to stored (or back) leaves its parameters untouched.

input_schema
TemplatedText · object

A renderable text: its source plus the parameters its render takes.

EXACTLY ONE source is set — content (the text inline) or id (the id of a stored resource holding the text); neither and both are refused at construction. kwargs are the render parameters for the TEXT and apply either way, so moving a text from inline to stored (or back) leaves its parameters untouched.

output_map

A renderable text: its source plus the parameters its render takes.

EXACTLY ONE source is set — content (the text inline) or id (the id of a stored resource holding the text); neither and both are refused at construction. kwargs are the render parameters for the TEXT and apply either way, so moving a text from inline to stored (or back) leaves its parameters untouched.

output_schema
TemplatedText · object

A renderable text: its source plus the parameters its render takes.

EXACTLY ONE source is set — content (the text inline) or id (the id of a stored resource holding the text); neither and both are refused at construction. kwargs are the render parameters for the TEXT and apply either way, so moving a text from inline to stored (or back) leaves its parameters untouched.

state_binding
StateBinding · object | null

The optional binding a door carries: one or more :class:StateAttach entries. Frozen.

The same shape is stored on PresetBody/PresetSeed, TargetConversationConfig, HookRegister and ScheduleCreate, deposited on ToolInvocation through the ambient dispatch context, and re-applied per binding site by a consumer.

Response

Success.

data
PresetCreateResult · object
required

A created preset's record with the per-worker rebind fan-out report.