Not in the top 1,000 by GitHub stars

geoly-ai/geo-skills

GEO skills for OpenClaw, including site audit, llms-txt optimization, schema generation and more.

History

Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.

View weekly changes

geo-ai-plugin-builder/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

fa042a4919b1 → fa042a4919b1

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Local scripts

First observation → fa042a4919b1

No earlier version was observed for comparison.

Compare on GitHub

geo-bulk-processor/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

fa042a4919b1 → fa042a4919b1

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Local scripts

First observation → fa042a4919b1

No earlier version was observed for comparison.

Compare on GitHub

geo-citation-writer/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

fa042a4919b1 → fa042a4919b1

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Local scripts

First observation → fa042a4919b1

No earlier version was observed for comparison.

Compare on GitHub

geo-competitor-scanner/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

fa042a4919b1 → fa042a4919b1

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → fa042a4919b1

No earlier version was observed for comparison.

Compare on GitHub

geo-content-optimizer/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

fa042a4919b1 → fa042a4919b1

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Local scripts

First observation → fa042a4919b1

No earlier version was observed for comparison.

Compare on GitHub

geo-content-publisher/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

fa042a4919b1 → fa042a4919b1

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Local scripts

First observation → fa042a4919b1

No earlier version was observed for comparison.

Compare on GitHub

geo-conversion-optimizer/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

fa042a4919b1 → fa042a4919b1

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Local scripts

First observation → fa042a4919b1

No earlier version was observed for comparison.

Compare on GitHub

geo-fact-checker/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

fa042a4919b1 → fa042a4919b1

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Local scripts

First observation → fa042a4919b1

No earlier version was observed for comparison.

Compare on GitHub

geo-hallucination-checker/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

fa042a4919b1 → fa042a4919b1

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Local scripts

First observation → fa042a4919b1

No earlier version was observed for comparison.

Compare on GitHub

geo-human-editor/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

fa042a4919b1 → fa042a4919b1

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Local scripts

First observation → fa042a4919b1

No earlier version was observed for comparison.

Compare on GitHub

geo-llms-txt/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

fa042a4919b1 → fa042a4919b1

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → fa042a4919b1

No earlier version was observed for comparison.

Compare on GitHub

geo-local-optimizer/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

fa042a4919b1 → fa042a4919b1

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Local scripts

First observation → fa042a4919b1

No earlier version was observed for comparison.

Compare on GitHub

geo-metrics-tracker/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

fa042a4919b1 → fa042a4919b1

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Local scripts

First observation → fa042a4919b1

No earlier version was observed for comparison.

Compare on GitHub

geo-multilingual-optimizer/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

fa042a4919b1 → fa042a4919b1

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Local scripts

First observation → fa042a4919b1

No earlier version was observed for comparison.

Compare on GitHub

geo-multimodal-tagger/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

fa042a4919b1 → fa042a4919b1

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Local scripts

First observation → fa042a4919b1

No earlier version was observed for comparison.

Compare on GitHub

geo-prompt-researcher/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

fa042a4919b1 → fa042a4919b1

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Local scripts

First observation → fa042a4919b1

No earlier version was observed for comparison.

Compare on GitHub

geo-report-builder/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

fa042a4919b1 → fa042a4919b1

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Local scripts

First observation → fa042a4919b1

No earlier version was observed for comparison.

Compare on GitHub

geo-schema-gen/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

fa042a4919b1 → fa042a4919b1

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → fa042a4919b1

No earlier version was observed for comparison.

Compare on GitHub

geo-sentiment-optimizer/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

fa042a4919b1 → fa042a4919b1

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Local scripts

First observation → fa042a4919b1

No earlier version was observed for comparison.

Compare on GitHub

geo-site-audit/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

fa042a4919b1 → fa042a4919b1

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → fa042a4919b1

No earlier version was observed for comparison.

Compare on GitHub

geo-som-strategist/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

fa042a4919b1 → fa042a4919b1

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Local scripts

First observation → fa042a4919b1

No earlier version was observed for comparison.

Compare on GitHub

geo-structured-writer/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

fa042a4919b1 → fa042a4919b1

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Local scripts

First observation → fa042a4919b1

No earlier version was observed for comparison.

Compare on GitHub

geo-studio/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

fa042a4919b1 → fa042a4919b1

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Local scripts

First observation → fa042a4919b1

No earlier version was observed for comparison.

Compare on GitHub

geo-template-library/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Local scripts → After Local scripts

fa042a4919b1 → fa042a4919b1

Diff text is unavailable under the recorded licenses. Line counts and the GitHub link remain available.

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Local scripts

First observation → fa042a4919b1

No earlier version was observed for comparison.

Compare on GitHub

View on GitHubAdd to my skills

Verified commit fa042a4919b1d661a03b068346958e7c0488b885

14GitHub stars
0stars in 7 days
24skills in this repository
0commits in 30 days

Heat

0.3
  • Star growth, last 7 daysNot available
  • Star growth, last 24 hoursNot available
  • Rank movement, last 7 daysNot available
  • Commits, last 30 daysNot available
  • Accounts asking about it through MCP, last 7 daysNot available
  • Hot votes this weekNot available

Heat never changes the order by stars, and sponsorship never touches it. How heat works

Stars over time

Oct 25, 2026Oct 25, 202614

30-day change not yet available: not enough history.

Individual skills in this repository

How it works

geo-ai-plugin-builder

When your agent uses it

Master orchestrator for turning high-value GEO content and capabilities into AI plugins/tools across ChatGPT, Claude, Perplexity, Gemini and other ecosystems. Use this skill whenever the user mentions building, designing, packaging, or standardizing AI plugins/tools around their content, APIs, or GEO assets, or wants to move from being passively cited to actively embedded inside AI workflows.

What it loads into context

Frontmatter

94 tokens

Always available to the agent

SKILL.md

2,120 tokens

When the skill is activated

Reference documents

1,250 tokens

Loaded on request

Token counts are estimates. Scripts run separately; they are not counted as reference context.

The playbook

  1. When to use this skill
  2. Mindset and principles
  3. High-level workflow
  4. Information to ask from the user
  5. Output formats
  6. GEO-specific guidance
  7. Using bundled scripts and references
  8. Example use cases
  9. Working style

Scripts executed separately

  • scripts/plugin_blueprint_generator.py

Files

  • SKILL.mdcore9,969 bytes
  • evals/evals.jsonasset2,097 bytes
  • references/geo-ai-plugin-patterns.mddoc5,699 bytes
  • scripts/plugin_blueprint_generator.pyruns8,494 bytes

No excerpt is shown for this license. Read the source on GitHub.

View the complete source on GitHub

Skills included

  • geo-ai-plugin-builder
  • geo-bulk-processor
  • geo-citation-writer
  • geo-competitor-scanner
  • geo-content-optimizer
  • geo-content-publisher
  • geo-conversion-optimizer
  • geo-fact-checker
  • geo-hallucination-checker
  • geo-human-editor
  • geo-llms-txt
  • geo-local-optimizer
  • geo-metrics-tracker
  • geo-multilingual-optimizer
  • geo-multimodal-tagger
  • geo-prompt-researcher
  • geo-report-builder
  • geo-schema-gen
  • geo-sentiment-optimizer
  • geo-site-audit
  • geo-som-strategist
  • geo-structured-writer
  • geo-studio
  • geo-template-library

Repository facts

License
No license detected
Created
Feb 23, 2026
Last pushed
Mar 10, 2026
Forks
4
Open issues
0
Project activity
Slowing

Before you install

Network or broad shell

Automated signals, not a guarantee

Checked Nov 7, 2026

Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.

Show 71 notes
  • geo-citation-writer/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • geo-citation-writer/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • geo-citation-writer/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • geo-citation-writer/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • geo-citation-writer/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • geo-competitor-scanner/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • geo-competitor-scanner/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • geo-competitor-scanner/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • geo-competitor-scanner/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • geo-competitor-scanner/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • geo-content-optimizer/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • geo-content-optimizer/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • geo-content-optimizer/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • geo-content-optimizer/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • geo-content-optimizer/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • geo-content-optimizer/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • geo-content-publisher/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • geo-fact-checker/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • geo-fact-checker/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • geo-fact-checker/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
Show all 573 signals by file

