geo-setup

geo-setup is a skill for Claude Code, Codex from bytefer/geo-seo-codex. It costs 42 tokens per session (1,079 once invoked), scanned A, original, MIT.

A setup helper for the GEO-SEO Codex runtime, including its Python environment, bundled scripts, templates, and optional PDF tools. GEO-SEO concerns improving how a business appears in AI-generated search results.

In plain words
What is it for?
Use it to create the Python environment, install requirements, verify scripts and templates, and check optional browser and PDF dependencies.
Why use it?
It checks whether the required runtime pieces are present and repairs missing setup, reducing uncertainty before running GEO workflows.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/bytefer/geo-seo-codex/geo-setup
Any agent
npx skills add bytefer/geo-seo-codex --skill geo-setup
Clone the repo
git clone --depth 1 https://github.com/bytefer/geo-seo-codex

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for geo-setup

README.md
[![agentmods](https://agentmods.dev/badge/skills/bytefer/geo-seo-codex/geo-setup.svg)](https://agentmods.dev/skills/bytefer/geo-seo-codex/geo-setup)
Your own site
<a href="https://agentmods.dev/skills/bytefer/geo-seo-codex/geo-setup"><img src="https://agentmods.dev/badge/skills/bytefer/geo-seo-codex/geo-setup.svg" alt="Measured on agentmods" height="20"></a>
Per session 42 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,079 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00042 $0.01079
Opus 5 $0.00021 $0.00540
Sonnet 5 $0.00008 $0.00216
Haiku 4.5 $0.00004 $0.00108

Measured 5d ago against content hash bb46b013c7cb, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

geo-setup scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 5d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/geo-setup/SKILL.md · 121 lines

How it starts

The opening of the file, as written. The whole thing — 121 lines — stays where its author put it; the contents beside it link to each section on GitHub.

GEO Runtime Setup Skill

Purpose

Use this skill when a GEO workflow needs bundled Python utilities, dependencies, templates, or PDF tooling and the runtime is missing or uncertain. It supports both installation modes:

  • Plugin mode: skills are loaded from a geo-seo-codex plugin checkout/cache, while scripts, schema templates, and report templates remain in that plugin root.
  • Classic installer mode: files are copied under ~/.codex/skills/geo/, with sub-skills under ~/.codex/skills/geo-*/ and optional agents under ~/.codex/agents/.

Do not require ~/.codex/agents/geo-*.toml for setup. Agents are the preferred full-audit acceleration path when available; plugin-only installs must still work through skills fallback.


Runtime Root Resolution

Resolve GEO_ROOT before running scripts:

  1. If CODEX_GEO_ROOT is set and contains scripts/, use it.
  2. If this skill was loaded from a plugin path like <plugin-root>/skills/geo-setup/SKILL.md, use <plugin-root>.
  3. If the current repository contains scripts/ and requirements.txt, use that repository root.
  4. Fall back to the classic installer path: ${CODEX_HOME:-$HOME/.codex}/skills/geo.

If no root contains scripts/fetch_page.py, stop and ask the user to install the plugin or run install.sh / install-win.sh.


Setup Workflow

Run the equivalent of this shell flow in the user's environment:

GEO_ROOT="${CODEX_GEO_ROOT:-}"

if [ -z "$GEO_ROOT" ]; then
  for candidate in "$PWD" "$PWD/.." "$PWD/../.." "${CODEX_HOME:-$HOME/.codex}/skills/geo"; do
    if [ -f "$candidate/scripts/fetch_page.py" ]; then
      GEO_ROOT="$(cd "$candidate" && pwd)"
      break
    fi
  done
fi

if [ -z "$GEO_ROOT" ] || [ ! -f "$GEO_ROOT/scripts/fetch_page.py" ]; then
  echo "GEO runtime root not found. Set CODEX_GEO_ROOT to the geo-seo-codex plugin/repo root."
  exit 1
fi

if [ "$GEO_ROOT" = "${CODEX_HOME:-$HOME/.codex}/skills/geo" ]; then
  GEO_RUNTIME_DIR="$GEO_ROOT"
else
  GEO_RUNTIME_DIR="${CODEX_GEO_RUNTIME_DIR:-${CODEX_HOME:-$HOME/.codex}/geo-seo-codex}"
fi

mkdir -p "$GEO_RUNTIME_DIR"

if command -v python3 >/dev/null 2>&1; then
  GEO_SYSTEM_PYTHON="python3"
elif command -v python >/dev/null 2>&1; then
  GEO_SYSTEM_PYTHON="python"
elif command -v py >/dev/null 2>&1; then
  GEO_SYSTEM_PYTHON="py"
else
  echo "Python 3.8+ is required."
  exit 1
fi

"$GEO_SYSTEM_PYTHON" -m venv "$GEO_RUNTIME_DIR/.venv"

if [ -x "$GEO_RUNTIME_DIR/.venv/bin/python" ]; then
  GEO_PYTHON="$GEO_RUNTIME_DIR/.venv/bin/python"
else
  GEO_PYTHON="$GEO_RUNTIME_DIR/.venv/Scripts/python.exe"
fi

"$GEO_PYTHON" -m pip install --upgrade pip
"$GEO_PYTHON" -m pip install -r "$GEO_ROOT/requirements.txt"

echo "GEO_ROOT=$GEO_ROOT"
echo "GEO_RUNTIME_DIR=$GEO_RUNTIME_DIR"
echo "GEO_PYTHON=$GEO_PYTHON"

Read the full file on GitHub · 121 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 5d ago First seen · 121 lines · 42 tokens per session scan A bb46b013c7cb

Subscribe to this mod's changes

geo-setup is a skill published in the GitHub repository bytefer/geo-seo-codex (11 stars, last pushed 2mo ago), licensed MIT. It adds 42 tokens to every session and 1,079 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

building-edgespark-apps

Build and modify EdgeSpark apps. Use when a project has edgespark.toml, the user mentions EdgeSpark, or work involves the edgespark CLI, server SDK types, storage/auth/database workflows, deployment, or @edgespark/web.

edgesparkhq/codex-plugins · 55 tokens

edgespark-frontend-design

Design and redesign EdgeSpark frontends with distinctive, production-grade visual direction instead of generic AI-looking UI. Use when building or polishing landing pages, marketing sites, dashboards, auth flows, portfolios, product surfaces, or reusable frontend sections in EdgeSpark, especially when the task…

edgesparkhq/codex-plugins · 87 tokens

ppt-design-skill

Design, generate, review, and revise editable PowerPoint presentations through a rigorous brief-to-PNG workflow using the public pptx-designer Python library.

sunchaokun/PPT-Design-Skill · 35 tokens

flutter-ui

Build Flutter UI from Figma MCP or image input. Scans src for design tokens (colors, sizes, text styles), existing components, and naming conventions before writing a single line of code. Never hard-codes values.

datit309/supergraph · 48 tokens

serena

Serena code intelligence — LSP-powered symbol navigation, diagnostics, and targeted code surgery. Activate before complex refactors, cross-file analysis, or when graph tools need symbol-level depth.

datit309/supergraph · 40 tokens

database-migrations

Database migration best practices for schema changes, data migrations, rollbacks, and zero-downtime deployments across PostgreSQL, MySQL, and common ORMs (Prisma, Drizzle, Kysely, Django, TypeORM, golang-migrate).

datit309/supergraph · 56 tokens