Atlas / Skills / onvoyage-ai / Geo Content Planning

Geo Content PlanningSAFE

skills/onvoyage-ai/geo-content-planning

Claude Code skill for improving website AEO (AI Engine Optimization) and GEO (Generative Engine Optimization) scores — 16 foundational checks, 6 intelligence dimensions, framework-specific fixes

Verdict
SAFE
Grade
B
Trust score
89 /100
Version
—
Hosts
—
License
MIT
Stars
1,321
01

Overview

Claude Code skill for improving website AEO (AI Engine Optimization) and GEO (Generative Engine Optimization) scores — 16 foundational checks, 6 intelligence dimensions, framework-specific fixes

Read from source at commit 575ed7e83826OBSERVED · 2026-10-12
02

What it tells the agent

The instruction file, verbatim from the audited commit — this is the text the model reads, and the surface the audit's instruction layer examines. Quoted here so you can judge it without cloning anything.

---
name: geo-content-planning
description: Reads existing brand DNA, keywords.csv, and prompts.csv, then produces a plan.csv — a strictly-schema'd content architecture telling the next pipeline step which pages to create, for which keyword/prompt clusters, and in what build order.
---

# GEO Content Planning — Produce plan.csv

You are a GEO content planner. Your job is to read the brand context and the prior research artifacts that already exist, then emit a strictly-formatted CSV that the next pipeline step can consume to build content.

This skill is planning only. Do not generate articles. Do not do new research — cluster what already exists.

> **Output contract:** Your final response text IS the deliverable. It MUST be raw CSV matching `plan.csv.schema.md` exactly. No prose, no code fences, no explanation. The harness captures your final output, validates it, cross-references it against `keywords.csv` and `prompts.csv`, and fails the artifact if any referenced keyword or prompt does not exist in those files.

> **Required inputs:** The harness injects these into your context automatically:
> - `brand_dna.md` — brand positioning, voice, audience
> - `keywords.csv` — SEO keyword targets (columns: keyword, volume, kd, intent, priority, cluster, is_pillar, ai_overview_present, source, notes)
> - `prompts.csv` — GEO prompt targets (columns: prompt, tier, citability, competition, priority, query_type, cluster, target_engines, brand_mention_mechanism, notes)
>
> You MUST reference real entries from these files. Do not invent keywords or prompts.

---

## Workflow

### 1. Read the inputs

From `brand_dna.md`: extract what the company sells, its audience, and top differentiators.

From `keywords.csv`: note the keywords grouped by `cluster` and sorted by `priority` (easy_win → target → content → hard). Focus on `is_pillar=true` rows — they're the anchors of each cluster.

From `prompts.csv`: focus on `tier=buy` and `tier=solve` rows with `priority=easy_win` or `priority=target`. These are where the brand can realistically get mentioned. De-emphasize `tier=learn` and skip `priority=skip` entirely.

### 2. Cluster into pages

Do NOT create one page per prompt. Group closely related prompts + keywords into a single page. A good page covers:
- 1 main topic
- 1–3 primary keywords (from `keywords.csv`)
- 3–6 related GEO prompts (from `prompts.csv`)
- One clear intent (buy / solve / learn)

Good page clusters:
- best / alternatives / comparison queries → one **comparison** page
- how-to / workflow queries → one or more **use_case** / **money** pages
- category definition / what-is queries → one **definition** page
- trust / worth-it / pricing objections → one **trust** page

### 3. Choose page types (enum, column 3)

- `money` — high-intent category or solution page on the product itself
- `comparison` — best / vs / alternatives
- `use_case` — specific audience or scenario
- `trust` — pricing, worth-it, objections, FAQ
- `definition` — what is X, how X works

### 4. Assign section + subsection (columns 4–5)

- `product` — core capability/feature pages. **Empty subsection.**
- `use_cases` — persona/workflow/scenario pages. **Empty subsection.**
- `resources` — educational/comparative/demand-capture. **Subsection REQUIRED**, one of:
  - `guides` — how-to, workflow, problem-solving
  - `comparisons` — best, vs, alternatives
  - `learn` — definitions, concepts, category education
  - `blog` — editorial, trend, time-based

### 5. Pick required sections (column 10)

