Agent skill

Blog Geo

by AgriciDaniel in AgriciDaniel/claude-blog

AI citation readiness audit as part of SEO, covering classic Google search and AI search surfaces together.

MITAuto-check passedMarketing & SEO

Install Blog Geo

skills CLI
$ npx skills add AgriciDaniel/claude-blog --skill blog-geo -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install AgriciDaniel/claude-blog blog-geo --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/AgriciDaniel/claude-blog.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/blog-geo .claude/skills/blog-geo && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
blog-geo
GitHub stars
2.3k
Token cost
~3k tokens
SKILL.md length
1,242 words
Files
1
Skills in repo
39
Repo updated
First seen
Licence
MIT

At a glance

AI citation readiness audit as part of SEO, covering classic Google search and AI search surfaces together.

  • Works in 10 steps: Read Content → Evidence-Backed Citability (4 pts) → Purpose Fit and Reader Utility (3 pts) → …
  • The user wants their content to rank
  • SKILL.md covers Cross-reference, Evidence Discipline and Audit Process
  • Calls python3

What it does

Blog Geo is an agent skill from AgriciDaniel/claude-blog. AI citation readiness audit as part of SEO, covering classic Google search and AI search surfaces together. Use whenever the user wants their content to rank or be cited in ChatGPT, Perplexity, Claude, Gemini, Copilot, You.com, Google AI Overviews, or Google AI Mode. AI citation optimization audit scoring blog posts for major answer surfaces. Evaluates evidence-backed citability, purpose clarity, entity clarity, structured data, and AI crawler accessibility. Suggests evidence-backed explanations and a 0-100 AI…

Its SKILL.md is about 3k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Marketing & SEO, covering AI search optimization and Web search. It works with OpenAI and Perplexity. The repository describes itself as: Claude Code blog skill suite: 30 sub-skills, 5 agents, 5-gate v1.9.0 Blog Delivery Contract, dual-optimized for Google rankings and AI citations. Active development at… The licence is MIT.

When your agent uses it

  • The user wants their content to rank
  • Be cited in ChatGPT
  • Google AI Overviews
  • Ai optimization

Example prompts

  • “ai citation”
  • “ai optimization”
  • “citation audit”
  • “/blog-geo”

Requirements

  • Python 3

Workflow steps

10 steps, taken from the step headings in SKILL.md.

  1. Read Content
  2. Evidence-Backed Citability (4 pts)
  3. Purpose Fit and Reader Utility (3 pts)
  4. Entity Clarity (3 pts)
  5. Content Structure for Extraction (3 pts)
  6. AI Crawler Accessibility (2 pts)
  7. Platform-Specific Analysis
  8. Strengthen Reusable Evidence
  9. Calculate AI Citation Readiness Score (0-100)
  10. Generate Report

What it can do on your machine

Read from SKILL.md and the folder at commit 2500d4c. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • python3

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Blog Geo loads about 3k tokens when it runs. Until then it costs about 171 tokens; SKILL.md has 1,242 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~171
When it runs · the whole SKILL.md, loaded when a task matches
~3k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from AgriciDaniel/claude-blog at commit 2500d4c, republished under its MIT licence (© AgriciDaniel). 1,242 words, ~3,012 tokens.

