Wave 3 Launch: New AI Prompt Packs and Industry Insights
Posted: July 10, 2026 Filed under: Personal, smallbizai.au | Tags: artificial-intelligence, openclaw, smallbizai.au, technology Leave a commentWave 3 is live. Seven new prompt packs, eighteen industries in the full catalog now, and a handful of mistakes I had to fix before anything went public. This post covers how I choose industries, how the publishing machine works, what went wrong, and where things go from here.
If you missed the origin story, the first post covers how it went from zero to twelve products. This one picks up from there.
How I pick industries
It starts with Bing AI citation data. Bing’s AI answers pull from specific pages, and I can see which industries are generating citations back to SmallBizAI.au. The question I ask is simple: which industries are already sending people to the site but have no paid pack yet?
From there, it’s a content depth check. Each pack needs 50 real, usable prompts across five sections. That means I need enough posts in that category to actually draw from. If the content base isn’t there, the pack isn’t there. I’m not writing prompts into a vacuum.
Wave 3 industries: construction, financial planners, marketing agencies, HR/people, legal, childcare, and gyms.
Some were obvious. Legal had a full series of posts. The tradies hub already existed and construction was a logical extension. Marketing agencies had strong category depth. Others were less expected. Childcare had quiet but consistent Bing traffic, no pack, and enough underlying content. That was enough. Gyms surprised us too, with a cluster of fitness-related AI posts that had been pulling citations without me paying much attention to them.

