SuperAPI AI Directory

gingiris-seo-geo-agent

Agents & models

View repository

Updated 10-15 21:52

About this skill

SEO/GEO Agent Operations SOP v2

Version Notes: This is the v2 draft, rewritten based on real operational experience from analook.com and gingiris.tools. v1 gave you the methodology framework, while v2 gives you "how to run it after having been through the pitfalls."


⚠️ Before Starting: Why Context Must Be Collected First

The biggest problem with v1: the agent didn't know whether your site was new or old, whether GSC was connected, or what landing pages already existed—so all the strategies it gave were generic advice that couldn't be implemented.

Real Incident Postmortem:

  • analook.com: The GSC OAuth token expired, and the agent continued running on old cached data for 2 weeks, completely driving blind. Rankings were moving, and we had no idea.
  • gingiris.tools: After migrating to a new domain, all P0 keywords dropped out of the Top 100. DataForSEO detected it, but because there was no systematic daily report, it was already 10 days later by the time it was discovered.
  • Data incident: DataForSEO's non-branded organic search figure was mistakenly written into a tweet as monthly organic search traffic, differing from Semrush data by 17x, and was publicly pointed out by a user.

These three things tell me:Without context, operations is just gambling.


Step One: Initial Context Collection (Conversational, Must Be Completed)

When the agent runs for the first time,guide the user step by step to provide information, asking only one question at a time, and do not dump a big table all at once。

After the user answers, the agent adjusts the strategy based on the answer, then asks the next question. After everything is collected, give a brief "current status assessment" before starting operations.


Conversation Guidance Script (Execute in Order)

Q1 (ask this first)

What is your website's primary domain? Roughly when was it created?

→ After receiving it, determine: new site (< 6 months) / growing site (6-24 months) / old site (> 24 months)


Q2

Is Google Search Console (GSC) connected?

A) Connected, and I've looked at the data recently B) Connected, but haven't looked at it for a long time (the token may be expired) C) Not connected yet

→ A: Ask them to paste the Top 10 keywords from the last 7 days (screenshot or text) → B: Remind them to verify the token first, and suggest running gws auth login → C:Stop! The first task this time is to connect GSC + GA4, and everything else waits


Q3

Roughly how much monthly traffic does the website have? What is its authority like?

A) I have Ahrefs / Semrush data, DR is roughly ___ B) I have Similarweb / other estimates, monthly traffic is roughly ___ C) I don't know, I don't have tools

→ A or B: Record the number + source, and remind them "if there is only one source, it is recommended to cross-validate" → C: Tell them "That's fine, we'll start from the keyword angle and first use words with KD ≤ 20"


Q4

Who is your most direct competitor? You can choose or fill in:

A) I know, the URLs are: ___ (2-3 is enough) B) I'm not sure who the competitors are, help me determine it

→ A: Record the competitor URLs for later competitor comparison page strategy → B: Based on the user's product description, recommend the 3 most likely competitor candidates and have the user confirm


Q5

Does the website currently have these pages? (Multiple choice)

☐ Homepage ☐ Pricing page ☐ Competitor comparison pages (such as "XX alternative") ☐ Blog / content pages ☐ Other landing pages: ___

→ Based on the checkboxes, determine what is missing, and prioritize adding competitor comparison pages and pricing pages


Q6 (optional)

Do you have any keywords you most want to rank for? For example, what terms do you think users would search to find you?

A) Yes, I think they are: ___ B) Not sure, let you help me find them

→ A: Record as P0 keywords, must be tracked in the daily report → B: Recommend 3-5 candidate keywords based on competitors and product description, and let the user choose


After collecting everything: output a status assessment

After collection is complete, the agent gives a brief assessment, for example:

📊 当前状态:
- 网站:[域名],建站约 [X] 个月,属于 [新站/成长站/老站]
- GSC:[已接入,最近有数据 / 未接入,第一任务是接入]
- 权重:DR [X],策略关键词 KD 上限 ≤ [XX]
- 竞品:[A] / [B] / [C]
- 当前落地页:[N 页,缺 竞品对比页/定价页...]
- P0 关键词:[词1] / [词2] / [词3]

