Rebrand a template (full rebrand on copy)
When to use: The user has a source canvas they like and wants a new canvas with a different brand applied — different colors, different fonts, different logos. Common for agencies producing the same layout for multiple clients. The original canvas is preserved.Tool call
What the server does
The server:- Copies the source canvas into the caller’s team (original untouched).
- Applies the new
brand_kit_idto the copy. - Because the resolved kit differs from the source’s, the agent runs the
template-remixskill — full rebrand (palette, typography, hero imagery), not just content swap — and it does not need the prompt to ask for it. - Returns a task handle. Poll
get_task_statusas usual.
Don’t ask for the rebrand in the prompt
The rebrand is implicit and automatic. Passing abrand_kit_id that differs from the
source canvas’s kit is the rebrand request — the server force-bundles the
template-remix skill, which instructs the agent to read your prompt as describing
only the content theme and to swap colors, fonts, logos, and hero imagery regardless
of what the prompt says.
Write the prompt as a content brief only:
- Good:
"Rebuild this deck as Acme's Series A pitch — swap the metrics on slides 4-6 for Acme's numbers and rewrite the customer quotes." - Bad:
"Rebrand for Acme. Update colors, fonts, and imagery to the new brand kit."
../references/gotchas.md#brand-kits),
and it re-opens the content-only reading of the prompt that the server-side skill
exists to close. The one thing worth putting in the prompt is a deviation the user
asked for (“keep the dark background even though the kit is light”).
Picking the new brand_kit_id
- If
get_moda_bootstrapreturnedbrand_kit_count > 1, you may already have the right id in hand from a recentfind_brand_kitscall or session preference. Use it. - If unsure, call
find_brand_kits(JSON-only) and pick by name. Don’t calllist_brand_kitsautonomously — it renders the visual showcase the user didn’t ask for.
Mutually exclusive
template_canvas_id is mutually exclusive with both canvas_id and conversation_id.
Bulk variant — different brand per output
For “produce N rebranded variants, one per client”, iteratestart_design_task calls with the same template_canvas_id and a different brand_kit_id each call. Pattern B of bulk-variants.md covers the windowed-launch shape.
See also
find-a-template.md— how to find a template and the three-rule contract for its built-in instructionsfill-template.md— same workflow but keep the source’s brand (content-only remix)bulk-variants.md— fan out rebrands across multiple brand kits../references/gotchas.md#brand-kits— brand-kit resolution order,find_vslist_distinction