# yao-geo-skills packages 24 GEO workflows as verifiable agent skills

> yao-geo-skills is a collection of skills for generative engine optimization, the work of making a brand visible in AI answers, packaged as reusable agent assets rather than loose prompts. Each skill ships an entry point, a manifest, a brief template, evaluation files and a human readable page, and a repository validation script checks the structure. The project is MIT licensed, has no releases, and was last pushed on 2026-10-01.

**yaojingang/yao-geo-skills** — An open-source Skill collection for GEO content and workflows, continuously updated.

- Repository: https://github.com/yaojingang/yao-geo-skills
- Website: https://yaojingang.github.io/yao-geo-skills/
- Stars: 895 · Forks: 168
- Language: HTML
- License: MIT
- Published: 2026-10-20 · Updated: 2026-10-20 · Language: en
- Canonical page: https://hysenlabs.com/projects/yaojingang-yao-geo-skills

## GEO here means generative engine optimization, not maps

The repository collects skills for GEO work, and the README opens with a clarification that is worth repeating because the acronym is ambiguous. In this repository GEO stands for generative engine optimization, and it is not a tool about geographic information or maps.

That definition is the whole field. Generative engine optimization is the practice of making a brand, a product or a piece of content appear in the answers that AI assistants give, and the repository's skills are the operational tasks that surround it. A brand knowledge graph, an article rewritten to be friendly to AI readers, a title optimizer, a comparison page builder, a set of questions people ask AI search engines, a monitor that samples how often a brand shows up in an answer.

The project description calls it an open source Skill collection for GEO content and workflows, continuously updated, and the README says the aim is to turn the repetitive parts of GEO work into skill packages a team can reuse over the long term.

The audience is therefore a marketing or content team that already does this work, plus the engineers or agents helping them. The homepage is yaojingang.github.io/yao-geo-skills, the repository has a visual navigation page at index.html, and the English version of the README is at docs/README.en.md while the main one is in Chinese.

The primary language of the repository is HTML, which is a fair signal about the shape of the thing: it is a document and asset collection with a browsable catalogue, not a program.

## Twenty four skills across seven kinds of work

The current status section says the repository contains 24 GEO related skills, covering strategy diagnosis, page techniques, content production, knowledge assets, measurement and attribution, research and keyword expansion, and GEOFlow operations. The table breaks that down into seven categories.

geo-operations has 3 skills, covering GEOFlow CLI operation, template mapping and Laravel Blade theme editing. geo-strategy has 2, a full panorama diagnosis and a 30, 60 and 90 day execution roadmap. geo-page-technical has 2, page level GEO diagnosis and a GEO friendly page blueprint. geo-content-production is the largest group with 6, covering titles, explainers, comparisons, making an article AI friendly, revising old articles and listicle style evaluations. geo-knowledge-assets has 2, a brand knowledge graph and a brand knowledge base with fact cards. geo-measurement has 5, attribution tracking, a monthly report on AI answer monitoring, repeat sampling for DeepSeek, repeat sampling for the Doubao app and web, and a sampling probability report for ChatGPT AI Search. geo-research has 4, an AI search question set, keyword collection for Baidu, Xiaohongshu and Douyin, intent clusters and monitoring prompts.

That spread tells you what the project is for. It is not a set of prompt templates for a single task, it is an attempt to cover a discipline, with measurement and research sitting alongside production.

The skill names follow the same scheme, with a yao- prefix and a hyphenated descriptor, such as yao-geo-panorama-audit for the strategy diagnosis, yao-geo-title-optimizer and yao-geo-comparison-builder for content work, yao-deepseek-crawler, yao-doubao-crawler and yao-chatgpt-crawler for the sampling work, and yao-geoflow-cli, yao-geoflow-template and yao-geoflow-design for the operations group.

## Every skill ships the same five files, and the structure is checked

The most important thing in the README is the rule about what a formal skill must contain, because it is what separates this collection from a folder of prompts.

