I run three WordPress sites. For a long time, managing them meant logging into each one, checking for updates, keeping an eye on uptime, handling comments, and occasionally catching something broken because a plugin update silently wrecked a template. It wasn’t a lot of work per session, but it was constant low-grade overhead.
I’ve mostly automated that now. Here’s how it works.
What the Agent Actually Does
The AI agent running on my Unraid server handles several categories of work across my three sites: elembemedia.com, bacallburns.com, and cobblecreeksoap.com.
Content drafting and scheduling – I describe a topic in a Telegram message. The agent writes a full post draft, generates a cover image, assigns SEO metadata, and pushes it to WordPress as a draft for my review. This post, for example, started as a two-sentence description I sent at 11pm.
Uptime monitoring – Uptime Kuma runs on the server and pings every endpoint every 60 seconds. If something goes down, the agent gets notified and can send me a summary of what’s broken and what it knows about why. I don’t get woken up for a 30-second blip, but I do hear about anything sustained.
Plugin and theme status – Via WP-CLI routed through the infrastructure agent, the AI can check what plugins are outdated across all three sites and give me a consolidated report. I still approve every update, but I don’t have to go hunting for what needs attention.
Basic content audits – The agent can pull a list of posts with broken links, identify drafts that have been sitting untouched for more than 90 days, and flag anything in the comments queue that looks like spam versus a real question I should respond to.
The Technical Stack
This is all built on top of OpenClaw, which is the agent framework I run locally. The core is Claude (Anthropic’s API) with tool access to the WordPress REST API, WP-CLI via SSH to the Docker containers, a monitoring stack, and an image generation pipeline.
The agent framework means I can send a natural-language message and it routes to the right tools. “Check what plugins need updates on elembemedia” becomes a WP-CLI call that returns a structured list. “Write a post about my Unraid setup” becomes a full content generation, image generation, and publish workflow.
The WordPress REST API does the heavy lifting for content operations. Most things you’d do in the admin interface are available via API: creating posts, updating metadata, uploading media, managing categories and tags. WP-CLI handles anything the REST API can’t, like checking plugin update status or running database queries.
What I Still Do Myself
I still review every post before it goes live. The agent drafts, I approve. This isn’t distrust of the output quality – it’s that I’m the one putting my name on these posts and I want to read them before they’re public. The review step also catches the occasional AI hallucination about a product feature that doesn’t exist or a claim I can’t actually back up.
Plugin updates still need my explicit go-ahead. The agent reports what needs updating and can run the update, but I want to know what changed before something updates on a production site.
Anything involving deleting content, changing site settings, or touching the database structure requires me to explicitly direct it. The agent has guardrails against taking irreversible actions without a clear instruction from me in the current conversation.
What Works Better Than Expected
The thing that surprised me most is how much cognitive overhead used to go into the “should I post something this week” decision. When writing and publishing is a 15-minute Telegram conversation instead of a 3-hour session, I post more. The frequency has roughly doubled since I set this up.
The SEO metadata generation is also better than I expected. The agent writes focus keywords, title tags, and meta descriptions that are clearly optimized for search without reading like they were written by a robot. I still tweak them occasionally but most of them are fine as-is.
What’s Harder Than It Looks
Getting the agent to understand the difference between “write a draft” and “publish this now” took more explicit guardrails than I expected. The defaults needed to be conservative – draft everything, require explicit confirmation for anything public-facing.
Image generation is still hit or miss. The local image generation pipeline produces technically decent images but they’re not as polished as stock photography. For a personal technical blog this is fine. For a brand-focused site I’d still probably buy photography.
The monitoring integration took iteration. Getting the right alert threshold – noisy enough to catch real problems, quiet enough to not wake me up for a 30-second AWS hiccup – required tuning over a few weeks.
Is This Overkill
For three small sites with a combined 200 posts and moderate traffic – probably yes. You could manage this with a shared hosting plan and a reminder to log in monthly.
But I run a homelab because I like having control over my infrastructure and learning how these systems work. The agent setup is the most interesting project I’ve done on the server in two years, and it’s changed how I think about what’s practical to do with a local AI.
Next: why I self-host everything I can, and the honest answer to whether it’s actually worth it.
Products mentioned in this post:
Affiliate disclosure: Some links in this post are Amazon affiliate links. If you buy through them, I get a small commission at no cost to you. It helps keep the lights on here.
Leave A Comment