agentsclimarketplace

Site prospector

Skill adamjali/claude-skills/plugins/site-prospector

Practical Claude Code skills as installable plugins — research & teardowns, web build/deploy, image search, repo audit, disk cleanup, outreach, email broadcasts, and a skill generator.

Install
npx -y skills add adamjali/claude-skills --skill site-prospector

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Find local businesses worth pitching a free demo website to, present them with honest reasoning, let the user pick, then for each: verify the facts, build a site via site-forge, deploy it, and draft tailored multi-channel outreach — logging everything to a bounded ledger. Use whenever the user wants to find prospects, leads, or candidates for web-design / demo-site outreach, scout local businesses with no or weak websites, run client-finding for the website business, or "find someone to pitch" — even without saying "site-prospector". Runs autonomously and orchestrates site-forge for the build.

SKILL.md

6.4 KB, as published. Nobody here has run it

Site Prospector

<objective> The front of the local-website business: find businesses that would benefit from a free demo site, surface them with honest reasoning, and — for the ones the user picks — verify the facts, build and deploy a site, and produce ready-to-send outreach. It **orchestrates `site-forge`** for the build (Claude invokes it; they hand off via a shared brief file) and keeps a **bounded ledger** so the pipeline never loses state and never grows forever. Truth discipline is core: claims get verified or labeled, and demo sites carry a not-affiliated disclaimer. </objective> <context> @ledger/index.md </context>

<execution_context> Autonomous by default — a hands-off finder→builder. Required stops: (1) the user picks which candidates to pursue (Phase 2), and (2) anything that sends or publishes externally.

  • 🟢 Auto: search, evaluate, fact-verify, write the brief, invoke site-forge (in auto), deploy the demo, draft outreach, update the ledger.
  • 🟡 Ask: which candidates to build (always); repointing form leads; custom domains.
  • 🔴 Never: send/publish outreach without explicit go (drafts only); publish a flagged-unverified claim without the demo disclaimer; pay for anything. Quality note: each demo is built as well as is autonomously reachable, then a per-site "upgrade to full" flag is surfaced so a winner can be re-run with site-forge full for Gemini/Veo media. </execution_context>
<process> <phase name="1_scout"> ## Phase 1 — Scout candidates Find businesses matching the brief (trade + area) via jina/web/maps — see `references/candidate-search.md`. Strongest signal: a real, reputable business with **no working website or a parked/for-sale domain**. Gather per candidate: name, owner, contact channels, current web presence (or lack), and one specific honest hook. </phase> <phase name="2_present_and_pick"> ## Phase 2 — Present + pick Present candidates with **honest reasoning** (hook, reputation reality, fit, ease) using the rubric in `references/candidate-search.md`. Let the user pick one or more (AskUserQuestion). No cheerleading — surface the weak ones as weak. </phase> <phase name="3_verify"> ## Phase 3 — Verify facts (truth discipline) Before building, verify each pick — license, ratings, affiliations, years, entity identity — per `references/fact-verification.md` (Sunbiz, DBPR, BBB, manufacturer locators, Yelp/BuildZoom; watch the same-name entity trap). Mark each claim **verified** or **aspirational**; aspirational claims may go on a *demo* with the disclaimer, never presented as fact. </phase> <phase name="4_build"> ## Phase 4 — Build (orchestrate site-forge) Per picked business, write/update its ledger entry `ledger/active/<slug>.md` (details, verified facts, hook, voice, assets — the entry doubles as the build brief, so there's one file, not two). Then **invoke the `site-forge` skill in `auto` mode**, pointing it at that file. site-forge owns the build — do not duplicate its recipes here. If `site-forge` isn't installed, say so and offer to install/locate it. </phase> <phase name="5_deploy"> ## Phase 5 — Deploy + disclaimer site-forge deploys; confirm the live URL and that the demo carries the not-affiliated disclaimer. Record the URL. </phase> <phase name="6_outreach"> ## Phase 6 — Tailored outreach (drafts only) Generate a copy-pastable outreach page with `scripts/outreach-page.sh` — sequenced FB DM → email → text, cross-referenced, with timing + one follow-up — per `references/outreach.md`. **Draft only; never send.** Pricing/positioning in `references/monetization.md`. </phase> <phase name="7_ledger"> ## Phase 7 — Ledger update Append/update the entry per `references/docs-ledger.md`: status, URL, verified facts, outreach drafted, decisions, $. Apply the rolling-window bound (recent entries full; older compacted to one-liners in `ledger/archive.md`). </phase> </process>

<saved_rules_format> Accumulate learnings in ledger/lessons.md (durable). Format: - {topic}: {rule} — set {YYYY-MM-DD ET} e.g. "channel: FB DM first for solo trades", "verify: same-name LLC trap is common", "skip: businesses with a current modern site". Surface relevant rules at the start of a run. </saved_rules_format>

Bounded ledger (never grows forever)

  • ledger/index.md (@-loaded): one line per business — slug · status · URL · last-touched. Pruned to the most recent ~30; older roll to archive.md.
  • ledger/active/<slug>.md — full entry while in-flight.
  • ledger/archive.md — one-liners for closed/cold businesses.
  • ledger/lessons.md — saved rules. Format + rollover rule: references/docs-ledger.md.

<recovery_protocol> Interrupted mid-scout → resume from candidates in ledger/active/. Mid-build → check whether the site-forge run produced a deploy; resume from Phase 5. Mid-outreach → the drafts page is idempotent; regenerate. Never re-send (drafts only, nothing to double-send). </recovery_protocol>

<error_handling>

  • site-forge not installed → surface; offer to install/locate. Never inline its build logic.
  • Fact sources blocked/empty → fall back to a researcher agent; an unverifiable claim stays aspirational, never asserted.
  • Same-name entity ambiguity → stop and confirm identity before building.
  • Ledger index > ~30 entries → roll oldest to archive.md (one-liners). </error_handling>

<success_criteria>

  • Candidates presented with honest, evidence-based reasoning.
  • User explicitly picked which to pursue.
  • Facts verified or labeled aspirational; demo carries the disclaimer.
  • Site built via site-forge (not re-implemented here) and deployed.
  • Outreach drafted (never sent), sequenced + cross-referenced.
  • Ledger updated; index bounded; lessons captured. </success_criteria>

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.