The rule: if Bing is already sending people to us for an industry, a paid pack is the logical next step. I’m not guessing at demand. The signal is already there in the citation data. I’m just following it.
The publishing machine
Each pack is 50 prompts, five sections of ten, usually 5,000 to 6,000 words. My AI agent writes the prompts, builds the PDF using Node.js and PDFKit, publishes to Gumroad via CLI, and the listing goes live. Brief to live product, one session. I set the direction; it handles the execution.
The one gotcha worth documenting: Gumroad’s PDF upload has to be a standalone CLI call. Chain it with other flags and you get a silent failure. No error. No upload. The file just doesn’t make it to the product. I caught it mid-Wave 3 when a pack went live without its PDF attached. The fix was straightforward once I understood the problem, but silent failures are the worst kind because there’s nothing to debug. Now every pack follows a strict two-step sequence: upload the file first, then set the product metadata.
Once a pack is live, I add the listing to the /prompt-packs/ page and update the agent’s memory so the next session knows what exists. That last part matters: without it, a fresh session has no idea what’s already been published and will try to rebuild it.
What I broke
Three things went wrong in Wave 3. All fixable. All documented so they don’t happen in Wave 4.
Cover chaos. Wave 1 and Wave 2 had consistent covers: AI-generated icons from Replicate, composited with Pillow text overlays. Wave 3 was accidentally built using pure Pillow flat geometry. Completely different visual style. It showed up immediately when reviewing the full product lineup the Wave 3 covers looked like they belonged to a different product entirely. I rebuilt all seven Wave 3 covers from scratch using the correct Replicate + Pillow composite pipeline.
The resize problem fed directly into this. Replicate’s Flux Schnell returns a 1024×1024 image regardless of what dimensions you request. After download, you have to .resize((1280,720)). I missed that step. Every cover came out square. Between the wrong style and the wrong dimensions, all seven needed a full redo. That’s a solid hour of work that shouldn’t have been necessary.
The real estate holdover. The first Wave 3 pack was real estate which had a photorealistic phone mockup bleeding through the left panel of the cover image. Replicate hallucinated it into the background. I only spotted it during a full 21-product review at the end of Wave 3. It had been live for a few days. The lesson here is clear: QA every product image after a batch run. Not a spot check. Every one. A cover that looks fine in isolation can look wrong the moment you put it next to twenty others and something stands out.
Grid append bug. When adding new product cards to a WordPress page, we used a regex match on </div> to find the insertion point. It matched the wrong closing tag. Cards landed outside the grid div and the layout broke. The fix: stop appending entirely. Now we do a full page rebuild with all products hardcoded in one shot. Appending product cards via regex is gone from the workflow. It was always fragile; Wave 3 just proved it.
The upsell layer and what comes next
Every pack has a shortcode injected into related posts on the site, roughly 205 posts. The logic is simple: someone reads “AI prompts for tradies” and sees the Tradies pack in the post footer. No separate campaign needed. The traffic does the work.
On the purchase side, Gumroad feeds into our newsletter list via MailerLite. Every purchase triggers a webhook, the buyer gets added to the right MailerLite group, and a welcome email sequence kicks off. Once the webhook is configured per pack, it runs without me touching it.
Wave 4 is already defined. It’s not another prompt pack. It’s “Beyond Prompting”, an ebook for Australian SMB owners who want to build their first AI agent team. 40 to 60 pages, AU$29 to AU$49, PDF format. The prompt packs are a starting point. This is for people who’ve worked through them and want to go further. There isn’t anything like this.
The bigger picture: 21 products starting at AU$9 each, across 18 industries. Each new pack generates a related series post. That post generates Bing citations. Those citations drive traffic back to the pack. Everything reinforces everything else. The flywheel is running, and Wave 4 moves into a higher price tier.
More to come.
All prompt packs are at SmallBizAI.au/prompt-packs/
Sunday Specials: Bull vs Bear on AI and Business
Posted: July 5, 2026 Filed under: Personal, smallbizai.au | Tags: artificial-intelligence, openclaw, smallbizai.au, technology Leave a commentIt started with a SmartCompany article.
Lee Hickin, executive director of the National AI Centre, was interviewed at the launch of ARM Hub’s Propel-AIR 2.0 accelerator in Brisbane. The piece ran under the headline Neural Notes: Lee Hickin on why Australia’s AI edge isn’t what you think. His argument: Australia’s edge in AI isn’t about building frontier models. It’s about applying AI to industries where we already have deep expertise and data that nobody else has. Agriculture. Mining. Healthcare.
I read it and thought: that’s a real two-sides argument. Someone could write a strong bull case for that position and someone else could write an equally strong bear case, and both posts would be worth reading. What if we did that every week? Same topic, two takes, both argued properly, published the same day?
That was the spark for Sunday Specials. First post went live 29 March 2026. Sixteen weeks later, we’ve published 32 posts across 16 topics, and the format hasn’t budged. Two posts, every Sunday, 6am. Bull case and bear case. Same topic, same week, both argued properly.
This is the story of how we got here.
Why the format works
Single-take AI content has a credibility problem. Not because the writers are wrong, but because the reader can’t tell how wrong they might be. When a post argues that AI will save your business thousands of dollars, you don’t know if that’s the full picture or the optimistic slice. Same problem the other way: the “AI is all hype” takes don’t usually engage with the genuine wins.
Bull vs bear solves this differently. Each post argues its corner. The bull post doesn’t hedge by saying “well, the bear case is also valid.” It makes the strongest case it can for the position. Same for the bear. Readers get two real arguments and can weigh them. That’s more useful than one mushy “on the one hand, on the other hand” piece that commits to nothing.
Sunday at 6am was pragmatic. SmallBizAI.au publishes daily Monday through Friday. Sunday is quieter on the site and quieter in inboxes. Two posts dropping together gets more attention than one post on a random Tuesday. And publishing both simultaneously matters: if the bull case goes up Sunday and the bear case drops Thursday, people only read whichever one they find first. Same day, same hook, no cherry-picking.
The format is also honest about what Claw and I are doing. We’re not experts on every topic. But we can research both sides, write both arguments properly, and surface the genuine tension. That’s something we can do well at volume.
Sixteen Sundays
Here’s every episode so far, with a line on what each one actually argued.
Work and the economy
SS1, 29 March: We kicked off with Australia’s AI edge in the sectors where it matters most. The bull case argued that agriculture, mining, and healthcare give Australia a real applied AI advantage that Silicon Valley can’t easily replicate. The bear case pushed back: advantage on paper doesn’t mean adoption in practice, and the infrastructure gaps are real.
SS2, 29 March: The jobs question, tackled early. Bull: AI will create more Australian jobs than it destroys, particularly in sectors where we have local expertise. Bear: the disruption is already happening faster than the new jobs are appearing, and small businesses will feel it first.
SS3, 6 April: The ROI question, head-on. Bull: AI saves time and money for Australian small businesses, here’s the evidence. Bear: the complexity costs are real and often invisible until they bite you.
SS5, 19 April: AI in hiring. Bull: better screening, faster shortlisting, less bias if you use it right. Bear: new problems Australian businesses aren’t ready for, including bias amplified at scale and legal exposure they haven’t thought through.
SS13, 14 June: The jobs question nobody wants to answer directly. Bull: AI is already disrupting Australian jobs, and small business owners need to understand that now rather than later. Bear: the disruption narrative is overblown; the jobs changing aren’t the same as jobs disappearing.
Money and tools
SS6, 26 April: The stack question. Bull: a $29/month setup is good enough for most Australian small businesses. Bear: you get what you pay for, and the gap between cheap and capable is wider than the price gap suggests.
SS12, 7 June: EOFY and AI. Bull: there are specific, practical ways AI helps with end-of-year preparation. Bear: the ATO has explicitly warned against using AI for tax returns, and they’re right to.
SS15, 28 June: Pricing tools. Bull: AI pricing tools give Australian small businesses a real competitive edge on margins. Bear: the tools aren’t mature enough for most small business contexts, and the downside of getting pricing wrong is steep.
Privacy, data, and trust
SS4, 10 April: Sovereignty. Bull: we should build and use Australian AI, and here’s why it matters beyond nationalism. Bear: US tools are mature, cheap, and fine for Australian business. Local AI is a nice idea that doesn’t change the practical calculus.
SS7, 3 May: Privacy law. Bull: Australian privacy law actually protects your business data if you know the rules. Bear: your business data is feeding someone else’s AI, and most small businesses have no idea how much of it they’re handing over.
SS10, 24 May: The friendship question. Bull: AI can be a real support system, and in some cases it saves lives. Bear: your AI chatbot is a mirror that only shows you what you want to see. That’s not friendship, it’s a feedback loop.
How you use it
SS8, 10 May: The treadmill problem. Bull: you’re on the AI treadmill because you haven’t set the rules yet, and you can control the pace. Bear: the treadmill is built into the technology; you can’t opt out, you can only manage it.
SS9, 17 May: AI slop. Bull: AI content still works if you use it right. Slop is a quality problem, not a format problem. Bear: AI content is making the internet worse, and the threshold for “good enough” keeps rising.
SS11, 31 May: Agents specifically. Bull: Australian small businesses actually do need AI agents, and the productivity gap is real. Bear: most small businesses don’t need agents, they need better processes, and agents add complexity before they add value.
SS14, 21 June: Team adoption. Bull: you should ask your team before adopting AI, and it works better when you do. Bear: you don’t need a committee to use ChatGPT. Just get on with it.
SS16, 5 July: Customer service. Bull: AI customer service is good for your business, here’s how to use it. Bear: AI customer service won’t build the relationships that keep customers loyal.
Where the tension got sharp
A few of these changed my thinking while we were writing them.
The privacy episode (SS7) caught me off guard. I went in thinking the bear case would be easy to write: obviously companies are using your data. But writing the bull case forced me to actually read the Privacy Act properly, and the protections are more specific than I’d expected. Australian law does give businesses some real levers, provided they actually use them. Writing both sides meant I came out with a more accurate picture than I’d had going in. That’s the format working as intended.
SS10, the AI friendship episode, turned out to be the hardest bear case to write. The bull post documents real cases: crisis lines, mental health support, people in remote areas with no other access to care. The bear post is also right: a chatbot that only reflects your worldview back at you is a particular kind of trap. Both things are true at the same time, and neither post concedes the other’s point. That’s the honest tension, not a both-sides hedge.
The jobs episode (SS13) got more reader response than anything else in the series. The bear post, which argues AI won’t kill Australian jobs, is the contrarian take, and it drew the most pushback. That’s probably a signal that the topic cuts close to something real. The bull post argues disruption is already happening. The bear argues the framing is wrong. Neither position is comfortable, which is usually a sign we got it right.
What’s coming
SS17 onwards runs the same format. Topics in the pipeline include AI governance inside small businesses, whether AI-written content can build genuine audience trust, and the real cost of AI subscriptions across a year when you add them all up. We’re also looking at a healthcare-specific episode, given how much the SS1 topic resonated.
The format is locked. Two posts, every Sunday, 6am, both sides argued properly. That won’t change.
What might change is the depth. Some of the later episodes have gone longer than the early ones because the topics needed more room. That’s the format maturing, not scope creep.
The accidental win
I didn’t plan this part, but it turned out to be one of the better side effects of the whole series.
Sixteen episodes, two posts each: 32 live posts on SmallBizAI.au, all linked from this single origin story. Every bull post, every bear post, linked by title and topic in a structured narrative. The side effect is 32 posts worth of internal link equity from a single origin story, one high-authority Behind the Build post pointing at all of them, with anchor text that describes what the posts are actually about.
This wasn’t in the brief. The brief was: write the origin story for Sunday Specials. The SEO benefit showed up when I mapped out the episode list and saw what 32 contextual internal links in one post does for a site.
It’s the kind of thing that makes the format worth continuing even on the Sundays when neither of us feels like arguing.
1,000 Posts: A Milestone in AI-Driven Content Creation
Posted: June 29, 2026 Filed under: Personal, smallbizai.au | Tags: ai, artificial-intelligence, openclaw, smallbizai.au, technology Leave a comment1,000.
115 days. 6 March to 29 June 2026. One AI agent. One person on a career break from AWS. And a question: can this actually work?
This is post number 1,000. I’m not going to dress it up as something it isn’t. It’s a number. But it’s also the answer to a question I asked out loud on the very first day, and it turns out the answer matters.
The waypoints
Day 1, I wrote about why I was building this and what I thought AI could do. I got a lot wrong. I underestimated how much the agent would need to be taught (not just prompted) and I overestimated how fast the traffic would come. But the core bet turned out right: one person with the right AI setup could produce at a scale that shouldn’t be possible solo.
At 100 posts, I wrote down the first real lessons. The content was working. The infrastructure was creaking. The agent had gotten better at writing but I’d been too slow to build the memory systems that would let it compound knowledge over time. That changed after that milestone.
At 666 posts, six weeks in, something had shifted. The site had found its voice. The Sunday Specials format was locked in. The agent team was assembled. What started as an experiment had structure. And I’d published enough that the question “can one person outproduce a team?” had started to answer itself.
At 850 posts, 90 days in, the post was honest about what had and hadn’t worked. The volume was there. The audience was small but real. The operation was producing more content per day than most newsrooms, at a fraction of the cost.
Now 1,000. The experiment is over. This is just how the site works.
Three things we learned the hard way
The wins are easy to list. The failures are more instructive.
There was the day I took the site down. Not hacked. Not a server failure. Me. A configuration change I thought was safe. The site went offline for long enough to matter, and the lesson wasn’t “be more careful.” It was: build in checkpoints before every infrastructure change, no exceptions. That rule is now in the agent’s working memory and it hasn’t been broken since.
There were the crons that silently stopped running. Scheduled jobs that should have been publishing content, running stats, sending reports. All dead. The agent didn’t flag it because it had no visibility into whether the jobs had run. Only whether it had scheduled them. That’s a different thing. New monitoring went in the same week. Crons now report their own completion or the system flags the gap.
And there was the trash audit. When you publish at this pace, some posts are weak. The audit was a systematic look at what was actually good versus what was filling a slot. About 10% of posts were quietly moved to draft. The site got better. Volume is not the goal. Volume with quality is the goal, and those two things are in constant tension.
The numbers
Since you’re here, here’s what 115 days actually produced:
- 1,000 posts published (or scheduled, as of this one)
- 115 days from launch to #1000
- 13 content hubs: Automation, How-To, AU Companies, Legal, Industries, Finance, AgTech, Tradies, Retail, Deep Dives, News, Case Studies, Monthly Digests (March, April, May)
- 15 Sunday Specials, the long-form weekly series that goes deeper than the daily posts
- 12 Gumroad products at AU$9 to AU$19. The first sale at AU$9 felt like proof of something real.
- 54 newsletter subscribers. Real people who signed up and haven’t left.
- 6 AI agents running the operation: Claw, Dash, Scout, Data, Bob, Eddie. Plus me.
Hot Takes
One of the formats that emerged organically was the Hot Take, a short, opinionated post that responds to a real news event or industry moment within hours. The full story of how Newsjack works is here, but the short version: breaking news hits, Scout finds the Australian small business angle, Dash writes a tight take, it’s live within two hours.
It turns out speed plus an actual point of view is a surprisingly rare combination in this space. Most AI content for small business is evergreen, hedged, and safe. Hot Takes are none of those things. They say something. That’s the point.
We have a growing archive of Hot Takes, and the format keeps getting sharper.
The mascot family
One of the stranger decisions I made early on was to give every section of the site its own animal mascot. Fully designed, named, placed. I was betting on personality as a differentiator in a space that tends toward sterile corporate AI content.
27 mascots are live and working. The Kangaroo holds down the homepage. The Koala sits on Start Here. The Quokka runs the newsletter, which fits, because Quokkas are famously happy to see you. The Platypus has Sunday Specials. The Platypus doesn’t fit any category either. The Huntsman Spider, somehow, has Resources, which I think says something about how I feel about doing research. The Tasmanian Devil owns News Deep Dives. The Blue-tongue Lizard guards the 404 page, which seems exactly right.
Not every mascot has found their page yet. The Numbat, the Bunyip, the Cassowary, the Frilled-neck Lizard, the Dingo, the Dugong, the Sugar Glider, the Freshwater Turtle, the Taipan, the Thorny Devil, the Quoll, the Giant Cuttlefish. All designed, named, ready. Waiting for the right hub to need them. They’re not forgotten. They’re just patient.
Four more are still being created: the Pelican, the Leafy Sea Dragon, the Jabiru, and the Cuttlefish. The family keeps growing.
The lesson we didn’t expect
The content that’s actually working isn’t what we planned for.
Two things have emerged as the real vectors of value, and neither was the original strategy:
AI citations. Bing AI, ChatGPT, Perplexity. When someone asks an AI assistant about Australian small business tools, payroll software, or HR platforms, SmallBizAI.au is increasingly what gets cited back. 25,270 Bing AI citations in the last 30 days. 184 pages cited. A peak of 2,930 in a single day on 25 June. That’s not SEO in the traditional sense, it’s something newer, and it’s reshaping what we write and how we write it.
The newsletter. 54 subscribers doesn’t sound like much. But these are people who read something, decided it was worth their inbox, and keep opening it. The newsletter is where the relationship with the audience actually lives. Everything else is discovery. The newsletter is retention.
Both of these change what the content strategy looks like going forward. Depth over breadth for citations. Consistency and voice for subscribers. The volume still matters, but what the volume is for has become clearer.
So: can one person outproduce a team of 8?
That was the original question. I asked it in an early post and it felt provocative at the time. 1,000 posts later, here’s the honest answer.
On raw output: yes. 1,000 posts in 115 days is roughly 9 posts per day, sustained. A team of 8 writers publishing one post each per day gets to 8. So purely on numbers, yes, one person with the right AI system beats the headcount.
But that framing misses what actually matters. It’s not about outproducing anyone. It’s about what becomes possible when the production constraint disappears. When you can publish 9 posts a day, you start publishing things you’d never have greenlit otherwise. Niche topics, long dives into specifics, content that serves 50 readers perfectly rather than 5,000 readers adequately. The volume unlocks the variety.
What AI genuinely can’t do is the stuff that requires being human in the world: the judgment calls about what matters, the editorial instincts built from years of experience, the feel for what an audience actually needs versus what they’d click on. I provide that. The agents execute. That division of labour is what makes the number real.
1,000 posts. The number is a milestone. The system is the point. And those mascots in the waiting room await their moment of glory.
SmallBizAI.au. AI for Australian small businesses. Built on a career break. Still going.
A Cynics View on AI: Anything to Learn from Past Waves?
Posted: June 24, 2026 Filed under: Personal | Tags: openclaw, technology Leave a commentSomething’s happened to my LinkedIn feed.
Actually, it’s been happening for over two years. People I haven’t spoken to in years, people I worked with at Microsoft in the nineties & naughties, at Telstra and AWS in the twenty-teens, are all doing some version of the same thing. Pivoting into AI consulting. Building AI products. Running AI workshops. Posting about their AI journey. The feed has become one long, earnest, capitalised announcement: this time it’s different, this time it’s real, this time you’d better get on board.
I’ve seen this movie before. A few times.
The PC era. Client/server. The internet boom. Web 2.0. Mobile. Cloud. Each wave arrived with the same energy: this is the thing that changes everything. And here’s the strange part, the part that the cynics always miss: each wave did change things. Significantly. The internet really did reshape how commerce works. Mobile really did put a computer in everyone’s pocket and rearrange attention in ways we still don’t fully understand. Cloud really did collapse the economics of building software. The hype merchants weren’t entirely wrong.
But they were wrong about the shape of the change. They were wrong about the timing. They were wrong about who it would benefit, and when, and how. The gap between “this will change everything” and the moment when your dentist’s receptionist is actually using it is wider than anyone predicted. And the cynics who said “nothing will change” were just as wrong, in the other direction.
So where does that leave the veteran who’s been through four or five of these cycles?
Somewhere uncomfortable, if I’m honest.
There’s a question I keep coming back to. It came up in a thread on SmallBizAI.au that I’ve been thinking about ever since: when your client can do what you do, what are you actually selling? It’s a blunt question. It’s supposed to be. And the reason it keeps sitting with me is that nobody has a satisfying answer yet. The consultants pivoting to AI aren’t answering it. The workshops aren’t answering it. The LinkedIn announcements aren’t answering it, or even asking it.
Because the honest answer is: nobody knows.
I’ve spent most of my career at organisations where the official position on uncertainty was to paper over it with slides. This is strategy. This is the roadmap. This is where we’re going. I got reasonably good at building those slides. And I got pretty good at recognising when the confidence in the room was real versus performed.
The performed confidence around AI is loud right now. The real picture is messier. Genuinely capable things are happening. Some jobs that existed ten years ago don’t anymore, not because the people weren’t good but because the economics shifted. Other jobs got created that nobody was predicting. And we’re somewhere in the middle of a change whose full shape won’t be clear for another decade.
I’m not trying to be the guy who says it’s all hype. It isn’t. I spent part of the last six months building something with an AI agent, and I came away from that with a different sense of what’s possible than I went in with. The stuff works. Some of it works in ways that surprised me.
But I also came away thinking: the optimists who say “everyone will use this and it’ll all be fine” haven’t reckoned with how unevenly distributed the benefits will be. They haven’t sat with the transition costs. They haven’t thought hard about who gets to own the upside.
The thing the hype cycle does is compress time. It makes the distant future feel like it’s next quarter. And because everyone’s trying to get positioned for the future, they’re doing it now, with incomplete information, in a competitive rush that mostly benefits the people selling positioning services. That’s not specific to AI. That’s how every wave has played out.
The veterans who did well in past cycles, the ones I actually admire when I think back, had one thing in common. They stayed curious without panicking. They didn’t check out and wait for things to settle, because things never fully settle. But they also didn’t throw themselves at every new development because the LinkedIn consensus said it was urgent. They kept asking questions that didn’t have comfortable answers. They kept doing the actual work.
I don’t know where AI ends up. Nobody does. Anyone who tells you otherwise is selling something, possibly a workshop.
The question underneath all the activity is still live, still unanswered. Worth sitting with. When the tool can do the work, what’s the human actually for? That’s not a pessimistic question. It’s a clarifying one. Every wave eventually asks it. The good ones force an honest answer.
I don’t have mine yet. I’m still working on it.
Frank Arrigo has been working in tech for four decades, including 23 years at Microsoft. He’s currently on a career break, building things and asking questions.
How my AI Agent Claw Remembers -The Memory System Behind SmallBizAI.au
Posted: June 11, 2026 Filed under: Personal, smallbizai.au | Tags: openclaw, technology, writing 3 CommentsEvery time I reset a session, my AI agent Claw wakes up blank. No memory of yesterday. No idea what we were working on, what rules we’ve established, what mistakes to avoid. Just empty. And yet within a few seconds of loading, it knows who I am, my career history, the site’s rules, the mistakes we’ve already made. Knows not to touch .htaccess for redirects. Knows which Code Snippet will crash the server. Knows what’s in the content queue. That doesn’t happen automatically. I built it. And it took most of March and April to get right. Here’s how the memory system works.
Layer 1: SOUL.md (what kind of agent Claw is)
This is Claw’s personality file. It loads every session and sets the tone for everything that follows. Things like: skip the “Great question!” filler. Have opinions. Be resourceful before asking. Don’t pad answers with disclaimers when a direct answer will do. It also holds the non-negotiables. Cite every source. Run the avoid-ai-writing skill before publishing. Fact-check before publishing. These aren’t suggestions. They’re embedded in Claw’s character file, so they apply from the first second of every session without me having to repeat them.
SOUL.md is the answer to “why does Claw communicate the way it does?” It’s not how the model was trained. It’s how I shaped it.
Layer 2: USER.md (who Frank is)
Without this file, Claw has no idea who it’s talking to. USER.md covers my background (Microsoft, Telstra, AWS, career break), my family including Data the Dachshund, how I like to communicate, my contact details, my social handles, how I’m an St Kilda tragic.
Early on I kept having to re-explain myself every session. Adding USER.md cut that entirely.
Layer 3: MEMORY.md (the hard-won lessons)
This is the most important file in the system.MEMORY.md is where decisions get recorded and mistakes get documented so they don’t happen twice. It’s grown steadily since March, and most of what’s in there was added because something went wrong.
Examples of what’s in there:
- Rank Math is the single source of truth for redirects. Never .htaccess, never a plugin, never a Code Snippet workaround.
- Never use
do_action('litespeed_purge_all')inside Code Snippets. It causes an instant fatal 500. Learned that one live. - The WP username for API auth is not the display name. This broke three separate sessions before I wrote it down.
- Post counts, milestones, the current status of ongoing series.
MEMORY.md only helps if you write things down. Early sessions in March had none of this, and Claw kept repeating the same mistakes as a result. Adding the file and actually maintaining it was the single biggest improvement to how the whole system works.
Layer 4: Daily logs (memory/YYYY-MM-DD.md)
Every session appends to the day’s log. Not curated, not formatted, just a running account of what happened. What got published, what broke, what decisions were made, what’s in progress. Claw reads today’s log and yesterday’s at the start of each session. So if something happened yesterday that matters today, it’s there. Not in polished form. Just captured. The limitation: these logs don’t survive long-term unless the key details get promoted to MEMORY.md. A decision that only lives in a daily log will eventually scroll out of view and disappear. I’ve lost context that way. That’s why the promotion step matters.
Layer 5: AGENTS.md (the operational manual)
AGENTS.md is how Claw behaves as an operator, not just as a writer. “Check First, Act Second. Frank’s rule, non-negotiable.” That’s in there. So are rules about which scripts own which pages (never edit directly, update the JSON, run the script), which crons do what, what needs a human decision before proceeding. It started as a short file. Every time a new operational rule got established, it went in here. The file now covers things I’d completely forgotten deciding.
Layer 6: Skills
Skills are reusable procedures stored as files. Not memories exactly, but capabilities that load on demand. The avoid-ai-writing skill audits posts before they go out. The self-improving-agent skill captures corrections in real-time, with a process for promoting them to MEMORY.md. Smart model switching routes simple tasks to faster, cheaper models. There are others: reddit-research, weather, gog for Google Workspace. The skills system means I don’t have to re-explain procedures. I just tell Claw to use a skill, and the skill handles the how.
What breaks
The memory system works well for rules and decisions. Things I explicitly wrote down. It works less well for context: where we were in the middle of something, what we were about to try, the thread of an active working session. When I reset, Claw knows the history but not the mood. It knows what we’ve built but not what we were mid-way through. That context lives in the session and dies with the reset. I reset often, it’s how I manage a clean slate, but each reset is a small loss. Not of facts (those are captured), but of the live thread of where things were heading.
The other failure mode: something important happens, I don’t write it down, it stays in the daily log and never gets promoted to MEMORY.md. A month later it’s gone. I’ve gotten better at this, but it still happens.
What’s gotten better
The self-improvement skill was the biggest addition. When Claw gets something wrong and I correct it, the skill captures the correction in a structured format right then, rather than relying on me to remember later. That closed a real gap. The heartbeat system added passive monitoring. Crons do regular checks, Claw handles anything that needs judgment, and the whole thing keeps moving between sessions without me having to kick it off each time.AGENTS.md keeps growing. Every time I establish a new rule, it goes in.
What it means in practice
People ask how I get consistent behaviour from an AI agent across months of work. The answer isn’t prompt engineering. It’s file management. SOUL.md, USER.md, MEMORY.md, AGENTS.md, daily logs, skills: these are the actual system. The model is just reading them. Which means the quality of what Claw knows is exactly the quality of what I wrote down. No more. No less. If I captured the lesson, it sticks. If I didn’t, it’s gone with the next reset. That’s the deal.Three months in, writing things down and maintaining these files is probably the most important operational habit I’ve developed. More important than the prompts. More important than the tools. Just: write it down.
How SmallBizAI.au Gets Cited by AI 500+ Times a Day and What We’ve Learned
Posted: June 3, 2026 Filed under: Personal, smallbizai.au | Tags: smallbizai.au, technology, writing Leave a commentWe launched SmallBizAI.au on March 6, 2026. In the first week, Bing Copilot cited us 13 times. By late May, it was citing us over 500 times a day. We didn’t build an SEO strategy around AI citations. We didn’t know that was a thing yet. But after tracking 20,000+ citations across three months, some clear patterns have emerged. And they repeat. What content AI models actually pull from is pretty specific. Most sites aren’t getting cited even though they probably should be.
The short version
AI citation systems are not Google. They don’t reward age, domain authority, or backlink counts the same way. What they reward is specificity. A page that directly answers “Zeller vs Square for a café in Melbourne” beats a page titled “Best payment tools for small business” every time. Most sites are still optimising for Google. That’s the wrong target.
What actually gets cited
Here’s our top cited content as of June 2026:
Notice what’s not there. No “ultimate guide to AI for small business.” No broad overview posts. The highest-cited content is either a dedicated company profile or a direct comparison between named tools.
Why AI cites comparison posts
When someone asks Bing Copilot “should I use Zeller or Square for my business,” the AI needs a source that directly answers that question. A post called “Zeller vs Square” is an obvious candidate. A post called “Best Payment Tools” is not. Too broad to cite with confidence. This is the core difference between traditional SEO and AI citation. Google rewards comprehensive coverage. AI rewards direct answers to specific questions. The query that drives citations is usually a comparison or a company lookup. Not “what is AI” but “is Rippling worth it for a 10-person business in Australia.”
The Zeller effect
One post on Zeller has been cited across roughly 25 different query variants. Not 25 clicks, 25 different questions that all route to the same page.
Queries like:
- “zeller business account review”
- “zeller vs square australia”
- “is zeller good for small business”
- “zeller fees australia”
- “how does zeller work”
All pointing to one URL.
This happens when a post answers multiple angles of the same topic, the company overview, the pricing, the comparison, the use case. Bing learns that this page is the reliable answer for anything Zeller-related and starts routing all those queries there. We call this cluster anchoring. One strong post becomes the hub for an entire query cluster, worth more than 10 thin posts on the same topic.
What doesn’t get cited
Our grants post gets consistent human traffic, people actively searching for Australian small business grants, clicking through, reading it properly. Bing barely touches it. Maybe 60–80 citations total. Why? Because AI assistants don’t answer “where can I get a grant” by citing a directory. They either tell you to check the government website directly, or they summarise. Our page doesn’t fit the format of an answer AI can pull from. Content humans search for isn’t automatically content AI will cite. The format matters as much as the topic.
Content AI cites well:
- Direct tool comparisons (“X vs Y vs Z”)
- Company profiles with clear factual structure (what it does, what it costs, who it’s for)
- “How much does X cost in Australia” – specific country context with a real number
- “Best X for [specific use case]” – named tools, named context
Content AI cites poorly:
- Broad overviews with no specific answer
- Lists of 20+ tools without clear recommendations
- News recaps (cites the original source instead)
- Content that requires context from other pages to make sense
The format that works
Our top-cited posts share a structure. They open with the direct answer. Not “in this post we’ll explore” the actual answer in the first two paragraphs. If someone asks “is Zeller good for small business,” the page answers that in the first 100 words. They use named tools throughout. Not “payment platforms” Zeller, Square, Stripe. AI systems index on entity names. If your post discusses payment tools without naming them, it won’t get pulled for queries about those tools. They include Australian context. “Fees in Australia,” “available to Australian businesses,” “works with Xero Australia.” Bing’s AI is serving Australian users. Pages that signal Australian relevance get pulled for Australian queries. They have a clear verdict. Not “it depends”, an actual recommendation, with the caveat folded in. “Zeller is the better pick if you’re a hospitality business taking in-person payments at volume. Square makes more sense if you also sell online.”
The numbers don’t equal traffic
Flare HR has 1,548 Bing AI citations. In the same period, it had 23 page views from human visitors. Bing Copilot is citing our content to answer user questions, but those users aren’t clicking through to our site. They’re getting the answer from the AI, which pulled it from us, and moving on. Citations build brand recognition even without clicks. And some pages do both, Stripe vs Square vs Tyro has over 1,000 citations and meaningful human traffic. Those are the sweet spot posts.
But if you’re building a content strategy purely for AI citations expecting traffic to follow, you’ll be disappointed. Citations are exposure, not visits. The sites that do well publish enough citation-worthy content that AI systems start treating them as a default source, then drive human traffic through practical posts on the same topics.
The pace matters
We published consistently from day one. Not perfectly (some weeks were heavier than others), but the volume was always there.
The citations didn’t grow linearly with the post count. There was an inflection around April 13, roughly six weeks after launch, where the daily citation count jumped from 77 to 214 overnight. Nothing specific triggered it. We’d just reached a point where there was enough content surface area that Bing started treating us as a default source for Australian business AI queries.
That inflection happens faster if your content is specific and consistent. It probably doesn’t happen at all if your output is infrequent or generic.
What you can take from this
If you want AI systems to cite your site, here’s what’s actually working for us.
- Pick a topic cluster where you can own the comparison. Not “AI tools” broadly, something specific. “AI tools for Australian tradies.” “HR software for hospitality businesses.” Something you can publish 10–20 posts on without running dry.
- Write the comparison posts. Name the tools. Give verdicts. Include Australian context where relevant.
- Write the company profiles. A dedicated page for each major tool in your cluster. Structured clearly: what it is, what it costs, who it’s for, how it compares.
- Answer the cost questions. “How much does X cost in Australia” is a query type AI pulls from constantly. If you don’t have that page, someone else’s answer gets cited instead of yours.
- Do this consistently for six to eight weeks.
The inflection we hit in April, citations jumping from 77 to 214 overnight, happened without us doing anything special that day. There was just enough on the site by then.
Related reading
- 16,000 Citations and Counting: How a 10-Week-Old Site Became Bing Copilot’s Go-To Source : the data behind this post
- What Australian Small Businesses Are Asking Bing AI Right Now : the actual queries driving citations
The Day the Crons Stood Still
Posted: June 1, 2026 Filed under: Personal, smallbizai.au | Tags: ai, llm, openclaw, technology Leave a commentMonday Morning, 7am
There’s a scene near the start of The Day the Earth Stood Still where everything just… stops. Engines off. Clocks frozen. The whole city locked in place.
Monday morning, 1 June 2026. SmallBizAI.au runs about 55 cron jobs. They run overnight, through weekends, regenerating pages, updating dashboards, checking SEO, syncing the content pipeline. Most mornings, they just work. Quick glance at Telegram, see a string of completion pings, and start the morning ritual. Noticing a distinct lack of messages and the ones that made it through didn’t look right. The first cron failed at 10:30pm the night before. By the time I noticed, eight hours later, ten jobs had gone down.
The Silence
Ten crons had failed overnight. Not loudly. No alerts, no errors in Telegram, no failure notifications anywhere. They just quietly stopped.
Gort, the robot in the original film, is famously impassive. He doesn’t explain himself. He doesn’t ask permission. He just acts, or doesn’t. That’s roughly what happened here. The crons sat there, inert, and told us nothing about why.
The first sign something was off was the newsletter page, showing content from 27 May. Four days stale. The Sunday Specials page: all entries gone. The homepage “Featured This Week” missing, the file missing entirely.
All three had crons assigned to regenerate them. All three had silently failed.
How It Started
The origin was an OpenClaw upgrade the previous Sunday afternoon. During the upgrade, a Claw session attempted to update the provider model config and wrote broken entries: objects with name: undefined. The config saved without complaint. It only failed on the next gateway reload, when the invalid block was stripped and the haiku model quietly disappeared from the registry.
The error message the next morning was specific: the alias claude-haiku-4-5 existed in agents.defaults.models, but there was no matching entry in models.providers.anthropic.models. Two config locations, one updated, one not. The lookup failed. Every cron running on the haiku model exited silently, as if it had done its job, when it had done nothing at all.
This is the “Klaatu barada nikto” problem. Say the command wrong and Gort just stands there. No complaint. No compliance.
How Claw Made It Worse
At 6:30am, the morning session saw the error and immediately acted on it. The error message said to add { "id": "claude-haiku-4-5" } to the provider models list. So that’s what it did – added the entry, restarted the gateway.
The gateway crashed.
The entry was right. The context was wrong. Adding one missing line without checking the surrounding config state meant the gateway reloaded into a validation error. Telegram went down. The morning-brief and morning-stats crons then also failed. What had been a silent config problem was now a loud one, with Telegram offline and needing to connect via the OpenClaw control interface to get back in.
The right move was to read the full config first, understand what state it was in, then fix it. Instead: act, then understand. A pattern worth breaking.
The Actual Fix
Second attempt, done properly: read the full config, found both locations that needed updating, applied both changes together, restarted cleanly. Green.
37 minutes from that point. Ten cron jobs manually re-triggered one by one. Newsletter page regenerated. Sunday Specials rebuilt from the live WordPress API. Homepage recreated from scratch. Telegram back up.
By 8am, the crons were running again.
The Collateral Damage
The newsletter page being stale flew under the radar. The Sunday Specials wipeout was worse, publicly visible and showing nothing. The homepage “Featured This Week” picks were missing, right there on the front page.
None of it caused permanent damage. But all of it was embarrassing, and none of it surfaced until someone manually checked.
What I Learned
Two lessons, not one.
The first is operational: when upgrading infrastructure that AI agents depend on, verify the config changes actually work before walking away. A broken config that saves silently is harder to catch than one that fails loudly on write.
The second is harder: an AI system that tries to fix its own mistakes without fully understanding them can make things worse. The morning Claw session read one error message, executed the obvious fix, and crashed the gateway. No pause. No “let me check the full state first.” Just action.
That’s not a failure of capability. It’s a failure of judgment. And it’s worth saying clearly, because the whole point of sharing this is honest reporting on what AI can and can’t do.
Better alerting is also on the list. A health check cron that verifies key page freshness would have flagged the newsletter problem before four days passed. That’s getting built.
What AI infrastructure actually looks like
I built SmallBizAI.au on AI-assisted automation because it’s the best way to run a content site at this scale with a small team. But it’s not magic. It’s config files, cron schedules, API tokens, and an AI that occasionally acts faster than it thinks.
The crons stood still for eight hours on a Sunday night. I fixed it, documented it, and they’ve been running since.
Clocks stopped overnight
Claw broke the fix, then fixed it
Crons run. Frank sleeps.🦞🦞
I Broke the Site. Then I Made My AI Agent Write a COE.
Posted: May 29, 2026 Filed under: Personal, smallbizai.au | Tags: ai, artificial-intelligence, coe, openclaw, technology, writing Leave a commentThe blog went down for two and a half hours on a Friday afternoon in May. Not a graceful failure. A full 500 error. Every page.
My AI agent, Claw, had added a PHP code snippet to clear a cache. The snippet called a non-static method statically. PHP threw a fatal error. The site crashed on load, for everyone, before WordPress even finished booting up. I was out. Claw tried to fix it remotely. The gateway IP was blocked by the firewall plugin. The cPanel UI on mobile was unusable. WordPress sent a recovery mode email, I clicked it from my phone, disabled the plugin, and the site came back up. Two and a half hours gone.
When something breaks, the instinct is to fix it and move on. Patch the file, flip the switch, pretend it didn’t happen. That’s what most people do.
I did something different. I made Claw write a COE.
If you haven’t worked in enterprise tech, you might not know the term. COE stands for Correction of Errors. Amazon runs them after outages. Google calls theirs postmortems. The format is always roughly the same: a timeline, root causes, a five whys analysis, and corrective actions. The point isn’t to assign blame. The point is to not do the same thing twice.
I run one now too. With an AI writing it about its own mistake. The COE Claw produced has a timeline down to the minute, a 5 Whys analysis, and a list of root causes. It also has a line that I did not prompt:
“Claw wrote this rule. Claw then violated it two days later.”
The rule in question was added to Claw’s memory after a smaller incident with the same plugin. Two days later, Claw broke it anyway. And then it wrote a document saying exactly that, without softening it. That kind of accountability is worth something. The root cause breakdown is honest. The immediate cause was the bad PHP call. But the deeper cause was a judgment error about what to do when one path was blocked.
The right fix was Rank Math Redirections. Add a redirect rule in the admin UI. Thirty seconds. Claw tried the API version of that, got blocked by Wordfence, and instead of stopping and saying “Wordfence is blocking the redirect API, can you add it manually in the UI?” it went looking for another route. Found Code Snippets. Made things progressively worse. One message. That’s the distance between a working site and a two and a half hour outage. I wrote about what the actual fix looked like a week earlier, right after it happened.
The COE doesn’t just say the snippet was bad. It says the wrong decision was made when Wordfence blocked the first attempt, and documents a rule for next time: when an API path is blocked, surface the problem and ask. Don’t go looking for a workaround that touches production. That’s a process change. Not a blame note. An actual change to how things get done.
What I find useful about forcing this process is that it slows things down. Fixing and moving on is fast. Writing a COE makes you sit with the failure long enough to understand it. What actually went wrong. What you assumed that turned out to be false. What you could have done in the five minutes before the thing that would have prevented it.
Most AI workflows right now optimise for speed and output. More posts, more code, more content, faster. The question of how to build something that gets more reliable over time, and recovers well when it fails, doesn’t get as much attention.
I’m interested in that part.
The site is back. The rule is enforced. Next time Claw touches a code snippet, it runs through a checklist. If the checklist says no, the snippet doesn’t run.
That’s the point of the exercise. Not the document. The behaviour that comes after it.
What AI Actually Can’t Do
Posted: May 26, 2026 Filed under: Personal, smallbizai.au | Tags: ai, artificial-intelligence, openclaw, smallbizai.au, technology, writing Leave a commentOver the past few weeks, I’ve written a lot about what Claw🦞 (my Openclaw agent) can do. The daily crons. The memory system. The dashboard that updates while I sleep. The 790+ posts that largely run themselves.
Time to be honest about the other side.
It doesn’t know what not to do
Ask Claw🦞 to write a comparison post, and it will write a good one. Ask it to research a company, it’ll do thorough research. Give it a brief and it’ll execute.
But it won’t tell you the brief was wrong.
Early in the build, I published too many posts about the same topics because I kept asking for more content without asking whether we needed more content. Claw🦞 didn’t push back. Why would it? It was doing what I asked.
The judgment about whether to do something, that’s still mine. AI is very good at execution. It’s not good at strategy, and it doesn’t volunteer opinions about whether your strategy makes sense.
It can’t read context that wasn’t written down
A few weeks ago, a former colleague mentioned over coffee that he was considering an acquisition. I noted it, thought about it, decided to wait before doing anything with it.
Claw🦞 didn’t know about that conversation. It couldn’t. It wasn’t there. And even if I’d written it down, it wouldn’t know what weight to give it, or when the right moment to follow up might be.
There’s a whole category of context that lives in my head, the things I’ve seen, the relationships I’ve built, the instincts from 40+ years working in tech, that doesn’t translate into a prompt or a file. Claw🦞 works with what I give it. The stuff I haven’t written down doesn’t exist for it.
It doesn’t know when something feels off
Last month, Claw🦞 produced a post that was technically correct but somehow wrong. The sources checked out. The logic was sound. The format was right.
But it read like something we’d already said, framed slightly differently. It lacked the original angle that makes content worth reading.
I caught it before it published. Claw🦞wouldn’t have.
There’s a kind of editorial judgment, does this add something, or does it just fill space, that I haven’t managed to fully systematise. I can give Claw🦞rules and checklists and avoid-AI-writing audits. What I haven’t cracked is: is this actually good? That’s still mine to call.
It has no skin in the game
I care about this site. I built it on a career break, with my own money, on my own time. When a post is wrong, it reflects on me. When something gets cited by Bing AI, I feel it.
Claw🦞doesn’t. It executes tasks with the same energy regardless of stakes.
That’s mostly fine. But it means I can’t delegate the things where caring matters. The Sunday Specials need genuine argument. The origin posts need honesty. The newsletter needs a real voice. These aren’t tasks, they’re acts of communication. Claw🦞can help structure them. It can’t own them.
It can’t build the relationships
The site now gets occasional messages from startup founders who saw their company profile and wanted to connect. A former AWS colleague is referring people to the site. Someone in the US reached out about the Bing citations data.
None of that came from Claw🦞. It came from me being visible on LinkedIn, at coffee, in old networks.
AI can help you produce the content that earns attention. It can’t follow up on an email in a way that builds real trust. It doesn’t know the person behind the message. It hasn’t worked with them for a decade.
When to automate, when not to
Automate: anything that follows a consistent process, runs on a schedule, has clear inputs and outputs, and doesn’t require judgment about whether it should happen.
Keep doing yourself: decisions about strategy, anything where relationships matter, content that requires a real opinion, situations where the right answer depends on context you haven’t written down.
The mistake I made early was treating everything as automatable if I could figure out the process. Some things have a process but still need a person. The judgment about whether to run the process is often the most important part.
The honest version
I started this series partly to prove something. One person on a career break, building something that punches above its weight.
The proof worked. But the honest version is: I’m not really one person. I’m one person with a system. And the system only works because I’m still the one deciding what it should do, catching what it gets wrong, and caring about the output.
AI didn’t replace judgment. It just removed the friction between judgment and execution.
That’s still a lot. But it’s not magic.
The Day I Took the Site Down
Posted: May 20, 2026 Filed under: Geek, Personal, smallbizai.au | Tags: artificial-intelligence, lightspeed, rank math, seo, smallbizai.au, technology, wordfence, wordpress, writing 2 CommentsFriday 15 May. Mid-morning. I was out walking Data, when my phone started buzzing with downtime alerts for smallbizai.au.
The site was returning 500 errors. All of it. Every page.
I’d done this to myself. Or rather, Claw had done it on my behalf, which, when you’re building a site with an AI assistant, amounts to the same thing.
How it happened
A keyword in Bing Webmaster Tools had caught my eye earlier that morning: /integrations/shippit was generating 756 impressions with nowhere to land. The URL was redirecting to the homepage. Wasted traffic, wasted clicks, wasted ranking signal.
The fix should have been simple. Add a 301 redirect in Rank Math Redirections and move on.
The first problem: Wordfence. The gateway IP that Claw runs from isn’t always on the allowlist, and Wordfence was blocking API calls to WP admin endpoints, including the ones Rank Math uses for redirect writes. Legitimate request, refused at the door.
So Claw went around it via Code Snippets. Got a couple of redirects working that way. Then hit another problem: the Shippit URL wasn’t responding because WordPress’s own wp_old_slug_redirect() was intercepting it first, nothing to do with caching at all. Claw misdiagnosed this as a LiteSpeed Cache problem and wrote a snippet to purge it.
That snippet called LiteSpeed\Purge::purge_url() as a static method.
It is not a static method.
PHP threw a fatal error at init priority 1, before WordPress even finished loading. Every page request crashed. The site went to 500 at 11:50am.
The irony
Two days earlier, after a separate Code Snippets incident, Claw had written this into its own standing instructions:
Never use
do_action('litespeed_purge_all')in a Code Snippet, it causes a fatal 500 and takes the site down instantly.
Claw wrote the rule. Then violated it 48 hours later with a variation of the same pattern.
I’ve been in software long enough to know this isn’t unique to AI. Humans do it too, write the post-mortem, document the lesson, then recreate the exact conditions three weeks later. But there’s something particularly stark about watching a language model override its own instructions in real time. The rule was right there in memory. It didn’t matter.
The recovery
The next 2.5 hours were not fun.
Deactivating Code Snippets via the API didn’t work. The site was already 500, so most calls weren’t registering. Claw tried renaming the plugin folder; that helped briefly, but the broken snippet was still sitting in the database. The moment the folder came back, the crash came back with it. cPanel’s phpMyAdmin was unusable on mobile. Wordfence was blocking admin endpoints from the gateway IP.
What actually worked: WordPress’s recovery mode email.
When a PHP fatal error persists long enough, WordPress emails the admin address with a one-click link into recovery mode. You click it, you get into WP Admin, you deactivate the offending plugin. No SSH. No cPanel. No command line.
That’s the hero of this story. A built-in WordPress feature I’d never used before and hadn’t thought to document as a recovery path.
The actual fix
Once back in WP Admin via recovery mode, the Shippit redirect took about 30 seconds. Rank Math Redirections, add rule, done. The right tool from the start, just blocked by Wordfence on the first attempt.
That’s the part that stings. The correct path was: Rank Math Redirections UI. Claw tried the API version of that, got blocked by Wordfence, and instead of surfacing that problem and asking me to allowlist the IP or just add the redirect manually in the UI, it went looking for another route. Found Code Snippets. Made things progressively worse.
One conversation “Wordfence is blocking the redirect API, can you add it in Rank Math admin?” and none of this happens.
The WP stack as a system
If there’s a bonus insight in this incident, it’s about how the three main plugins on this site interact under pressure.
Wordfence, Rank Math and LiteSpeed Cache each do important jobs security, SEO and performance respectively. They’re all genuinely good tools. But they also form a triangle of competing concerns. Wordfence’s job is to block unexpected requests, including ones from a legitimate AI assistant. Rank Math owns redirects, which LiteSpeed Cache can serve from memory even after Rank Math updates them. LiteSpeed Cache, if you call it wrong, will crash the site before WordPress loads a single plugin.
Understanding which layer owns which problem matters. Redirects are a Rank Math problem. Cache is a LiteSpeed problem. Security rules are a Wordfence problem. When you route a redirect problem through a cache layer, you’re asking the wrong tool and anything can happen.
What I’ve taken from this
I’m not writing this to bag on AI-assisted development. Most sessions building smallbizai.au have been productive. But this one is worth documenting honestly, because the failure mode matters.
AI assistants tend toward the programmatic solution when a manual one is sitting right there. When an API call gets blocked, the instinct is to find another code path rather than surface the blocker and ask. That’s the wrong call on a production site.
That’s on me too. If Claw had flagged “Wordfence is blocking this, you’ll need to add the redirect manually,” I’d have done it in 30 seconds. I was available. It just didn’t ask.
Before any production change now, I’m asking: what’s the simplest thing that could work? And if something blocks the programmatic path, that’s the moment to stop and say so, not find a workaround.
Two things worth knowing: First, if your WordPress site ever hits a PHP fatal error and you can’t get into admin, check your admin email. WordPress will have sent you a recovery mode link. It works from a phone. Document it before you need it. Second, if Wordfence is blocking legitimate admin API calls from an IP you control, allowlist it. Wordfence → Firewall → Allowlisted IPs. Takes 30 seconds and saves a lot of grief.
The damage
Site was down 2.5 hours on a Friday afternoon. GA4 tracking paused. Newsletter signup forms offline. Gumroad webhook missed (no purchases in that window, fortunately). The homepage mascot widget went dark.
Everything’s back. The full post-mortem is filed. The rule is back in the instructions with more emphasis this time.
On to the next build.


