This repository is a Claude Code skill bundle for Generative Engine Optimization (GEO) and SEO auditing, distributed as an installable plugin. The core deliverable is a composite GEO Score (0-100) computed from six weighted categories: AI citability, brand authority, content E-E-A-T, technical health, structured data, and platform optimization. Users invoke slash commands such as /geo audit, /geo quick, /geo citability, /geo llmstxt, and /geo report, which orchestrate a set of skill definitions, agent prompts, and Python helper scripts to crawl external websites, analyze AI crawler accessibility, extract JSON-LD, generate llms.txt files, score content passages, and produce client-ready reports and proposals. It also includes a small Flask + HTMX CRM webapp for managing prospects and a white-label configuration system for agencies. The architecture is primarily a composition of markdown-based skills and agents with Python scripts as deterministic helpers. The main entry points are geo/SKILL.md (orchestrator), the scripts under scripts/, and the webapp at scripts/webapp/app.py. The system behaves as a productized agency service: it runs audits against arbitrary client domains, produces quantitative scores, generates branded PDF reports, pricing proposals, and monthly delta comparisons. Some research-oriented artifacts exist - cited market studies, scoring methodology documentation, and heuristic rubrics - but the dominant character is an application toolkit for practitioners rather than a data pipeline. Strengths include a clear JSON-to-stdout contract between scripts and skills, deterministic scoring modules such as citability_scorer.py and llmstxt_generator.py, reusable JSON-LD schema templates, and a sensible separation between deterministic checks and LLM-judged scoring. Weaknesses include documentation drift (inconsistent skill counts and command references), duplicated scoring rubrics in agent vs skill versions, a legacy ReportLab PDF pipeline documented alongside the newer pandoc/Chrome approach, and only narrow test coverage focused on fetch_page.py.