30 days free. No credit card. Full access from the moment you connect your site.

Start free trial

Update Font Settings

litespeed/update-font-settings changes Google Fonts handling: load them asynchronously, remove them entirely, or set the CSS font-display behaviour.

The font-display setting is the one that decides whether visitors can read the page while a font is still arriving.

At a glance

Abilitylitespeed/update-font-settings
ToolsetLiteSpeed Cache — toolset/litespeed
GroupLiteSpeed Cache › CSS, JS & HTML
RequiresLiteSpeed Cache, active on the site
Capabilitymanage_options
SafetyWrites data
RepeatableIdempotent — running it twice leaves the same result
Ships inAcrossAI Abilities Manager 0.0.34 and later

Invisible text, or the wrong font briefly

A web font blocks the text it applies to until it loads. The browser’s default behaviour gives it a short window of invisible text and then falls back — which on a slow connection means a visibly empty page for a moment.

font-display: swap renders immediately in a fallback font and swaps when the real one arrives. The text is readable the whole time; the cost is a visible reflow when the swap happens, larger the more the two fonts differ in metrics.

That trade is almost always worth taking. Readable-then-shifts beats blank-then-correct on every measure of page experience.

Loading fonts asynchronously removes them from the render-blocking path entirely, which helps more.

Removing Google Fonts is the strongest option and changes the design. It is the right call on a site whose theme requests a font it barely uses, and the wrong one on a site whose identity is in its typography.

The write is a patch, not a replacement. Send one key and one key changes; everything else in the area is left alone. The response names the keys that actually moved, so a payload that matched the existing values comes back with an empty list rather than a misleading success.

Input

NameTypeRequiredWhat it is
settingsobjectYesA map of setting key to new value. Keys outside this area are refused, and the refusal lists what the area accepts.

What comes back

NameTypeWhat it is
updatedarrayThe keys that actually changed. An empty array means every value you sent was already set.
settingsarrayEvery setting in the area after the write, in the read shape.
successbooleanWhether the call completed.
messagestringA one-line summary of what happened, suitable for showing a human.
error_codestringPresent only on failure — a stable machine-readable reason, such as a missing field, a wrong field type or an unmet confirmation.

Example

Ask your assistant:

Make text visible while our web fonts load.

It resolves to one call:

{
  "ability": "litespeed/update-font-settings",
  "parameters": {
    "settings": { "optm-gg_font_display": "swap" }
  }
}

Worth knowing

  • swap trades a reflow for readable text. Usually the right trade.
  • Removing Google Fonts changes the design. Look at the site afterwards.
  • A theme that loads fonts outside the standard enqueue may be unaffected by these settings.
  • Purge after changing.

Related abilities


Get the plugins:
AcrossAI Abilities Manager · AcrossAI MCP Manager

Browse the rest: Every ability, by category


Keep reading