litespeed/get-crawler-status reports what the crawler is doing right now: whether a run is in progress, which variant, its position in the sitemap, how many URLs it has crawled, when it last started, and why it last stopped.
The stop reason is the field that answers most crawler questions.
At a glance
| Ability | litespeed/get-crawler-status |
| Toolset | LiteSpeed Cache — toolset/litespeed |
| Group | LiteSpeed Cache › The Crawler |
| Requires | LiteSpeed Cache, active on the site |
| Capability | manage_options |
| Safety | Read-only — changes nothing |
| Repeatable | Idempotent — running it twice leaves the same result |
| Ships in | AcrossAI Abilities Manager 0.0.34 and later |
How it works
A crawl that ends is not necessarily a crawl that finished. It can hit the server load limit and pause, run out of its time budget for this cycle, be blocked by the site returning errors, or genuinely reach the end of the sitemap.
Those look identical from outside — the crawler is not running — and mean completely different things. A crawl that stops on load every cycle is never going to finish, and no amount of waiting will change that; the limit needs raising or the sitemap shortening.
The position matters for the same reason. A crawler that resumes from where it stopped makes progress across cycles; one that keeps restarting at the beginning warms the first hundred pages forever and never reaches the rest.
This is the call to poll after litespeed/run-crawler, which dispatches a run and returns immediately.
Input
This ability takes no input.
What comes back
| Name | Type | What it is |
|---|---|---|
running | boolean | Whether a crawl is in progress. |
crawler | object | Which variant is running. |
position | integer | Where it is in the sitemap. |
crawled | integer | How many URLs it has crawled. |
last_start | string | When the last run started. |
last_stop_reason | string | Why it last stopped. |
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:
Is the crawler running, and how far has it got?
It resolves to one call:
{
"ability": "litespeed/get-crawler-status",
"parameters": {}
}Worth knowing
- The stop reason distinguishes finished from gave-up.
- Repeated stops on load mean the crawl will never complete as configured.
- Poll this after dispatching a run — the run ability does not wait.
Related abilities
- Run The Crawler Now — start a run
- Get The Crawler Sitemap — what it is working through
- Update Crawler Settings — raise the load limit
Get the plugins:
AcrossAI Abilities Manager · AcrossAI MCP Manager
Browse the rest: Every ability, by category