geo-ai-plugin-builder/references/geo-ai-plugin-patterns.md

  • Network accessline 43
    {       "label": "Implement automated campaign reporting",       "url": "https://example.com/docs/auto-reporting"
  • Network accessline 44
    "label": "Implement automated campaign reporting",       "url": "https://example.com/docs/auto-reporting"     }
  • Network accessline 45
    "url": "https://example.com/docs/auto-reporting"
  • Network accessline 116
    "name": "Marathon Pro Runner",       "reason": "Best for neutral runners doing high weekly mileage.",       "url": "https://example.com/products/shoe_123"
  • Network accessline 117
    "reason": "Best for neutral runners doing high weekly mileage.",       "url": "https://example.com/products/shoe_123"     }
  • Network accessline 118
    "url": "https://example.com/products/shoe_123"
  • Network accessline 186
    "title": "Marketing Analytics Basics",       "snippet": "An overview of attribution models and ROAS.",       "url": "https://example.com/docs/analytics-basics"
  • Network accessline 187
    "snippet": "An overview of attribution models and ROAS.",       "url": "https://example.com/docs/analytics-basics"     }
  • Network accessline 188
    "url": "https://example.com/docs/analytics-basics"

geo-ai-plugin-builder/scripts/plugin_blueprint_generator.py

  • Executable scriptline 1
    Executable file

geo-bulk-processor/scripts/geo_bulk_pipeline.py

  • Executable scriptline 1
    Executable file

geo-citation-writer/scripts/generate_content.py

  • Executable scriptline 1
    #!/usr/bin/env python3

geo-competitor-scanner/SKILL.md

  • Network accessline 156
    python scripts/analyze_page.py https://competitor.com/pricing \
  • Network accessline 178
    python scripts/bulk_scan.py https://competitor.com/sitemap.xml \

