Install
$ agentstack add skill-adamjali-claude-skills-site-prospector ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Site Prospector
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.
@ledger/index.md
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.
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 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 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 4 — Build (orchestrate site-forge)
Per picked business, write/update its ledger entry ledger/active/.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 5 — Deploy + disclaimer
site-forge deploys; confirm the live URL and that the demo carries the not-affiliated disclaimer. Record the URL.
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 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).
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.
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/.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.
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).
site-forgenot 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).
- [ ] 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.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: adamjali
- Source: adamjali/claude-skills
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.