# Set up the Redis object cache with Claude Cowork

> Setting up a Redis object cache with Claude Cowork means asking the desktop agent to check a site's object cache, test Redis and enable it through the xSpeed Hub connector on your Claude account.

Page: https://xspeedcache.com/agent/claude-cowork/object-cache/
Last updated: October 2026

You are working in Claude Cowork, the desktop agent, and the xSpeed Hub connector is already on your Claude account, because Cowork uses the connectors you added in Claude. You describe the outcome, for example: get Redis running for the shop site, and check that it works before you switch it on. Cowork plans the work and starts with get_object_cache_status, which says whether the object-cache.php drop-in is installed, which backend is configured and what its stats look like. It does not say whether Redis answers.

Cowork then calls test_object_cache. The plugin on the site connects to the Redis server, writes a probe value and reads it back, and a failure returns the server's own error, such as a wrong password or a refused connection. Only a passing test should lead to toggle_object_cache, which installs the drop-in and routes WordPress's object cache through Redis. If the test fails, stop there. The site tests again when you enable and stops with Could not enable if Redis is unreachable, but running the test yourself first gives you the server's exact reason.

Cowork carries a task through as a series of steps rather than one reply, so the order of calls matters more here than in a short chat. Say in your request that the test must come first and that the toggle needs your go-ahead. Cowork has three modes, Manual, Auto and Skip, and each Hub tool has its own permission under Customize > Connectors. For this job use Manual, set get_object_cache_status and test_object_cache to Always allow, and set toggle_object_cache to Needs approval, so Cowork pauses and asks you to Allow or Deny the toggle. The test itself runs from the site's server, so it checks the Redis that WordPress will really use.

## Set up Claude Cowork once

### 1. Put your sites in xSpeed Hub

Sign in at app.xspeedcache.com with Google or email; the Hub is free and has no site cap. Then connect each WordPress site from its own dashboard: click Connect Hub in the xSpeed Cache top bar, then Connect via xSpeed Hub. Each site needs the free xSpeed Cache plugin.

### 2. Add xSpeed Hub to your Claude account

Cowork does not keep its own connector list. In Claude, go to Customize > Connectors, click Add custom connector, name it xspeedhub, paste the URL, choose Sign in now and, if asked, Register automatically. The full steps, including the Team and Enterprise route, are on the Claude page: /agent/claude/.

```
https://app.xspeedcache.com/xspeed/mcp
```

### 3. Connect, then start a new Cowork session

Click Connect on the connector and approve access on the xSpeed Hub page. Cowork loads the connectors enabled for your account when a session starts, so open a new Cowork session after you connect. You can also switch the connector on from the + menu in the chat box.

```
Customize  >  Connectors  >  xspeedhub  >  Connect
```

### 4. Set tool permissions before the first task

Open the connector under Customize > Connectors and set each tool to Always allow, Needs approval or Blocked. A sensible start is Always allow for the read tools and Needs approval for purge_cache, toggle_cache, update_settings and the other writes. Then pick a Cowork mode; Manual is the one that shows you each request.

```
Tool permissions: get_cache_status = Always allow
Tool permissions: purge_cache = Needs approval
```

Full setup: https://xspeedcache.com/agent/claude-cowork/

### Before you send a prompt that changes something

Reads change nothing on your sites, though contact_support emails xSpeed support. Writes run once your connection allows them, so your client's approval prompt and a read-only connection (the token's Read-only everywhere switch, or a Viewer sign-in) are the gates that matter. Cowork has three modes. Manually approve (Manual) pauses and asks you to Allow or Deny each action. Automatically approve (Auto) keeps working and blocks what Claude judges to be unsafe. Skip all approvals (Skip) asks nothing and checks nothing. Each connector tool also has a permission, set under Customize > Connectors. In Manual mode, Always allow runs, Needs approval asks and Blocked is denied; in Skip mode only Blocked stops a call. xSpeed Hub has no confirmation step of its own, so under Skip, or for any tool set to Always allow, a write runs as soon as your connection allows writes. Auto relies on Claude's own judgement, which is not a lock.

## Prompts

- Use xSpeed Hub to set up Redis object cache on shop: check the status, test the connection, and wait for my yes before enabling.
- With xSpeed Hub, check the object cache status on each of my sites one by one and list the ones with no drop-in installed.
- Ask xSpeed Hub to test Redis on blog and tell me what the error means if it fails.

## Example session

```
You: Use xSpeed Hub to get Redis running for shop. Test it before you switch it on.
  → get_object_cache_status(site: shop) [read-only]: Drop-in not installed. Backend: Redis configured.
  → test_object_cache(site: shop) [read-only]: Connected. Probe value written and read back.
Agent: The test passed. Step three is enabling the object cache on shop. Shall I run it?
You: Yes, run it.
  → toggle_object_cache(site: shop, enabled: true) [changes site]: Drop-in installed. Redis active.
Agent: Redis is on for shop. All three steps are done: status, test, enable.
```

## How it works

