ChaiBuilder Logo

AI for SEO and Theme

Not everything the AI does happens in the chat panel. Several helpers are attached directly to the interface - a button next to the field you are filling in. They are single-purpose, they run one request, and they hand the result straight back to the field.

SEO fields

Open the SEO panel for a page and each supported field has an AI button next to it.

Field What it generates
Title The <title> / meta title
Description The meta description
OG title Open Graph title for social shares
OG description Open Graph description
JSON-LD Structured data for the page

Each button generates that field only. There is no generate-everything button - which is usually what you want, since you'll accept a title and rewrite a description.

What it reads

The assistant works from the page's body copy - its headings and paragraphs - plus your website and page context. It does not read button labels, list items, image alt text, or the contents of shared partials.

So an image- or list-heavy page gives it very little to work with. If a landing page is mostly visuals, put the substance in the page context instead - purpose, target keywords, the H1 goal - and the output improves sharply.

Generate from the page open in the builder; the panel works against the page you are editing.

Keywords

The SEO panel has a Keyword field. Anything you put there is passed to the assistant as the term to optimise for. It's free text, so a short phrase works better than a long list.

Length

The assistant is instructed to keep titles under 60 characters and descriptions under 160 - the usual limits before search engines truncate. This is guidance to the model, not a hard cap: nothing truncates an over-long title for you. The search preview under the form shows how it will actually appear, so check it.

JSON-LD

The JSON-LD button generates structured data for the page and validates that the response is real JSON before inserting it. If the model returns something that won't parse, nothing is applied and you're told to try again or write it by hand.

The schema type is chosen by the model from the page content. For pages where the type matters - Product, Article, FAQPage, LocalBusiness - say so in the page context, and check the result in Google's Rich Results Test before publishing.

Generating replaces what's there

Every generation overwrites the field, and there is no per-field undo - the SEO panel autosaves a second or so later. If you've written a title you like, copy it before pressing the button. Like everything else in the builder, the change lands in the draft; the live page keeps its current metadata until you publish.

SEO fields are per-language. Switch language in the builder and generate again to fill the translated set.

Theme generation

The theme panel has a wand next to the presets. Describe the look you want - "a warm, editorial feel for a specialty coffee roaster, serif headings" - and the assistant produces a complete theme.

It generates:

  • All 19 theme colors, in both light and dark - background, foreground, primary, secondary, muted, accent, destructive, border, input, ring, card, popover, and their foregrounds.
  • A font, chosen only from the fonts registered in your project. It cannot pull in a font you haven't registered; if it names one that isn't there, the system sans stack is used instead. See Custom fonts.
  • A border radius.

If you have set a Look and Tone in the AI context modal, those are used as branding input alongside your prompt.

It applies immediately, with an undo

There is no preview step. The generated theme is applied to the builder at once and saved as a draft theme - so you evaluate it on your actual pages rather than on swatches. A toast offers Undo for 15 seconds, which restores the theme you had before.

Nothing reaches the live site until you publish the theme. See Theming.

All or nothing

A theme is only accepted if it is complete. An incomplete result is rejected with "AI generated an incomplete theme. Some required colors are missing" and nothing changes. Retrying with a more specific description usually fixes it - name the mood, the industry, and a lead color.

Two things to expect:

  • Headings and body get the same font. Set a separate heading font in the theme panel afterwards if you want the split.
  • It stays inside the theme's fixed set of tokens - the same colors, font, and radius you can set by hand. A generated theme can restyle your site, but it cannot introduce new tokens or break your blocks.

Enhance with AI

In the Manage Context modal, both the website context and page context boxes have a wand. It restructures whatever you've typed into the shape the assistant reads best - business, audience, value proposition, and key products for the site; purpose, target keywords, and H1 goal for the page - capped at about 150 words.

It's a rewrite of your own words, not research. It won't discover facts about your business, and if the box is empty there is nothing to enhance.

Image alt text

Two places generate a description of an image:

  • On an Image block - the alt field in block settings has an AI button. It writes alt text for the fallback language and every other language configured on the site in one pass. The button is disabled while the block still holds a placeholder image.
  • In the asset manager - open a stored asset and generate descriptions for all languages. Here the result is filled into the form but not saved until you press Save.

Descriptions are kept concise - roughly 250 characters at most - which is what screen readers and search engines actually want. Read the result before accepting it: the model describes what it sees, which is not always what the image means in context. See Media and images and Multilingual.

Access and credits

Helper Permission
SEO fields, enhance context, alt text ai:use
Theme generation ai:generate_theme
Image generation ai:generate_image

The SEO panel additionally requires pages:edit_seo, and the theme panel requires theme:edit and the ai feature flag.

Permissions are enforced on the server. A button may still be visible to someone who lacks the permission for it - they'll get an error rather than a result. See Roles and permissions.

If credit metering is enabled, each of these consumes credits from the same balance as the chat panel, priced by tokens used and the model's multiplier. Running out produces a clear message with a link to buy more where add-ons are configured.

Every helper defaults to the same model as the rest of the AI and can be pointed at a different one per action - useful for sending theme generation to a cheap model and page editing to a strong one. See AI - Customization.

© ChaiBuilder. All rights reserved.