fingerprint is refused rather than overwriting someone else’s edit.
Admins edit design.md in Settings → Artifact theme, or click Copy setup for agent and paste the prompt into a coding agent open in their product’s code. The agent installs the
sidecars-themes skill, reads the design from the codebase and saves design.md with write_theme.
The format
- At most one css block. It may use
data:URLs only (no@import, no externalurl()), up to 64 KB — put the logo in as an SVG data URL. - The viewer sets
data-theme="dark"on the page’s root in dark mode, so a:root[data-theme="dark"]block themes dark mode. - A css block that is refused still saves the file; pages keep the last good CSS until it is fixed.
read_theme
Scope:documents:read · Kind: read-only · Annotations: readOnlyHint: true, destructiveHint: false, openWorldHint: false
Read the workspace’s design.md: prose that says how pages should look, and one css block every page renders with (cssis that block as pages get it). Call it before creating or rewriting a page, then use its classes and variables and follow its prose; do not restate a colour or font it already sets.source: nullwhen the workspace has none — pages then render with only their own styles. Pass the returnedfingerprintto write_theme.
Parameters
None.Returns
string | null
The theme artifact’s id, or
null when the workspace has no design.md.string
The web-app link the theme opens at.
string | null
design.md, verbatim.
string
Pass it to
write_theme; a save carrying a stale one is refused.string
The css every page renders with.
string
Present when the latest css block was refused; pages keep the last good css.
write_theme
Scope:documents:write (step-up) · Kind: write, admin · Annotations: readOnlyHint: false, destructiveHint: true, idempotentHint: true, openWorldHint: false
Replace the workspace’s design.md with the whole filesource, creating it if there is none. Admin only. Keep one css block; put the logo in it as an SVG data URL — the css may use data: URLs only, up to 64 KB.fingerprintis required: the one read_theme returned; if the file changed since, the save is refused with the current file — merge your change onto it and save again. Every page restyles as soon as it saves. A css block that is refused still saves the file and reportscompile_error; pages keep the last good css until it is fixed.
Parameters
string
required
The whole design.md.
string
required
The
fingerprint read_theme returned. If design.md changed since, the save is refused with error: "design_changed", the current source and its fingerprint — merge and write again.Returns
string
string
string
The saved file’s fingerprint, for the next save.
string
Present when the css block was refused.