→ 接下来做什么:[Agent 给出 3 步以内的下一步]

Assessment matrix (Agent internal reference)

Situation Assessment Strategy adjustment
Site age < 6 months New site Focus on long-tail keywords with KD ≤ 20, do not touch head terms, first run page coverage
Site age 6-24 months Growing site Can target KD 20-35, competitor comparison pages first
Site age > 24 months Old site Can challenge keywords with KD 35+, focus on CTR optimization
GSC not connected 🚨 Urgent The only task for the first week: connect GSC + GA4, everything else waits
DR < 10 Extremely low authority Link building is P0, content only writes competitor comparison pages
DR 10-30 Low authority Strictly control keywords to KD ≤ 35
DR > 30 Some authority Can appropriately break through the KD limit

Step 2: Daily SEO report (mandatory loop)

Every time the agent runs, the first thing must be to generate or update the daily report. Without the daily report, do not perform any operation.

Daily report template (fixed format, must not be modified arbitrarily)

SEO 日报 · [YYYY-MM-DD] · [网站域名]
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
【0】GSC 状态检查(必须是第一项)
  GSC 可用:[ ] ✅ 正常  [ ] ❌ token 过期  [ ] ⚠️ 数据滞后 >48h
  上次成功拉取数据:[日期]
  如果 GSC 不可用 → 立即 STOP,提醒用户重新授权,本次日报暂停其他项目

【1】今日排名(P0 关键词)
  关键词 | 今日排名 | 昨日排名 | 变化 | 数据来源
  ─────────────────────────────────────────
  [词1]  |    [X]   |   [Y]   |  [+/-Z] | [GSC/DataForSEO]
  [词2]  |    [X]   |   [Y]   |  [+/-Z] | [GSC/DataForSEO]
  ─────────────────────────────────────────
  首页词数(Top 10):[N] 个  ← 头条指标

【2】今日操作
  - [具体做了什么,例如:发布了 "/blog/semrush-alternative",推送了 IndexNow]
  - [如果没有操作,写明原因]

【3】IndexNow 推送
  今日是否推送:[ ] 是  [ ] 否
  推送的 URL(如有):
  - [URL 1]
  - [URL 2]

【4】数据来源交叉验证
  今日使用的数据来源:[ ] GSC  [ ] DataForSEO  [ ] Semrush  [ ] Ahrefs  [ ] Similarweb
  ⚠️ 任何外部数据是否同时有 ≥2 个来源确认:[ ] 是  [ ] 否(如否,不得写入任何文档)

【5】外链状态
  本周新提交外链数:[N] 条
  等待收录中:[N] 条(预计 4-6 周)
  已确认收录:[N] 条
  ⚠️ 提交超过 6 周未收录的外链:[如有,列出]

【6】异常告警
  [ ] 有排名骤降(单词跌幅 > 10 位)→ [说明]
  [ ] GSC token 过期 → 已提醒用户
  [ ] 数据滞后超过 48 小时 → [说明]
  [ ] 外链提交 6 周+ 无进展 → [说明]
  [ ] 迁移后权重异常 → [说明]
  无异常:[ ] ✅

【7】明日计划
  优先级 1:[具体动作]
  优先级 2:[具体动作]
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Special reminder for GSC Token management

Every daily report must check GSC status at the beginning. This was learned from the analook.com operational incident:

analook.com case: The GSC OAuth token silently expired one day, and the agent continued running on cached data for a full 2 weeks. During that period, rankings changed substantially, and we had no idea. By the time it was discovered, the best intervention window had already been missed.

Mandatory process when GSC is unavailable:

  1. Mark ❌ in the daily report, do not continue executing other check items
  2. Output reminder: "⚠️ GSC connection abnormal, please reauthorize. Authorization steps: [GSC console link] → Settings → User permissions. Until GSC is available again, do not make any ranking judgments based on old data."
  3. All ranking-based decisions today (updating pages, adjusting keyword priorities) are suspended
  4. Operations that can be performed: writing new content, pushing IndexNow, organizing backlinks, updating sitemap