Each formal skill includes at least a SKILL.md, which is the agent entry point and the statement of the execution boundary, a manifest.json with the public metadata, a templates/brief-template.md which is the input brief template, an evals/trigger_cases.json and an evals/expected_artifacts.json for trigger and artifact validation, and a docs/skills/<skill-id>.md page written for people reading on GitHub.

The trigger cases and the expected artifacts are the interesting part. A trigger case file says when the skill should fire, and the expected artifacts file says what it should produce, which turns a skill from a document into something with a testable contract.

And the structure is enforced. The README says you can run a repository level validation, and the command is:

```bash
python3 scripts/validate_repository.py
```

A project that ships a validator for its own layout is making a claim about quality, and the README is explicit that loose content which only has to run is discouraged. The repository features section says the same thing in different words: it emphasises reusability, so each skill should work again on similar tasks rather than being a one-off prompt, and it emphasises verifiability, because both the repository and the skills have structural checks.

The other three principles are worth naming, because they shape how a skill should be written. The collection emphasises boundaries, making clear when a skill should and should not be used so that it does not decay into generalities. It emphasises open source safety, where public examples must have privacy removed and must not depend on internal networks or private system bindings. And it emphasises delivery, because many of the skills do not only output text but produce artefacts such as HTML and DOCX that can be handed over directly.

## The layout separates the packages, the pages and the shared conventions

The repository logic section spells out the organisation, and it is simple enough to hold in your head.

One skill solves one clearly defined job. The skills/ directory holds the skill packages themselves. The docs/skills/ directory holds the explanation pages that are better for people to read. The registry/skills.json file records the inventory of skills in the repository. The shared/ directory holds the shared templates, schemas and conventions. And scripts/validate_repository.py does the repository level structural validation.

The shared/ directory deserves a second look, because it is where the differences between two similar skills usually live. The features section says complex methods are split into references/, scripts/ and evals/ rather than piled into one very long prompt, and the repository is suitable for accumulating shared templates, schemas, rubrics and delivery rules for GEO work.

The audience for the catalogue is also defined. The README says the repository is for people who want to reuse GEO methods instead of rewriting prompts each time, who want to turn GEO tasks into standardised skill packages, who want to share GEO workflows in public while controlling quality and privacy, and who want to accumulate readable, verifiable and demonstrable examples.

The catalogue navigation groups the skills by work type, into operations, strategy, page-technical, content-production, knowledge-assets, measurement and research, so that you can quickly tell whether a skill is oriented towards execution, strategic diagnosis, page techniques, content production, knowledge assets, monitoring or research.

## You can pull one skill instead of the whole repository

The download section offers the whole repository and a single skill, and the single skill path is the more interesting one for an evaluator who wants to look at one thing.

For the whole repository, a clone is:

```bash
git clone https://github.com/yaojingang/yao-geo-skills.git
cd yao-geo-skills
```

The README also documents downloading a ZIP from the Code menu on the GitHub page.

For a single skill, the first method is a sparse checkout, and the commands are:

```bash
git clone --filter=blob:none --no-checkout https://github.com/yaojingang/yao-geo-skills.git
cd yao-geo-skills
git sparse-checkout init --cone
git sparse-checkout set skills/yao-geo-tracking docs/skills/yao-geo-tracking.md
git checkout main
```

The blob filter and the no-checkout flag are what make this cheap, since the repository is not cloned in full and only the requested paths are fetched. The second method is to open the skill directory on GitHub and download the files by hand, and the README lists every skill directory with a link so you can pick one.

The README also notes the privacy rule that governs the public examples, that cases published in the open must have private information removed and must not carry dependencies on internal networks or private system bindings, and the list of what the repository is not suitable for includes content that needs private systems, private documents or private APIs to run.

## A collection with a real methodology, and no release history

