AgentStack
SKILL verified MIT Self-run

Discovery Gseo

skill-the-ai-directory-company-agents-and-skills-discovery-gseo · by The-AI-Directory-Company

>

No reviews yet
0 installs
3 views
0.0% view→install

Install

$ agentstack add skill-the-ai-directory-company-agents-and-skills-discovery-gseo

✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.

Security review

✓ Passed

No 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.

Are you the author of Discovery Gseo? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Discovery GSEO

Discovery GSEO is the upstream layer that determines what to build before the execution skills take over. Without good discovery, all downstream SEO and GEO effort is wasted — targeting the wrong keywords, creating content for topics nobody searches for, missing opportunities competitors are already winning.

This is skill 0 of 5 in the SGEO series: discovery-gseo > technical-sgeo > on-page-sgeo > content-sgeo > off-page-sgeo.

The output of this skill is a prioritized content plan — keywords mapped to pages, scored on 4 dimensions (including GEO opportunity), ordered by impact. Everything else in the SGEO pipeline flows from this plan.

Before you start

Gather the following from the user. If anything is missing, ask before proceeding:

  1. What is your business/product? (Product category, target market, value proposition)
  2. What is your site URL? (Existing site for quick win analysis, or "new site" if starting from scratch)
  3. Who are your known competitors? (3-5 domains — business competitors AND SEO competitors)
  4. What is your current SEO status? (Brand new / some content / established — determines whether Phase 10 is applicable)
  5. Do you have Google Search Console access? (Critical for Phase 10 quick wins)
  6. What is the target country/region? (For localized SERP analysis and volume data)
  7. What is your budget for tools? (None / small / moderate / significant — determines which paid tool paths are available)
  8. How important is AI visibility? (Determines weight of GEO scoring in prioritization — low / medium / high)

If the user says "I just want to find keywords," push back: "Keywords without intent classification, competitor validation, and prioritization scoring produce a random list, not a strategy. Which phase do you want to start from?"

Tool discovery

Before gathering project details, confirm which tools are available. Ask the user directly — do not assume access to any external service.

Browser automation (primary for this skill):

  • [ ] Playwright MCP (live SERP interaction, Autocomplete harvesting, PAA expansion, screenshots)
  • [ ] Chrome DevTools MCP (alternative browser control, performance analysis)

Free tools (no API key required):

  • [ ] WebFetch (fetch any public URL)
  • [ ] WebSearch (search engine queries)
  • [ ] Google PageSpeed Insights API (CWV data, no key needed for basic usage)
  • [ ] Google Rich Results Test (structured data validation)

Paid tools (API key or MCP required):

  • [ ] Google Search Console API (requires OAuth — critical for Phase 10 quick wins)
  • [ ] DataForSEO MCP (SERP data, keyword metrics, backlinks, AI visibility)
  • [ ] Ahrefs API (keyword research, competitor gap analysis, backlink data)
  • [ ] Semrush API (largest keyword database, keyword gap, magic tool)

The agent must:

  1. Check for Playwright MCP or Chrome DevTools MCP FIRST — many scripts in this skill depend on browser automation for live SERP data
  2. If no browser automation available: all scripts fall back to WebSearch + WebFetch, but output quality is reduced (no live Autocomplete, no PAA expansion, no visual SERP analysis)
  3. Present the full checklist to the user and record what is available
  4. Pass the inventory to scripts as context

Phase 1: Generate seed keywords

> Scripts: Run scripts/probe-ai-discovery.py --queries queries.txt to validate seeds against AI visibility. Add your seed queries (e.g., "What are the best [category] tools?") to queries.txt, one per line. > References: See references/seed-generation.md for the 5-source mental model and GEO seed validation methodology.

Seed keywords are your starting points. They are the obvious, broad terms that describe your product, service, or topic. You do not need tools for this — just structured thinking.

Ask yourself these 5 questions and write down every answer:

  1. "What do I sell or offer?" — Product category, service type, problem solved. If you sell invoicing software: "invoicing software", "invoice generator", "billing software."
  2. "What problem does my product solve?" — Pain points. "How to manage invoices", "track payments", "send payment reminders."
  3. "How would a stranger describe what I do?" — Plain language, no jargon. A CI/CD platform user might search "automate code deployment", not your product name.
  4. "What alternatives or competitors exist?" — "[Competitor] alternative", "[Competitor A] vs [Competitor B]", "[category] comparison."
  5. "What technologies, methods, or concepts are relevant?" — Integrations, workflows, adjacent technologies.

Target: 15-30 seeds, 1-4 words each. Do not worry about volume or competition yet.

Example seed list (invoicing SaaS):

invoicing software, invoice generator, online invoicing, billing software,
send invoices online, freelancer invoice tool, invoice template, recurring billing,
payment reminder, invoice tracking, accounting software, [CompetitorA] alternative,
[CompetitorB] vs [CompetitorC], small business invoicing, automated invoicing