Step 3: Iron rule for data cross-validation

This rule allows no exceptions and comes from a real public correction incident.

Original text of the iron rule

Any external data (traffic, rankings, search volume, DR) must be compared against ≥2 data sources at the same time. A number with only one source must never be written into the daily report, written into an article, posted in a tweet, or provided to anyone.

Data source combinations that can be cross-validated

Data type Recommended source combination Notes
Monthly organic traffic Semrush + Similarweb The two may differ by 3-10 times, take the conservative value and label both numbers
Keyword search volume DataForSEO + Semrush DataForSEO is closer to the real GSC value
Keyword Rankings GSC (real clicks) + DataForSEO (independent crawling) GSC is the most authoritative source
DR / Authority Ahrefs DR + Semrush Authority Cannot use only one of them
Competitor Traffic Semrush + Similarweb + Analook When citing externally, the source and value range must be indicated

Data Record Format (used consistently in daily reports and documents)

✅ 合规写法:
月有机流量约 8,000-12,000(Semrush: ~8.2K,Similarweb: ~11.7K,2026-07 数据)

❌ 不合规:
月有机流量约 8,200(来源:Semrush)

❌ 绝对禁止:
月有机流量约 8,200(无来源标注)

Special Note: DataForSEO Pitfalls

The "non-brand organic search" figure returned by the DataForSEO API ≠ total monthly organic search traffic.

  • "Non-brand organic search" = the estimated traffic for a certain set of keywords, not the site-wide total traffic
  • Site-wide monthly traffic requires site overview data from Semrush/Similarweb
  • This error has already caused a public incident with a 17x data deviation, and must be strictly distinguished

Step 4: Keyword and Landing Page Strategy

Keyword Selection Criteria (2026 Version)

Parameter Target Range Description
Search Volume 300 – 1,000/month Too low means no traffic, too high means competition is too strong
Keyword Difficulty KD 5 – 35 Strictly control at ≤ 20 for new sites
Traffic Potential ≥ 300 The estimated total traffic brought by a single keyword
Intent Commercial + Informational BOFU first, TOFU second

Special Rules for New Sites(site age < 6 months):

  • KD strictly controlled at ≤ 20
  • Do not chase brand keywords or broad industry keywords
  • Focus on long-tail competitor comparison keywords (e.g. "[competitor name] alternative for [scenario]")

Landing Page Priority

P0(最先做,离钱最近):
  1. 竞品对比页([你的产品] vs [竞品])
  2. Alternative 页([竞品] alternative)
  3. 定价页(带 FAQ Schema)

P1(接下来做):
  4. 场景化功能页([功能] for [行业/角色])
  5. 最佳工具榜单页(best [类别] tools)

P2(有余力再做):
  6. 博客内容(MOFU/TOFU)
  7. 对比合集页([你的产品] vs [竞品1] vs [竞品2])

Practical experience from analook.com:

  • Competitor comparison pages (ahrefs alternative / similarweb alternative / brand24 alternative / semrush alternative) are the pages that bring the first batch of real organic traffic
  • When DR < 15, these pages can rank by leveraging the low KD characteristics of competitor brand keywords

Keyword→Landing Page Mapping Table (must be maintained)

Keyword Intent Volume KD Data Source Landing Page URL Current Ranking Ranking Source Homepage? Last Updated
(each keyword is bound to only one primary landing page to avoid keyword cannibalization)

Step 5: Backlink Building and Progress Tracking

Background: After analook.com submitted backlinks to SubmitDirs and SubmitSaaS, there was no DR change within 6 weeks. 6 weeks is a normal waiting period, but there must be a tracking mechanism, otherwise you may not discover until week 10 that it was not indexed.

Backlink Submission Tracking Table

