Pm Geo logo

Pm Geo

Community
konglong87
pm-geo

Use when: 需要提升产品在 AI 搜索/生成式引擎(ChatGPT、Perplexity、AI Overviews、豆包、文心)中的可见性与被推荐率、做 GEO(Generative Engine Optimization)方案 Do NOT use when: 仅做传统 SEO/关键词排名、产品尚未上线且无任何公开信息可优化

Overview

Publisherkonglong87
RepositorysuperPM
Skill namepm-geo
Stars
86
Forks
8
Bundled files
Instructions only
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • Self-contained

    Everything the model needs lives in the instructions — no extra files to sync.

  • Open source

    Published by konglong87 on GitHub. Read the source before you install it.

Installation

Install the Pm Geo AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/konglong87/superPM/tree/main/skills/03-growth-iteration/pm-geo
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/konglong87/superPM.git /tmp/superPM
mkdir -p .claude/skills
cp -r /tmp/superPM/skills/03-growth-iteration/pm-geo .claude/skills/pm-geo
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Pm Geo in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Pm Geo on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Pm Geo is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

Preamble (run first)

bash
echo "📡 GEO / AI 搜索优化工具"

# 检查前置文档
if [ -f "docs/02-方案设计/产品定位方案.md" ]; then
  echo "✅ 产品定位方案 - 已找到"
else
  echo "⏳ 产品定位方案 - 未找到(可选,缺失时将由本技能快速采集)"
fi
if [ -f "docs/01-需求调研/市场调研报告.md" ]; then
  echo "✅ 市场调研报告 - 已找到"
else
  echo "⏳ 市场调研报告 - 未找到(可选)"
fi

写入时边界

只讨论时不写文件,启动检查不创建目录。用户要求保存产物时,先确认当前产品、精确输出路径及已有文件的覆盖/追加选择;确认后仅在实际 Write 前创建该输出文件的父目录。完整安装可参见 skills/_shared/artifact-policy.md,单独安装本 skill 也按本段执行。


跨 Agent 交互规则

当流程要求与用户交互时:

  1. 如果当前环境支持 AskUserQuestion,使用 AskUserQuestion(最佳体验)。
  2. 如果当前环境不支持 AskUserQuestion,必须用普通聊天消息提出同样问题。
  3. 一次只问一个问题。
  4. 提问后必须停止当前回合,等待用户回答(STOP and WAIT)。
  5. 不得在用户回答前生成文档、写入 docs。
  6. 已有 docs 文件不能替代本轮用户回答。

适用场景

  • 用户说"让 AI 推荐我们的产品""GEO 优化""AI 搜索里搜不到我们""生成式引擎优化""提升在 ChatGPT/Perplexity 的曝光"
  • 产品已上线或已有官网/内容资产,希望被 AI 搜索引擎在回答中准确提及与推荐
  • 与 pm-growth(转化增长)区分:geo 管"被 AI 发现与推荐",growth 管"看到之后的转化"

执行流程

步骤 1: 明确 GEO 目标查询(主 agent - 用户交互)

使用 AskUserQuestion 询问:

🎯 GEO 优化目标

你希望用户在 AI 搜索里用哪类问题能搜到/被推荐你们?

A) 品类/场景问题(如"有什么好用的XX工具") B) 对比/选型问题(如"XX 和 YY 哪个好") C) 解决方案问题(如"怎么解决 XX 痛点") D) 品牌/官网直接召回(搜品牌名能出现官网与简介) E) 全部覆盖(推荐,但耗时较长)

💡 提示:先聚焦 1-2 个高价值查询场景,比铺开更有效。

记录到变量 GEO_TARGET。


步骤 2: 现状可见性诊断(主 agent + subagent)

2.1 采集产品基础信息

如果有产品定位方案 / 市场调研报告,读取并提取:产品名称、核心品类、目标用户、差异化卖点、官网 URL。

如果缺失,使用 AskUserQuestion 快速采集以上 5 项(一次一题)。