Download SKILL.mdSave it as .claude/skills/blog-geo/SKILL.md (or your agent's skills folder).
name
blog-geo
description
AI citation readiness audit as part of SEO, covering classic Google search and AI search surfaces together. Use whenever the user wants their content to rank or be cited in ChatGPT, Perplexity, Claude, Gemini, Copilot, You.com, Google AI Overviews, or Google AI Mode. AI citation optimization audit scoring blog posts for major answer surfaces. Evaluates evidence-backed citability, purpose clarity, entity clarity, structured data, and AI crawler accessibility. Suggests evidence-backed explanations and a 0-100 AI Citation Readiness score. Use when user says "geo", "ai citation", "ai optimization", "citation audit", "aeo", "perplexity optimization", "chatgpt citation".
user-invokable
true
argument-hint
<file-path>
license
MIT

Blog GEO: AI Citation Optimization Audit

Scores blog posts for AI citation readiness across ChatGPT, Perplexity, Claude, Gemini, Copilot, You.com, Google AI Overviews, and Google AI Mode as one SEO workflow, not a separate discipline. Generates a 0-100 internal AI Citation Readiness heuristic with platform-specific recommendations. The score is not a calibrated probability of citation.

Google's 2026-05-15 guidance frames generative-AI optimization as SEO: no special markup, llms.txt requirement, or separate GEO/AEO playbook is required for Google visibility. Use GEO/AEO as shorthand labels only.

Cross-reference

This skill covers FLOW surface 3 (AI assistant citations: ChatGPT, Perplexity, Claude, Gemini, Copilot, You.com) and contributes to surface 2 (SERP plus AI Overviews). Surface mapping: skills/blog/references/flow-alignment.md.

For directly relevant AI-citation prompts (AI-supporting-pages rewrite, evidence-based quality follow-up, ChatGPT discovery, visibility prompts), see /blog flow optimize.

Evidence Discipline

Use numeric AI-citation benchmarks only when the report includes a source block with URL, publisher, methodology, sample size, engine or version, query class, retrieval date, and expiry date. If any field is missing, label the benchmark as directional or remove the number. Default heuristics:

  • Self-contained, evidence-backed explanations can aid reuse, but Google prescribes no passage-length or "chunking" requirement.
  • Comparison tables with semantic headers may improve extractability, but do not cite an uplift without a dated source block.
  • AI Overviews coverage is methodology-dependent: cite a dated range, not a fixed point.

Audit Process

Step 1: Read Content

Extract from the blog post:

  • Full content text and word count
  • Heading structure (H1, H2, H3 hierarchy)
  • Individual paragraphs and their word counts
  • FAQ sections (if present)
  • Schema markup (JSON-LD, microdata, RDFa)
  • robots.txt mentions or meta robots directives
  • Any TL;DR or summary boxes
  • Comparison tables and their HTML structure
  • Numbered/ordered lists
  • Definition-style formatting
Step 2: Evidence-Backed Citability (4 pts)

Check each section between headings for AI-extractable passages:

CheckCriteria
Context independenceEach passage makes sense extracted from surrounding context
Claim structurePassages contain: specific claim + supporting evidence + source attribution
CompletenessPassage answers a question without requiring reader to read adjacent sections

Scoring: Count important sections meeting the evidence and completeness criteria. Do not score section length.

  • 4 pts: 80%+ sections have citable passages
  • 3 pts: 60-79%
  • 2 pts: 40-59%
  • 1 pt: 20-39%
  • 0 pts: <20%
Step 3: Purpose Fit and Reader Utility (3 pts)

Check heading format and answer structure:

CheckCriteria
Clear purposeThe introduction identifies the page's topic, audience, and reader task
Useful section openingsImportant sections state the point without throat-clearing
Intent-matched formatDeclarative headings, questions, FAQs, tables, and lists are used only when they fit the material

Scoring:

  • 3 pts: All three criteria met
  • 2 pts: Two criteria met
  • 1 pt: One criterion met
  • 0 pts: None met
Step 4: Entity Clarity (3 pts)

Check topic consistency and disambiguation:

CheckCriteria
Canonical topicOne unambiguous primary topic per page
Consistent namingSame entity name used throughout (no confusing synonyms)
Intro statementClear topic statement in the introduction paragraph
Title-content matchTitle accurately reflects the content focus

Scoring:

  • 3 pts: All four criteria met
  • 2 pts: Three criteria met
  • 1 pt: One or two criteria met
  • 0 pts: None met
Step 5: Content Structure for Extraction (3 pts)

Check for AI-extractable content patterns:

CheckCriteria
SummaryOptional standalone summary when it helps the intended reader
Comparison tablesTables with semantic headers such as <thead> or clear column labels
Ordered listsNumbered lists for processes and step-by-step instructions
Definition formattingKey terms formatted with clear definition patterns
Evidence-backed explanationsImportant reusable claims carry enough context and source support

Scoring:

  • 3 pts: 4-5 elements present
  • 2 pts: 3 elements present
  • 1 pt: 1-2 elements present
  • 0 pts: None present
Step 6: AI Crawler Accessibility (2 pts)

Check technical requirements for AI crawler indexing:

CheckCriteria
Rendered contentImportant content is present in the rendered DOM and accessible to the target crawler
Google visibilityNormal crawlability and indexability for Googlebot. No special GEO/AEO file or markup is required for Google AI features
Non-Google AI crawlersIf the site wants visibility in non-Google answer engines, check robots.txt treatment for GPTBot, ChatGPT-User, ClaudeBot, PerplexityBot, and related documented crawlers
Schema consistencyStructured data reaches the rendered DOM and matches visible content
Page sizeReasonable page size within AI crawler limits

Scoring:

  • 2 pts: Google crawlability/indexability is clean, and selected non-Google crawler policies match the site's stated goals
  • 1 pt: Google is indexable but one selected non-Google crawler or rendering check needs review
  • 0 pts: Google crawling/indexing is blocked or multiple selected crawlers are unintentionally blocked
Show full SKILL.md (503 more words)Show less
Step 7: Platform-Specific Analysis

Evaluate observable readiness for each declared surface. Product behavior changes by mode, query set, geography, and date, so do not infer causal preferences from a vendor sample.

ChatGPT
  • Check that material claims are source-backed and useful without depending on a specific content format.
  • Treat current citation samples as non-causal context, not a listicle, freshness, or domain-authority rule.
Perplexity
  • Check crawlability, source fidelity, and material freshness when the query is time-sensitive. Verify observations with current logs or reproducible tooling before describing product behavior.
Google AI Overviews
  • Follow Google's normal SEO guidance: make content helpful, crawlable, indexable, and eligible for snippets. No special GEO/AEO markup or llms.txt is required for Google visibility.
  • Measure Search and AI-feature visibility separately. Organic overlap observed in a sample does not establish a preference or guarantee inclusion.
Google AI Mode
  • Treat separately from AI Overviews in reports. Emphasize normal Search eligibility, clear page purpose, accessible text, and consistency between visible content and structured data.
Claude, Gemini, Copilot, and You.com
  • Evaluate content clarity, source accessibility, freshness, and whether robots policy intentionally allows or blocks each crawler where documented.
  • Use engine-specific recommendations only when current docs, logs, or test results are available.

For each platform, provide:

  • Current citability rating (High / Medium / Low)
  • Specific improvements to clarity, source fidelity, usefulness, and crawlability
  • Content format recommendations
Step 8: Strengthen Reusable Evidence

For important sections that lack support, propose a self-contained improvement with a specific claim, the context needed to understand it, and a verified source or transparent original methodology. Do not pad every section, impose a word band, or manufacture statistics.

Step 9: Calculate AI Citation Readiness Score (0-100)

Map the 15-point subcategory scores to a 0-100 display score:

CategoryRaw PointsDisplay WeightMax Display Score
Evidence-Backed Citability/4x6.7527
Purpose Fit and Reader Utility/3x6.6720
Entity Clarity/3x6.6720
Content Structure/3x6.6720
AI Crawler Accessibility/2x6.513
Total/15100

Rating thresholds:

  • 90-100: Excellent: highly citable by AI systems
  • 70-89: Good: citable with minor improvements
  • 50-69: Needs Work: significant gaps in citability
  • Below 50: Poor: major restructuring needed
Step 10: Generate Report

Output the following report:

## AI Citation Readiness Report: [Title]

**AI Citation Readiness Heuristic: [X]/100**: [Rating]

This is an internal editorial heuristic, not a calibrated probability.

### Score Breakdown
| Category | Raw | Display | Max |
|----------|-----|---------|-----|
| Evidence-Backed Citability | X/4 | X | 27 |
| Purpose Fit and Reader Utility | X/3 | X | 20 |
| Entity Clarity | X/3 | X | 20 |
| Content Structure | X/3 | X | 20 |
| AI Crawler Accessibility | X/2 | X | 13 |
| **Total** | **X/15** | **X** | **100** |

### Per-Section Citability Analysis
| Section (H2) | Purpose Clear | Self-Contained | Claim+Evidence | Ready |
|---------------|---------------|----------------|----------------|-------|
| [heading] | Yes/No | Yes/No | Yes/No | Yes/No |

### Platform-Specific Optimization
#### ChatGPT
- [specific recommendations]

#### Perplexity
- [specific recommendations]

#### Google AI Overviews
- [specific recommendations]

#### Google AI Mode
- [specific recommendations]

#### Claude / Gemini / Copilot / You.com
- [specific recommendations]

### Evidence Improvements

#### [H2 Section 1]
> [Self-contained, source-backed improvement sized to the material]

#### [H2 Section 2]
> [Self-contained, source-backed improvement sized to the material]

### Technical Recommendations
- [ ] [Technical fix with specifics]

### Priority Action Items
1. [Most impactful improvement]
2. [Second most impactful]
3. [Third most impactful]

Run `/blog analyze <file>` for full content quality scoring.
Optional: Search Performance Context (blog-google)

If blog-google credentials include Tier 1 (GSC) and the post has a published URL:

  1. Query GSC by page and query dimensions, then filter rows to the URL: python3 skills/blog-google/scripts/run.py gsc_query --property <property> --dimensions query,page --json
  2. Add to platform-specific analysis:
    • Current impressions, clicks, CTR, average position
    • Search queries driving traffic to this URL
  3. Check indexation: python3 skills/blog-google/scripts/run.py gsc_inspect <url> --json
  4. Report indexation status, canonical selection, mobile usability.
  5. If skipped, report SKIPPED: credentials unavailable or SKIPPED: unpublished URL.
Optional: AI Citation Readiness Heuristic

For a per-engine readiness view (distinct from the 15-point AI Citation Readiness category scored by /blog analyze), run:

bash
python3 scripts/ai_citation_score.py <file> --format markdown

It returns a non-calibrated 0-100 overall heuristic plus per-engine subscores for Google AI Overview, Perplexity, and ChatGPT, a factor breakdown, and up to three highest-impact fixes. Legacy overall_probability output is retained only as a compatibility alias.

© AgriciDaniel, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/blog-geo of AgriciDaniel/claude-blog.

Open the folder on GitHubat commit 2500d4c

Compare with similar skills

Blog Geo next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Blog Geo compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Blog Geo this skillAgriciDaniel/claude-blog2.3k—~3kAutomated safety check: PassMIT
Geo Fundamentalswasp-lang/wasp19k9 repos~861Automated safety check: PassMIT
Marketing OsYuzzyuk/marketing-os540—~2.5kAutomated safety check: PassMIT
Geoliangdabiao/GEO-Content-Optimizer-Skill2051 repos~2.3kAutomated safety check: NotesMIT
Geo Optimizerliangdabiao/GEO-Content-Optimizer-Skill205—~1.1kAutomated safety check: PassNone
SEO Auditshadcn-labs/agentcn490—~598Automated safety check: PassMIT

Similar skills

  • Geo Fundamentals

    wasp-lang/wasp

    Generative Engine Optimization for AI search engines (ChatGPT, Claude, Perplexity).

    19k GitHub starsUsed in 9 repos~861 tokens
    Marketing & SEOAuto-check passed
  • Marketing Os

    Yuzzyuk/marketing-os

    A complete marketing department in one skill. An agent skill from Yuzzyuk/marketing-os.

    540 GitHub stars~2.5k tokensUpdated 1 mo ago
    Marketing & SEOAuto-check passed
  • Geo

    liangdabiao/GEO-Content-Optimizer-Skill

    完整的 GEO(生成式引擎优化)服务流水线:给一个产品官网 URL 和介绍材料, 做站点诊断与 AI 答案采样、生成带验收标准的执行工单、产出可直接部署的资产 (llms.txt / JSON-LD / 定义块 / FAQ / 内容大纲与初稿)、自动验收工单是否闭环、 并打包成可直接发给客户的交付物。可按周期复跑,做长期 GEO 运营与月报。

    205 GitHub starsUsed in 1 repo~2.3k tokens
    Marketing & SEOAuto-check: notes
  • Geo Optimizer

    liangdabiao/GEO-Content-Optimizer-Skill

    GEO (Generative Engine Optimization) 全流程优化工具。帮助品牌内容被 ChatGPT、Perplexity、Gemini 等 AI 搜索引擎引用。

    205 GitHub stars~1.1k tokensUpdated 2 mo ago
    Marketing & SEOAuto-check passed
  • SEO Audit

    shadcn-labs/agentcn

    How to present the deterministic AI-SEO audit returned by auditpage.

    490 GitHub stars~598 tokensUpdated 4 days ago
    Marketing & SEOAuto-check passed
  • AI Traffic Tracking

    kostja94/marketing-skills

    When the user wants to track AI search traffic in GA4 or GSC.

    1k GitHub stars~959 tokensUpdated 5 days ago
    Marketing & SEOAuto-check passed

More from AgriciDaniel/claude-blog

All 39 skills in this repo
  • Blog Google

    AgriciDaniel/claude-blog

    Google API integration for blog performance: PageSpeed Insights, CrUX Core Web Vitals with 25-week history, Search Console performance, URL Inspection, Indexing API, GA4 organic traffic, NLP entity…

    2.3k GitHub starsUsed in 1 repo~3.3k tokens
    Auto-check: notes
  • Blog Audio

    AgriciDaniel/claude-blog

    Generate audio narration of blog posts using Google Gemini TTS.

    2.3k GitHub starsUsed in 1 repo~2.2k tokens
    Auto-check: notes
  • Blog Flow

    AgriciDaniel/claude-blog

    FLOW framework integration for bloggers. An agent skill from AgriciDaniel/claude-blog.

    2.3k GitHub starsUsed in 1 repo~2k tokens
    Auto-check passed
  • Blog Notebooklm

    AgriciDaniel/claude-blog

    Query Google NotebookLM notebooks for source-grounded, citation-backed answers from user-uploaded documents.

    2.3k GitHub starsUsed in 1 repo~2.5k tokens
    Auto-check: warnings
  • Blog Image

    AgriciDaniel/claude-blog

    AI image generation and editing for blog content powered by Gemini via MCP.

    2.3k GitHub stars~3.4k tokensUpdated 2 days ago
    Auto-check passed
  • Blog Cluster

    AgriciDaniel/claude-blog

    Semantic topic cluster planning and automated execution engine for claude-blog.

    2.3k GitHub starsUsed in 1 repo~4.9k tokens
    Auto-check passed

Categories

Questions about Blog Geo

What does Blog Geo do?

AI citation readiness audit as part of SEO, covering classic Google search and AI search surfaces together. Blog Geo is an agent skill from AgriciDaniel/claude-blog. AI citation readiness audit as part of SEO, covering classic Google search and AI search surfaces together.

When should I use Blog Geo?

Blog Geo fits situations like: the user wants their content to rank; be cited in ChatGPT; google AI Overviews; ai optimization.

How do I install Blog Geo in Claude Code?

Run `npx skills add AgriciDaniel/claude-blog --skill blog-geo -a claude-code`. Or copy the skill folder (skills/blog-geo in AgriciDaniel/claude-blog) into .claude/skills/blog-geo in your project. Claude Code loads it when a task matches its description.

How do I install Blog Geo in Codex?

Run `npx skills add AgriciDaniel/claude-blog --skill blog-geo -a codex`. Or copy the skill folder (skills/blog-geo in AgriciDaniel/claude-blog) into .agents/skills/blog-geo in your project. Codex loads it when a task matches its description.

Can I use Blog Geo in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add AgriciDaniel/claude-blog --skill blog-geo -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/blog-geo, .gemini/skills/blog-geo, .github/skills/blog-geo and .opencode/skills/blog-geo in your project.

What does Blog Geo need to run?

Going by SKILL.md and its folder, Blog Geo needs the command-line tools its instructions call (python3). Our summary lists: Python 3.

Does Blog Geo access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Blog Geo safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Blog Geo use?

Blog Geo is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Blog Geo use?

About 3k tokens (SKILL.md is roughly 12k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Blog Geo?

Skills that share tags, products or a category with Blog Geo: Geo Fundamentals (wasp-lang/wasp, 19k stars), Marketing Os (Yuzzyuk/marketing-os, 540 stars), Geo (liangdabiao/GEO-Content-Optimizer-Skill, 205 stars) and Geo Optimizer (liangdabiao/GEO-Content-Optimizer-Skill, 205 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Blog Geo?

AgriciDaniel (a GitHub user) maintains it in AgriciDaniel/claude-blog, which has 2,348 GitHub stars. The repository holds 39 skills in this directory. The repository was last updated on October 9, 2026.

Source: AgriciDaniel/claude-blog on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.