GEO seed layer — the discovery step that separates this from traditional keyword research:

Probe AI platforms with broad questions about your space before relying solely on search data:

  • Ask ChatGPT: "What are the best tools for [category]?", "How do I [problem]?"
  • Ask Perplexity: same queries — different citation sources reveal different market landscape
  • Ask Gemini: same queries — yet another AI perspective

Record which brands AI mentions, which topics it covers, and what language it uses. These are GEO-validated seeds — AI already discusses them, so content targeting these topics has citation potential from day one.

Run scripts/probe-ai-discovery.py --queries queries.txt to automate this GEO validation. Keywords that appear in AI responses get a GEO-validated flag in your seed list.

Output: Seed keyword list with GEO validation flags (15-30 seeds).

Phase 2: Expand keyword universe

> Scripts: Run scripts/harvest-autocomplete.py --seeds 'seed1,seed2,seed3' to harvest Google Autocomplete suggestions via live browser. Run scripts/extract-paa.py --seeds 'seed1,seed2' to expand People Also Ask boxes. > References: See references/keyword-expansion.md for tool-by-tool guides and browser automation expansion techniques.

Take each seed and expand it using keyword research tools. The goal is to go from 15-30 seeds to 200-1000+ raw keyword ideas.

Google Keyword Planner (free, volume ranges):

  1. Google Ads > Tools > Keyword Planner > "Discover new keywords."
  2. Enter one seed at a time. Set target country.
  3. Download results as CSV. Repeat for each seed.
  4. Limitation: shows volume ranges (1K-10K), not exact numbers. Ad competition metric, not organic KD.

Paid tools (brief — see reference for full walkthrough):

  • Ahrefs Keywords Explorer: Matching terms, Related terms, Questions, Also rank for.
  • Semrush Keyword Magic Tool: 20B+ keyword database, long-tail discovery, auto-grouping.
  • Ubersuggest: keyword ideas, questions, related terms. Lifetime deal (~$120) is strong value.

Browser-automated expansion (primary for this skill):

Run scripts/harvest-autocomplete.py --seeds 'invoicing software,billing software,invoice generator' — this types each seed into Google with a-z letter suffixes and question prefixes (how/what/why/best), capturing every Autocomplete suggestion. This is data that WebSearch cannot replicate — real-time, localized, intent-rich suggestions.

Run scripts/extract-paa.py --seeds 'invoicing software,billing software' — searches Google for each seed, then click-expands every People Also Ask question, capturing 20-50+ questions per seed with answer snippets and source URLs.

GEO expansion step: Review your expanded list. Flag any keywords that match topics mentioned by AI platforms in Phase 1. These keywords have dual value — organic search traffic plus AI citation potential.

Output: Raw spreadsheet with 200-1000+ keyword ideas, each with at least a volume estimate.

Phase 3: Spy on competitors

> Scripts: Run scripts/competitor-gap-analysis.py --domain yourdomain.com --competitors comp1.com,comp2.com. Run scripts/probe-ai-discovery.py with competitor-relevant queries for GEO gap analysis. > References: See references/competitor-intelligence.md for gap analysis methodology and GEO competitor analysis.

Competitor analysis is the single highest-ROI activity in the discovery process. Other websites have done the research for you.

Step 1: Identify SEO competitors. Search Google for 5-10 of your seed keywords. Note which domains appear repeatedly in the top 10. These are your SEO competitors — even if they sell different products. Pick 3-5, mixing direct product competitors and content competitors (blogs, review sites, aggregators).

Step 2: Keyword gap analysis. Find keywords competitors rank for that you do not.

  • Ahrefs: Competitive Analysis > Content Gap. Enter your domain + 3-5 competitors. Export "Missing" keywords.
  • Semrush: Keyword Gap tool. Compare up to 5 domains. "Missing" tab + "Weak" tab.
  • Free approximation: scripts/competitor-gap-analysis.py uses WebSearch site:competitor.com to catalog their pages and compares against your sitemap.

Step 3: Analyze why competitors rank. For the most interesting gap keywords, visit the ranking pages. Ask: what type of page is it? How deep is the content? What angle do they take? What is weak or outdated? Your goal is to understand the format Google rewards, then create something better.

Step 4: Top pages analysis. Use Ahrefs Site Explorer > Top Pages or Semrush > Organic Research > Pages to find which competitor pages drive the most traffic. Export and add the most relevant keywords.

GEO competitor analysis: For your target queries, check which competitors get cited by AI platforms. Run scripts/probe-ai-discovery.py --queries target-queries.txt --brand YourBrand. Compare: who does AI cite? What do their cited pages look like — structure, data density, author attribution? Where are the gaps — queries where AI cites weak or outdated sources you can replace?

Output: Gap keywords added to master spreadsheet + GEO citation gap analysis.

Phase 4: Mine Google for free ideas