2.2 模拟 AI 搜索召回测试

使用 Agent 工具派发 subagent,模拟在 ChatGPT / Perplexity / AI Overviews 中查询目标问题,记录当前是否提及本产品、提及时的描述是否准确:

Tool: Task
Parameters:
  subagent_type: "general-purpose"
  description: "GEO现状召回诊断"
  prompt: |
    你是一个 GEO(生成式引擎优化)审计专家。请基于公开信息,模拟用户在主流 AI 搜索引擎中提问时的召回情况。

    **产品信息**:{产品名称} / {核心品类} / {官网URL} / {差异化卖点}
    **目标查询场景**:{GEO_TARGET}

    **任务**:
    1. 针对每个目标查询,判断当前主流 AI 引擎(ChatGPT、Perplexity、Google AI Overviews、豆包、文心一言)在回答中是否会提及该产品。
    2. 若提及,描述是否准确、是否给出官网/正确链接。
    3. 若未提及,分析最可能的原因(实体未被收录、内容信号弱、缺乏权威引用、品类归因错误等)。
    4. 给出 0-100 的可见性评分与 3 条最关键的缺口。

    返回结构化 JSON:
    ```json
    {
      "visibility_score": 0-100,
      "per_query": [{"query": "...", "mentioned": true/false, "accuracy": "准确/偏差/错误", "reason": "..."}],
      "top_gaps": ["缺口1", "缺口2", "缺口3"]
    }
    ```

主 agent 等待结果,向用户确认诊断是否吻合其感知。


步骤 3: 派发 subagent 做语料与竞品引用研究(核心优化)

优化说明:搜索与资料整理不占用主 agent 上下文,subagent 并行执行。

构建任务清单(搜索优先级:首选 AnySearch,失败降级 Exa MCP,最后 WebSearch;WebSearch 时标注「⚠️ 降级模式」):

json
[
  {
    "task_id": "entity_signal",
    "keywords": ["{产品名称} 官网", "{品类} 权威定义", "{差异化卖点} 评测"],
    "domains": ["官网", "维基/百科类", "行业媒体", "评测站"]
  },
  {
    "task_id": "competitor_citation",
    "keywords": ["{品类} 推荐 {竞品}", "{品类} 哪个好", "{竞品} 对比"],
    "domains": ["36kr.com", "huxiu.com", "zhihu.com", "producthunt.com"]
  }
]

使用 Agent 工具并行派发,prompt 结构参考 pm-market 的搜索专家模板(含 AnySearch 定位与调用方式)。

主 agent 收集结果。


步骤 4: 生成 GEO 优化方案(主 agent)

使用 Write 工具生成 docs/03-增长迭代/GEO优化方案.md:

markdown
# {产品名称} GEO / AI 搜索优化方案

## 文档信息
- 产品名称: {产品名称}
- 方案版本: v1.0
- 生成日期: {当前时间}
- 生成工具: super-pm / pm-geo

---

## 一、现状诊断
- 可见性评分: {score}/100
- 目标查询召回情况:
  | 查询场景 | 是否被提及 | 描述准确度 | 主要原因 |
  |---------|-----------|-----------|---------|
  | {场景} | {是/否} | {准确/偏差} | {原因} |
- 最关键缺口: {gap1} / {gap2} / {gap3}

## 二、GEO 优化框架
### 2.1 实体建设(Entity)
- 统一品牌实体名称、一句话定位、关键属性(品类/地区/功能)
- 官网结构化数据(Entity / Organization / Product schema)
- 权威平台实体页(百科、黄页、行业库)一致性

### 2.2 内容信号(Content)
- 针对目标查询生产"可被引用"的内容资产(对比页、选型指南、解决方案文)
- 明确结论 + 数据 + 来源,便于 AI 直接抽取
- FAQ / 长尾问题覆盖

### 2.3 引用与权威(Citation)
- 争取被行业媒体、评测站、问答社区引用
- 在第三方内容中建立"品类→本产品"的稳定关联