1. **Read the current state**: get_object_cache_status reports whether the object-cache.php drop-in is installed, which backend is configured, Redis or Memcached, and its stats. It does not prove the server answers, so a clean status is not a green light.
2. **Test the connection first**: test_object_cache opens a live connection to the configured server and does a read and write probe with the settings saved on the site. A failure comes back with the server's own reason, such as a wrong password, a refused connection or a permission error. The Hub tells the agent to run this before toggle_object_cache.
3. **Fix the connection if the test fails**: get_settings reads the object-cache module, with secrets masked. update_settings changes it, for example the host or port. On a managed host that defines these values in wp-config.php, the fields are read-only and a write that tries to change one is refused with the name of the constant. For a host that wants the constants pasted, get_object_cache_status with detail set to snippet returns the wp-config.php block.
4. **Turn it on**: toggle_object_cache with enabled true makes the site test the connection again, write the connection constants into wp-config.php and install the object-cache.php drop-in. If the test fails, it stops with "Could not enable" and writes nothing. If wp-config.php is not writable, the drop-in goes in and the reply tells you to add the snippet by hand. The Hub tells the agent to briefly confirm intent first.
5. **Check it took**: The drop-in loads on the next request, so the agent reads get_object_cache_status again after a page load and runs test_object_cache once more. The status also warns when the cache connects but refuses writes, so a connected cache that stores nothing does not pass as healthy.
6. **Flush when stale data survives**: flush_object_cache empties the persistent object cache. Use it when old options, transients or query results outlive a page cache purge. It does not touch the page cache; purge_cache does that.

## Reference

| | |
| --- | --- |
| Read tools | get_object_cache_status and test_object_cache, both work on a read-only connection |
| Write tools | toggle_object_cache (enabled true or false) and flush_object_cache |
| Backends | Redis or Memcached |
| Status detail | status (default) or snippet, the wp-config.php constants block |
| What status proves | Drop-in installed, backend configured, stats. Not that the server is reachable |
| What the test proves | A live connect and a read and write probe on the saved settings, with the server's own error on failure |
| Enable does | Tests the connection, writes connection constants to wp-config.php, installs the object-cache.php drop-in |
| Disable does | Removes xSpeed's drop-in and its wp-config.php block; a drop-in owned by another plugin is left alone |
| Connection timeout | 1 second by default, set in the object-cache module |
| Settings module | object-cache, for get_settings and update_settings |
| Every site at once | None of these tools accept site: "all"; one site per call |
| Confirmation | None on the Hub; your client's prompt is the gate |

## Rules

- Test before you toggle. The Hub tells the agent to run test_object_cache first, because a cache server that does not answer slows every request while the page cache still looks healthy.
- Keep the Redis password out of the chat. get_settings masks it, but the wp-config.php snippet is built from the saved settings and can include a saved password. Set secrets in wp-config.php or in the xSpeed panel.
- toggle_object_cache and flush_object_cache are write tools. The Hub tells the agent to briefly confirm intent for the object-cache toggles, but that is guidance, not a lock. Your client's approval prompt and a read-only grant are the gates that matter. A read-only grant means the connection token with Read-only everywhere on, or a Viewer member's sign-in; an OAuth sign-in gets the scopes the client asks for, which are read and write by default.
- If another plugin owns the object-cache.php drop-in, turn its object cache off in that plugin. xSpeed leaves a drop-in it did not install in place when you disable.
- A flush clears cached data, so the next requests rebuild it from the database and the site is briefly slower. Flush one site, then check it, before you repeat it.

## Good to know with Claude Cowork

If xSpeed Hub does not show up in Cowork, add it in Claude first and open a new Cowork session, since Cowork syncs the connectors on your Claude account at session start. Set toggle_object_cache and flush_object_cache to Needs approval and work in Manual mode. Skip asks nothing, and Auto relies on Claude's own judgement, which is not a lock. The Hub runs a write as soon as the connection allows writes.

## More prompts for this job

They work in any client connected to xSpeed Hub.

- Using xSpeed Hub, is a persistent object cache running on shop, and which backend does it use?
- Use xSpeed Hub to test whether Redis is reachable from shop. Do not change anything.
- Shop is slow in wp-admin. Use xSpeed Hub to check the object cache before anything else.
- With xSpeed Hub, test Redis on shop, and if it passes, turn the object cache on.
- Ask xSpeed Hub for the wp-config.php object cache snippet for docs.
- Use xSpeed Hub to flush the object cache on blog. Old options survive a page cache purge.
- With xSpeed Hub, turn the object cache off on shop and confirm the drop-in is gone.

## Frequently asked questions

### Do I add xSpeed Hub in Cowork or in Claude?

In Claude. Cowork uses the connectors on your Claude account, so add xSpeed Hub there first and it is available to Cowork. The sign-in steps are on the Claude Cowork page of this section.

### Can Cowork switch Redis on while I am away?

Not in Manual mode with the toggle set to Needs approval, because Cowork waits for your Allow or Deny. A task you start from your phone with Dispatch forwards approval prompts to you and denies them after ten minutes without an answer. Skip mode asks nothing, and the Hub has no confirmation step of its own, so under Skip a write runs as soon as the connection allows writes. For anything unattended, keep the toggle on Needs approval and stay out of Skip mode. Cowork signs in with OAuth and gets the scopes it asks for, and the Read-only everywhere switch in the Hub applies only to the connection token, which Cowork does not send. To make Cowork read-only, sign in as a Viewer member of the workspace.