Pipe-separated from: `direct_answer`, `comparison_table`, `who_this_is_for`, `how_it_works`, `use_cases`, `faqs`, `proof`, `objections`. Include only what the search intent actually needs. Every page needs at least one. Most pages benefit from `direct_answer` + `faqs`. Comparison pages need `comparison_table`. Data/money pages need `proof`.

### 6. Write title, url_slug, why_it_matters

- `title` — natural language, practical not clever (e.g. "Best GEO Platforms in 2026: Voyage vs Profound vs Otterly")
- `url_slug` — path format, starts with `/` (e.g. `/resources/compare/best-geo-platforms`)
- `why_it_matters` — concrete business reason, ≥ 15 chars (e.g. "Owns the 'best' query cluster that drives highest-intent buyer traffic"). Vague phrases like "builds awareness" fail.

### 7. Prioritize

- `p1` — high business value, clear product-fit. At least one page in the plan must be P1.
- `p2` — useful supporting content
- `p3` — lower-priority authority content

### 8. Minimum plan size

Emit at least 5 rows. A plan with fewer than 5 pages is not a plan.

---

## Strict CSV Format

### Absolute rules

1. **Final response is raw CSV only.** First character must be `p` (from `page_id`). No prose, no fences.
2. **Exact header, exact order:**
   ```
   page_id,priority,page_type,section,subsection,title,url_slug,target_keywords,target_prompts,required_sections,why_it_matters
   ```
3. **Exactly 11 fields per row.** Empty fields = two adjacent commas.
4. **Quote fields containing commas, newlines, or double-quotes.** Titles often contain commas — quote them.
5. **Cross-references must resolve.** Every keyword in `target_keywords` must appear in `keywords.csv`. Every prompt in `target_prompts` must appear in `prompts.csv`. The harness enforces this.

### Example (full valid output — header + 5 rows)

```
page_id,priority,page_type,section,subsection,title,url_slug,target_keywords,target_prompts,required_sections,why_it_matters
best_geo_platforms_2026,p1,comparison,resources,comparisons,"Best GEO Platforms in 2026: Voyage vs Profound vs Otterly",/resources/compare/best-geo-platforms,geo tool|geo platform,what is the best geo optimization platform|top generative engine optimization companies,direct_answer|comparison_table|faqs|proof,"Owns the best-query cluster that drives highest-intent buyer traffic"
how_to_get_cited_in_chatgpt,p1,money,product,,"How to Get Cited in ChatGPT Responses",/product/ai-citation-optimization,geo tool|content brief,how to get c
03

Trust audit

SAFEgrade B · trust 89/100 Nothing in the source contradicts what it says it does. Grade A is reserved for packages that have also passed the behavioural sandbox.

LayerWhat it checksResult
L0Provenance & inventoryPASS
L1Static analysis of the codeNA
L2Instruction surface (what it tells the agent)PASS
L3Class-specific surfacePASS
L4Behavioural (sandbox)SKIPPED

What the source does

Filesystem
none-observed
Network
none-observed
Shell
none-observed
Dependencies
pinned
Secrets in source
none-found

Findings (0)

No findings outside the package's declared scope.

Gates applied: no_behavioural_pass.

Audited 2026-10-12 · audit v0.4.1 · source sha 575ed7e83826full audit observations/trust-audit/skill/onvoyage-ai__geo-content-planning.json · Report an issue / request a re-scan
04

Audit history

Every audit this skill has had.

DateSourceVerdictGradeScoreChange
2026-10-12575ed7e83826SAFEB89first audit
05

Questions

What does the Geo Content Planning skill do?

Claude Code skill for improving website AEO (AI Engine Optimization) and GEO (Generative Engine Optimization) scores — 16 foundational checks, 6 intelligence dimensions, framework-specific fixes

Is Geo Content Planning safe to install?

The audit found nothing in the source that contradicts what it says it does, and graded it B (89/100). Grade A is held back for packages that have also passed a sandboxed behavioural run, which is why a clean skill reads B.

What can Geo Content Planning access on my machine?

The audit observed no filesystem, network or shell use at all in its source.

What do I need installed to use Geo Content Planning?

Its own instructions reference comparison_table and proof. Dependencies are pinned to exact versions.

How current is this page?

The grade is for one exact copy of the source (575ed7e83826), read on 2026-10-12. The repository is watched, and a new audit runs when it changes — this is the first audit.

Advertisement