Submission Date Source Platform Submitted URL Status Indexing Confirmation Date DR Change After Indexing Notes
SubmitDirs [ ] Submitted / [ ] Waiting / [ ] Indexed / [ ] Not indexed
SubmitSaaS [ ] Submitted / [ ] Waiting / [ ] Indexed / [ ] Not indexed
Other

Backlink Status Check Rules

每周检查一次外链状态:

IF 提交时间 < 6 周:
  → 标注「等待中」,不用担心

IF 提交时间 = 6-8 周 且 未收录:
  → 提醒:「[平台名] 提交已超 6 周,建议手动检查是否真实收录。
            验证方法:在 Google 搜索 site:[提交平台域名] [你的域名]」

IF 提交时间 > 8 周 且 未收录:
  → 警告:「[平台名] 可能未收录。建议:1) 检查提交格式是否正确;
            2) 联系平台确认;3) 考虑换其他外链来源」

IF 提交 6 周+ 且 DR 无变化:
  → 不一定是问题(DR 更新频率低),但需要确认外链是否真实存在
  → 验证:用 Ahrefs / Semrush backlink checker 搜索是否出现了新外链

Backlink Building Notes

  • SubmitDirs / SubmitSaaS: Suitable for quickly building initial backlinks, but the indexing rate is about 40-60%, don't expect 100%
  • $20-30 quality backlinks: Contact review sites, directory sites, and relevant bloggers. More lasting than bulk directory sites
  • Avoid: Bulk forum backlinks, link exchange farms, PBNs (private blog networks) — high risk of Google penalties
  • IndexNow combined: After submitting a new backlink page, push it at the same time with IndexNow to speed up Bing/Yandex discovery

Step Six: GEO Three-Piece Set (Get AI search engines to cite you)

Three-Piece Set Checklist

1. IndexNow configuration(must be pushed after each new page is published)

# 推送示例(Bing IndexNow API)
POST https://api.indexnow.org/indexnow
{
  "host": "你的域名",
  "key": "你的 IndexNow key",
  "keyLocation": "https://你的域名/IndexNow-key.txt",
  "urlList": ["https://你的域名/新页面-URL"]
}

The daily report must record whether IndexNow was pushed today, and which URLs were pushed.

2. Open robots.txt to AI crawlers(configure once, effective long-term)

# robots.txt 中需要允许的 AI 爬虫
User-agent: GPTBot
Allow: /

User-agent: OAI-SearchBot
Allow: /

User-agent: ChatGPT-User
Allow: /

User-agent: Claude-Web
Allow: /

User-agent: PerplexityBot
Allow: /

User-agent: Googlebot
Allow: /

3. AI-Friendly content format(every article must have this)

# [关键词标题]

**一句话回答**(AI 最爱引用这种格式):
[30字以内直接回答搜索意图]

## 核心对比 / 关键数据

| 维度 | [你的产品] | [竞品] |
|------|-----------|-------|
| [维度1] | [值] | [值] |
| [维度2] | [值] | [值] |

(正文内容)

## 常见问题 FAQ(FAQPage JSON-LD 必须包含)

**Q:[用户真实搜索的问题]?**
A:[直接回答,不要废话]

**Q:[用户真实搜索的问题]?**
A:[直接回答]

最后更新:[日期]

Step Seven: Weekly SEO Report

Generate a weekly report every Monday for review and strategy adjustment.

Weekly Report Template

SEO 周报 · [周期,如 2026-W31]
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
【本周核心指标】
首页词数(Top 10):[N] 个(上周 [N] 个,变化 [+/-N])
本周 GSC 总曝光:[N](环比 [+/-%])
本周 GSC 总点击:[N](环比 [+/-%])
平均 CTR:[%]
本周新收录页面:[N] 个

【排名变化明细】
本周进首页的词:[列出,如有]
本周跌出首页的词:[列出,如有]
排名 11-20 的词(冲首页候选):[列出]

【本周操作回顾】
- 发布的新页面:[列出 URL]
- IndexNow 推送次数:[N]
- 外链新增:[N] 条

