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.
npx skills add ZensInk/zens-ink-seo-package --skill geo-readinessgit clone --depth 1 https://github.com/ZensInk/zens-ink-seo-packageWrote 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.
[](https://agentmods.dev/skills/zensink/zens-ink-seo-package/geo-readiness)<a href="https://agentmods.dev/skills/zensink/zens-ink-seo-package/geo-readiness"><img src="https://agentmods.dev/badge/skills/zensink/zens-ink-seo-package/geo-readiness/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/zensink/zens-ink-seo-package/geo-readiness"><img src="https://agentmods.dev/badge/skills/zensink/zens-ink-seo-package/geo-readiness.svg" alt="Reviewed on agentmods" width="80" height="20"></a>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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00126 | $0.00910 |
| Opus 5.5 | $0.00050 | $0.00364 |
| Sonnet 5.5 | $0.00025 | $0.00182 |
| Haiku 4.5 | $0.00013 | $0.00091 |
Grade A, and why
geo-readiness 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 yesterday.
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.
How it starts
The opening of the file, as written. The whole thing — 92 lines — stays where its author put it; the contents beside it link to each section on GitHub.
GEO: get cited by AI engines
AI engines cite pages they can retrieve, parse, and trust. This skill covers the three layers: crawler policy (robots.txt), machine-readable index (llms.txt), and content shaped for fan-out queries.
When to use
- "How do I get my site cited by ChatGPT / Perplexity?"
- "Generate llms.txt for my site"
- "Audit my AI readiness"
- Planning content that answers AI-spawned sub-questions.
When NOT to use
- The site has zero conventional rankings — AI citation mostly mirrors SERP
strength; fix rankings first (
keyword-research+site-auditskills).
Setup
pip install zens-ink
Commands
# 1. Audit the AI layer: robots.txt crawler policy + llms.txt presence
python3 -m zens_ink.ai_crawler_audit https://example.com
python3 -m zens_ink.ai_crawler_audit https://example.com --markdown report.md
# 2. Generate llms.txt + llms-full.txt from a build or remote sitemap
python3 -m zens_ink.llms_gen --dist dist --site https://example.com \
--name "Example" --tagline "What the site does"
python3 -m zens_ink.llms_gen --sitemap https://example.com/sitemap.xml \
--site https://example.com
# 3. Plan Query Fan-out content (sub-queries AI engines derive)
python3 -m zens_ink.geo_fanout "best crm" --icp "small business owners"
python3 -m zens_ink.geo_fanout "ai seo" --lang zh
# 4. Gate drafts for citability before publishing
python3 -m zens_ink.content_qc drafts/
How to read the results
- ai_crawler_audit: decide the stance deliberately — allow search/RAG crawlers (ai-input=yes, get cited) while denying training crawlers (ai-train=no, protect original IP). Content Signals comments in robots.txt express this machine-readably.
- llms_gen: llms.txt is the index, llms-full.txt the deep layer. Keep descriptions factual (what the page answers), not marketing copy — agents route by task, not by adjectives.
- geo_fanout: each sub-query is a heading your content should answer directly (BLUF style, quotable facts). Fan-out coverage = more retrieval surface across engines.
- content_qc: scores whether a draft is citable (BLUF, structure, quotable specifics). Below 70, fix the named dimension.
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.
- yesterday First seen · 92 lines · 126 tokens per session scan A 30f3522fb723
geo-readiness is a skill published in the GitHub repository ZensInk/zens-ink-seo-package (53 stars, last pushed yesterday), licensed MIT. It adds 126 tokens to every session and 910 once invoked, about $0.0005 per session on Opus 5.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-10-15.
Other skills, from other repositories
vs-crawler
Crawl websites (news, blogs, papers, GitHub, product docs, RSS feeds) into a fixed-schema JSONL file, then create a dataset and a searchable application in Viking AI Search. Supports one-time crawl and scheduled recurring crawl with automatic incremental sync.
vs-search-tuning
Use when a user asks an agent to evaluate or tune text search similarity for an existing Viking AI Search application and dataset.
geo-knowledge
A tool for building and querying a knowledge graph about GEO from approved source files. GEO means generative engine optimization: preparing information so AI search systems can use it.
geo-seo
A guide to traditional SEO and GEO, which means preparing content to be found, understood, and cited by AI search systems. It applies these checks to WordPress sites, Cloudflare Workers, and an Obsidian vault.
content-creator
Self-configuring content creation pipeline with geo-lint validation. On first use, scans your project to learn its framework, content schema, categories, and authors, then creates SEO & GEO-optimized content matched to your brand voice. Validates every piece with geo-lint's 92 rules until zero violations. Triggers on…
geo-lint
SEO & GEO content linter — validates Markdown/MDX files for AI search visibility using 92 deterministic rules (35 GEO, 32 SEO, 14 content quality, 8 technical, 3 i18n). Runs an autonomous lint-fix loop: scan content, read structured violations, fix them, re-lint until clean. Use when optimizing content for AI…