BC gingiris-seo-geo
🇺🇸 SEO & GEO Dual-Engine Playbook 2026 — Rank on Google AND get cited by AI search (ChatGPT, Perplexity, Claude, Gemini). Battle-tested from AFFiNE (60k GitHub stars in 24 months) and 150+ AI startup consultations. E-E-A-T writing voice system, keyword funnel strategy, JSON-LD schema templates, comparison page SOP, IndexNow setup, Generative Engine Optimization content patterns. **Optimized for dev tools / OSS / B2B SaaS. 2C products (education, apps, games): see 2c-adaptation guide in references/.** 🇨🇳 SEO & GEO 双引擎增长手册 —— 同时拿下 Google 排名和 AI 搜索引用(ChatGPT、Perplexity、Claude、文心一言)的完整方法论。AFFiNE 60k stars 与 150+ AI 创业公司咨询实战验证。E-E-A-T 写作声音系统、关键词漏斗、JSON-LD 结构化数据、竞品对比页 SOP、IndexNow 推送、生成式引擎优化内容模式。**默认适用于开发者工具 / 开源项目 / B2B SaaS,2C 产品(教育/应用/游戏)请参考 references/2c-adaptation.md。** 🇯🇵 SEO & GEO デュアルエンジングロースプレイブック — Google検索とAI検索(ChatGPT、Perplexity、Claude)の両方で評価される手法。AFFiNE 60k starsと150社以上のAIスタートアップコンサルティングで検証。E-E-A-Tライティング、キーワードファネル、Schema.org構造化データ、比較ページSOP。**デフォルトは開発者ツール/OSS/B2B SaaS向け。2C製品(教育・アプリ・ゲーム)はreferences/2c-adaptation.mdを参照。** 🇰🇷 SEO & GEO 듀얼 엔진 성장 플레이북 — 구글 검색과 AI 검색(ChatGPT, Perplexity, Claude) 양쪽 모두에서 인용되는 방법론. AFFiNE 60k 스타와 150+ AI 스타트업 컨설팅으로 검증. E-E-A-T 글쓰기, 키워드 퍼널, Schema.org 구조화 데이터, 비교 페이지 SOP. **기본값은 개발자 도구/OSS/B2B SaaS용. 2C 제품(교육·앱·게임)은 references/2c-adaptation.md 참조.** Triggers: "SEO" | "GEO" | "Generative Engine Optimization" | "AI search optimization" | "ChatGPT SEO" | "Perplexity SEO" | "Claude SEO" | "search optimization" | "content SEO" | "technical SEO" | "schema markup" | "JSON-LD" | "structured data" | "IndexNow" | "E-E-A-T" | "keyword strategy" | "keyword funnel" | "comparison page" | "programmatic SEO" | "SaaS SEO" | "搜索优化" | "AI 搜索" | "内容 SEO" | "GEO 优化" | "生成式引擎优化"
As a process C 53/100 · Has gaps — weak spots: result and completion, when it triggers, inputs and preconditions
How to improve
- Say in the description WHEN to use the skill ("use when…", example requests): that is the agent's main cue.
- Shorten the description to 1024 characters.
- Your own cases (evals/evals.json, 4–6 real requests with expected answers): the full check would then run those instead of a model-drafted suite.
- A spec.yaml with trigger phrases and assertions — a behaviour contract for CI; `skilltest init` writes a template.
Guard findings · 0
✓ No critical or high findings
Files scanned: 20. Evidence is masked. Grey chips explain why severity was lowered.
Against the Agent Skills spec
- error
description-longdescription is 1729 chars, limit 1024 - warning
description-no-whendescription does not say WHEN to use the skill (no "use when") - note
description-budgetdescription takes 1729 of the ~15000-char shared budget for all skills
Process rating: all ten parameters 53/100
- 0Result and completion. Does not say what the result is
- 0Inputs and preconditions. Does not say what the process needs to start
- 0Failures and branches. Linear process with no failure handling
- 0Progress reporting. Says nothing while it works
- 20When it triggers. No condition that starts the skill
- 100Tools and files. No external tools needed
- 100Steps. 40 steps
- 100Consistency. Name and required fields are in place
- 100Execution cost. Instruction body is 3942 tokens
- 100Running it twice. Mutating operations check current state
Everything here is measured from the skill text rather than judged by a model, so the numbers are checkable. A parameter weighs more when it is a more common reason for the process to stall.
Quality signals
- +4Description does not say when NOT to use the skill (false activations)
- +3Description length 1728: 120–800 characters recommended
- +3Output format is not stated: the model decides each time
- +4No input/output examples
- +1No license
- +2Single-language instructions
- +5Description quotes 21 example trigger phrases
- +4Structure: 24 headings
- +3Step-by-step instructions: 40 items
- +4Reference files are cited in the instructions (8 of 8)
Quality base 70; lint remarks subtract, signals add up to 100. Result: 46.