The most useful single skill to read, if you want to understand the project's method, is the strategy one, yao-geo-panorama-audit. Its description says it establishes a brand wide GEO baseline, diagnosing AI answer visibility across DeepSeek, Doubao, Qianwen, Kimi and Yuanbao, looking at competitor gaps, content page gaps, official site evidence and external sources, and outputting an opportunity map with P0 and P1 priorities. It publishes synthetic example outputs in both Markdown and HTML, which is the kind of artefact that lets you judge the quality of the output without running anything.

The operations group tells you what the collection is anchored to. yao-geoflow-cli drives a GEOFlow 2.1 or later system through a supported CLI, a Laravel /api/v1 and the logged in back end, covering tasks, source files, articles, distribution, a growth centre, an enterprise knowledge base, theme editing and front end capability syncing, and it is aimed at operators who already have a GEOFlow system and need to export growth leads, refresh channel capabilities, batch process, or pre check a Docker deployment or a high risk action. yao-geoflow-design is the current front end skill, handling Laravel Blade themes, homepage module and style JSON, a lead_form conversion module, comparing the default site with a channel target package, and planning a sync preview. And yao-geoflow-template is explicitly the legacy path, kept to explain the old PHP template package output contract and to produce migration notes for the design skill.

That division, current skill, legacy skill, and an explicit note about which one to use, is a sign of a maintained collection rather than a dump.

The maintenance facts are modest. The project is MIT licensed, there are no GitHub releases, the default branch is main, and the last push was on 2026-10-01. The README's own progress notes for version 3.0 of the collection are dated 2022, and the repository is described as continuously updated, so the practical expectation is a moving main branch rather than a versioned distribution. For a team that wants to vendor a skill, the commit you pin is the version you have, and the structural validator is what tells you whether the checkout is intact.

## Conclusion

Adopt yao-geo-skills if you do generative engine optimization work repeatedly and want to reuse a method rather than rewrite a prompt each time, and if you are willing to read the structure documentation before using a skill. Do not adopt it to store loose prompts, to record a brainstorm, or for content that depends on private systems, private documents or private APIs, since the README lists all of those as out of scope. Before you use any skill, run the repository validation script, read that skill's SKILL.md for its execution boundary, and check the shared/ templates and schema directory, since that is where the delivery rules live and where the difference between two similar skills usually is.

## FAQ

### What does GEO mean in the yao-geo-skills repository?

It means generative engine optimization, and the README states explicitly that it is not about geographic information or mapping tools. The skills cover the operational work of making a brand visible in AI answers.

### How many skills does the repository contain and how are they grouped?

The README says there are 24 GEO related skills, grouped into seven categories: geo-operations with 3, geo-strategy with 2, geo-page-technical with 2, geo-content-production with 6, geo-knowledge-assets with 2, geo-measurement with 5 and geo-research with 4.

### What files does each skill package include?

At least a SKILL.md as the agent entry point and execution boundary, a manifest.json with the public metadata, a templates/brief-template.md input brief template, an evals/trigger_cases.json and evals/expected_artifacts.json pair for trigger and artifact validation, and a docs/skills/<skill-id>.md page written for people reading on GitHub.

### How do I validate the repository?

Run python3 scripts/validate_repository.py. The scripts/ directory holds the repository level structural validation, and the README says the collection discourages loose content that only has to run.

### Can I download just one skill instead of the whole repository?

Yes. The README documents a sparse checkout using git clone with the blob filter and no-checkout flags followed by git sparse-checkout set for the skill and its page, and also links each skill directory for manual download. The licence is MIT and the last push was on 2026-10-01.

## Sources

- [Issues](https://github.com/yaojingang/yao-geo-skills/issues)
- [License: MIT](https://github.com/yaojingang/yao-geo-skills/blob/main/LICENSE)
- [Project website](https://yaojingang.github.io/yao-geo-skills/)
- [README](https://github.com/yaojingang/yao-geo-skills/blob/main/README.md)
- [yaojingang/yao-geo-skills on GitHub](https://github.com/yaojingang/yao-geo-skills)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/yaojingang-yao-geo-skills