### 2.4 技术底座(Technical)
- 站点可抓取、内容可被索引
- 结构化数据、清晰站点地图、稳定官网信息

## 三、行动清单(按优先级)
| 优先级 | 动作 | 负责方 | 预期效果 | 周期 |
|-------|------|-------|---------|------|
| P0 | {动作} | {方} | {效果} | {周期} |
| P1 | {动作} | {方} | {效果} | {周期} |

## 四、监测指标
- 目标查询 AI 召回率(提及占比)
- 描述准确度(准确/偏差/错误)
- 官网直接流量(品牌词)
- 第三方引用数

## 五、下一步建议
1. /pm-growth - 把被推荐流量转化为注册/付费
2. /pm-competitor - 持续监控竞品在 AI 搜索中的表现
3. /pm-report - 周期性复盘 GEO 指标

步骤 5: 推荐下一步(主 agent)

✅ GEO 优化方案已生成:docs/03-增长迭代/GEO优化方案.md

建议执行:

  1. /pm-competitor - 监控竞品在 AI 搜索中的可见性
  2. /pm-growth - 承接被推荐流量做转化
  3. /pm-report - 周期性复盘 GEO 指标

搜索依赖说明

  • AnySearch(首选):中文检索质量优,支持垂直域。先定位脚本再调用: python3 <anysearch_cli.py 路径> search "查询词" --max_results 5 --domain <域> 脚本候选路径:~/.claude/skills/anysearch/scripts/ ~/.opencode/skills/anysearch/scripts/ ~/.cursor/skills/anysearch/scripts/ ~/.anysearch/scripts/,或 which anysearch_cli.py
  • Exa MCP(备选):英文/语义检索。
  • WebSearch(兜底):标注「⚠️ 降级模式」。

输出质量对比

✅ Good 示例:

  • 有具体查询场景:「针对"有什么好用的项目管理工具",当前 ChatGPT 未提及本品,根因为实体未被收录」
  • 有可落地动作:「在官网增加 Product schema,并生产"XX vs YY"对比页争取被引用」
  • 有监测指标:「目标查询 AI 召回率从 0% 提升至 40%」

❌ Bad 示例:

  • 泛泛而谈:「应该提升品牌曝光」
  • 无查询场景:「做内容优化」
  • 无监测:「GEO 很重要」

常见误区 / Red Flags — STOP

误区正确做法
把 GEO 等同于传统 SEOGEO 面向生成式引擎的"引用与归因",重实体/内容信号/权威引用
认为发稿即可被推荐需可抓取、结构化、被第三方稳定引用
不做现状诊断直接出方案先测召回,再开处方
无监测指标必须定义召回率/准确度/引用数

产出质量检查 / Verification Checklist

  • 已明确目标查询场景(GEO_TARGET)
  • 已完成现状召回诊断(可见性评分 + 缺口)
  • 已产出实体/内容/引用/技术四类优化动作
  • 输出文档已生成到 docs/03-增长迭代/
  • 已推荐 2-3 个后续 skill

⚠️ 任何一项未通过 → 补全后再标记完成。


Frequently asked questions

What does the Pm Geo AI skill do?

Use when: 需要提升产品在 AI 搜索/生成式引擎(ChatGPT、Perplexity、AI Overviews、豆包、文心)中的可见性与被推荐率、做 GEO(Generative Engine Optimization)方案 Do NOT use when: 仅做传统 SEO/关键词排名、产品尚未上线且无任何公开信息可优化

Why use Pm Geo on TypingMind?

Because you install it once and use it with any model. Pm Geo is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Pm Geo in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/konglong87/superPM/tree/main/skills/03-growth-iteration/pm-geo. TypingMind reads its SKILL.md and installs it as a skill you can enable per chat.

Which AI models can use Pm Geo?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Pm Geo?

As many as you like. As long as a model supports skills, you can use Pm Geo with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Pm Geo AI skill free?

Yes. It is published on GitHub by konglong87 under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