Seo Prospector
by @mrmooseyman
Automated SEO prospect research and outreach for web designers, agencies, and freelancers. Use when researching local business prospects, running scheduled p...
clawhub install seo-prospectorπ About This Skill
name: seo-prospector description: >- Automated SEO prospect research and outreach for web designers, agencies, and freelancers. Use when researching local business prospects, running scheduled prospect clusters, creating outreach packages, generating daily summaries, or managing a lead pipeline. Triggers on "research prospect", "find leads", "prospect report", "outreach for [business]", "run today's clusters", "daily prospect summary", "batch research", "generate outreach", "SEO audit prospect", "local business leads", "cold outreach", "lead pipeline". license: Proprietary. See LICENSE.txt for complete terms.
SEO Prospector
Automated local business lead generation for web designers and agencies.
Pipeline: discover β research β audit β report β outreach β track.
How It Works
This skill turns you into a prospecting machine. Point it at a city or industry, and it:
1. Finds businesses with weak websites (via SEO audit + web research) 2. Generates detailed prospect reports with specific issues found 3. Creates personalized outreach (HTML emails, LinkedIn messages, DMs) 4. Tracks everything in a database with dedup + cluster rotation 5. Delivers daily summaries of your pipeline health
Setup (First Run)
Before using, configure your agency details:
# Copy and edit the config file
cp references/config-template.json ~/.openclaw/workspace/leads/data/seo-prospector-config.json
Edit the config with your info:
{
"agency": {
"name": "Your Agency Name",
"owner": "Your Name",
"phone": "(555) 123-4567",
"email": "you@agency.com",
"website": "youragency.com",
"city": "Your City",
"tagline": "Your one-liner value prop"
},
"outreach": {
"default_tone": "casual",
"signature_style": "friendly"
}
}
Quick Reference
Research One Prospect
python3 scripts/research_prospect.py \
--business "Business Name" --domain "example.com" --industry "Restaurant" \
--priority HIGH --cluster "Restaurants"
Batch Research (Today's Rotation)
python3 scripts/batch_research.py --run morning # Today's run_1 cluster
python3 scripts/batch_research.py --run afternoon # Today's run_2 cluster
python3 scripts/batch_research.py --cluster "Restaurants" --limit 5
Generate Outreach
python3 scripts/create_outreach.py --report path/to/report.md --template casual
python3 scripts/create_outreach.py --business "Name" --template professional --format html
Daily Summary
python3 scripts/daily_summary.py # Today, Discord format
python3 scripts/daily_summary.py --date 2026-02-09 --format markdown
Pipeline Management
python3 scripts/prospect_tracker.py today-clusters
python3 scripts/prospect_tracker.py check --business "Name"
python3 scripts/prospect_tracker.py stats
python3 scripts/prospect_tracker.py outreach-ready
Workflow
1. Check Schedule & Dedup
prospect_tracker.py today-clusters to see scheduled clustersprospect_tracker.py check --business "Name" before researching (14-day dedup window)2. Research Phase
Data sources in priority order: 1. SEO Quick Audit (seo_quick_audit.py) β on-page technical analysis
2. Perplexity Search (perplexity_search.py) β business intel, reviews, reputation
3. Browser verification (optional) β visual check for high-priority prospects3. Report Generation
Reports followreferences/research-template.md. Key sections:
Output: ~/.openclaw/workspace/leads/prospects/YYYY-MM-DD-{cluster}/{business}.md
4. Outreach Generation
scripts/create_outreach.py supports:
references/outreach-templates.md)assets/templates/dm-outreach.md)Each outreach package includes:
5. Pipeline Tracking
Every prospect gets tracked viaprospect_tracker.py add. The database enables dedup, coverage stats, cluster tracking, and outreach status.Status pipeline: draft_ready β pending_review β approved β sent β followed_up β responded β closed
Priority Scoring (Strict)
Aim for ~30% HIGH, ~50% MEDIUM, ~20% LOW:
If unsure, default to MEDIUM.
Verification (Mandatory)
Before recording any prospect, verify:
python3 scripts/verify_prospect.py
Skip prospects with: dead URLs, parked domains, suspended hosting, permanently closed businesses.Scripts
| Script | Purpose |
|--------|---------|
| scripts/research_prospect.py | Full pipeline for single prospect |
| scripts/batch_research.py | Research multiple prospects from cluster or input |
| scripts/create_outreach.py | Generate personalized outreach (HTML + plain text) |
| scripts/generate_outreach_batch.py | Batch outreach for all prospects from a date |
| scripts/daily_summary.py | Pipeline summary (Discord or markdown) |
| scripts/prospect_tracker.py | Database, dedup, cluster rotation, stats |
| scripts/verify_prospect.py | URL/domain/phone verification |
| scripts/seo_quick_audit.py | On-page SEO technical audit |
References
| File | Use When |
|------|----------|
| references/research-template.md | Writing or reviewing prospect reports |
| references/outreach-templates.md | Drafting email/LinkedIn/DM outreach |
| references/industry-insights.md | Industry-specific talking points |
| references/objection-handling.md | Handling "we already have a site" etc. |
| references/config-template.json | First-time setup of agency details |
| references/cluster-template.json | Setting up industry cluster rotation |
Assets
assets/templates/email-html.html β Professional HTML email template with merge fieldsassets/templates/email-plain.txt β Plain text email templateassets/templates/linkedin-message.md β LinkedIn outreach templatesassets/templates/dm-outreach.md β DM templates (SMS, IG, FB)assets/examples/example-report.md β Completed prospect reportassets/examples/example-outreach.md β Completed outreach packageCron Integration
Designed for automated daily prospecting:
8:30 AM β SERP Gap Scanner (identify opportunities for 5 industries)
10:00 AM β batch_research.py --run morning (Tier A/B cluster)
11:30 AM β batch_research.py --run afternoon (Tier B/C cluster)
5:00 PM β daily_summary.py (pipeline summary)
Quality Rules
1. Always check for duplicates first (14-day window) 2. Minimum 2 data sources per prospect (SEO audit + web research) 3. Specific findings only β "missing H1 tag" not "SEO issues" 4. Authentic compliments β if their site is good, say so honestly 5. 5 prospects per cluster max β depth over breadth 6. Match outreach tone to industry β casual for restaurants, professional for law firms 7. Verify every prospect before recording β no dead URLs, no parked domains 8. Never exaggerate issues β stick to what the audit actually found