geo-competitor-scanner/references/scan-methodology.md

  • Network accessline 49
    - WebSite schema (with SearchAction if applicable) - Article/Product/FAQ schemas on appropriate pages - Valid @context (https://schema.org)
  • Network accessline 51
    - Valid @context (https://schema.org)

geo-competitor-scanner/scripts/scan_competitors.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 23
    def __init__(self, domain, timeout=10):         self.domain = domain.replace('https://', '').replace('http://', '').rstrip('/')         self.base_url = f"https://{self.domain}"
  • Network accessline 24
    self.domain = domain.replace('https://', '').replace('http://', '').rstrip('/')         self.base_url = f"https://{self.domain}"         self.timeout = timeout
  • Network accessline 25
    self.base_url = f"https://{self.domain}"
  • Network accessline 35
    def fetch(self, path=''):
  • Network accessline 37
    url = urljoin(self.base_url, path)         try:             resp = requests.get(url, timeout=self.timeout, allow_redirects=True)
  • Network accessline 38
    try:             resp = requests.get(url, timeout=self.timeout, allow_redirects=True)             return resp
  • Network accessline 39
    resp = requests.get(url, timeout=self.timeout, allow_redirects=True)
  • Network accessline 49
    llms = self.fetch('/llms.txt')
  • Network accessline 56
    robots = self.fetch('/robots.txt')
  • Network accessline 71
    home = self.fetch('/')
  • Network accessline 117
    home = self.fetch('/')
  • Network accessline 147
    home = self.fetch('/')
  • Network accessline 156
    about = self.fetch('/about')
  • Network accessline 181
    comp_pages = []         for path in comp_paths:             resp = self.fetch(path)
  • Network accessline 182
    for path in comp_paths:             resp = self.fetch(path)             if resp and resp.status_code == 200:
  • Network accessline 183
    resp = self.fetch(path)
  • Network accessline 188
    about = self.fetch('/about')
  • Network accessline 189
    whatis = self.fetch('/what-is')

geo-content-optimizer/scripts/analyze_content.py

  • Executable scriptline 1
    #!/usr/bin/env python3

geo-content-optimizer/scripts/optimize_content.py

  • Executable scriptline 1
    #!/usr/bin/env python3

geo-content-publisher/references/publishing-templates.md

  • Network accessline 159
    {   "@context": "https://schema.org",
  • Network accessline 160
    "@context": "https://schema.org",
  • Network accessline 162
    "headline": "TITLE HERE",   "description": "1–2 sentence summary of the article.",   "url": "https://example.com/path",
  • Network accessline 163
    "description": "1–2 sentence summary of the article.",   "url": "https://example.com/path",   "author": {
  • Network accessline 164
    "url": "https://example.com/path",
  • Network accessline 172
    "logo": {       "@type": "ImageObject",       "url": "https://example.com/logo.png"
  • Network accessline 173
    "@type": "ImageObject",       "url": "https://example.com/logo.png"     }
  • Network accessline 174
    "url": "https://example.com/logo.png"
  • Network accessline 176
    },   "datePublished": "2025-01-01",   "mainEntityOfPage": "https://example.com/path"
  • Network accessline 177
    "datePublished": "2025-01-01",   "mainEntityOfPage": "https://example.com/path" }
  • Network accessline 178
    "mainEntityOfPage": "https://example.com/path"
  • Network accessline 185
    {   "@context": "https://schema.org",
  • Network accessline 186
    "@context": "https://schema.org",

geo-content-publisher/scripts/generate_channel_plan.py

  • Executable scriptline 1
    Executable file

geo-content-publisher/scripts/generate_page_structure_snippet.py

  • Executable scriptline 1
    Executable file

geo-conversion-optimizer/scripts/conversion_blueprints.py

  • Executable scriptline 1
    Executable file

geo-fact-checker/scripts/claim_extractor.py

  • Executable scriptline 1
    Executable file

geo-hallucination-checker/scripts/hallucination_checker.py

  • Executable scriptline 1
    Executable file

geo-human-editor/scripts/humanize_content.py

  • Executable scriptline 1
    #!/usr/bin/env python3

geo-llms-txt/SKILL.md

  • Network accessline 152
    https://[your-domain]/llms.txt

geo-llms-txt/references/examples.md

  • Network accessline 21
    - [Payments](https://stripe.com/payments): Accept payments online and in-person with unified APIs
  • Network accessline 22
    - [Billing](https://stripe.com/billing): Subscription management and invoicing for SaaS companies
  • Network accessline 23
    - [Connect](https://stripe.com/connect): Marketplace and platform payments with automated payouts
  • Network accessline 24
    - [Identity](https://stripe.com/identity): ID verification with document scanning and biometric checks
  • Network accessline 28
    - [API Reference](https://stripe.com/docs/api): Complete REST API documentation with code examples
  • Network accessline 29
    - [Quickstart](https://stripe.com/docs/quickstart): Set up your first payment in 5 minutes
  • Network accessline 30
    - [Webhooks](https://stripe.com/docs/webhooks): Event-driven architecture for payment notifications
  • Network accessline 31
    - [Testing](https://stripe.com/docs/testing): Test card numbers and sandbox environment guide
  • Network accessline 35
    - [Stripe Sessions](https://stripe.com/sessions): Annual conference recordings and presentations
  • Network accessline 36
    - [Engineering Blog](https://stripe.com/blog/engineering): Technical deep-dives on distributed systems
  • Network accessline 37
    - [Atlas](https://stripe.com/atlas): Company incorporation service for global startups
  • Network accessline 41
    - [About Stripe](https://stripe.com/about): Company history, mission, and leadership team
  • Network accessline 42
    - [Careers](https://stripe.com/jobs): Engineering, product, and business roles worldwide
  • Network accessline 43
    - [Press](https://stripe.com/newsroom): News, media kit, and brand assets
  • Network accessline 44
    - [Support](https://support.stripe.com): Help center, documentation search, and contact options
  • Network accessline 65
    - [Getting Started](https://react.dev/learn): Interactive tutorial for React beginners
  • Network accessline 66
    - [Thinking in React](https://react.dev/learn/thinking-in-react): Mental model for component-based architecture
  • Network accessline 67
    - [Hooks](https://react.dev/reference/react): useState, useEffect, and custom hooks reference
  • Network accessline 68
    - [Components](https://react.dev/reference/react/components): Built-in components and APIs
  • Network accessline 72
    - [Server Components](https://react.dev/blog/2023/03/22/react-server-components): Rendering React on the server
  • Network accessline 73
    - [Concurrent Features](https://react.dev/blog/2022/03/29/react-v18): Suspense, transitions, and automatic batching
  • Network accessline 74
    - [Performance](https://react.dev/learn/render-and-commit): Optimization techniques and profiling tools
  • Network accessline 75
    - [Testing](https://react.dev/learn/thinking-in-react#step-5-add-inverse-data-flow): Testing components and hooks
  • Network accessline 79
    - [Next.js](https://nextjs.org): Full-stack React framework with SSR and static generation
  • Network accessline 80
    - [React Native](https://reactnative.dev): Build native mobile apps with React
  • Network accessline 81
    - [Redux](https://redux.js.org): State management for complex applications
  • Network accessline 82
    - [React Router](https://reactrouter.com): Declarative routing for single-page applications
  • Network accessline 86
    - [GitHub](https://github.com/facebook/react): Source code, issues, and pull requests
  • Network accessline 87
    - [Discord](https://discord.gg/react): Community chat and help channels
  • Network accessline 88
    - [Blog](https://react.dev/blog): Release notes, RFCs, and team announcements
  • Network accessline 89
    - [Conf](https://react.dev/community/conferences): Upcoming React conferences and meetups
  • Network accessline 109
    - [Wool Runners](https://www.allbirds.com/products/mens-wool-runners): Everyday sneakers made from merino wool
  • Network accessline 110
    - [Tree Runners](https://www.allbirds.com/products/mens-tree-runners): Lightweight shoes from eucalyptus fiber
  • Network accessline 111
    - [Tree Dashers](https://www.allbirds.com/products/mens-tree-dashers): Performance running shoes with SweetFoam soles
  • Network accessline 112
    - [Wool Loungers](https://www.allbirds.com/products/mens-wool-loungers): Slip-on style for casual wear
  • Network accessline 116
    - [Materials](https://www.allbirds.com/pages/sustainability): Wool, tree fiber, sugarcane, and recycled packaging explained
  • Network accessline 117
    - [Carbon Footprint](https://www.allbirds.com/pages/carbon-footprint): Real-time carbon labeling for every product
  • Network accessline 118
    - [Climate Neutral](https://www.allbirds.com/pages/climate-neutral): Carbon offset programs and regenerative agriculture
  • Network accessline 119
    - [Sustainability Report](https://www.allbirds.com/pages/sustainability-report): Annual impact assessment and goals
  • Network accessline 123
    - [Size Guide](https://www.allbirds.com/pages/size-guide): Foot measuring tips and fit recommendations
  • Network accessline 124
    - [Care Instructions](https://www.allbirds.com/pages/care): How to wash and maintain wool and tree shoes
  • Network accessline 125
    - [Returns](https://www.allbirds.com/pages/returns): 30-day no-questions-asked return policy
  • Network accessline 126
    - [Store Locator](https://www.allbirds.com/pages/stores): Find physical retail locations
  • Network accessline 130
    - [Our Story](https://www.allbirds.com/pages/about): Founders, mission, and company history
  • Network accessline 131
    - [Materials Innovation](https://www.allbirds.com/pages/materials-innovation): SweetFoam, Trino, and future materials
  • Network accessline 132
    - [Careers](https://www.allbirds.com/pages/careers): Jobs in design, engineering, and retail
  • Network accessline 133
    - [Press](https://www.allbirds.com/pages/press): Media coverage, press releases, and brand assets
  • Network accessline 153
    - [World](https://www.nytimes.com/section/world): International news and foreign correspondents
  • Network accessline 154
    - [U.S.](https://www.nytimes.com/section/us): National politics, policy, and breaking news
  • Network accessline 155
    - [Politics](https://www.nytimes.com/section/politics): Congress, White House, and elections
  • Network accessline 156
    - [Business](https://www.nytimes.com/section/business): Markets, economy, and corporate news
  • Network accessline 157
    - [Tech](https://www.nytimes.com/section/technology): Silicon Valley, AI, and digital culture
  • Network accessline 158
    - [Science](https://www.nytimes.com/section/science): Research discoveries and climate coverage
  • Network accessline 162
    - [Investigations](https://www.nytimes.com/news-event/nyt-investigations): Long-form investigative journalism
  • Network accessline 163
    - [The Daily](https://www.nytimes.com/column/the-daily): Daily news podcast with Michael Barbaro
  • Network accessline 164
    - [Opinion](https://www.nytimes.com/section/opinion): Editorials, guest essays, and columnist commentary
  • Network accessline 165
    - [Cooking](https://cooking.nytimes.com): 20,000+ recipes with advanced search and meal planning
  • Network accessline 166
    - [Games](https://www.nytimes.com/crosswords): Wordle, Crossword, Spelling Bee, and Connections
  • Network accessline 167
    - [Wirecutter](https://www.nytimes.com/wirecutter): Product reviews and buying guides
  • Network accessline 171
    - [About](https://www.nytco.com/company): Corporate information, leadership, and diversity data
  • Network accessline 172
    - [Careers](https://www.nytco.com/careers): Journalism, tech, and business opportunities
  • Network accessline 173
    - [Ethical Standards](https://www.nytco.com/ethical-journalism): Editorial standards and corrections policy
  • Network accessline 174
    - [Contact](https://help.nytimes.com/hc/en-us): Customer support and subscription help
  • Network accessline 195
    - [Deployments](https://vercel.com/docs/concepts/deployments/overview): Git-connected deployment with automatic HTTPS
  • Network accessline 196
    - [Preview Environments](https://vercel.com/docs/concepts/deployments/preview-deployments): Unique URLs for every pull request
  • Network accessline 197
    - [Edge Network](https://vercel.com/docs/concepts/edge-network/overview): Global CDN with 100+ locations
  • Network accessline 198
    - [Serverless Functions](https://vercel.com/docs/concepts/functions/serverless-functions): Node.js, Python, Go, and Ruby API routes
  • Network accessline 199
    - [Storage](https://vercel.com/storage): KV, Postgres, and Blob storage for serverless apps
  • Network accessline 203
    - [Next.js](https://nextjs.org/docs): React framework with SSR, static generation, and API routes
  • Network accessline 204
    - [Nuxt](https://nuxt.com/docs): Vue framework with auto-routing and server-side rendering
  • Network accessline 205
    - [SvelteKit](https://kit.svelte.dev/docs): Svelte framework with filesystem-based routing
  • Network accessline 206
    - [Astro](https://docs.astro.build): Content-focused static site generator
  • Network accessline 207
    - [Remix](https://remix.run/docs): Full-stack web framework with nested routing
  • Network accessline 211
    - [Getting Started](https://vercel.com/docs/getting-started-with-vercel): Import a project and deploy in 2 minutes
  • Network accessline 212
    - [Environment Variables](https://vercel.com/docs/concepts/projects/environment-variables): Secure secrets management
  • Network accessline 213
    - [Custom Domains](https://vercel.com/docs/concepts/projects/custom-domains): Connect your own domain with automatic SSL
  • Network accessline 214
    - [Analytics](https://vercel.com/docs/concepts/analytics): Web Vitals and visitor insights
  • Network accessline 218
    - [Security](https://vercel.com/security): SOC 2 Type II, GDPR, and compliance certifications
  • Network accessline 219
    - [Support](https://vercel.com/docs/concepts/enterprise/support): Priority support with SLA guarantees
  • Network accessline 220
    - [SSO](https://vercel.com/docs/concepts/enterprise/sso): SAML 2.0 and SCIM provisioning
  • Network accessline 221
    - [IP Allowlist](https://vercel.com/docs/concepts/enterprise/ip-allowlisting): Restrict deployments to corporate networks
  • Network accessline 225
    - [Blog](https://vercel.com/blog): Platform updates, case studies, and engineering posts
  • Network accessline 226
    - [Changelog](https://vercel.com/changelog): New features and improvements
  • Network accessline 227
    - [Discord](https://discord.gg/vercel): Community support and showcase
  • Network accessline 228
    - [GitHub](https://github.com/vercel): Open source projects including Next.js and Turborepo
  • Network accessline 245
    - [Features](https://taskflow.io/features): Kanban boards, sprint planning, and GitHub sync
  • Network accessline 246
    - [Pricing](https://taskflow.io/pricing): Free for 3 users, $12/user for teams
  • Network accessline 247
    - [Integrations](https://taskflow.io/integrations): GitHub, Slack, and Figma connections
  • Network accessline 248
    - [API Docs](https://docs.taskflow.io): REST API for custom integrations
  • Network accessline 252
    - [Blog](https://taskflow.io/blog): Remote work best practices and product updates
  • Network accessline 253
    - [Help Center](https://help.taskflow.io): Setup guides and troubleshooting
  • Network accessline 257
    - [About](https://taskflow.io/about): Mission and founding story
  • Network accessline 258
    - [Contact](https://taskflow.io/contact): Support email and live chat

geo-llms-txt/references/standard.md

  • Network accessline 25
    https://example.com/llms.txt
  • Network accessline 83
    - [Page Title](https://example.com/page): Description of what this page covers
  • Network accessline 88
    - Link text = page title (not URL) - One-line description after colon - Full URLs (including https://)
  • Network accessline 90
    - Full URLs (including https://)

geo-llms-txt/scripts/generate_llms_txt.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 25
    def __init__(self, domain, timeout=10):         self.domain = domain.replace('https://', '').replace('http://', '').rstrip('/')         self.base_url = f"https://{self.domain}"
  • Network accessline 26
    self.domain = domain.replace('https://', '').replace('http://', '').rstrip('/')         self.base_url = f"https://{self.domain}"         self.timeout = timeout
  • Network accessline 27
    self.base_url = f"https://{self.domain}"
  • Network accessline 32
    def fetch(self, path='', full_url=None):
  • Network accessline 34
    url = full_url or urljoin(self.base_url, path)         try:             resp = requests.get(url, timeout=self.timeout, allow_redirects=True)
  • Network accessline 35
    try:             resp = requests.get(url, timeout=self.timeout, allow_redirects=True)             if resp.status_code == 200:
  • Network accessline 36
    resp = requests.get(url, timeout=self.timeout, allow_redirects=True)
  • Network accessline 93
    resp = self.fetch(full_url=url)
  • Network accessline 108
    for path in ['/sitemap.xml', '/sitemap_index.xml', '/sitemap-index.xml']:             resp = self.fetch(path)
  • Network accessline 109
    resp = self.fetch(path)
  • Network accessline 229
    if not brand_name:             home = self.fetch('/')
  • Network accessline 230
    home = self.fetch('/')
  • Network accessline 243
    about = self.fetch('/about')
  • Network accessline 347
    print(f"\n✅ Generated llms.txt: {args.output}", file=sys.stderr)     print(f"   Place this file at: https://{args.domain}/llms.txt", file=sys.stderr)
  • Network accessline 348
    print(f"   Place this file at: https://{args.domain}/llms.txt", file=sys.stderr)

geo-llms-txt/scripts/validate_llms_txt.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 158
    for title, url in sample:             try:                 resp = requests.head(url, timeout=10, allow_redirects=True)
  • Network accessline 159
    try:                 resp = requests.head(url, timeout=10, allow_redirects=True)                 if resp.status_code != 200:
  • Network accessline 160
    resp = requests.head(url, timeout=10, allow_redirects=True)

geo-local-optimizer/scripts/generate_local_page_outline.py

  • Executable scriptline 1
    Executable file

geo-metrics-tracker/scripts/generate_metrics_schema.py

  • Executable scriptline 1
    Executable file

geo-multilingual-optimizer/SKILL.md

  • Network accessline 136
    | Language / Locale | Market Role | Depth of Localization | Target GEO URL             | Notes                         | |-------------------|------------|------------------------|----------------------------|-------------------------------
  • Network accessline 137
    |-------------------|------------|------------------------|----------------------------|-------------------------------| | en-US             | Primary    | Full                   | https://example.com/en-us  | Canonical source              
  • Network accessline 138
    | en-US             | Primary    | Full                   | https://example.com/en-us  | Canonical source              |
  • Network accessline 139
    | en-GB             | Secondary  | Light                  | https://example.com/en-gb  | Shares content with en-US     |
  • Network accessline 140
    | es-ES             | Primary    | Full                   | https://example.com/es-es  | Local examples, EU compliance |
  • Network accessline 141
    | es-MX             | Primary    | Full                   | https://example.com/es-mx  | LATAM focus                   |

geo-multilingual-optimizer/scripts/multilingual_terminology_helper.py

  • Executable scriptline 1
    Executable file

geo-multimodal-tagger/SKILL.md

  • Network accessline 59
    {   "@context": "https://schema.org",
  • Network accessline 60
    "@context": "https://schema.org",
  • Network accessline 62
    "name": "AIGVR Score Dashboard",   "description": "Dashboard showing brand visibility scores across AI platforms",   "contentUrl": "https://example.com/images/dashboard.jpg",
  • Network accessline 63
    "description": "Dashboard showing brand visibility scores across AI platforms",   "contentUrl": "https://example.com/images/dashboard.jpg",   "author": {
  • Network accessline 64
    "contentUrl": "https://example.com/images/dashboard.jpg",
  • Network accessline 87
    {   "@context": "https://schema.org",
  • Network accessline 88
    "@context": "https://schema.org",
  • Network accessline 90
    "name": "How to Optimize for AI Search",   "description": "Complete guide to GEO strategies...",   "thumbnailUrl": "https://example.com/thumbs/geo-guide.jpg",
  • Network accessline 91
    "description": "Complete guide to GEO strategies...",   "thumbnailUrl": "https://example.com/thumbs/geo-guide.jpg",   "uploadDate": "2024-01-15",
  • Network accessline 92
    "thumbnailUrl": "https://example.com/thumbs/geo-guide.jpg",
  • Network accessline 93
    "uploadDate": "2024-01-15",   "duration": "PT12M30S",   "contentUrl": "https://example.com/videos/geo-guide.mp4"
  • Network accessline 94
    "duration": "PT12M30S",   "contentUrl": "https://example.com/videos/geo-guide.mp4" }
  • Network accessline 95
    "contentUrl": "https://example.com/videos/geo-guide.mp4"

geo-multimodal-tagger/scripts/optimize_asset.py

  • Executable scriptline 1
    #!/usr/bin/env python3

geo-prompt-researcher/scripts/research_prompts.py

  • Executable scriptline 1
    #!/usr/bin/env python3

geo-report-builder/scripts/build_report.py

  • Executable scriptline 1
    #!/usr/bin/env python3

geo-schema-gen/SKILL.md

  • Network accessline 66
    python scripts/generate_schema.py --type Article --url https://example.com/blog/post
  • Network accessline 109
    <script type="application/ld+json">   {     "@context": "https://schema.org",
  • Network accessline 110
    {     "@context": "https://schema.org",     "@type": "Organization",
  • Network accessline 111
    "@context": "https://schema.org",
  • Network accessline 121
    1. **Schema.org Validator**: https://validator.schema.org
  • Network accessline 122
    2. **Google Rich Results Test**: https://search.google.com/test/rich-results
  • Network accessline 123
    3. **JSON-LD Playground**: https://json-ld.org/playground/
  • Network accessline 130
    ❌ **Wrong:** Using `http://schema.org` (insecure)
  • Network accessline 131
    ✅ **Right:** Using `https://schema.org` (secure)

geo-schema-gen/evals/evals.json

  • Network accessline 35
    "id": 6,       "name": "batch-generate-from-sitemap",       "prompt": "Generate schemas for all pages in our sitemap at https://example.com/sitemap.xml",
  • Network accessline 36
    "name": "batch-generate-from-sitemap",       "prompt": "Generate schemas for all pages in our sitemap at https://example.com/sitemap.xml",       "expected_output": "Multiple schema files generated based on detected page types (Article, Prod
  • Network accessline 37
    "prompt": "Generate schemas for all pages in our sitemap at https://example.com/sitemap.xml",

geo-schema-gen/references/examples.md

  • Network accessline 8
    {   "@context": "https://schema.org",
  • Network accessline 9
    "@context": "https://schema.org",
  • Network accessline 12
    "@type": "Organization",       "name": "Vercel",       "url": "https://vercel.com",
  • Network accessline 13
    "name": "Vercel",       "url": "https://vercel.com",       "logo": "https://assets.vercel.com/image/upload/v1662130559/front/vercel-logo.svg",
  • Network accessline 14
    "url": "https://vercel.com",
  • Network accessline 15
    "logo": "https://assets.vercel.com/image/upload/v1662130559/front/vercel-logo.svg",
  • Network accessline 16
    "description": "Cloud platform for frontend developers and serverless deployment",       "sameAs": [         "https://twitter.com/vercel",
  • Network accessline 17
    "sameAs": [         "https://twitter.com/vercel",         "https://github.com/vercel",
  • Network accessline 18
    "https://twitter.com/vercel",
  • Network accessline 19
    "https://github.com/vercel",
  • Network accessline 20
    "https://linkedin.com/company/vercel"
  • Network accessline 29
    "@type": "WebSite",       "name": "Vercel",       "url": "https://vercel.com",
  • Network accessline 30
    "name": "Vercel",       "url": "https://vercel.com",       "potentialAction": {
  • Network accessline 31
    "url": "https://vercel.com",
  • Network accessline 32
    "potentialAction": {         "@type": "SearchAction",         "target": "https://vercel.com/docs/search?query={search_term_string}",
  • Network accessline 33
    "@type": "SearchAction",         "target": "https://vercel.com/docs/search?query={search_term_string}",         "query-input": "required name=search_term_string"
  • Network accessline 34
    "target": "https://vercel.com/docs/search?query={search_term_string}",
  • Network accessline 45
    {   "@context": "https://schema.org",
  • Network accessline 46
    "@context": "https://schema.org",
  • Network accessline 59
    "priceCurrency": "USD",         "priceValidUntil": "2024-12-31",         "availability": "https://schema.org/InStock",
  • Network accessline 60
    "priceValidUntil": "2024-12-31",         "availability": "https://schema.org/InStock",         "description": "Per user, per month"
  • Network accessline 61
    "availability": "https://schema.org/InStock",
  • Network accessline 85
    {   "@context": "https://schema.org",
  • Network accessline 86
    "@context": "https://schema.org",
  • Network accessline 99
    "logo": {           "@type": "ImageObject",           "url": "https://assets.vercel.com/logo.png"
  • Network accessline 100
    "@type": "ImageObject",           "url": "https://assets.vercel.com/logo.png"         }
  • Network accessline 101
    "url": "https://assets.vercel.com/logo.png"
  • Network accessline 113
    "position": 1,           "name": "Docs",           "item": "https://nextjs.org/docs"
  • Network accessline 114
    "name": "Docs",           "item": "https://nextjs.org/docs"         },
  • Network accessline 115
    "item": "https://nextjs.org/docs"
  • Network accessline 119
    "position": 2,           "name": "Getting Started",           "item": "https://nextjs.org/docs/getting-started"
  • Network accessline 120
    "name": "Getting Started",           "item": "https://nextjs.org/docs/getting-started"         }
  • Network accessline 121
    "item": "https://nextjs.org/docs/getting-started"
  • Network accessline 136
    {   "@context": "https://schema.org",
  • Network accessline 137
    "@context": "https://schema.org",
  • Network accessline 139
    "name": "Sony WH-1000XM5 Wireless Headphones",   "image": [     "https://example.com/images/headphones-1x1.jpg",
  • Network accessline 140
    "image": [     "https://example.com/images/headphones-1x1.jpg",     "https://example.com/images/headphones-4x3.jpg",
  • Network accessline 141
    "https://example.com/images/headphones-1x1.jpg",
  • Network accessline 142
    "https://example.com/images/headphones-4x3.jpg",
  • Network accessline 143
    "https://example.com/images/headphones-16x9.jpg"
  • Network accessline 182
    "offers": {     "@type": "Offer",     "url": "https://example.com/products/sony-wh1000xm5",
  • Network accessline 183
    "@type": "Offer",     "url": "https://example.com/products/sony-wh1000xm5",     "price": "379.99",
  • Network accessline 184
    "url": "https://example.com/products/sony-wh1000xm5",
  • Network accessline 186
    "priceCurrency": "USD",     "priceValidUntil": "2024-12-31",     "availability": "https://schema.org/InStock",
  • Network accessline 187
    "priceValidUntil": "2024-12-31",     "availability": "https://schema.org/InStock",     "seller": {
  • Network accessline 188
    "availability": "https://schema.org/InStock",
  • Network accessline 223
    {   "@context": "https://schema.org",
  • Network accessline 224
    "@context": "https://schema.org",
  • Network accessline 231
    "@type": "Product",         "name": "Sony WH-1000XM5",         "url": "https://example.com/products/sony-wh1000xm5"
  • Network accessline 232
    "name": "Sony WH-1000XM5",         "url": "https://example.com/products/sony-wh1000xm5"       }
  • Network accessline 233
    "url": "https://example.com/products/sony-wh1000xm5"
  • Network accessline 240
    "@type": "Product",         "name": "Bose QuietComfort Ultra",         "url": "https://example.com/products/bose-qc-ultra"
  • Network accessline 241
    "name": "Bose QuietComfort Ultra",         "url": "https://example.com/products/bose-qc-ultra"       }
  • Network accessline 242
    "url": "https://example.com/products/bose-qc-ultra"
  • Network accessline 256
    {   "@context": "https://schema.org",
  • Network accessline 257
    "@context": "https://schema.org",
  • Network accessline 260
    "description": "The most powerful rocket ever built reaches space for the first time",   "image": [     "https://example.com/images/spacex-launch-16x9.jpg",
  • Network accessline 261
    "image": [     "https://example.com/images/spacex-launch-16x9.jpg",     "https://example.com/images/spacex-launch-4x3.jpg",
  • Network accessline 262
    "https://example.com/images/spacex-launch-16x9.jpg",
  • Network accessline 263
    "https://example.com/images/spacex-launch-4x3.jpg",
  • Network accessline 264
    "https://example.com/images/spacex-launch-1x1.jpg"
  • Network accessline 270
    "@type": "Person",       "name": "Sarah Johnson",       "url": "https://example.com/authors/sarah-johnson"
  • Network accessline 271
    "name": "Sarah Johnson",       "url": "https://example.com/authors/sarah-johnson"     }
  • Network accessline 272
    "url": "https://example.com/authors/sarah-johnson"
  • Network accessline 278
    "logo": {       "@type": "ImageObject",       "url": "https://example.com/logo.png"
  • Network accessline 279
    "@type": "ImageObject",       "url": "https://example.com/logo.png"     }
  • Network accessline 280
    "url": "https://example.com/logo.png"
  • Network accessline 290
    {   "@context": "https://schema.org",
  • Network accessline 291
    "@context": "https://schema.org",
  • Network accessline 293
    "headline": "10 Advanced TypeScript Patterns for React Developers",   "description": "Learn advanced TypeScript techniques to improve your React code quality",   "image": "https://example.com/images/typescript-react.jpg",
  • Network accessline 294
    "description": "Learn advanced TypeScript techniques to improve your React code quality",   "image": "https://example.com/images/typescript-react.jpg",   "datePublished": "2024-02-20",
  • Network accessline 295
    "image": "https://example.com/images/typescript-react.jpg",
  • Network accessline 299
    "@type": "Person",     "name": "Alex Chen",     "url": "https://example.com/authors/alex-chen",
  • Network accessline 300
    "name": "Alex Chen",     "url": "https://example.com/authors/alex-chen",     "jobTitle": "Senior Frontend Engineer",
  • Network accessline 301
    "url": "https://example.com/authors/alex-chen",
  • Network accessline 309
    "@type": "Organization",     "name": "DevBlog",     "logo": "https://example.com/logo.png"
  • Network accessline 310
    "name": "DevBlog",     "logo": "https://example.com/logo.png"   },
  • Network accessline 311
    "logo": "https://example.com/logo.png"
  • Network accessline 327
    {   "@context": "https://schema.org",
  • Network accessline 328
    "@context": "https://schema.org",
  • Network accessline 330
    "name": "The Golden Spoon",   "image": [     "https://example.com/restaurant-exterior.jpg",
  • Network accessline 331
    "image": [     "https://example.com/restaurant-exterior.jpg",     "https://example.com/dining-room.jpg"
  • Network accessline 332
    "https://example.com/restaurant-exterior.jpg",
  • Network accessline 333
    "https://example.com/dining-room.jpg"
  • Network accessline 347
    },   "telephone": "+1-415-555-0123",   "url": "https://goldenspoon.example.com",
  • Network accessline 348
    "telephone": "+1-415-555-0123",   "url": "https://goldenspoon.example.com",   "menu": "https://goldenspoon.example.com/menu",
  • Network accessline 349
    "url": "https://goldenspoon.example.com",
  • Network accessline 350
    "menu": "https://goldenspoon.example.com/menu",
  • Network accessline 380
    {   "@context": "https://schema.org",
  • Network accessline 381
    "@context": "https://schema.org",
  • Network accessline 409
    {   "@context": "https://schema.org",
  • Network accessline 410
    "@context": "https://schema.org",
  • Network accessline 415
    "@type": "Organization",     "name": "Frontend Masters",     "sameAs": "https://frontendmasters.com"
  • Network accessline 416
    "name": "Frontend Masters",     "sameAs": "https://frontendmasters.com"   },
  • Network accessline 417
    "sameAs": "https://frontendmasters.com"
  • Network accessline 430
    "price": "39",     "priceCurrency": "USD",     "availability": "https://schema.org/InStock"
  • Network accessline 431
    "priceCurrency": "USD",     "availability": "https://schema.org/InStock"   }
  • Network accessline 432
    "availability": "https://schema.org/InStock"
  • Network accessline 444
    {   "@context": "https://schema.org",
  • Network accessline 445
    "@context": "https://schema.org",
  • Network accessline 448
    "startDate": "2024-05-15T09:00:00-07:00",   "endDate": "2024-05-17T18:00:00-07:00",   "eventAttendanceMode": "https://schema.org/MixedEventAttendanceMode",
  • Network accessline 449
    "endDate": "2024-05-17T18:00:00-07:00",   "eventAttendanceMode": "https://schema.org/MixedEventAttendanceMode",   "eventStatus": "https://schema.org/EventScheduled",
  • Network accessline 450
    "eventAttendanceMode": "https://schema.org/MixedEventAttendanceMode",
  • Network accessline 451
    "eventStatus": "https://schema.org/EventScheduled",
  • Network accessline 453
    {       "@type": "VirtualLocation",       "url": "https://reactconf.com/live"
  • Network accessline 454
    "@type": "VirtualLocation",       "url": "https://reactconf.com/live"     },
  • Network accessline 455
    "url": "https://reactconf.com/live"
  • Network accessline 467
    }   ],   "image": "https://reactconf.com/images/og-image.jpg",
  • Network accessline 468
    ],   "image": "https://reactconf.com/images/og-image.jpg",   "description": "The biggest React conference of the year featuring keynotes from the React core team",
  • Network accessline 469
    "image": "https://reactconf.com/images/og-image.jpg",
  • Network accessline 471
    "offers": {     "@type": "Offer",     "url": "https://reactconf.com/tickets",
  • Network accessline 472
    "@type": "Offer",     "url": "https://reactconf.com/tickets",     "price": "899",
  • Network accessline 473
    "url": "https://reactconf.com/tickets",
  • Network accessline 474
    "price": "899",     "priceCurrency": "USD",     "availability": "https://schema.org/InStock",
  • Network accessline 475
    "priceCurrency": "USD",     "availability": "https://schema.org/InStock",     "validFrom": "2024-01-01T00:00:00-07:00"
  • Network accessline 476
    "availability": "https://schema.org/InStock",
  • Network accessline 484
    "@type": "Organization",     "name": "React Events LLC",     "url": "https://reactconf.com"
  • Network accessline 485
    "name": "React Events LLC",     "url": "https://reactconf.com"   }
  • Network accessline 486
    "url": "https://reactconf.com"
  • Network accessline 498
    {   "@context": "https://schema.org",
  • Network accessline 499
    "@context": "https://schema.org",
  • Network accessline 502
    "description": "Complete tutorial on building a production-ready app",   "thumbnailUrl": [     "https://i.ytimg.com/vi/ABC123/maxresdefault.jpg",
  • Network accessline 503
    "thumbnailUrl": [     "https://i.ytimg.com/vi/ABC123/maxresdefault.jpg",     "https://i.ytimg.com/vi/ABC123/sddefault.jpg"
  • Network accessline 504
    "https://i.ytimg.com/vi/ABC123/maxresdefault.jpg",
  • Network accessline 505
    "https://i.ytimg.com/vi/ABC123/sddefault.jpg"
  • Network accessline 507
    "uploadDate": "2024-01-15",   "duration": "PT45M30S",   "contentUrl": "https://www.youtube.com/watch?v=ABC123",
  • Network accessline 508
    "duration": "PT45M30S",   "contentUrl": "https://www.youtube.com/watch?v=ABC123",   "embedUrl": "https://www.youtube.com/embed/ABC123",
  • Network accessline 509
    "contentUrl": "https://www.youtube.com/watch?v=ABC123",
  • Network accessline 510
    "embedUrl": "https://www.youtube.com/embed/ABC123",

geo-schema-gen/references/field-reference.md

  • Network accessline 39
    {   "@context": "https://schema.org",
  • Network accessline 40
    "@context": "https://schema.org",
  • Network accessline 43
    "legalName": "Stripe, Inc.",   "alternateName": "Stripe Payments",   "url": "https://stripe.com",
  • Network accessline 44
    "alternateName": "Stripe Payments",   "url": "https://stripe.com",   "logo": "https://stripe.com/img/logo.png",
  • Network accessline 45
    "url": "https://stripe.com",
  • Network accessline 46
    "logo": "https://stripe.com/img/logo.png",
  • Network accessline 80
    ],   "sameAs": [     "https://twitter.com/stripe",
  • Network accessline 81
    "sameAs": [     "https://twitter.com/stripe",     "https://www.linkedin.com/company/stripe",
  • Network accessline 82
    "https://twitter.com/stripe",
  • Network accessline 83
    "https://www.linkedin.com/company/stripe",
  • Network accessline 84
    "https://github.com/stripe",
  • Network accessline 85
    "https://en.wikipedia.org/wiki/Stripe_(company)"
  • Network accessline 142
    {   "@context": "https://schema.org",
  • Network accessline 143
    "@context": "https://schema.org",
  • Network accessline 199
    {   "@context": "https://schema.org",
  • Network accessline 200
    "@context": "https://schema.org",
  • Network accessline 202
    "name": "Acme Noise-Canceling Headphones",   "image": [     "https://acme.com/images/headphones-1x1.jpg",
  • Network accessline 203
    "image": [     "https://acme.com/images/headphones-1x1.jpg",     "https://acme.com/images/headphones-4x3.jpg",
  • Network accessline 204
    "https://acme.com/images/headphones-1x1.jpg",
  • Network accessline 205
    "https://acme.com/images/headphones-4x3.jpg",
  • Network accessline 206
    "https://acme.com/images/headphones-16x9.jpg"
  • Network accessline 220
    "offers": {     "@type": "Offer",     "url": "https://acme.com/headphones",
  • Network accessline 221
    "@type": "Offer",     "url": "https://acme.com/headphones",     "price": "299.99",
  • Network accessline 222
    "url": "https://acme.com/headphones",
  • Network accessline 224
    "priceCurrency": "USD",     "priceValidUntil": "2024-12-31",     "availability": "https://schema.org/InStock",
  • Network accessline 225
    "priceValidUntil": "2024-12-31",     "availability": "https://schema.org/InStock",     "seller": {
  • Network accessline 226
    "availability": "https://schema.org/InStock",
  • Network accessline 267
    {   "@context": "https://schema.org",
  • Network accessline 268
    "@context": "https://schema.org",
  • Network accessline 301
    "name": "Mix the dough",       "text": "Combine 500g flour and 350g water. Mix until no dry flour remains.",       "url": "https://example.com/sourdough#step1"
  • Network accessline 302
    "text": "Combine 500g flour and 350g water. Mix until no dry flour remains.",       "url": "https://example.com/sourdough#step1"     },
  • Network accessline 303
    "url": "https://example.com/sourdough#step1"
  • Network accessline 307
    "name": "Fold the dough",       "text": "Perform stretch and folds every 30 minutes for 2 hours.",       "url": "https://example.com/sourdough#step2"
  • Network accessline 308
    "text": "Perform stretch and folds every 30 minutes for 2 hours.",       "url": "https://example.com/sourdough#step2"     }
  • Network accessline 309
    "url": "https://example.com/sourdough#step2"
  • Network accessline 328
    ### URL Requirements - Must be absolute (https://...)
  • Network accessline 329
    - Must be absolute (https://...)

geo-schema-gen/references/google-guidelines.md

  • Network accessline 115
    <script type="application/ld+json"> {   "@context": "https://schema.org",
  • Network accessline 116
    {   "@context": "https://schema.org",   "@type": "Article",
  • Network accessline 117
    "@context": "https://schema.org",
  • Network accessline 125
    - Must be in `<head>` or `<body>` - Must be valid JSON - Must use https://schema.org (not http)
  • Network accessline 126
    - Must be valid JSON - Must use https://schema.org (not http) - Each schema type on its own (no mixing Article and Product in one object)
  • Network accessline 127
    - Must use https://schema.org (not http)
  • Network accessline 132
    1. **Rich Results Test**: https://search.google.com/test/rich-results
  • Network accessline 136
    2. **Schema Markup Validator**: https://validator.schema.org

geo-schema-gen/references/schema-types.md

  • Network accessline 25
    {   "@context": "https://schema.org",
  • Network accessline 26
    "@context": "https://schema.org",
  • Network accessline 27
    "@type": "Organization",   "name": "Acme Corp",   "url": "https://acme.com",
  • Network accessline 28
    "name": "Acme Corp",   "url": "https://acme.com",   "logo": "https://acme.com/logo.png",
  • Network accessline 29
    "url": "https://acme.com",
  • Network accessline 30
    "logo": "https://acme.com/logo.png",
  • Network accessline 32
    "foundingDate": "2015",   "sameAs": [     "https://twitter.com/acme",
  • Network accessline 33
    "sameAs": [     "https://twitter.com/acme",     "https://linkedin.com/company/acme"
  • Network accessline 34
    "https://twitter.com/acme",
  • Network accessline 35
    "https://linkedin.com/company/acme"
  • Network accessline 67
    {   "@context": "https://schema.org",
  • Network accessline 68
    "@context": "https://schema.org",
  • Network accessline 69
    "@type": "WebSite",   "name": "Acme Documentation",   "url": "https://docs.acme.com",
  • Network accessline 70
    "name": "Acme Documentation",   "url": "https://docs.acme.com",   "potentialAction": {
  • Network accessline 71
    "url": "https://docs.acme.com",
  • Network accessline 72
    "potentialAction": {     "@type": "SearchAction",     "target": "https://docs.acme.com/search?q={search_term_string}",
  • Network accessline 73
    "@type": "SearchAction",     "target": "https://docs.acme.com/search?q={search_term_string}",     "query-input": "required name=search_term_string"
  • Network accessline 74
    "target": "https://docs.acme.com/search?q={search_term_string}",
  • Network accessline 105
    {   "@context": "https://schema.org",
  • Network accessline 106
    "@context": "https://schema.org",
  • Network accessline 111
    "@type": "Person",     "name": "Jane Smith",     "url": "https://acme.com/team/jane"
  • Network accessline 112
    "name": "Jane Smith",     "url": "https://acme.com/team/jane"   },
  • Network accessline 113
    "url": "https://acme.com/team/jane"
  • Network accessline 118
    "logo": {       "@type": "ImageObject",       "url": "https://acme.com/logo.png"
  • Network accessline 119
    "@type": "ImageObject",       "url": "https://acme.com/logo.png"     }
  • Network accessline 120
    "url": "https://acme.com/logo.png"
  • Network accessline 123
    "datePublished": "2024-01-15",   "dateModified": "2024-01-20",   "url": "https://acme.com/blog/schema-markup-guide"
  • Network accessline 124
    "dateModified": "2024-01-20",   "url": "https://acme.com/blog/schema-markup-guide" }
  • Network accessline 125
    "url": "https://acme.com/blog/schema-markup-guide"
  • Network accessline 154
    {   "@context": "https://schema.org",
  • Network accessline 155
    "@context": "https://schema.org",
  • Network accessline 200
    {   "@context": "https://schema.org",
  • Network accessline 201
    "@context": "https://schema.org",
  • Network accessline 211
    "price": "99.00",     "priceCurrency": "USD",     "availability": "https://schema.org/InStock",
  • Network accessline 212
    "priceCurrency": "USD",     "availability": "https://schema.org/InStock",     "priceValidUntil": "2024-12-31"
  • Network accessline 213
    "availability": "https://schema.org/InStock",
  • Network accessline 254
    {   "@context": "https://schema.org",
  • Network accessline 255
    "@context": "https://schema.org",
  • Network accessline 263
    "name": "Identify content type",       "text": "Determine if your content is an Article, Product, FAQ, etc.",       "url": "https://example.com/guide#step1"
  • Network accessline 264
    "text": "Determine if your content is an Article, Product, FAQ, etc.",       "url": "https://example.com/guide#step1"     },
  • Network accessline 265
    "url": "https://example.com/guide#step1"
  • Network accessline 269
    "name": "Generate markup",       "text": "Use a schema generator to create JSON-LD code",       "url": "https://example.com/guide#step2"
  • Network accessline 270
    "text": "Use a schema generator to create JSON-LD code",       "url": "https://example.com/guide#step2"     }
  • Network accessline 271
    "url": "https://example.com/guide#step2"
  • Network accessline 299
    {   "@context": "https://schema.org",
  • Network accessline 300
    "@context": "https://schema.org",
  • Network accessline 305
    "position": 1,       "name": "Home",       "item": "https://acme.com/"
  • Network accessline 306
    "name": "Home",       "item": "https://acme.com/"     },
  • Network accessline 307
    "item": "https://acme.com/"
  • Network accessline 311
    "position": 2,       "name": "Products",       "item": "https://acme.com/products"
  • Network accessline 312
    "name": "Products",       "item": "https://acme.com/products"     },
  • Network accessline 313
    "item": "https://acme.com/products"
  • Network accessline 317
    "position": 3,       "name": "Pro Plan",       "item": "https://acme.com/products/pro"
  • Network accessline 318
    "name": "Pro Plan",       "item": "https://acme.com/products/pro"     }
  • Network accessline 319
    "item": "https://acme.com/products/pro"
  • Network accessline 392
    {   "@context": "https://schema.org",
  • Network accessline 393
    "@context": "https://schema.org",

geo-schema-gen/scripts/batch_generate.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 23
    try:         resp = requests.get(sitemap_url, timeout=10)
  • Network accessline 24
    resp = requests.get(sitemap_url, timeout=10)
  • Network accessline 75
    soup = BeautifulSoup(html, 'html.parser')     data = {         "@context": "https://schema.org",
  • Network accessline 76
    data = {         "@context": "https://schema.org",         "@type": schema_type,
  • Network accessline 77
    "@context": "https://schema.org",
  • Network accessline 149
    resp = requests.get(url, timeout=10)

geo-schema-gen/scripts/generate_schema.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 12
    SCHEMA_TEMPLATES = {     "Organization": {         "@context": "https://schema.org",
  • Network accessline 13
    "Organization": {         "@context": "https://schema.org",         "@type": "Organization",
  • Network accessline 14
    "@context": "https://schema.org",
  • Network accessline 21
    },     "WebSite": {         "@context": "https://schema.org",
  • Network accessline 22
    "WebSite": {         "@context": "https://schema.org",         "@type": "WebSite",
  • Network accessline 23
    "@context": "https://schema.org",
  • Network accessline 32
    },     "Article": {         "@context": "https://schema.org",
  • Network accessline 33
    "Article": {         "@context": "https://schema.org",         "@type": "Article",
  • Network accessline 34
    "@context": "https://schema.org",
  • Network accessline 53
    },     "BlogPosting": {         "@context": "https://schema.org",
  • Network accessline 54
    "BlogPosting": {         "@context": "https://schema.org",         "@type": "BlogPosting",
  • Network accessline 55
    "@context": "https://schema.org",
  • Network accessline 74
    },     "FAQPage": {         "@context": "https://schema.org",
  • Network accessline 75
    "FAQPage": {         "@context": "https://schema.org",         "@type": "FAQPage",
  • Network accessline 76
    "@context": "https://schema.org",
  • Network accessline 79
    },     "Product": {         "@context": "https://schema.org",
  • Network accessline 80
    "Product": {         "@context": "https://schema.org",         "@type": "Product",
  • Network accessline 81
    "@context": "https://schema.org",
  • Network accessline 91
    "price": "",             "priceCurrency": "USD",             "availability": "https://schema.org/InStock"
  • Network accessline 92
    "priceCurrency": "USD",             "availability": "https://schema.org/InStock"         }
  • Network accessline 93
    "availability": "https://schema.org/InStock"
  • Network accessline 95
    },     "HowTo": {         "@context": "https://schema.org",
  • Network accessline 96
    "HowTo": {         "@context": "https://schema.org",         "@type": "HowTo",
  • Network accessline 97
    "@context": "https://schema.org",
  • Network accessline 103
    },     "BreadcrumbList": {         "@context": "https://schema.org",
  • Network accessline 104
    "BreadcrumbList": {         "@context": "https://schema.org",         "@type": "BreadcrumbList",
  • Network accessline 105
    "@context": "https://schema.org",
  • Network accessline 108
    },     "VideoObject": {         "@context": "https://schema.org",
  • Network accessline 109
    "VideoObject": {         "@context": "https://schema.org",         "@type": "VideoObject",
  • Network accessline 110
    "@context": "https://schema.org",
  • Network accessline 117
    },     "LocalBusiness": {         "@context": "https://schema.org",
  • Network accessline 118
    "LocalBusiness": {         "@context": "https://schema.org",         "@type": "LocalBusiness",
  • Network accessline 119
    "@context": "https://schema.org",
  • Network accessline 152
    if schema_type in ["Organization", "WebSite"]:             template["name"] = input("Organization/Site name: ").strip()             template["url"] = input("Website URL (https://...): ").strip()
  • Network accessline 154
    template["url"] = input("Website URL (https://...): ").strip()
  • Network accessline 290
    resp = requests.get(url, timeout=10)
  • Network accessline 374
    elif args.output == "markdown":         json_str = json.dumps(schema, indent=2)         result = f"## {args.type} Schema\n\n```json\n{json_str}\n```\n\n**Implementation:** Paste inside `<head>` tag\n\n**Validation:** Test at https://validat
  • Network accessline 375
    json_str = json.dumps(schema, indent=2)         result = f"## {args.type} Schema\n\n```json\n{json_str}\n```\n\n**Implementation:** Paste inside `<head>` tag\n\n**Validation:** Test at https://validator.schema.org"     else:
  • Network accessline 376
    result = f"## {args.type} Schema\n\n```json\n{json_str}\n```\n\n**Implementation:** Paste inside `<head>` tag\n\n**Validation:** Test at https://validator.schema.org"

geo-schema-gen/scripts/validate_schema.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 50
    if isinstance(context, str):             if context == "http://schema.org":
  • Network accessline 51
    if context == "http://schema.org":
  • Network accessline 52
    self.warnings.append("@context uses HTTP (should be HTTPS)")             elif context != "https://schema.org":                 self.warnings.append(f"Unexpected @context value: {context}")
  • Network accessline 53
    elif context != "https://schema.org":

geo-sentiment-optimizer/scripts/audit_sentiment.py

  • Executable scriptline 1
    #!/usr/bin/env python3

geo-site-audit/references/checklist.md

  • Network accessline 22
    curl -s https://example.com/robots.txt | grep -iE "(gptbot|claudebot|perplexity|google-extended|ccbot)"
  • Network accessline 25
    ### 1.2 llms.txt file exists at root **What to check:** - File accessible at `https://example.com/llms.txt`
  • Network accessline 26
    **What to check:** - File accessible at `https://example.com/llms.txt` - Returns HTTP 200
  • Network accessline 27
    - File accessible at `https://example.com/llms.txt`
  • Network accessline 61
    curl -s https://example.com/ | grep -i "<p>\|</p>\|<h1>\|<article>" | wc -l
  • Network accessline 157
    ### 2.9 Schema validates without errors **How to verify:** - Test at https://validator.schema.org/
  • Network accessline 158
    **How to verify:** - Test at https://validator.schema.org/ - No critical errors
  • Network accessline 159
    - Test at https://validator.schema.org/
  • Network accessline 163
    ### 2.10 @context is https://schema.org
  • Network accessline 164
    **What to check:** - `"@context": "https://schema.org"` (not http://) - Consistent across all JSON-LD blocks
  • Network accessline 165
    - `"@context": "https://schema.org"` (not http://)
  • Network accessline 286
    curl -I https://example.com/nonexistent-page-12345

geo-site-audit/references/integrations.md

  • Network accessline 58
    {   "slack": {     "url": "https://hooks.slack.com/services/...",
  • Network accessline 59
    "slack": {     "url": "https://hooks.slack.com/services/...",     "threshold": 20
  • Network accessline 60
    "url": "https://hooks.slack.com/services/...",
  • Network accessline 62
    },   "teams": {     "url": "https://outlook.office.com/webhook/...",
  • Network accessline 63
    "teams": {     "url": "https://outlook.office.com/webhook/...",     "threshold": 20
  • Network accessline 64
    "url": "https://outlook.office.com/webhook/...",

geo-site-audit/scripts/batch_audit.py

  • Executable scriptline 1
    #!/usr/bin/env python3

geo-site-audit/scripts/geo_audit.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 25
    def __init__(self, domain, timeout=10, delay=0, user_agent=None):         self.domain = domain.replace('https://', '').replace('http://', '').rstrip('/')         self.base_url = f"https://{self.domain}"
  • Network accessline 26
    self.domain = domain.replace('https://', '').replace('http://', '').rstrip('/')         self.base_url = f"https://{self.domain}"         self.timeout = timeout
  • Network accessline 27
    self.base_url = f"https://{self.domain}"
  • Network accessline 43
    def fetch(self, path='', full_url=None):
  • Network accessline 46
    try:             time.sleep(self.delay)             resp = requests.get(url, headers=self.headers, timeout=self.timeout, allow_redirects=True)
  • Network accessline 47
    time.sleep(self.delay)             resp = requests.get(url, headers=self.headers, timeout=self.timeout, allow_redirects=True)             return resp
  • Network accessline 48
    resp = requests.get(url, headers=self.headers, timeout=self.timeout, allow_redirects=True)
  • Network accessline 55
    resp = self.fetch('/robots.txt')
  • Network accessline 73
    resp = self.fetch('/llms.txt')
  • Network accessline 80
    resp = self.fetch('/llms.txt')
  • Network accessline 96
    start = time.time()         resp = self.fetch('/')
  • Network accessline 97
    resp = self.fetch('/')
  • Network accessline 108
    resp = self.fetch('/')
  • Network accessline 119
    resp = self.fetch('/')
  • Network accessline 128
    resp = self.fetch('/')
  • Network accessline 139
    resp = self.fetch('/')
  • Network accessline 148
    resp = self.fetch('/sitemap.xml')
  • Network accessline 152
    robots = self.fetch('/robots.txt')
  • Network accessline 159
    resp = self.fetch('/')
  • Network accessline 171
    resp = self.fetch('/')
  • Network accessline 180
    resp = self.fetch('/')
  • Network accessline 189
    resp = self.fetch('/')
  • Network accessline 201
    for path in ['/faq', '/support', '/help']:             resp = self.fetch(path)
  • Network accessline 202
    resp = self.fetch(path)
  • Network accessline 209
    for path in ['/blog', '/news', '/articles']:             resp = self.fetch(path)
  • Network accessline 210
    resp = self.fetch(path)
  • Network accessline 217
    for path in ['/shop', '/products', '/store']:             resp = self.fetch(path)
  • Network accessline 218
    resp = self.fetch(path)
  • Network accessline 225
    resp = self.fetch('/')
  • Network accessline 234
    resp = self.fetch('/')
  • Network accessline 243
    resp = self.fetch('/')
  • Network accessline 265
    resp = self.fetch('/')
  • Network accessline 266
    if not resp:             return {"check": "@context uses HTTPS", "status": "fail", "notes": "Site unreachable"}         if '"@context": "https://schema.org"' in resp.text:
  • Network accessline 267
    return {"check": "@context uses HTTPS", "status": "fail", "notes": "Site unreachable"}         if '"@context": "https://schema.org"' in resp.text:             return {"check": "@context uses HTTPS", "status": "pass", "notes": "HTTPS context
  • Network accessline 268
    if '"@context": "https://schema.org"' in resp.text:
  • Network accessline 269
    return {"check": "@context uses HTTPS", "status": "pass", "notes": "HTTPS context"}         if '"@context": "http://schema.org"' in resp.text:             return {"check": "@context uses HTTPS", "status": "partial", "notes": "HTTP (should b
  • Network accessline 270
    if '"@context": "http://schema.org"' in resp.text:
  • Network accessline 276
    resp = self.fetch('/')
  • Network accessline 286
    resp = self.fetch('/')
  • Network accessline 300
    resp = self.fetch('/')
  • Network accessline 309
    resp = self.fetch('/')
  • Network accessline 319
    resp = self.fetch('/')
  • Network accessline 333
    resp = self.fetch('/')
  • Network accessline 342
    resp = self.fetch('/')
  • Network accessline 352
    about = self.fetch('/about')
  • Network accessline 359
    resp = self.fetch('/llms.txt')
  • Network accessline 370
    try:             http_resp = requests.get(f"http://{self.domain}", timeout=self.timeout, allow_redirects=False)
  • Network accessline 371
    http_resp = requests.get(f"http://{self.domain}", timeout=self.timeout, allow_redirects=False)
  • Network accessline 380
    resp = self.fetch('/')
  • Network accessline 389
    resp = self.fetch('/')
  • Network accessline 400
    resp = self.fetch('/')
  • Network accessline 411
    resp = self.fetch('/')
  • Network accessline 421
    resp = self.fetch('/this-page-does-not-exist-12345')

geo-som-strategist/scripts/build_strategy.py

  • Executable scriptline 1
    #!/usr/bin/env python3

geo-structured-writer/scripts/structure_content.py

  • Executable scriptline 1
    #!/usr/bin/env python3

geo-studio/scripts/orchestrate.py

  • Executable scriptline 1
    #!/usr/bin/env python3

geo-template-library/scripts/render_templates.py

  • Executable scriptline 1
    Executable file

geo-template-library/scripts/template_selector.py

  • Executable scriptline 1
    Executable file

How the signals fit together

Facts from a static read of the files at the pinned commit. They describe what the code does, not why.

Some files could not be read; the facts below still hold.

Signal confidence: 500 facts

and 450 more

Only the first 500 facts are listed.

Works with

Agent compatibility, from the files in this repository
AgentStatusEvidenceInstall to
Claude CodeCompatibleStandard SKILL.md geo-ai-plugin-builder/SKILL.md.claude/skills/<skill-name>/
CodexCompatibleStandard SKILL.md geo-ai-plugin-builder/SKILL.md.agents/skills/<skill-name>/
CursorCompatibleStandard SKILL.md geo-ai-plugin-builder/SKILL.md.cursor/skills/<skill-name>/
Gemini CLICompatibleStandard SKILL.md geo-ai-plugin-builder/SKILL.md.gemini/skills/<skill-name>/
GitHub CopilotCompatibleStandard SKILL.md geo-ai-plugin-builder/SKILL.md.github/skills/<skill-name>/
OpenCodeCompatibleStandard SKILL.md geo-ai-plugin-builder/SKILL.md.opencode/skills/<skill-name>/
  • Native The repository ships a manifest, folder or frontmatter field for this agent.
  • Compatible A standard SKILL.md that this agent can read.
  • Unknown No evidence either way.

Derived automatically from paths, manifests and frontmatter. Not tested on each agent.