Brand kit ability reference
Reference for the GoBuildWP Pro 1.12.4 source. Installed schemas and policy remain authoritative.
This Brand kit ability reference covers how an agent turns a design direction into settings the site actually holds: it drafts a design from a brief or a palette, exchanges compatible DTCG token documents, including documents prepared with design tools, writes the palette and type stack into the block theme and installed builders, and checks the rendered page for them.
Read-only, write and destructive groups describe the source annotations. They do not establish a minimum safety profile, human approval or undo support. Those controls are separate: check the installed ability, the connected user and the active site policy before calling it. A read can still return sensitive data. These pages are not evidence that every operation passed an end-to-end runtime test.
What Brand kit needs before these load
Brand kit ships in GoBuildWP Pro and runs on the free plugin's design system, so it registers while the free plugin's design store, library, token and preflight functions are available. Each call checks that GoBuildWP is switched on and that the user has manage_options. A builder is offered as a target when the GoBuildWP ability that writes it is registered, so a builder whose module did not load is not listed. The Brand Kit adds Apply to site and Tokens tabs to the Design screen in wp-admin.
- Brand kit editions
- free, pro
- Agent skills shipped
brand-kit
Where an apply writes, and through what
The targets are the block theme's global styles, Elementor global colours, typography and variables, Bricks variables, Divi global colours and fonts, Breakdance variables, Beaver Builder global colours and Astra typography. Each builder is written through that builder's own GoBuildWP ability, so its validation, permission check and change-ledger entry apply to every value. The block theme is written directly, into the user layer of global styles.
Globals with the same names are overwritten, which is why wppilot/brand-kit-apply is marked destructive and wppilot/brand-kit-preview returns the same plan without writing. A design with no palette and no type stack returns wppilot_brand_kit_nothing_to_apply; targets that are not available return wppilot_brand_kit_no_targets.
Written is not the same as applied
After an apply, the wppilot_pro_brand_kit_applied option records which design went to which targets, how many values and when. That records a write, not what visitors see: a theme stylesheet loaded later can still win. wppilot/brand-kit-verify-applied fetches a rendered page through wppilot/verify-rendered-page and reports which design colours and faces are present, which are missing, and which colours in use belong to neither. It reads served HTML and CSS; it does not run JavaScript or work out which rule won the cascade.
Token imports are capped at 512,000 bytes (wppilot_dtcg_too_large), and a palette to design from takes 2 to 12 colours.
Before accepting the result
Inspect the chosen target’s captured fields and undo support before applying tokens. Global styles, files and external effects have distinct recovery boundaries; one target’s retained before-image does not establish blanket rollback.
Representative call sequence
This sequence describes the documented calls and checks to perform. It is not a recorded result from an installed WordPress site. Inspect returned errors and partial results, then verify the saved values and affected output before proceeding.
A designer hands over a compatible DTCG token document, and the Elementor site should use its supported colours and fonts as globals.
- 01
wppilot/brand-kit-import-tokensReads the DTCG document, resolves its aliases and returns design markdown, listing token types it skipped; nothing is saved yet. - 02
wppilot/save-designStores that markdown as a design on the site; an incomplete document is kept as a draft and not activated. - 03
wppilot/brand-kit-previewLists every Elementor global and block-theme value the apply would create or overwrite, writing nothing. - 04
wppilot/brand-kit-applyWrites the reviewed plan once the change is confirmed, and returns each step as written or failed with a written count. - 05
wppilot/brand-kit-verify-appliedAfter the apply, checks a rendered page and reports any design colour that never reached the served HTML.
Brand kit in practice
How a brand kit apply decides between updating and creating a global
For every target, the apply looks up the builder's existing globals by name, ignoring case. A design colour called Accent that matches an existing global named accent is sent to that builder's edit ability and reported with action updated; a name with no match is sent to the create ability and reported as created. Font stacks are matched on their title the same way, and spacing and radius values from the design are upserted alongside the colours. Renaming a colour in the design therefore adds a new global next to the old one rather than replacing it, and pages bound to the old global keep their old value.
The block theme is the one target without a builder ability behind it. In wppilot/brand-kit-preview it appears as a single planned step with counts of palette entries, font families, font sizes and spacing sizes, and the apply writes those into the user layer of global styles itself.
Reading a partly failed apply
wppilot/brand-kit-apply does not stop at the first refusal. Each step comes back as written or failed with the builder's error, the top level returns a written count, a failed list naming each ability and its message, and unknown_targets for any requested target this site does not offer. A builder that answers with success: false instead of an error, as the Elementor abilities do, is counted as failed with wppilot_brand_kit_step_failed rather than as written. Retry only the failed targets, by passing them in targets, once the reason is fixed.
Recovery is recorded per target in the change ledger, and depends on the target ability's capture strategy and a retained before-image. A snapshot can cover a whole globals store, so restoring one colour may also revert later edits to other values. The apply call captures block-theme styles where supported. Inspect the entries and every target after recovery. On staging, run the apply, then wppilot/brand-kit-verify-applied on a page built with the globals, and compare the builder's global panel with the preview you approved.
Questions about Brand kit
Can I undo a brand kit apply?
Inspect the ledger entries for each target: recovery depends on that ability's capture strategy and whether a before-image was retained. A supported restore may also discard later edits to the same globals. The apply call captures block-theme global styles where supported. A failed step can have partial effects; read each target back before retrying or restoring, then check its global panel and served pages.
Why does verify-applied say my accent colour is missing when I applied it?
The apply wrote the value, but the page a visitor receives may not use it, for example because the theme's stylesheet sets its own accent later or the colour sits in a stylesheet this check does not read.
Brand kit reads
| Ability | What it does |
|---|---|
wppilot/brand-kit-export-tokensExport Design Tokens (DTCG) | Exports the active design as a Design Tokens Community Group document — a typed interchange format for compatible token tooling. Colours, font families and weights, spacing and radii become typed DTCG tokens; the parts DTCG has no vocabulary for (the design's Do and Don't rules, and the variance/density/motion dials) ride in $extensions under this plugin's namespace, so a compatible round trip can retain them when the other tool preserves those extensions. Pass slug to export a design other than the active one. |
wppilot/brand-kit-from-paletteDesign From a Palette | Turns a flat list of hex colours - the four swatches copied from a palette site, a client's brand colours, anything - into a DESIGN.md draft with the roles assigned and the contrast checked. This is the part that makes a pasted palette usable: a swatch list says nothing about which colour is the page, the text or the button, and pasted straight into a builder it produces a site that uses all four equally or a button nobody can read. Lightness decides the ground and the ink, chroma decides the accent, leftovers are kept as support colours, and any colour that cannot carry text is moved along its own hue until it can, with the move reported so the original stays available for print. Nothing is saved and nothing is applied. |
wppilot/brand-kit-generate-from-briefGenerate Design From Brief | Builds a DESIGN.md scaffold from a description of the business, with the arithmetic done properly: given a seed brand colour it derives a background, ink, accent and muted that are guaranteed to clear WCAG contrast by construction, and reports every ratio. The typeface pairing is chosen from a small curated set by the brief's own words, and names the shipped example direction that demonstrates it. Everything that cannot be derived from a brief — what the site must never look like, what the accent is spent on, the component treatments — is deliberately left blank in a "Still to decide" section, because a plausible guess there gets followed. Nothing is saved; review it, fill in the blanks, then save with wppilot/save-design. On a site that is not brand new, run wppilot/adopt-design-from-site first: the existing brand beats a generated one. |
wppilot/brand-kit-import-tokensImport Design Tokens (DTCG) | Reads a Design Tokens Community Group document — a compatible typed token document, rather than an arbitrary design-tool export — and turns it into a GoBuildWP design. Group-level $type is inherited as the spec requires, and {group.token} aliases are resolved to the value they point at, so a semantic palette built on primitives arrives as real colours rather than unresolved references. Composite typography tokens are unpacked into family, weight and size. Types this mapper does not claim to understand, such as shadow and gradient, are reported in skipped rather than flattened into something plausible. Returns the design markdown; nothing is saved until you pass it to wppilot/save-design. |
wppilot/brand-kit-list-targetsList Brand Kit Targets | Lists the places on this site a design direction can be written to: the block theme's global styles, and the global colour and typography stores of whichever builders are installed. A target is listed only when the ability that writes it is registered, which means its plugin is active and past its version floor. Call this before wppilot/brand-kit-apply to see what applying will touch. |
wppilot/brand-kit-previewPreview Brand Kit | Reports exactly what wppilot/brand-kit-apply would write into this site's design systems, without writing anything. Read-only, so it needs no confirmation, which is the point: a preview that required the same approval as the write would teach people to approve without reading. Same arguments as apply. |
wppilot/brand-kit-verify-appliedVerify Design Is Applied | Fetches a rendered page and checks it against the active design: which of the design's colours and faces actually appear in what the server sent, which are absent, and which colours in use are neither in the design nor a neutral. The finding worth running it for is the negative one — a design that is saved, activated, and shown as active everywhere, but whose accent appears nowhere in the served page. Reads served HTML and inline CSS only: it does not run JavaScript, fetch external stylesheets, or compute the cascade, and the result says so. Run it after applying a brand kit, and after any theme or builder change. |
Destructive Brand kit calls
| Ability | What it does |
|---|---|
wppilot/brand-kit-applyApply Brand Kit | Writes the active design's palette and type stack into the site's own design systems, so pages can be built by reference to a global rather than by pasting a hex. This is what makes a later change of direction re-skin the site instead of stranding hundreds of literals, and it upgrades the design gate's advice from "use #B4532A" to "use the global". Pass targets to choose which systems to write, or omit it for every available one. Call wppilot/brand-kit-preview first to see exactly what this would do; that one is read-only and needs no confirmation. Destructive: it changes site-wide design settings that affect every page, and existing globals with the same names are overwritten. |