# Five agent readiness fixes you can ship this week

> Five quick fixes that help AI agents use your site, with who does each, how long it takes, how to check it, and the AgentScore check it moves.

By Ghost Agent Lab · Guide · https://ghostagentlab.com/blog/five-agent-readiness-fixes-this-week/

Most agent readiness work doesn't need a project plan. These five fixes are settings, templates and a few lines of markup that a small team can ship in a week. For each one you get who usually does it, how long it takes, how to check it worked, and the AgentScore check it moves.

## Why these five

We picked fixes that are quick, that help every kind of AI agent, and that carry real weight in AgentScore. Three of them move checks with a weight of 4, the most any single check carries. They're also among the most common problems we see: in our [scan of 255 online stores](https://ghostagentlab.com/blog/agentscore-store-study-2026/), 58% had buttons or links with no name an agent can read, and 38% showed a pop-up or banner that covers much of the page on arrival.

1. **Monday:** **robots.txt.** Let AI assistants and AI search in
2. **Tuesday:** **Bot protection.** Let verified AI agents through
3. **Wednesday:** **Icon buttons.** Give every button and link a name
4. **Thursday:** **Cookie banner.** Make it small and easy to dismiss
5. **Friday:** **Product data.** Price and stock in the HTML

**One fix a day.** The order doesn't matter much; the first two are settings, the last three are template changes.