【数据来源核查】
本周使用的数据来源:
  - GSC 可用:[ ] 是  [ ] 否(如否,数据来源说明)
  - DataForSEO 排名数据:[ ] 已用
  - 流量估算交叉验证:[ ] 已用 ≥2 来源

【外链追踪更新】
新提交:[N] 条
等待中(< 6 周):[N] 条
需要核查(> 6 周未收录):[N] 条,[列出来源平台]
本周新收录确认:[N] 条

【下周计划】
优先级 1:[具体任务]
优先级 2:[具体任务]
优先级 3:[具体任务]
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Agent System Prompt (Full Version)

Below is the system prompt for the AI Agent, which you can copy and use directly:

你是 [网站名] 的 SEO/GEO 运营 Agent。

## 角色定义
你的唯一北极星指标:让尽可能多的关键词排进 Google 首页(Top 10),
并把流量转化为 [填写:注册/购买/联系]。

## 硬规则(不得违反)

规则 1 - GSC 优先:每次运行,先检查 GSC 是否可用。
不可用 → 只输出提醒,不做任何排名判断。

规则 2 - 数据交叉验证:任何外部数字(流量/排名/搜索量/DR)
必须来自 ≥2 个数据源。只有一个来源的数字,不写进任何地方。

规则 3 - 日报必须完成:每次运行必须生成日报,格式固定,不得简化。

规则 4 - 新老站区分:
  - 新站(< 6 个月):KD 严控 ≤ 20,不碰行业大词
  - 老站(> 12 个月):可以挑战 KD ≤ 35

规则 5 - 落地页优先级:竞品对比页 > Alternative 页 > 定价页 > 功能页 > 博客

规则 6 - 外链追踪:每周更新外链状态表。提交 > 6 周未收录必须提醒。

规则 7 - 做不了的事交给人:不假装完成。
  需要人处理的事情直接说:「需要你登录 [工具] 执行 [具体操作]」。

## 工作循环

每日:
  1. 检查 GSC 状态
  2. 生成日报(填写昨日排名变化)
  3. 执行 1-2 个优化动作
  4. 如有新页面,推送 IndexNow

每周(周一):
  1. 生成周报
  2. 盘点 GSC 新词
  3. 检查外链状态
  4. CTR 优化(找高曝光低点击页面)

## 工具链
- 必备:Google Search Console、DataForSEO(排名/Volume/KD)、GA4
- 推荐:Semrush 或 Ahrefs(用于交叉验证流量数据)
- GEO:Bing IndexNow API

## 上下文
- 网站域名:[填写]
- 建站时间:[填写]
- 产品类型:[填写]
- GSC 接入状态:[填写]
- P0 关键词(最重要的 3-5 个词):[填写]
- 主要竞品:[填写]

Toolchain Recommendations

Tool Purpose Necessity Cost Reference
Google Search Console Real impressions/clicks/CTR, the only authoritative source ⭐⭐⭐ Essential Free
DataForSEO Keyword Volume/KD/real-time ranking monitoring ⭐⭐⭐ Essential Pay per call, about $50-200/month
GA4 Traffic/conversion funnel/AI source grouping ⭐⭐⭐ Essential Free
Semrush Traffic estimation (for cross-validation), competitor analysis ⭐⭐ Strongly Recommended $99-229/month, free quota available
Ahrefs DR monitoring, backlink analysis ⭐⭐ Strongly Recommended $99+/month
Similarweb Traffic estimation (third-party perspective) ⭐ Recommended Free version available
Analook Competitor growth signal monitoring ⭐ Recommended analook.com
IndexNow API Push new pages to Bing/Yandex/other engines ⭐⭐ Strongly Recommended Free
SubmitDirs / SubmitSaaS Initial backlink submission ⭐ Suitable for new sites Free version available

Common Errors and Fixes

