
Good morning.
There's a version of competitor monitoring that runs perfectly but is worth nothing:
It fires every Monday, the findings are accurate, the summary is well written, but nobody has changed a single decision because of it in eight months.
Today I'll show you the agent that avoids that, why the fix is a judgment layer rather than a better scraper, and the one change that turns a competitor report into a gap report.
— Sam
IN TODAY’S ISSUE 🤖
Why an accurate weekly report changes nothing
The five claims a buyer compares you on
Putting your own row on the same sheet
Four verdicts that replace "here's what changed"
The week the agent reports nothing
What the agent may never decide for you
Turning a change into next week's objection
Let’s get into it.

Why Build The Competitor Watch Agent
An agency owner I work with had competitor monitoring running before we ever talked about it.
Good setup: five competitors, weekly scan, a tidy digest in his inbox every Monday at eight.
When I asked what he'd done differently because of it, he scrolled back through about fifteen reports and found one thing, and it was a link he'd forwarded to someone.
The reports weren't wrong. They said things like Competitor B published four new case studies and Competitor D updated their homepage headline, and each of those was true.
What none of them said is whether any of it should cost him ten minutes of his week. So he read them the way you read a newsletter you like but don't need, and he stopped opening them around week nine.
That's the standard outcome, and it comes from an agent built to detect changes rather than to rule on them. Spotting the change is the easy half, and it's the half every tool sells you.
What an entrepreneur needs is the second half. Does the change move what a buyer sees when they're choosing between you and them, and what do you owe in response?
There's a second problem underneath that one, and it's the more expensive of the two. Competitor monitoring watches outward. You get a detailed picture of what four other businesses are doing and no picture at all of how you look next to them.
So the report can tell you a competitor added a mid-tier at $490. It has nothing to say about your own mid-tier, which has been sitting at $850 with a thinner deliverable since March. The gap is the part you can act on, and a watch pointed only at them never sees it.
The agent in this issue fixes both. It watches a fixed set of claims rather than a list of pages. It puts your own business on that same sheet, so every change it finds reads as a gap.
Then it rules on each difference, which is what makes the report worth opening.
The Platform Decision
Two paths, and the choice comes down to where the rest of your work already lives.
Claude Code in Cowork mode suits you if you want the agent reading and writing real files on your machine, keeping the claim sheet as a document you can open, and running as a Skill you invoke by name. The claim sheet is a file, the history is a folder, and you can read both without asking the agent anything.
Codex suits you if your business runs inside a browser and you'd rather the agent live where your other automations already do. No Skill primitive, so the configuration is a system prompt plus a scheduled run, and the claim sheet lives in whatever document store you already use.
The quick decision rule:
Take the Cowork path when you want the week-over-week history to be something you can grep, diff and hand to someone else.
Take Codex when you want it running without you thinking about a filesystem.
Both produce the same report, and the architecture below doesn't change between them.
The Claim Sheet And The Verdict
The architecture has two halves. The Claim Sheet is what the agent watches. The Verdict is what it does with a change.
The Claim Sheet
The watch is pointed at claims rather than at pages. A page gets rebuilt every couple of years and the claim underneath it usually survives.
A claim is a thing a business says about itself, and it stays the same thing whether it sits on a pricing page, in a footer, or halfway down a sales letter.
Five slots per competitor, and these are the five a buyer weighs when they're deciding between you and someone else:
Price. What the entry tier costs, what the middle tier costs, and what you get inside each. Contract length and anything free.
Promise. The outcome they say you get. The headline claim, quoted as written.
Proof. What they show to make the promise believable. Named logos, numbers, case studies, guarantees, review counts.
Buyer. Who they say it's for. Company size, role, industry, stage.
Path. How somebody buys. Book a call, self-serve checkout, free trial, quote on request, application.
That's the whole sheet: five slots against three to five competitors.
Hiring and ad creative don't get slots of their own, and the reason matters: a job posting is a leading indicator of a claim rather than a claim itself. Three enterprise AE roles opening says their Buyer slot is about to move, and four backend engineers says the same about the Promise.
The agent reads hiring pages and ad libraries as evidence feeding the five slots. Neither gets a paragraph of its own, and the report stays on what a buyer will see.
Your Own Row On The Sheet
You go on the sheet too, in the same five slots, filled with the same rigor. This is the change that does the most work in the whole build.
Your row gets refreshed on the same schedule and from your own live pages, because entrepreneurs are consistently wrong about their own claims.
Usually the pricing page still says something that stopped being true two quarters ago. An agent reading your site cold will catch that on the first run.
Once your row exists, every competitor change resolves against it automatically.
Competitor C dropped their entry tier to $290 stops being news and becomes Competitor C's entry tier is now $290 against your $450, and their entry tier includes the onboarding call yours charges for.
The second version tells you what a prospect comparing two tabs is looking at.