Run an [AgentScore](https://ghostagentlab.com/agentscore/) scan before you start, so you have a baseline, and again on Friday.

## 1. Let AI assistants in through robots.txt

**Who:** SEO or content team. **How long:** hours. **Check it moves:** "robots.txt lets AI assistants and search agents in" (weight 3).

Some robots.txt files block AI by accident. Blocking training crawlers such as GPTBot, ClaudeBot or CCBot is a reasonable business choice, and AgentScore reports it without marking you down. Blocking assistants (ChatGPT-User, Claude-User, Perplexity-User) and AI search (OAI-SearchBot, Claude-SearchBot, PerplexityBot) keeps you out of the answers people ask for.

The tokens are independent. OpenAI's [crawler documentation](https://developers.openai.com/api/docs/bots) gives this exact example: allow OAI-SearchBot to appear in search results while disallowing GPTBot to opt out of training.

```
User-agent: GPTBot
Disallow: /

User-agent: OAI-SearchBot
Allow: /

User-agent: ChatGPT-User
Allow: /
```

**How to check:** open `yoursite.example/robots.txt` and look for `Disallow: /` under any assistant or AI search name, or under `User-agent: *`. AgentScore checks your home page address against the rules for each assistant and AI search agent it knows. One or two blocked is a warning; three or more is a fail. See [robots.txt for AI agents](https://ghostagentlab.com/articles/robots-txt-ai-agents/).

## 2. Let verified AI agents past bot protection

**Who:** bot protection or CDN admin. **How long:** hours. **Check it moves:** "Bot protection lets AI agents through" (weight 4), and often "AI agents can open your product, pricing and cart pages" (3) and "AI agents aren't blocked or shown a CAPTCHA at the cart and checkout" (3).

robots.txt is a request; bot protection is enforcement. A rule written to stop scrapers can stop ChatGPT-User too. The fix is to allow verified AI assistants and AI search agents (those whose requests come from the operator's published addresses or carry a valid signature) while still blocking anything that only claims the name.

Most bot protection products have a setting or rule for this. If you can't find it, ask your vendor directly.

**How to check:** AgentScore requests your home page as ChatGPT-User, Claude-User, Perplexity-User and OAI-SearchBot and compares each with a normal browser. Our requests come from our servers, not the AI companies', so it also sends one request claiming to be Googlebot. If your protection turns that away too, it's checking where requests really come from, which is the right setup: the check is skipped rather than failed. See [bot protection and AI agents](https://ghostagentlab.com/articles/bot-protection-ai-agents/).

> **Don't open the door to everyone:** allowing any request whose user agent says "ChatGPT-User" lets in every scraper that copies the name. Allow verified agents, not names. See [how to tell if an AI crawler is real](https://ghostagentlab.com/articles/verify-ai-crawlers/).

## 3. Name your icon buttons

**Who:** developer. **How long:** a day or two, usually in the header and product card templates. **Check it moves:** "Buttons and links have names" (weight 4).

Agents choose what to click by its name. A cart icon, a search magnifying glass or a hamburger menu with no text is a blank to them. Give each one an accessible name:

```
<button aria-label="Open cart"><svg aria-hidden="true">…</svg></button>
<a href="/search" aria-label="Search"><svg aria-hidden="true">…</svg></a>
```

**How to check:** in your browser's developer tools, the accessibility panel shows each element's name. AgentScore renders your home page and counts visible buttons and links with no readable name. None is a pass; three or fewer, or up to 5% of them, is a warning; more is a fail. This is the same work as accessibility, and people using screen readers benefit too. See [buttons, links and forms agents can use](https://ghostagentlab.com/articles/agent-friendly-buttons-forms/).

`northwind.example`

- [menu icon] (✗ Name: none) [menu icon] (✓ Name: Menu)
- [cart icon] (✗ Name: none) [cart icon] (✓ Name: Open cart)

**The same buttons, before and after.** They look identical to a person; only the second pair has a name an agent can read.

## 4. Make the cookie banner easy to dismiss

**Who:** developer, or whoever manages your consent tool. **How long:** a day or two. **Check it moves:** "Pop-ups and banners can be dismissed by agents" (weight 4), and it can unblock "Agents can find and press your add-to-cart or sign-up button" (3).

A banner an agent can't close blocks everything behind it. Two changes make the difference. First, the buttons: use real `<button>` elements with clear text such as "Accept" or "Reject all". Second, the size: a strip along the bottom of the screen gets in the way far less than a panel over the middle of the page. Hold sign-up and discount pop-ups until a visitor has done something, not on arrival.

**How to check:** AgentScore renders your home page and looks for a fixed or sticky element covering 15% or more of the screen (headers aside). No such element is a pass. One with a clearly labeled button to close it is a warning, because every agent still has to deal with it first. One with no such button is a fail. It also checks that nothing covers the add-to-cart button on a product page. See [cookie banners and pop-ups that trap AI agents](https://ghostagentlab.com/articles/cookie-banners-popups-ai-agents/).

> **Note:** your consent banner has legal requirements of its own. Making it easier to dismiss doesn't mean dropping a choice your lawyers need. Check changes with whoever owns privacy.

## 5. Put price and product data in the HTML

**Who:** developer or e-commerce platform admin. **How long:** a few days, in the product page template. **Checks it moves:** "Product pages give price and stock in a form agents can read" (weight 3), "Prices are in the page HTML" (2). While you're in the templates, check the home page has some structured data too, such as Organization and WebSite: that's what "Structured data describes your business and products" (3) looks at.

Most AI crawlers and assistant fetchers read the HTML your server sends and don't run JavaScript. Add schema.org Product JSON-LD with an Offer to every product page, in the server-rendered HTML, and make sure the visible price is in that HTML too. Many themes already output this; check that a script isn't adding it later. Our study found 63% of stores give price, currency and availability as structured data in the product page's HTML, and 19% have no usable product structured data at all.

**How to check:** open a product page, view the page source (not the inspector) and search for `"@type": "Product"` and the price. AgentScore passes the product check when it finds Product data with price, currency and availability in the HTML, and warns when it's incomplete, only in microdata, or only added by JavaScript. See [product data AI shopping agents can read](https://ghostagentlab.com/articles/structured-data-ai-shopping-agents/).

## After the week

- ✓ robots.txt allows assistants and AI search
- ✓ Bot protection allows verified AI agents
- ✓ Every icon button and link has a name
- ✓ Cookie banner is small, with real, labeled buttons
- ✓ Product pages carry price and stock in the HTML

**Friday's checklist.** Re-run AgentScore to confirm each one.

Re-scan and compare with Monday's baseline. These fixes help AI agents get in, read and find their way, but they don't prove an agent can finish a purchase. For that, [test your key journeys with AI agents](https://ghostagentlab.com/articles/test-journeys-with-ai-agents/). When you're ready for the next round, [reading your AgentScore report](https://ghostagentlab.com/blog/reading-your-agentscore-report/) helps rank what's left.
