Prepare Draft
prepare_draftCreates a private browser-owned component draft and preview URL without changing the live workspace. Drafts expire after 15 minutes or browser reload. Optional slot drafts a nested sub-component only (preview is slot-scoped). Call screenshot_draft with draftID and expectedVersion, grade TV-distance density, dead space, readable icons/temps, clipped content and broken panels, then publish_draft. Never put previewURL in chat.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"operationID": "<operationID>",
"expectedRevision": "<expectedRevision>",
"title": "<title>",
"format": "<format>",
"source": "<source>",
"action": "<action>",
"controlToken": "<controlToken>"
},
"name": "prepare_draft"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| data | No | ||
| slot | No | ||
| state | No | ||
| title | Yes | ||
| action | Yes | ||
| format | Yes | ||
| source | Yes | React TSX or full HTML. Use a sized nova-video element: YouTube/Vimeo embed URLs play inline, other service URLs are unsupported; do not create launch buttons or placeholders; see /agent media guidance. Arbitrary nested frames stay blocked. Do not author clickable links or external-navigation buttons; keep interactions within the canvas and share external URLs in the agent conversation. | |
| componentID | No | ||
| operationID | Yes | ||
| controlToken | Yes | ||
| expectedRevision | Yes |