The Verdict
Every difference the agent finds gets exactly one of four rulings, and the rulings are the reason the report gets read.
Noise. Changed, and it doesn't move what a buyer weighs. A new blog post, a redesigned footer, a headshot swap. Logged to the history file, kept out of the report entirely.
Watch. Could matter and doesn't yet. A job posting, a beta waitlist, a single case study in a segment they haven't served before. Carried forward and re-checked, with a note on what would promote it.
Answer. A prospect will raise this with you, and something you own needs to say something back. A price gap, a feature you don't have, a guarantee you don't offer. Gets a named owner and a date.
Move. Changes a decision that belongs to you: what you charge, what's in the package, who you sell to. Goes on the agenda for a human to decide.

Three disciplines hold the whole thing together, and dropping any one of them turns the agent back into the report nobody reads.
It has to be able to tell you that nothing happened. An agent that finds something every single run is an agent that's promoting Noise to fill space, and that is exactly how a report loses its reader. Four changes detected, all Noise, nothing to answer this week is a valid and useful output, and after a month of them you'll have learned something real about how fast your market moves.
Every claim has its source and the date it was read. A claim without a URL and a timestamp can't be checked, and one wrong price in week three costs you the credibility of the whole sheet. Anything the agent can't verify against a live page gets marked unconfirmed and stays out of the verdict column rather than getting asserted.
It never rules Move on its own authority and it never recommends a price. The agent flags that a pricing decision is now live and puts it in front of you with the gap attached. Pricing is the single fastest way to do real damage on bad information, and an agent working from a competitor's public page is working from marketing rather than from their margins.
The Six-Step Setup
Six steps. The prompts are complete, and the only thing you're filling in is your own business.