> Scripts: Run scripts/harvest-autocomplete.py, scripts/extract-paa.py --seeds 'seed1,seed2', and scripts/scrape-related-searches.py --seeds 'seed1,seed2'. > References: See references/browser-automation-guide.md for Playwright technique details — the exact tool calls for Autocomplete extraction, PAA expansion, and Related Searches chaining.

Google reveals what people search for through dynamic SERP features. Browser automation extracts this data systematically.

Technique 1: Autocomplete harvesting. Type seeds + a-z suffixes, question prefixes (how/what/why/best). Run scripts/harvest-autocomplete.py — this uses Playwright to interact with live Google Autocomplete, capturing real-time localized suggestions.

Technique 2: PAA expansion. Search each seed, click-expand all PAA boxes. Each click reveals 2-3 new questions. Run scripts/extract-paa.py to capture 20-50+ questions per seed with answer snippets and source URLs. Each question is a potential H2 heading or standalone article.

Technique 3: Related Searches chaining. Scroll to the bottom of Google SERPs, extract Related Searches, click each for 2nd-level expansion. Run scripts/scrape-related-searches.py for 2-level deep chaining. This uncovers lateral keyword ideas that tools miss.

Technique 4: AnswerThePublic. 3 free searches per day at answerthepublic.com. Enter your broadest seed keywords. Export the questions, prepositions, and comparisons data.

Technique 5: GSC mining (existing sites only). GSC > Performance > Queries tab. Sort by impressions descending. Find keywords with high impressions but low CTR (title/description needs improvement) and keywords at positions 8-20 (striking distance to page 1).

Output: Question-based and long-tail keywords added to master spreadsheet.

Phase 5: Listen to communities

> Scripts: Run scripts/scrape-community-keywords.py --topic 'your category' --platforms reddit,hn to extract keyword candidates from community discussions. > References: See references/community-listening.md for platform-by-platform guide and language pattern extraction methodology.

Keyword tools rely on historical search data. Communities show you what people are asking right now, in their own language, before tools catch up.

Where to look:

  • Reddit: Search for your category in relevant subreddits. Read titles and comments of popular posts. Watch for repeated questions, complaints about tools, comparison language.
  • Hacker News: Search hn.algolia.com for your category. Read "Ask HN" threads for tool recommendations.
  • Twitter/X: Search for your category, competitor names, problem descriptions.
  • Quora: Questions mirror Google searches directly. Search your topic.
  • Product Hunt: Similar products — read comments for needs, comparisons, frustrations.
  • Industry forums/Discord/Slack: Niche communities where your customers congregate.

What to capture — language patterns, not keyword data: Turn observations into keyword candidates:

  • "I need a way to automatically send payment reminders" → "automatic payment reminder software"
  • "Is there a Stripe alternative that handles invoicing too?" → "Stripe alternative with invoicing"
  • "How do I set up recurring billing without a developer?" → "recurring billing no code"

Community-sourced keywords often show zero volume in tools because the volume is too low to register. Do not ignore them — low volume with perfect intent can be more valuable than high volume with vague intent.

GEO dimension: Community language maps directly to AI query language. The questions people ask on Reddit are the same questions they ask ChatGPT. Pain points described in forums are the same problems people describe to AI assistants. Community-sourced keywords have dual value: organic search traffic AND AI citation opportunity.

Output: Community-sourced keyword candidates added to master spreadsheet.

Phase 6: Evaluate and filter keywords

> Scripts: Run scripts/evaluate-keywords.py --keywords raw-keywords.txt --max-kd 50 to enrich your keyword list with volume/KD estimates and GEO scores. Run scripts/probe-ai-discovery.py to assess AI citation potential for your keywords. > References: See references/evaluation-and-scoring.md for volume/KD interpretation scales, GEO score methodology, and filtering rules.

You now have a large, messy spreadsheet with hundreds or thousands of keywords from all five sources. Time to evaluate and filter.

The 3 SEO metrics for every keyword:

  • Volume: Monthly searches. 10,000+ = high/competitive. 1,000-10,000 = medium/sweet spot for mid-authority. 100-1,000 = low-medium/sweet spot for new sites. 40-50 for new sites, adjust based on authority)
  • Remove duplicates and near-duplicates (keep higher-volume version — Google understands synonyms)

Spreadsheet structure after filtering:

| Keyword | Volume | KD | Intent | GEO Score | Source | Priority | Target URL | Status |

Output: Filtered, enriched keyword spreadsheet with volume, KD, and GEO scores.

Phase 7: Classify search intent

> Scripts: Run scripts/classify-intent-live.py --keywords keywords.txt to search each keyword via Playwright, analyze SERP composition, classify intent, and flag AI-answerable queries. > References: See references/evaluation-and-scoring.md for the 4 intent types with signals, content types, and business value.

Search intent is the most important and most overlooked step. If you create the wrong content type for a keyword, you will not rank — regardless of content quality.

The 4 intent types:

  • **Informational — "I want

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet — be the first.

Versions

  • v0.1.0 Imported from the upstream source.