{
  "schemaVersion": "1.0",
  "item": {
    "slug": "seo-prospector",
    "name": "Seo Prospector",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/MrMooseyMan/seo-prospector",
    "canonicalUrl": "https://clawhub.ai/MrMooseyMan/seo-prospector",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/seo-prospector",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=seo-prospector",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "PUBLISH-INSTRUCTIONS.md",
      "SKILL.md",
      "assets/examples/example-high-priority-report.md",
      "assets/examples/example-outreach-package.md",
      "assets/templates/dm-outreach.md",
      "assets/templates/email-html.html"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-05-07T17:22:31.273Z",
      "expiresAt": "2026-05-14T17:22:31.273Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=afrexai-annual-report",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=afrexai-annual-report",
        "contentDisposition": "attachment; filename=\"afrexai-annual-report-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/seo-prospector"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/seo-prospector",
    "agentPageUrl": "https://openagent3.xyz/skills/seo-prospector/agent",
    "manifestUrl": "https://openagent3.xyz/skills/seo-prospector/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/seo-prospector/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "SEO Prospector",
        "body": "Automated local business lead generation for web designers and agencies.\n\nPipeline: discover → research → audit → report → outreach → track."
      },
      {
        "title": "How It Works",
        "body": "This skill turns you into a prospecting machine. Point it at a city or industry, and it:\n\nFinds businesses with weak websites (via SEO audit + web research)\nGenerates detailed prospect reports with specific issues found\nCreates personalized outreach (HTML emails, LinkedIn messages, DMs)\nTracks everything in a database with dedup + cluster rotation\nDelivers daily summaries of your pipeline health"
      },
      {
        "title": "Setup (First Run)",
        "body": "Before using, configure your agency details:\n\n# Copy and edit the config file\ncp references/config-template.json ~/.openclaw/workspace/leads/data/seo-prospector-config.json\n\nEdit the config with your info:\n\n{\n  \"agency\": {\n    \"name\": \"Your Agency Name\",\n    \"owner\": \"Your Name\",\n    \"phone\": \"(555) 123-4567\",\n    \"email\": \"you@agency.com\",\n    \"website\": \"youragency.com\",\n    \"city\": \"Your City\",\n    \"tagline\": \"Your one-liner value prop\"\n  },\n  \"outreach\": {\n    \"default_tone\": \"casual\",\n    \"signature_style\": \"friendly\"\n  }\n}"
      },
      {
        "title": "Research One Prospect",
        "body": "python3 scripts/research_prospect.py \\\n  --business \"Business Name\" --domain \"example.com\" --industry \"Restaurant\" \\\n  --priority HIGH --cluster \"Restaurants\""
      },
      {
        "title": "Batch Research (Today's Rotation)",
        "body": "python3 scripts/batch_research.py --run morning    # Today's run_1 cluster\npython3 scripts/batch_research.py --run afternoon   # Today's run_2 cluster\npython3 scripts/batch_research.py --cluster \"Restaurants\" --limit 5"
      },
      {
        "title": "Generate Outreach",
        "body": "python3 scripts/create_outreach.py --report path/to/report.md --template casual\npython3 scripts/create_outreach.py --business \"Name\" --template professional --format html"
      },
      {
        "title": "Daily Summary",
        "body": "python3 scripts/daily_summary.py                     # Today, Discord format\npython3 scripts/daily_summary.py --date 2026-02-09 --format markdown"
      },
      {
        "title": "Pipeline Management",
        "body": "python3 scripts/prospect_tracker.py today-clusters\npython3 scripts/prospect_tracker.py check --business \"Name\"\npython3 scripts/prospect_tracker.py stats\npython3 scripts/prospect_tracker.py outreach-ready"
      },
      {
        "title": "1. Check Schedule & Dedup",
        "body": "Run prospect_tracker.py today-clusters to see scheduled clusters\nRun prospect_tracker.py check --business \"Name\" before researching (14-day dedup window)"
      },
      {
        "title": "2. Research Phase",
        "body": "Data sources in priority order:\n\nSEO Quick Audit (seo_quick_audit.py) — on-page technical analysis\nPerplexity Search (perplexity_search.py) — business intel, reviews, reputation\nBrowser verification (optional) — visual check for high-priority prospects"
      },
      {
        "title": "3. Report Generation",
        "body": "Reports follow references/research-template.md. Key sections:\n\nExecutive Summary (specific findings, not generic)\nBusiness Overview (what they do, how long, reviews)\nOnline Presence Analysis (SEO audit results with pass/fail)\nWhy [Your Agency] (pitch angle customized to their gaps)\nContact & Next Steps (confidence level + recommended action)\n\nOutput: ~/.openclaw/workspace/leads/prospects/YYYY-MM-DD-{cluster}/{business}.md"
      },
      {
        "title": "4. Outreach Generation",
        "body": "scripts/create_outreach.py supports:\n\nHTML emails (professional, mobile-responsive, branded)\nPlain text emails (casual, no-frills)\nLinkedIn messages (see references/outreach-templates.md)\nDMs (Instagram, Facebook, SMS — see assets/templates/dm-outreach.md)\n\nEach outreach package includes:\n\nEmail draft (HTML or plain text)\nReview checklist for manual QA\nTracking JSON for pipeline status"
      },
      {
        "title": "5. Pipeline Tracking",
        "body": "Every prospect gets tracked via prospect_tracker.py add. The database enables dedup, coverage stats, cluster tracking, and outreach status.\n\nStatus pipeline: draft_ready → pending_review → approved → sent → followed_up → responded → closed"
      },
      {
        "title": "Priority Scoring (Strict)",
        "body": "Aim for ~30% HIGH, ~50% MEDIUM, ~20% LOW:\n\nHIGH: No website OR completely broken site, AND business confirmed active\nMEDIUM: Has website but major SEO gaps (no H1, no meta, no schema, bad mobile), AND confirmed active\nLOW: Decent website with minor issues, OR business activity unconfirmed\n\nIf unsure, default to MEDIUM."
      },
      {
        "title": "Verification (Mandatory)",
        "body": "Before recording any prospect, verify:\n\npython3 scripts/verify_prospect.py <report_path>\n\nSkip prospects with: dead URLs, parked domains, suspended hosting, permanently closed businesses."
      },
      {
        "title": "Scripts",
        "body": "ScriptPurposescripts/research_prospect.pyFull pipeline for single prospectscripts/batch_research.pyResearch multiple prospects from cluster or inputscripts/create_outreach.pyGenerate personalized outreach (HTML + plain text)scripts/generate_outreach_batch.pyBatch outreach for all prospects from a datescripts/daily_summary.pyPipeline summary (Discord or markdown)scripts/prospect_tracker.pyDatabase, dedup, cluster rotation, statsscripts/verify_prospect.pyURL/domain/phone verificationscripts/seo_quick_audit.pyOn-page SEO technical audit"
      },
      {
        "title": "References",
        "body": "FileUse Whenreferences/research-template.mdWriting or reviewing prospect reportsreferences/outreach-templates.mdDrafting email/LinkedIn/DM outreachreferences/industry-insights.mdIndustry-specific talking pointsreferences/objection-handling.mdHandling \"we already have a site\" etc.references/config-template.jsonFirst-time setup of agency detailsreferences/cluster-template.jsonSetting up industry cluster rotation"
      },
      {
        "title": "Assets",
        "body": "assets/templates/email-html.html — Professional HTML email template with merge fields\nassets/templates/email-plain.txt — Plain text email template\nassets/templates/linkedin-message.md — LinkedIn outreach templates\nassets/templates/dm-outreach.md — DM templates (SMS, IG, FB)\nassets/examples/example-report.md — Completed prospect report\nassets/examples/example-outreach.md — Completed outreach package"
      },
      {
        "title": "Cron Integration",
        "body": "Designed for automated daily prospecting:\n\n8:30 AM  — SERP Gap Scanner (identify opportunities for 5 industries)\n10:00 AM — batch_research.py --run morning (Tier A/B cluster)\n11:30 AM — batch_research.py --run afternoon (Tier B/C cluster)\n5:00 PM  — daily_summary.py (pipeline summary)"
      },
      {
        "title": "Quality Rules",
        "body": "Always check for duplicates first (14-day window)\nMinimum 2 data sources per prospect (SEO audit + web research)\nSpecific findings only — \"missing H1 tag\" not \"SEO issues\"\nAuthentic compliments — if their site is good, say so honestly\n5 prospects per cluster max — depth over breadth\nMatch outreach tone to industry — casual for restaurants, professional for law firms\nVerify every prospect before recording — no dead URLs, no parked domains\nNever exaggerate issues — stick to what the audit actually found"
      },
      {
        "title": "Error Handling",
        "body": "Site unreachable: Research via web search only, note limitation\nDuplicate detected: Skip with message, don't waste API calls\nSearch timeout: Continue without, flag as lower confidence\nEmpty cluster: Log and move on (cluster may be exhausted)\nMinimum data: Business name + (domain OR industry) required"
      }
    ],
    "body": "SEO Prospector\n\nAutomated local business lead generation for web designers and agencies.\n\nPipeline: discover → research → audit → report → outreach → track.\n\nHow It Works\n\nThis skill turns you into a prospecting machine. Point it at a city or industry, and it:\n\nFinds businesses with weak websites (via SEO audit + web research)\nGenerates detailed prospect reports with specific issues found\nCreates personalized outreach (HTML emails, LinkedIn messages, DMs)\nTracks everything in a database with dedup + cluster rotation\nDelivers daily summaries of your pipeline health\nSetup (First Run)\n\nBefore using, configure your agency details:\n\n# Copy and edit the config file\ncp references/config-template.json ~/.openclaw/workspace/leads/data/seo-prospector-config.json\n\n\nEdit the config with your info:\n\n{\n  \"agency\": {\n    \"name\": \"Your Agency Name\",\n    \"owner\": \"Your Name\",\n    \"phone\": \"(555) 123-4567\",\n    \"email\": \"you@agency.com\",\n    \"website\": \"youragency.com\",\n    \"city\": \"Your City\",\n    \"tagline\": \"Your one-liner value prop\"\n  },\n  \"outreach\": {\n    \"default_tone\": \"casual\",\n    \"signature_style\": \"friendly\"\n  }\n}\n\nQuick Reference\nResearch One Prospect\npython3 scripts/research_prospect.py \\\n  --business \"Business Name\" --domain \"example.com\" --industry \"Restaurant\" \\\n  --priority HIGH --cluster \"Restaurants\"\n\nBatch Research (Today's Rotation)\npython3 scripts/batch_research.py --run morning    # Today's run_1 cluster\npython3 scripts/batch_research.py --run afternoon   # Today's run_2 cluster\npython3 scripts/batch_research.py --cluster \"Restaurants\" --limit 5\n\nGenerate Outreach\npython3 scripts/create_outreach.py --report path/to/report.md --template casual\npython3 scripts/create_outreach.py --business \"Name\" --template professional --format html\n\nDaily Summary\npython3 scripts/daily_summary.py                     # Today, Discord format\npython3 scripts/daily_summary.py --date 2026-02-09 --format markdown\n\nPipeline Management\npython3 scripts/prospect_tracker.py today-clusters\npython3 scripts/prospect_tracker.py check --business \"Name\"\npython3 scripts/prospect_tracker.py stats\npython3 scripts/prospect_tracker.py outreach-ready\n\nWorkflow\n1. Check Schedule & Dedup\nRun prospect_tracker.py today-clusters to see scheduled clusters\nRun prospect_tracker.py check --business \"Name\" before researching (14-day dedup window)\n2. Research Phase\n\nData sources in priority order:\n\nSEO Quick Audit (seo_quick_audit.py) — on-page technical analysis\nPerplexity Search (perplexity_search.py) — business intel, reviews, reputation\nBrowser verification (optional) — visual check for high-priority prospects\n3. Report Generation\n\nReports follow references/research-template.md. Key sections:\n\nExecutive Summary (specific findings, not generic)\nBusiness Overview (what they do, how long, reviews)\nOnline Presence Analysis (SEO audit results with pass/fail)\nWhy [Your Agency] (pitch angle customized to their gaps)\nContact & Next Steps (confidence level + recommended action)\n\nOutput: ~/.openclaw/workspace/leads/prospects/YYYY-MM-DD-{cluster}/{business}.md\n\n4. Outreach Generation\n\nscripts/create_outreach.py supports:\n\nHTML emails (professional, mobile-responsive, branded)\nPlain text emails (casual, no-frills)\nLinkedIn messages (see references/outreach-templates.md)\nDMs (Instagram, Facebook, SMS — see assets/templates/dm-outreach.md)\n\nEach outreach package includes:\n\nEmail draft (HTML or plain text)\nReview checklist for manual QA\nTracking JSON for pipeline status\n5. Pipeline Tracking\n\nEvery prospect gets tracked via prospect_tracker.py add. The database enables dedup, coverage stats, cluster tracking, and outreach status.\n\nStatus pipeline: draft_ready → pending_review → approved → sent → followed_up → responded → closed\n\nPriority Scoring (Strict)\n\nAim for ~30% HIGH, ~50% MEDIUM, ~20% LOW:\n\nHIGH: No website OR completely broken site, AND business confirmed active\nMEDIUM: Has website but major SEO gaps (no H1, no meta, no schema, bad mobile), AND confirmed active\nLOW: Decent website with minor issues, OR business activity unconfirmed\n\nIf unsure, default to MEDIUM.\n\nVerification (Mandatory)\n\nBefore recording any prospect, verify:\n\npython3 scripts/verify_prospect.py <report_path>\n\n\nSkip prospects with: dead URLs, parked domains, suspended hosting, permanently closed businesses.\n\nScripts\nScript\tPurpose\nscripts/research_prospect.py\tFull pipeline for single prospect\nscripts/batch_research.py\tResearch multiple prospects from cluster or input\nscripts/create_outreach.py\tGenerate personalized outreach (HTML + plain text)\nscripts/generate_outreach_batch.py\tBatch outreach for all prospects from a date\nscripts/daily_summary.py\tPipeline summary (Discord or markdown)\nscripts/prospect_tracker.py\tDatabase, dedup, cluster rotation, stats\nscripts/verify_prospect.py\tURL/domain/phone verification\nscripts/seo_quick_audit.py\tOn-page SEO technical audit\nReferences\nFile\tUse When\nreferences/research-template.md\tWriting or reviewing prospect reports\nreferences/outreach-templates.md\tDrafting email/LinkedIn/DM outreach\nreferences/industry-insights.md\tIndustry-specific talking points\nreferences/objection-handling.md\tHandling \"we already have a site\" etc.\nreferences/config-template.json\tFirst-time setup of agency details\nreferences/cluster-template.json\tSetting up industry cluster rotation\nAssets\nassets/templates/email-html.html — Professional HTML email template with merge fields\nassets/templates/email-plain.txt — Plain text email template\nassets/templates/linkedin-message.md — LinkedIn outreach templates\nassets/templates/dm-outreach.md — DM templates (SMS, IG, FB)\nassets/examples/example-report.md — Completed prospect report\nassets/examples/example-outreach.md — Completed outreach package\nCron Integration\n\nDesigned for automated daily prospecting:\n\n8:30 AM  — SERP Gap Scanner (identify opportunities for 5 industries)\n10:00 AM — batch_research.py --run morning (Tier A/B cluster)\n11:30 AM — batch_research.py --run afternoon (Tier B/C cluster)\n5:00 PM  — daily_summary.py (pipeline summary)\n\nQuality Rules\nAlways check for duplicates first (14-day window)\nMinimum 2 data sources per prospect (SEO audit + web research)\nSpecific findings only — \"missing H1 tag\" not \"SEO issues\"\nAuthentic compliments — if their site is good, say so honestly\n5 prospects per cluster max — depth over breadth\nMatch outreach tone to industry — casual for restaurants, professional for law firms\nVerify every prospect before recording — no dead URLs, no parked domains\nNever exaggerate issues — stick to what the audit actually found\nError Handling\nSite unreachable: Research via web search only, note limitation\nDuplicate detected: Skip with message, don't waste API calls\nSearch timeout: Continue without, flag as lower confidence\nEmpty cluster: Log and move on (cluster may be exhausted)\nMinimum data: Business name + (domain OR industry) required"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/MrMooseyMan/seo-prospector",
    "publisherUrl": "https://clawhub.ai/MrMooseyMan/seo-prospector",
    "owner": "MrMooseyMan",
    "version": "1.0.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/seo-prospector",
    "downloadUrl": "https://openagent3.xyz/downloads/seo-prospector",
    "agentUrl": "https://openagent3.xyz/skills/seo-prospector/agent",
    "manifestUrl": "https://openagent3.xyz/skills/seo-prospector/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/seo-prospector/agent.md"
  }
}