# Geo Update

Pull the latest GEO-SEO skill updates from the upstream repository.

- Repository: https://github.com/zubair-trabzada/geo-seo-claude (11403 stars)
- Category: AI and agents
- License: MIT
- Last updated: 2026-11-01
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add zubair-trabzada/geo-seo-claude --skill geo-update -g -a claude-code -y`
Codex: `npx skills add zubair-trabzada/geo-seo-claude --skill geo-update -g -a codex -y`
Cursor: `npx skills add zubair-trabzada/geo-seo-claude --skill geo-update -g -a cursor -y`
Gemini CLI: `npx skills add zubair-trabzada/geo-seo-claude --skill geo-update -g -a gemini-cli -y`

## Description

Pull the latest GEO-SEO skill updates from the upstream repository. Compares installed files against the latest release, shows what changed, and updates all skills, agents, scripts, and schema templates in place.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# GEO-SEO Update Skill

## Purpose

Updates the locally installed GEO-SEO skills, agents, scripts, and schema templates to the latest version from the upstream repository. Shows a summary of what changed before and after the update.

---

## Update Workflow

### Step 1: Determine Installed Location

The GEO-SEO toolkit installs to these locations under `~/.claude/`:

| Component | Install Path |
|-----------|-------------|
| Main skill | `~/.claude/skills/geo/` |
| Sub-skills | `~/.claude/skills/geo-*/` |
| Agents | `~/.claude/agents/geo-*.md` |
| Scripts | `~/.claude/skills/geo/scripts/` |
| Schema templates | `~/.claude/skills/geo/schema/` |
| Hooks | `~/.claude/skills/geo/hooks/` |

Verify the installation exists by checking for `~/.claude/skills/geo/SKILL.md`. If it does not exist, inform the user that GEO-SEO is not installed and suggest running the installer instead.

### Step 2: Clone Latest from Upstream

```bash
TEMP_DIR=$(mktemp -d)
git clone --depth 1 https://github.com/zubair-trabzada/geo-seo-claude.git "$TEMP_DIR/repo"
```

If the clone fails, report the error and stop. Do not modify any installed files.

### Step 3: Compare Installed vs Latest

Before copying files, generate a diff summary so the user knows what will change:

1. For each component directory, compare the installed files against the cloned files using `diff --recursive --brief`.
2. Categorise changes as:
   - **New files**, exist in upstream but not locally
   - **Modified files**, exist in both but differ
   - **Removed files**, exist locally but not in upstream (these are NOT deleted automatically)
3. Present the summary to the user.

### Step 4: Apply Updates

Copy files from the cloned repo over the installed locations:

```bash
CLAUDE_DIR="${HOME}/.claude"
SOURCE_DIR="$TEMP_DIR/repo"

# Main skill
cp -r "$SOURCE_DIR/geo/"* "$CLAUDE_DIR/skills/geo/"

The rest: https://github.com/zubair-trabzada/geo-seo-claude/blob/HEAD/skills/geo-update/SKILL.md
