litespeed/update-browser-cache-settings turns browser caching on or off and sets its TTL.
This controls the expiry headers sent to visitors’ browsers for static assets.
At a glance
| Ability | litespeed/update-browser-cache-settings |
| Toolset | LiteSpeed Cache — toolset/litespeed |
| Group | LiteSpeed Cache › Object & Browser Cache |
| Requires | LiteSpeed Cache, active on the site |
| Capability | manage_options |
| Safety | Writes data |
| Repeatable | Idempotent — running it twice leaves the same result |
| Ships in | AcrossAI Abilities Manager 0.0.34 and later |
The cache you cannot purge
Every other cache in this suite is on the server, which means it can be cleared. This one is in the visitor’s browser, and nothing you do can reach it.
That asymmetry is the whole design consideration. A long TTL is excellent for returning visitors and means that a file served with a year-long expiry will be held for a year — by browsers you cannot contact — unless its URL changes.
Which is why the query-string version marker matters, and why removing it in the HTML settings is a decision that interacts with this one. With the marker, a changed file gets a new URL and browsers fetch it; without it, a long browser TTL means stale assets for exactly as long as the TTL.
A year is the standard value for genuinely static assets and a mistake for anything a deployment changes without renaming.
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
| Name | Type | Required | What it is |
|---|---|---|---|
settings | object | Yes | A map of setting key to new value. Keys outside this area are refused, and the refusal lists what the area accepts. |
What comes back
| Name | Type | What it is |
|---|---|---|
updated | array | The keys that actually changed. An empty array means every value you sent was already set. |
settings | array | Every setting in the area after the write, in the read shape. |
success | boolean | Whether the call completed. |
message | string | A one-line summary of what happened, suitable for showing a human. |
error_code | string | Present 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 browser caching with a one-year expiry.
It resolves to one call:
{
"ability": "litespeed/update-browser-cache-settings",
"parameters": {
"settings": { "cache-browser": true, "cache-browser_ttl": 31557600 }
}
}Worth knowing
- You cannot purge a browser cache. The TTL is a commitment.
- Pairs with the query-string setting in the HTML area — together they decide whether updates reach visitors.
- Long TTLs suit assets whose URLs change when their contents do.
- Seconds, not days.
Related abilities
- Update HTML Settings — where the version marker is controlled
- Get Cache Status — check whether it is on
Get the plugins:
AcrossAI Abilities Manager · AcrossAI MCP Manager
Browse the rest: Every ability, by category