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

Start free trial

Update CSS Settings

litespeed/update-css-settings changes CSS handling: minify, combine, inline, async loading and the unique-CSS toggles.

Combining CSS is the single most common cause of a broken layout after enabling optimisation. Purge and check the front end afterwards.

At a glance

Abilitylitespeed/update-css-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

Why combining breaks layouts

CSS is order-dependent. A stylesheet loaded later overrides an earlier one, and themes and plugins rely on that ordering constantly — a plugin’s stylesheet enqueued after the theme’s expects to win.

Combining concatenates files into one, and while LiteSpeed preserves the enqueue order, it cannot preserve everything: conditionally loaded stylesheets, media-query attributes, and anything a theme injects outside the enqueue system all move or collapse.

The result is a layout that is subtly wrong — spacing off, a colour reverted, a component unstyled — rather than a page that fails. Nobody gets an error.

Minification alone is much safer and usually delivers most of the benefit. Enabling minify first and combine separately is the sequence that tells you which one broke something.

Async CSS loading is the aggressive end: it removes render-blocking at the cost of a visible flash of unstyled content unless critical CSS is in place.

Optimisation is the area of LiteSpeed most likely to break a site, and it breaks it in a way that is easy to miss: the page still loads, the HTML is still correct, and one script silently stopped running. Purge and look at the front end after every change here — including the pages you did not change, since optimisation is site-wide.

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:

Turn on CSS minification.

It resolves to one call:

{
  "ability": "litespeed/update-css-settings",
  "parameters": {
    "settings": { "optm-css_min": true }
  }
}

Worth knowing

  • Enable minify and combine separately, so you know which broke something.
  • Async CSS without critical CSS produces a flash of unstyled content.
  • Purge generated assets after changing these.
  • A patch — unsent keys are untouched.

Related abilities


Get the plugins:
AcrossAI Abilities Manager · AcrossAI MCP Manager

Browse the rest: Every ability, by category


Keep reading