# Prerequisites for Running GEO-SEO Claude: Complete Setup Guide

> Master GEO-SEO Claude setup. Discover essential prerequisites like Python 3.8+, Claude Code CLI, and Git. Follow our guide for a seamless installation and start optimizing your SEO today.

- Repository: [Zubair Trabzada/geo-seo-claude](https://github.com/zubair-trabzada/geo-seo-claude)
- Tags: getting-started
- Published: 2026-09-08

---

**GEO-SEO Claude requires Python 3.8+, Claude Code CLI, Git, and optionally Playwright for visual audits, all installable via standard package managers before running the [`install.sh`](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/install.sh) script.**

Before you can execute SEO audits and generate AI citability reports, your system must satisfy several dependencies that power the repository's Python utilities and Claude Code integration. The `zubair-trabzada/geo-seo-claude` repository orchestrates 13 specialized sub-skills and 5 parallel agents through a central skill interface, all of which depend on these core components to fetch pages, score content, and produce PDF reports.

## Core Prerequisites

### Python 3.8 or Higher

All utility scripts in the repository require **Python 3.8+** to function. The Python environment powers critical components including [`scripts/fetch_page.py`](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/scripts/fetch_page.py) for web retrieval, [`scripts/citability_scorer.py`](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/scripts/citability_scorer.py) for content analysis, and PDF generation utilities. These scripts are invoked by the orchestrator skill defined in [`geo/SKILL.md`](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/geo/SKILL.md) when you run `/geo` commands.

Verify your installation before proceeding:

```bash
python3 --version

# Expected output: Python 3.8.x or higher (e.g., Python 3.11.2)

```

If missing, download the latest stable release from [python.org](https://www.python.org/downloads/).

### Claude Code CLI

The **Claude Code CLI** provides the runtime platform where GEO-SEO Claude skills and agents are loaded and invoked. Without this interface, the `/geo` command namespace used to trigger audits and schema generation will be unavailable.

Install the CLI globally via npm:

```bash
npm install -g @anthropic-ai/claude-code

```

Confirm successful installation:

```bash
claude --version

# Expected output: claude 0.5.0 (or similar)

```

### Git Version Control

Git is essential for the installation process and subsequent updates. The [`install.sh`](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/install.sh) script uses Git to clone the repository structure, while the update skill compares local versions against remote branches to determine when components need refreshing.

Verify Git availability:

```bash
git --version

# Expected output: git version 2.42.0 or higher

```

## Optional Dependencies

### Playwright for Visual SEO Audits

While not mandatory for core functionality, **Playwright** enables screenshot capture capabilities used during visual SEO audits. This component is installed separately after the main installation via Python pip.

Install Playwright when you need screenshot automation:

```bash
python3 -m pip install playwright
python3 -m playwright install chromium

```

This dependency is listed in [`requirements.txt`](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/requirements.txt) alongside other packages like `reportlab` and `rich`.

## System Environment Requirements

### Bash-Compatible Shell

The installer scripts ([`install.sh`](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/install.sh) for macOS/Linux and [`install-win.sh`](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/install-win.sh) for Windows) are written in Bash. On Windows systems, you must use **Git Bash** or WSL to execute these scripts correctly, as standard Command Prompt or PowerShell environments will fail to interpret the shell commands.

### Node.js and npm

Since Claude Code CLI is distributed as an npm package, a functional **Node.js** installation with npm access is required. This underpins the primary interface between your terminal and the GEO-SEO Claude skill ecosystem.

## Verifying Your Installation

Run these checks in sequence to ensure all prerequisites for running GEO-SEO Claude are satisfied before executing the installer:

```bash

# 1. Verify Python environment

python3 --version

# 2. Verify Claude Code CLI

claude --version

# 3. Verify Git installation

git --version

# 4. Verify Node/npm (required for Claude Code)

npm --version

# 5. (Optional) Test Playwright installation

python3 -c "import playwright; print(playwright.__version__)"

```

## Installation Script Overview

Once prerequisites are confirmed, the [`install.sh`](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/install.sh) script automates the remaining setup. This script:

- Creates a Python virtual environment
- Installs dependencies from [`requirements.txt`](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/requirements.txt) (including `playwright`, `reportlab`, and `rich`)
- Copies the orchestrator skill ([`geo/SKILL.md`](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/geo/SKILL.md)) and sub-skills to `~/.claude/`
- Configures the 13 audit skills and 5 parallel agents

Key files referenced during installation:
- **[`install.sh`](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/install.sh)** – One-command installer that validates prerequisites
- **[`requirements.txt`](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/requirements.txt)** – Python dependency manifest
- **[`geo/SKILL.md`](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/geo/SKILL.md)** – Core orchestrator defining `/geo` commands
- **[`scripts/fetch_page.py`](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/scripts/fetch_page.py)** – Web retrieval utility used by multiple agents
- **[`scripts/citability_scorer.py`](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/scripts/citability_scorer.py)** – AI citability analysis engine

## Summary

- **Python 3.8+** is mandatory for all utility scripts including page fetching and citability scoring
- **Claude Code CLI** (installed via npm) provides the `/geo` command interface
- **Git** is required for repository cloning and version management
- **Bash compatibility** is essential for running [`install.sh`](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/install.sh) or [`install-win.sh`](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/install-win.sh)
- **Playwright** is optional but required for screenshot-based visual audits
- All dependencies are verified automatically by the installer before copying skills to `~/.claude/`

## Frequently Asked Questions

### Can I run GEO-SEO Claude on Windows?

Yes, but you must use **Git Bash** or Windows Subsystem for Linux (WSL) to execute the [`./install-win.sh`](https://github.com/zubair-trabzada/geo-seo-claude/blob/main/./install-win.sh) script. The installer relies on Bash-specific commands that will fail in standard Windows Command Prompt or PowerShell environments.

### Do I need Playwright for basic SEO audits?

No. Playwright is only required if you intend to use the visual screenshot capture features during audits. Core functionality including page fetching, schema generation, and citability scoring works without Playwright installed.

### What Python packages are installed by requirements.txt?

The file installs `playwright` for browser automation, `reportlab` for PDF report generation, and `rich` for terminal formatting, along with other supporting libraries. These packages support the scripts in the `scripts/` directory that agents invoke during audit workflows.

### How do I update GEO-SEO Claude after installation?

Use the built-in update skill via Claude Code, which compares your local version against the remote repository using Git. Ensure Git remains installed and configured on your system to enable automatic updates of skills and agents.