Step 1: Pick The Competitors You Lose To
Three to five, and the selection rule matters more than the number. Pick the businesses that show up in the deals you lose.
The market leader you've never once been compared against is a distraction with a good logo. Every slot it takes is a slot not spent on the outfit that beat you on two proposals last quarter.
If you're not sure, the answer is already in your own records. Pull the last twenty closed-lost deals and count the names that appear. Ask whoever runs your sales calls who comes up. That list is your watch set.
Step 2: Write The Context File
This is the file the agent reads on every run, and the quality of it decides the quality of everything downstream. Fill it in properly once and you'll edit it twice a year.
# Competitor Watch Context
## My Business
Name:
What I sell, in one sentence:
My five claims, as they appear on my live pages today:
Price: [entry tier and what's in it, middle tier and what's in it, contract terms]
Promise: [my headline outcome claim, in the exact words on the page]
Proof: [named logos, numbers, case studies, guarantees I currently show]
Buyer: [who my pages say this is for: size, role, industry, stage]
Path: [how someone buys from me today]
Source URLs for my own claims: [list the pages the agent should read to refresh my row]
## The Watch Set
Competitor 1
Name:
Why they're on this list: [the deal or deals where they came up]
Pages to read: [pricing, homepage, a representative sales or product page, careers]
Competitor 2
[same fields]
Competitor 3
[same fields]
## What Counts As Material To Me
A change is worth my attention when it touches: [name the two or three things that decide your deals, e.g. price relative to mine, whether onboarding is included, whether they serve businesses under 20 people]
A change is Noise when it touches: [name what you don't care about, e.g. blog cadence, social posts, team page, brand refreshes]
## My Live Constraints
Things I can't change quickly: [e.g. price is locked for existing clients until renewal, the platform can't do X until Q1]
Things I can change this week: [e.g. the FAQ, the sales script, what's in the onboarding call]
## Rules
Never recommend a price change; flag the gap and the decision.
Never assert a claim without a live source URL and the date read.
Mark anything unverified as unconfirmed and keep it out of the verdict column.
Report a week with nothing material as exactly that.The two sections entrepreneurs skip are What Counts As Material To Me and My Live Constraints, and skipping them produces a report full of Noise dressed as findings.
The first one teaches the agent your judgment. The second stops it handing you six Answers you have no way to act on this quarter.
Step 3: Build The Baseline
The first run reads every page in the context file and fills the sheet cold. It rules on nothing, because there's nothing to compare against yet.
Read every page listed in the context file, including my own, and build the baseline claim sheet.
For each business on the sheet, including mine, fill five slots: Price, Promise, Proof, Buyer, Path. Use the exact words on the page for Promise. Use figures as published for Price, including what is contained in each tier and any contract terms. For Proof, list what is shown, without grading how strong it is. For Buyer, record who the pages say the product is for; do not infer it. For Path, record how a person buys.
Against every slot record the source URL and the date you read it. Where a slot cannot be filled from a live page, write "unconfirmed" and name what you looked at and what was missing. Do not infer a missing price from a competitor's positioning, a review site, or a cached page.
Output the sheet as a table with one row per business and one column per slot, my row first. Below the table, list every slot marked unconfirmed with the page you would need to fill it.Save the output as claim-sheet-[date].md. That file is now the thing every future run compares against.
Step 4: Run The Weekly Diff
This is the run that repeats. It refreshes the whole sheet, compares against the stored one, and rules on every difference.
Refresh the claim sheet from the live pages in the context file, including my own row, then compare it against the stored sheet at [path to most recent claim-sheet file].
For every slot where the current reading differs from the stored one, record: which business, which slot, what it said before, what it says now, the source URL, and the date read.
Then rule on each difference using the context file's definition of what is material to me, and assign exactly one verdict:
NOISE: the change does not affect what a buyer weighs when choosing between me and them. Log it, keep it out of the report.
WATCH: the change could become material and has not yet. State the specific thing that would promote it to Answer or Move, and carry it forward.
ANSWER: a prospect will raise this with me and something I own needs to respond. State the gap against my row in one sentence, name what needs to change (a page, an FAQ, a call script, a proposal template), and leave the owner and date blank for me to fill.
MOVE: the change puts a decision I own on the table, such as what I charge, what is in the package, or who I sell to. State the decision and the gap. Do not recommend which way to decide, and do not recommend a price.
Rules. Assign one verdict per difference and never two. Where my own row changed, treat it as a difference and rule on it the same way, because a change on my side can open a gap as easily as a change on theirs. If every difference this week is Noise, say so plainly and report the week as clear rather than promoting something to fill it. Never assert a change you could not verify against a live page; list it separately as unconfirmed.
Output in this order: a one-line summary of the week, then Move items, then Answer items, then Watch items, then a count of Noise, then the unconfirmed list. Finish by writing the refreshed sheet to claim-sheet-[today's date].md.Step 5: Set The Cadence
Weekly, and run it on a day that gives you room to act rather than on Monday morning when your week is already committed.
The agency owner I mentioned moved his to Thursday and started clearing Answer items on Friday afternoons. That was the first week his monitoring changed anything.
In Cowork, this is a scheduled Skill invocation against the context file. In Codex, it's a scheduled run with the same prompt and the sheet path pointed at your document store.
Either way, the run needs write access to wherever the sheets are kept, because the value compounds in the history rather than in any single report.
Monthly is too slow for price and packaging, which is where the expensive surprises live. Daily produces a stream of Noise and trains you to stop reading, which is the failure this whole architecture exists to prevent.
Step 6: Clear The Answers
An Answer with no owner and no date is just a Watch. When the report gives you two Answer items, put a name and a date against each one before you close the tab, and keep them somewhere you'll see them again.
Most Answers are small, and usually one of three things:
A line in the FAQ
A paragraph on the pricing page
A rewritten objection response in the call script
Each one closes a gap a prospect was going to find on their own.
The compounding version is a business whose public claims stay current against the market every week, with nobody sitting down to do a quarterly positioning review.
Which Slots Matter By Business Type

Agency. The watch set is the three shops that come up in your proposals. The Price slot is where most of the action is, because agency pricing is opaque and a competitor publishing a package price for the first time is an event.
Path matters more here than people expect: an agency moving from book a call to a published productized tier has changed how buyers evaluate the whole category, and your own Path row is what tells you whether that leaves you looking considered or looking slow.
SaaS. Price and Proof do most of the work here. Tier restructuring and per-seat versus usage changes are the differences that decide comparison shopping, and the Proof slot catches the moment a competitor wins a logo in your core segment.
Careers pages are the highest-value input, because a hiring run against a new segment shows up in the report as a Watch about six months before the positioning changes.
Ecommerce. Price includes shipping thresholds, bundle composition and returns terms, which is where most of the real movement happens.
Proof means review counts and rating, and those move on their own without anyone deciding anything, so set the material threshold in the context file at a change of a certain size, which keeps ordinary drift out of the report.
Expert, consultant, creator. Promise and Proof are almost the whole game, because the offers are close and the differentiation is in what's claimed and what's shown.
The most useful thing the mirror row does for this reader is catch that a competitor's Promise has become more specific than theirs, which is a gap that costs deals long before anyone can name why.
Deploying The Agent Across Your Team
The agent runs unattended and the output needs a human. Splitting those two things properly is what keeps it alive past month two.
Who owns the run. Whoever owns positioning or marketing owns the context file and the material-change definitions. If that's you, it's a two-hour setup with a quarterly revisit rather than an ongoing task.
Who clears Answers. Whoever owns the surface being changed. A pricing page Answer goes to marketing, a call script Answer goes to whoever runs sales calls, a proposal template Answer goes to whoever writes proposals. Answers that come back to you every week are a sign the context file's constraints section is wrong.
Who decides Moves. You. Every time. A Move item is on your agenda within a week of appearing, and the decision gets recorded next to the gap that prompted it, which over a year gives you something more valuable than any single report: a record of every competitive decision you made and what the market looked like when you made it.
The review that keeps it honest. Once a quarter, read the last twelve reports and count the Answers that were cleared against the ones that expired. A high expiry rate means the agent's material threshold is set too low and it's promoting Noise. The fix belongs in the context file, not in the prompt.
Want The Build Pack?
You should have an agent like this running on your behalf, so the deals you are already in stay winnable and your own claims stay current against the market without you booking a quarterly review to do it.
You can build it from the prompts above. If you'd rather skip the setup work, Cortex subscribers get the full Competitor Watch Agent Build Pack as a download:
The installable Claude Skill that sets up the agent in Cowork mode in one command
The Codex configuration pack with system prompt, plugin list, and scheduled-automation specs
Four pre-filled context files (agency, SaaS, ecommerce, and expert / creator) you can adapt instead of starting blank
The Tune Pack: the most common drift patterns I've seen for this agent, with the exact context-file edits and prompt patches that fix each one
Three annotated example reports so you know what good looks like before you ship
This is only available to paying Cortex subscribers.
What is Cortex?
Cortex is the premium monthly membership version of Bionic Business, helping entrepreneurs and business owners grow and scale with AI and Agents.
In addition to 3-4 full, unrestricted regular issues per month, you also get:
1x SIGNALS Strategic Briefing issue (strategic moves you must make now to secure your business revenue, market share, and profits).
1x CIRCUITS Tactical Guide issue (workflows, how-to’s, prompts, very practical implementation inside a self-driving business).
Access to all Agents and Skills issues (full details, download files, tutorials).
Claude Cowork as your marketing team special issue (full guide on how to run Cowork as an agent marketing team for your business).
50% OFF workshops on prompt engineering, agent operating systems, and more. Only active Cortex subscribers get any kind of discount, no one else.
So, if you’d like to receive full issues and the monthly special Signals and Circuits issues, then you should sign up for Cortex, which is $50/month (and you have full archives of previous regular issues for as long as you’re a paying member).
One note on Signals and Circuits: You only get these special issues for the months you’re subscribed—which means if you skip a ~30 day period, about a month, you won’t get them for that month. There are no back-issues for past months, so now is your chance to lock-in these upcoming issues while you can.
After you’ve upgraded to Cortex, log in to the website and come back to this issue, and the Agent Build Pack will be unlocked below.
Ready? Get the Agent Build Pack, full regular issues, and the upcoming Signals and Circuits issues:
Cortex is a monthly premium version of Bionic Business, helping entrepreneurs grow and scale with AI and Agents. You can cancel at any time. But there are no refunds, for any reason. All sales are final.

The agency owner rebuilt his around the claim sheet in about an hour, and the first run told him two things his old reports never could.
Two of his five competitors had moved their entry tier below his in the same six-week window. And his own pricing page still described an onboarding process he'd stopped running in the spring.
Both facts had been sitting on public pages for months, and the monitoring he already had was pointed at them the whole time.
What changed is that the sheet put his own row next to theirs. A difference he had been reading as their news came back to him as his own gap, with a date on it and a page to go and fix.
Talk soon,
Sam Woods
The Editor
.