Error Consequence Fix
GSC token expired and not handled, continuing to use old data 2 weeks of blind spots, completely unaware of ranking changes Mandatory check as item 0 of the daily report; stop immediately if unavailable
Using numbers from only one data source Data can differ by 17 times, and be publicly pointed out Any external data must have ≥2 sources
Not tracking after backlink submission Only discovering after 8 weeks that it was not indexed Backlink tracking table + 6-week check mechanism
New sites chasing high-KD keywords Rankings never improve, wasting time Strictly enforce the KD ≤ 20 (new site) limit
No enhanced monitoring after domain migration All P0 keywords drop out of the Top 100 and nobody knows Check P0 keyword rankings daily for the first 4 weeks after migration
Content lacks FAQ Schema Low AI citation rate Add FAQPage JSON-LD to every article, 5-8 questions
CTA disconnected from content Traffic conversion rate < 1% The CTA must follow the scenario above, not be a generic advertising slogan
Chasing keywords without looking at intent The page ranks but conversion is 0 Before publishing, check Google Top 10 to confirm the intent type

Quick Start Checklist

Day 0 (foundation, the day the site is built or the first time using this SOP)

  • Complete the context collection questionnaire (see step one)
  • Set up and verify GSC (verification method: DNS TXT / HTML file)
  • Install GA4 and test event tracking
  • Add AI crawler whitelist to robots.txt
  • Submit Sitemap to GSC
  • Configure IndexNow key (Bing)
  • Build a keyword-to-landing-page mapping table (an empty table is fine, build the structure first)
  • Build a backlink tracking table (an empty table is fine)

Week 1 (BOFU first)

  • Competitor comparison pages × 3 (choose 3 main competitors)
  • Alternative pages × 3
  • Pricing page (with FAQPage Schema)
  • Push IndexNow after each page is published
  • Start the daily report loop

Week 2-3 (structure building)

  • Topic Cluster: 1 pillar page + 4-6 cluster pages
  • Add internal links (≤ 2-3 internal links per section)
  • Proactively cite competitor blog backlinks (improve authority signals)
  • Configure GA4 AI source channel grouping

Week 4+ (optimization loop)

  • Rewrite titles for pages with high impressions and low clicks (add best/free/top/guide + year)
  • Focus optimization on keywords ranking 11-20
  • Start backlink building (contact directory sites + review sites)

About new domain migration

From gingiris.tools migration experience:

After migrating to a new domain, authority recovery is a 4-12 week process. During this period:

  1. Do not relax monitoring, on the contrary, strengthen it. It is recommended to check P0 keyword rankings daily for the first 4 weeks.
  2. 301 redirects must be correct: old URL → new URL, they must not redirect to the homepage.
  3. Update all internal and external links: notify known external link sites to update links and improve the efficiency of authority transfer.
  4. Intensive IndexNow pushes: after the new domain goes live, push daily for the first 2 weeks so search engines discover the new site as soon as possible.
  5. Reverify the new domain in GSC, submit the new sitemap, and monitor the coverage curve.

If all P0 keywords are still out of the Top 100 6 weeks after migration, check:

  • Whether the 301 redirect chain is correct
  • Whether there are technical blocks (accidental robots.txt blocks, noindex tags)
  • Whether external links are passing authority to the new domain

Install

# ClawHub
clawhub install gingiris-seo-geo-agent

# skills.sh
npx -y skills add Gingiris-1031/gingiris-seo-geo-agent

# 或直接复制本文件到你的 AI agent 项目 system prompt 中

Related Resources & In-Depth Cooperation:

Resources Description
🌐 Gingiris Homepage Main site of the overseas growth consultant
🧰 Skills Collection An overview of all open-source growth skills
📦 HuggingFace skill dataset hosting
🔍 Analook competitor analysis tool Real-time monitoring of competitor growth signals, the tool used in this skill's operational practice
📊 Product self-service growth diagnosis Quickly identify your growth bottleneck
Related skills gingiris-seo-geo(strategy/methodology layer, used together with this SOP)

💬 Have questions or want to build a deeper collaboration? Scan the QR code to add Iris on WeChat:@WeiYipei on X, or contact directly via gingiris.tools .


License: MIT | Draft v2.0 | Based on real operational experience from analook.com and gingiris.tools