### Why test the connection before turning the object cache on?

Because a cache server that does not answer costs time on every request while the page cache still looks fine. The Hub tells the agent to run test_object_cache first, and the site also tests the connection when you enable and refuses to continue if it fails. The probe is still worth running on its own, since it returns the server's exact reason, such as a wrong password or a refused connection.

### What happens if Redis stops answering after I enabled it?

The site keeps working. The drop-in is built never to take the site down: it falls back to WordPress's own cache for the length of the request and marks itself as degraded. A request can still wait up to the connection timeout, which is 1 second by default, so the site gets slower. xSpeed reports that state as degraded, and test_object_cache names the fault.

### Can the agent install Redis for me?

No. These tools connect xSpeed to a Redis or Memcached server that already exists and switch the object cache on or off. Getting a server is a hosting task. xSpeed uses the phpredis extension when it is there and its own built-in client when it is not.

### What is the difference between flush_object_cache and purge_cache?

flush_object_cache empties the persistent object cache and nothing else. purge_cache with type object does the same job through the purge tool, and purge_cache with type all also clears the page cache and, when connected, the Cloudflare edge. Use the flush when stale options or transients survive a page cache purge.

### Is the wp-config.php snippet safe to share?

Treat it like a secret. The snippet is built from the settings saved on the site, so it can contain the Redis password if one is saved. Paste it into wp-config.php yourself and avoid sharing it in a chat or a ticket.

## Set up Redis object cache with other agents

[Claude Code](https://xspeedcache.com/agent/claude-code/object-cache/) · [Claude](https://xspeedcache.com/agent/claude/object-cache/) · [ChatGPT](https://xspeedcache.com/agent/chatgpt/object-cache/) · [Codex](https://xspeedcache.com/agent/codex/object-cache/) · [Cursor](https://xspeedcache.com/agent/cursor/object-cache/) · [GitHub Copilot in VS Code](https://xspeedcache.com/agent/github-copilot/object-cache/) · [Windsurf](https://xspeedcache.com/agent/windsurf/object-cache/) · [Gemini CLI](https://xspeedcache.com/agent/gemini-cli/object-cache/) · [Antigravity](https://xspeedcache.com/agent/antigravity/object-cache/) · [Zed](https://xspeedcache.com/agent/zed/object-cache/) · [Kiro](https://xspeedcache.com/agent/kiro/object-cache/) · [OpenCode](https://xspeedcache.com/agent/opencode/object-cache/) · [OpenClaw](https://xspeedcache.com/agent/openclaw/object-cache/) · [Hermes Agent](https://xspeedcache.com/agent/hermes-agent/object-cache/) · [Grok Build](https://xspeedcache.com/agent/grok-build/object-cache/) · [ChatGPT dots](https://xspeedcache.com/agent/chatgpt-dots/object-cache/) · [Grok](https://xspeedcache.com/agent/grok/object-cache/) · [Grok Bot](https://xspeedcache.com/agent/grok-bot/object-cache/) · [Muse](https://xspeedcache.com/agent/muse/object-cache/) · [Manus](https://xspeedcache.com/agent/manus/object-cache/) · [Kimi Code](https://xspeedcache.com/agent/kimi/object-cache/) · [Paperclip](https://xspeedcache.com/agent/paperclip/object-cache/) · [NanoClaw](https://xspeedcache.com/agent/nanoclaw/object-cache/)

## More with Claude Cowork

- [Purge the WordPress cache with Claude Cowork](https://xspeedcache.com/agent/claude-cowork/purge-cache/)
- [Find out why WordPress pages are not cached with Claude Cowork](https://xspeedcache.com/agent/claude-cowork/troubleshoot-cache/)
- [Scan a website for speed problems with Claude Cowork](https://xspeedcache.com/agent/claude-cowork/speed-scan/)
- [Run and track PageSpeed tests with Claude Cowork](https://xspeedcache.com/agent/claude-cowork/pagespeed-tests/)
- [Raise a WordPress site's PageSpeed score with Claude Cowork](https://xspeedcache.com/agent/claude-cowork/optimize-site/)
- [Tune WordPress cache settings with Claude Cowork](https://xspeedcache.com/agent/claude-cowork/cache-settings/)
- [Warm the WordPress cache with Claude Cowork](https://xspeedcache.com/agent/claude-cowork/preload-cache/)
- [Manage Cloudflare caching with Claude Cowork](https://xspeedcache.com/agent/claude-cowork/cloudflare/)
- [Manage every WordPress site at once with Claude Cowork](https://xspeedcache.com/agent/claude-cowork/fleet/)

## Documentation

- How to enable Redis or Memcached: https://xspeedcache.com/docs/object-cache/
- How to enable Page Cache: https://xspeedcache.com/docs/page-cache/
- Common problems and troubleshooting: https://xspeedcache.com/docs/common-problems-and-troubleshooting/
