Edit the channel style
style_editCreate or change the channel style (one per channel, used by all its projects).
create: offer the user two real options, never invented ones. (a) References (best): YouTube links of their channel or of videos whose look they like, or a written description. Analysis starts at once and writes the fields: wait with get_status channel_id wait=true, then render both template images (style_generate action=template). A reference informs every axis, narrative included; for its look only, give it contributes_to ["art_style"]. (b) Presets: one per axis, all three; instant, and the art preset brings its template images. Presets and references don't mix.
update_fields: replace fields' text; it never starts an analysis (an
analysis rewrites art_style, narrative_style, director_style and
text_style). Those four and script_prompt can't be removed, every field
needs text, and summaries are written only by analysis. Real photos and
B-roll are turned on by the literal @real-media tag in director_style,
with prose on when and how much; remove it to turn them off.
update_references: replace the references, fields untouched (inputs_stale turns true). File references can only be added in the app.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | create: the style name | |
| action | Yes | create: name, and references or presets; update_fields: fields; update_references: references | |
| fields | No | update_fields: {key: "new text"} for the keys you change; {key: null} removes a key you added | |
| presets | No | create: {"art_style": id, "narrative_style": id, "director_style": id} from style_read action=presets | |
| channel_id | Yes | The channel whose style this is | |
| references | No | [{"input_type": "youtube" | "text", "value": "<link or description>", "contributes_to": ["art_style", ...]?}]. A youtube value is a video link, or a channel link or @handle. update_references: the COMPLETE list in order; copy kept entries from style_read verbatim. |