{"slug": "i-built-an-ai-tool-that-finds-bad-local-business-websites-and-pitches-them", "title": "I Built an AI Tool That Finds Bad Local Business Websites (And Pitches Them Redesigns)", "summary": "The article describes an AI tool called the Hermes Local Business Web Scanner, built by a web design agency owner, that automatically identifies technical issues on local business websites—such as slow load times, broken mobile layouts, and poor SEO—and generates personalized pitch emails to sell redesign services. The tool uses a multi-agent orchestration system where a main agent discovers businesses and spawns parallel subagents to independently score each site across five categories (mobile, design, SEO, accessibility, and performance), enabling rapid, isolated analysis without cascading failures. The author emphasizes that this approach saves hours of manual work and reveals widespread, measurable problems in local business websites.", "body_md": "# I Built an AI Tool That Finds Bad Local Business Websites (And Pitches Them Redesigns)\n\nYour favorite dive bar's website loads 58 JavaScript files before showing a single image. The local steakhouse has 122 elements that break on mobile. The auto body shop uses 25 different font families on one page.\n\nI know this because I built an AI agent that finds these problems automatically — and then writes the pitch email selling the fix.\n\n## The Problem\n\nI run a web design agency. My best clients are local businesses with terrible websites. But finding them meant manually visiting hundreds of sites, screenshotting the ugly ones, writing up reports, and crafting personalized pitches. It was mind-numbing work that ate hours every week.\n\nSo I taught my AI agent to do it.\n\n## What I Built\n\n**Hermes Local Business Web Scanner** — a tool built on [Hermes Agent](https://hermes-agent.nousresearch.com/), that takes a city and industry, then autonomously:\n\n-\n**Discovers** local businesses via web search -\n**Scores** their websites across 5 categories (mobile, design, SEO, accessibility, performance) -\n**Ranks** them worst-first (best prospects at the top) -\n**Generates** visual pitch reports with specific issues highlighted -\n**Writes** personalized pitch email drafts ready to send\n\nOne command. Full prospecting pipeline. Done.\n\n## Demo: Tupelo, MS\n\nI ran it against businesses across different industries. Every single one had real problems costing them customers.\n\n### 🔴 Blue Canoe — Dive Bar — Grade: D (57%)\n\nTupelo's beloved live music venue. Great vibe, rough website.\n\nThe agent found 58 scripts blocking render, no meta description (invisible on Google), no H1 heading, and 8 fixed-width elements that break mobile completely. Their site is a local institution that nobody can find on search.\n\n### 🔴 Tom's Automotive — Auto Repair — Grade: D (59%)\n\nFamily-owned shop. Clean 49KB site but zero calls-to-action. No \"Book Now.\" No \"Get a Quote.\" Visitors show up and don't know what to do. Plus 13 touch targets too small to tap on a phone.\n\n### 🔴 Auto Spa of Tupelo — Auto Body — Grade: D (58%)\n\nCollision and paint shop. Their page is 984KB with 25 font families. Twenty-five. Mobile is completely broken with 223 fixed-width elements. It's the kind of site that makes you think the business is closing — when they're actually thriving.\n\n### 🟠 Woody's Tupelo Steakhouse — Restaurant — Grade: C (61%)\n\nA 30-year Tupelo institution. Their site has 122 fixed-width elements, 110 tiny touch targets, 4 H1 tags, and zero semantic HTML. It's all divs all the way down.\n\n### The Pattern\n\nThese aren't unusual. This is what local business websites look like everywhere. The scanner found measurable, specific problems in seconds per site. A human would need 15-20 minutes each to catch the same issues. Multiply that by a hundred prospects and you're talking days of work.\n\n## How It Works\n\n### The Multi-Agent Architecture\n\nHere's what makes this different from a script. The scanner uses Hermes's `delegate_task`\n\nto spawn **parallel subagents** — each one independently scoring a different business:\n\n**Main agent** — Discovers businesses via `web_search`\n\n, spawns subagents, aggregates results.\n\n**Subagents (N concurrent)** — Each subagent handles one business:\n\n- Fetches the site via\n`web_extract`\n\n- Screenshots via\n`browser`\n\n- Scores via\n`execute_code`\n\n- Generates reports via\n`write_file`\n\nThis isn't just parallelism for speed (though it's ~3-4x faster than sequential scoring). It's **isolation** — if one subagent hits a 403 or timeout, the others keep working. Each subagent has its own context window, so scanning 10 businesses doesn't blow up memory.\n\nThis is the capability most Hermes submissions don't showcase: **multi-agent orchestration**. The main agent is a manager. The subagents are workers. Hermes coordinates everything.\n\n### The Scoring Engine\n\nUnder the hood, `execute_code`\n\nruns a Python engine analyzing 5 categories:\n\n-\n**Mobile**: Viewport meta, media queries, fixed-width elements, touch target sizes -\n**Design**: Color contrast, font consistency, CTA presence, whitespace -\n**SEO**: Title tags, meta descriptions, heading hierarchy, image alt text -\n**Accessibility**: Semantic HTML, ARIA attributes, form labels, link quality -\n**Performance**: Page size, render-blocking resources, HTTP requests, image formats\n\nEach category scores 0-20. Total: 0-100 with letter grades. Prospects ranked worst-first.\n\n## The Code\n\n~1,500 lines across 5 scoring modules:\n\n```\nscorer/\n├── mobile.py         # Viewport, media queries, fixed-width, touch targets\n├── design.py         # Contrast, typography, CTAs, whitespace\n├── seo.py            # Title, meta, headings, alt text\n├── accessibility.py  # Semantic HTML, ARIA, form labels, links\n├── performance.py    # Size, blocking, requests, image formats\n└── aggregate.py      # Combines scores, assigns grades\n```\n\nThe [Hermes skill](https://github.com/scastile/hermes-biz-scanner/blob/main/SKILL.md) teaches the agent the full workflow. Once loaded:\n\n\"Scan auto repair shops in Tupelo, MS and generate pitch reports\"\n\n...and Hermes handles discovery, scoring, screenshots, and pitch generation.\n\n**GitHub:** [github.com/scastile/hermes-biz-scanner](https://github.com/scastile/hermes-biz-scanner)\n\n## What Actually Surprised Me\n\n**Multi-agent changes everything.** Scoring 4 businesses sequentially works. Scoring them in parallel with isolated subagents is a fundamentally different architecture. One failure doesn't cascade. Context doesn't bloat. And it's 3-4x faster. This is the capability nobody else in the challenge is showing.\n\n**The problems are everywhere.** I didn't cherry-pick these businesses. I ran the scanner against the first results that loaded. Every single one had serious, fixable issues.\n\n**Specificity sells.** \"Your website has problems\" gets ignored. \"Your site loads 58 JavaScript files, has no meta description, and breaks on mobile\" gets responses. The agent generates the specific version automatically.\n\n**Local businesses are underserved.** Most can't tell good design from bad. They know their site \"doesn't feel right\" but can't articulate why. Show them 223 fixed-width elements and suddenly it makes sense.\n\n**This is a real business.** Not a demo, not a toy. This is how I find clients. The scanner does the prospecting, I do the selling.\n\n## Try It\n\n```\ngit clone https://github.com/scastile/hermes-biz-scanner.git\ncd hermes-biz-scanner\npython main.py score https://example.com --name \"Example\" --city \"City\" --industry \"Restaurant\"\nopen output/Example-report.html\n```\n\nOr with Hermes Agent:\n\n\"Scan 5 businesses in my area and rank them by website quality\"\n\n*This is a submission for the Hermes Agent Challenge. If you found this useful, I'd appreciate a reaction — and if you know a business with a terrible website, send them my way.*", "url": "https://wpnews.pro/news/i-built-an-ai-tool-that-finds-bad-local-business-websites-and-pitches-them", "canonical_source": "https://dev.to/paper_scratcher_bafb0086c/i-built-an-ai-tool-that-finds-bad-local-business-websites-and-pitches-them-redesigns-1obo", "published_at": "2026-05-23 22:58:01+00:00", "updated_at": "2026-05-23 23:32:29.266190+00:00", "lang": "en", "topics": ["artificial-intelligence", "developer-tools", "products", "startups"], "entities": ["Hermes Agent", "Hermes Local Business Web Scanner"], "alternates": {"html": "https://wpnews.pro/news/i-built-an-ai-tool-that-finds-bad-local-business-websites-and-pitches-them", "markdown": "https://wpnews.pro/news/i-built-an-ai-tool-that-finds-bad-local-business-websites-and-pitches-them.md", "text": "https://wpnews.pro/news/i-built-an-ai-tool-that-finds-bad-local-business-websites-and-pitches-them.txt", "jsonld": "https://wpnews.pro/news/i-built-an-ai-tool-that-finds-bad-local-business-websites-and-pitches-them.jsonld"}}