Agent skills built from real production, not intuition. Deterministic checks with, where honest, prevalence from real scans, plus battle-tested operational playbooks. Store SEO and AI answer visibility, and the tooling for running agents reliably. More domains as they land.
Ask an agent "how is my site doing on SEO" and you get a plausible essay. Ask it twice and you get two different essays. Neither one tells you whether the thing it flagged is on one page or four hundred, whether it is actually broken or deliberate, or whether it matters more than the twelve other things it did not mention.
That is not the agent's fault. It is reading your page and reasoning about it. Nobody gave it a ruler.
Same site, same question. The difference is a deterministic scanner.
| Without the skill | With the skill |
|---|---|
| "Your pages may be missing structured data. Consider adding schema." | no_structured_data — WARNING, 4 of 4 sampled pages. No JSON-LD of any type. An assistant has to infer everything from prose, and prefers a source that did not make it infer. |
| "Check that your pages are indexable." | noindex — CRITICAL, 1 of 5 pages. meta robots=noindex on /thank-you. Looks deliberate — open the URL and confirm before acting. |
| "AI assistants may not be able to read your site." | OAI-SearchBot and PerplexityBot are blocked in robots.txt. GPTBot is also blocked, which costs nothing — it only feeds training. The first two are what read your site when someone asks ChatGPT. |
The second column is reproducible: same site, same run, same codes. You can put it in a ticket.
Works with Claude Code, Cursor, Codex, Gemini CLI and other agents that read SKILL.md.
npx skills add maxbuildog/skills/<skill-name>In Claude Code, through the plugin marketplace:
/plugin marketplace add maxbuildog/skills
Not sure which to pick? If you run any website, start with ai-answer-audit. If you run a Shopify store, shopify-geo-audit goes deeper on products.
Or clone the repo and copy the folder you want into ~/.claude/skills/ (personal) or .claude/skills/ (project). This path also works when a marketplace cache goes stale and refuses to update.
| Skill | What it answers | Status |
|---|---|---|
ai-answer-audit |
Can AI assistants read and cite my site, and do they, or do they cite someone else? Any website. | Available |
shopify-geo-audit |
Do ChatGPT, Perplexity and AI Overviews recommend my products, or my competitor's? Shopify, with prevalence from real stores. | Available |
telegram-channel-watchdog |
Why did my Telegram agent go silent while every status light stayed green, and how do I keep it alive? Agent ops, not a site audit. | Available |
visual-explainer |
Can you explain this system to someone non-technical, on one page they will actually read? | Available |
deep-research |
What is actually true about this question, how sure are we, and on which sources? | Available |
agent-self-improvement |
How does my agent stop repeating the same mistake, without its instructions turning into a landfill? | Available |
shopify-store-audit |
What does Google actually see on my store, and what is broken? | Planned |
shopify-feed-doctor |
Why is Merchant Center disapproving my products? | Planned |
Each skill lives in its own folder under skills/ with a self-contained SKILL.md. Install one, or install them all.
Most skills do not tell you what they do to your machine. These do, because you are about to let an agent execute them.
| Network calls | To the site being audited, over HTTPS. Plus your agent's own web search, in the answer-visibility layer, to ask audience questions. Nothing else. |
| Servers of ours contacted | None. There is no telemetry, anonymous or otherwise. Grep the code. |
| Credentials required | None. No API key, no OAuth, no password, no admin access. |
| What is written | Nothing outside the working directory you run it in. |
| What is read | Public URLs only: HTML, robots.txt, sitemap.xml, llms.txt, and for the Shopify skill products.json. |
| Runtime | Node.js 20+ for skills that ship scripts. |
This table describes the audit skills. Operational skills such as
telegram-channel-watchdoghave a different footprint by nature: they need your own service credentials (for example a Telegram bot token) and shell access to the host they supervise. Every skill states its exact requirements in its ownSKILL.mdcompatibilityfield, so read it before you run it.
allowed-tools. Skills here declare an allowed-tools line scoping what the agent may run. As of July 2026 Claude Code parses that field but does not enforce it (anthropics/claude-code#37683). We declare it anyway because it documents intent and the host may fix it — but do not treat it as a sandbox. The real guarantee is the one above: read-only HTTP to the site being audited, and no server of ours in the path.
They are deterministic. The checks are code, not prompts. Same site, same run, same verdict.
They separate a fact from a measurement. Layer 1 is mechanical: crawler access, structured data, server-rendered content. Layer 2 asks real questions through your agent's search and counts what comes back, reported with its sample size, never as a verdict.
They never state a number they did not measure. shopify-geo-audit ships a benchmark of 476 stores and 90,831 product pages, of which 46.4% carry at least one critical defect, and quotes prevalence only for codes that are in it. ai-answer-audit ships no benchmark, on purpose: there is no honest population to compare an arbitrary website against, so it reports what it found and nothing more.
They run locally. The HTTP requests go from your machine to the site being audited.
They audit once, when you ask. They do not watch a site, keep history, or wake you up when a deploy quietly adds noindex. For Shopify stores, continuous monitoring is StoreCanary, a paid product.
They will not replace your judgement on borderline findings. A noindex on a thank-you page is correct. The same finding on your main article is an emergency. The scanner reports the fact and how many pages it affects; deciding which case you are in is yours.
One is Shopify-shaped, one is not. shopify-geo-audit reads products.json and Shopify URL patterns, so other platforms give partial results. ai-answer-audit is platform-neutral and samples any site through its sitemap or links.
The answer-visibility layer is a sample, not a verdict. It asks questions through your agent's search and counts what comes back. Results move between runs, models and locations. Reported with its sample size, never as a fact.
The bar in this category is low: a large share of published skills are silently broken, and many never trigger at all because their description has no trigger phrases. Three things here push against that:
- A written standard.
docs/skill-authoring.mdis the house style every skill follows, including the rule that a skill must be useful without us. - A validator that runs in CI.
scripts/validate-skills.mjschecks frontmatter, trigger phrases, tool scoping, and that benchmark copies have not drifted. It has to pass with zero warnings, not just zero errors. - Findings are tested against real sites before they ship.
Bug reports, new checks and prevalence data are welcome: a false positive report is the most valuable issue you can open. See CONTRIBUTING.md.
MIT. See LICENSE.