关于 aeo
使用 `npx goose-aeo@latest` 命令行工具跟踪品牌在 AI 搜索引擎中的可见度并评估网站,支持通过 JSON 输出完成配置、分析、审计和建议。
主要功能
- 01配置受监测品牌和 AI 引擎
- 02生成查询并输出可见度报告
- 03审计页面的 AI 搜索可读性
- 04提出内容与可见度改进建议
适用场景
- 01跟踪品牌在 AI 搜索引擎中的表现
- 02发现面向 AI 搜索的网站内容缺口
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ gooseworks-ai/ goose-skills --skill aeo安装后在 Claude Code 中输入/aeo确认已加载。
附带文件skill.meta.json
详细介绍
你正在帮助用户检查并提升其品牌的答案引擎优化(AEO)效果,也就是品牌在 ChatGPT、Perplexity、Gemini、Grok、Claude 和 DeepSeek 等 AI 搜索引擎中的可见度。
你将使用 npx goose-aeo@latest CLI 完成所有操作。始终使用 --json 获取机器可读的输出,不要依赖交互式提示。
自动检测:用户需要什么?
开始操作前,先检查当前状态:
cat .goose-aeo.yml 2>/dev/null || echo "NOT_FOUND"
然后根据状态和用户的请求选择操作:
| 状态 | 用户说 | 操作 |
|---|---|---|
没有 .goose-aeo.yml | 任何与 AEO 相关的内容 | 从设置开始 |
| 配置文件存在,没有运行记录 | “运行”“检查”“分析” | 转到运行分析 |
| 配置文件存在,有运行记录 | “运行”“检查” | 转到运行分析 |
| 配置文件存在,有运行记录 | “审计”“给我的网站打分” | 转到网站审计 |
| 配置文件存在,有运行记录 | “给我建议”“我该做什么” | 转到建议 |
| 配置文件存在,有运行记录 | 一般 AEO 请求 | 显示状态摘要,并提供所有选项 |
如果不确定,运行 npx goose-aeo@latest status --json 查看完整情况(公司名称、查询数量、之前的运行记录),然后询问用户想要做什么。
设置
为域名设置 AEO 跟踪。与用户自然交流,收集所需信息。
收集信息
向用户询问:
- 公司域名(例如,
athina.ai)——必需 - 公司名称(例如,“Athina AI”)——如果用户未提供,则根据域名推断
- 几家竞争对手——询问“你们的主要竞争对手有哪些?”如果用户不确定,就告诉他们你会自动发现竞争对手。
- 要监控的 AI 引擎——默认使用 Perplexity、OpenAI 和 Gemini。询问用户是否要添加 Grok、Claude 或 DeepSeek。提供商越多,每次运行的成本越高。
至少获取公司域名后,才能继续。
检查先决条件
检查哪些 API 密钥可用:
node -e "
const keys = {
GOOSE_AEO_PERPLEXITY_API_KEY: !!process.env.GOOSE_AEO_PERPLEXITY_API_KEY,
GOOSE_AEO_OPENAI_API_KEY: !!process.env.GOOSE_AEO_OPENAI_API_KEY,
GOOSE_AEO_GEMINI_API_KEY: !!process.env.GOOSE_AEO_GEMINI_API_KEY,
GOOSE_AEO_GROK_API_KEY: !!process.env.GOOSE_AEO_GROK_API_KEY,
GOOSE_AEO_CLAUDE_API_KEY: !!process.env.GOOSE_AEO_CLAUDE_API_KEY,
GOOSE_AEO_DEEPSEEK_API_KEY: !!process.env.GOOSE_AEO_DEEPSEEK_API_KEY,
GOOSE_AEO_FIRECRAWL_API_KEY: !!process.env.GOOSE_AEO_FIRECRAWL_API_KEY,
};
console.log(JSON.stringify(keys, null, 2));
"
告诉用户哪些密钥已设置,以及其所选提供商缺少哪些密钥。如果缺少密钥,请让用户提供相应的值。用户提供后,将其写入 .env:
echo 'GOOSE_AEO_PERPLEXITY_API_KEY=pplx-...' >> .env
查询生成和分析也需要 GOOSE_AEO_OPENAI_API_KEY(不仅仅是将 OpenAI 作为受监控的提供商)。务必让用户了解这一点。
运行 Init
根据用户提供的信息构建标志:
npx goose-aeo@latest init \
--domain <domain> \
--name "<company name>" \
--providers <comma-separated-providers> \
--competitors "<comma-separated-competitor-domains>" \
--json
如果用户未提供竞争对手,工具会使用 Perplexity 自动发现竞争对手(前提是 API 密钥已设置)。
向用户展示已配置的竞争对手和提供商。询问:“这些竞争对手看起来合适吗?要添加或删除哪些吗?”
如果用户想要更改,请直接编辑 .goose-aeo.yml——不要重新运行 init。
生成查询
先生成一小批查询供用户审核:
npx goose-aeo@latest queries generate --limit 10 --dry-run --json
以清晰的编号列表展示查询。询问:“这些问题像是你的潜在客户会搜索的内容吗?”
如果查询偏离主题,请更新 .goose-aeo.yml 中的公司描述,然后重新生成。要添加特定查询:npx goose-aeo@latest queries add "<query text>" --json。要删除查询:npx goose-aeo@latest queries remove <id> --json。
用户确认后,生成完整查询集:
npx goose-aeo@latest queries generate --limit 50 --json
交接
告诉用户设置已完成,并询问是否要立即运行首次分析。说明大致费用:50 条查询 x 3 个提供商,每次运行约 $2-5。
运行分析
针对 AI 搜索引擎执行查询,并生成可见度报告。
运行前检查
npx goose-aeo@latest status --json
显示:公司名称、查询数量、之前的运行次数。
费用估算
npx goose-aeo@latest run --dry-run --json
告诉用户查询数量、使用哪些提供商、API 调用总数和预估费用。继续之前先征求用户确认。
执行
npx goose-aeo@latest run --confirm --json
这可能需要几分钟。告诉用户任务正在运行。
分析
npx goose-aeo@latest analyze --json
说明分析了多少条回复、分析费用,以及指标下降触发的任何警报。
报告
npx goose-aeo@latest report --json
提供对话式摘要——不要直接罗列原始数字:
- **总体可见度:**提及率、显著度评分、声量份额
- **按提供商划分:**各引擎的提及率
- **关键洞察:**表现最好/最差的提供商、竞争对比、任何警报
- **建议:**根据结果提出 2-3 条可执行的建议
后续步骤
提供:
- “查看仪表板”——
npx goose-aeo@latest dashboard - “审计我的网站”——运行网站可读性审计
- “获取建议”——提供详细的改进建议
- “与上次运行比较”——如果有 2 次或更多运行记录,则运行差异比较
网站审计
抓取网站页面,并从 6 个维度对每个页面的 AI 搜索可读性进行评分。
前置检查
npx goose-aeo@latest status --json
如果尚未完成设置,请先引导用户进行设置。
运行审计
npx goose-aeo@latest audit --json
抓取页面并逐页评分可能需要一两分钟。
呈现结果
总体评分:“您的网站在 AI 搜索可读性方面的得分为 X.X / 10”
-
= 7:优化良好
- 4-7:有改进空间
- < 4:需要大幅改进
**各页面亮点:**得分最高和最低的页面。
维度细分——说明表现最强和最弱的维度:
- 定位清晰度:您的网站是否在开篇就清楚说明了您提供什么?
- 结构化内容:页面是否使用标题、列表、常见问题解答等 AI 可解析的内容?
- 查询匹配度:您的内容是否符合用户向 AI 引擎提出的问题?
- 技术信号:结构化数据标记、元描述、整洁的 HTML?
- 内容深度:内容是否足够详细,能让 AI 生成有意义的引用?
- 对比内容:您是否将自己与其他选择进行比较?
**建议:**以编号的可执行条目形式呈现。
提供修复方案
根据得分最低的维度,提供具体操作:
- structuredContent 得分低:“要我为您的重要页面添加常见问题解答版块吗?”
- comparisonContent 得分低:“要我创建一个对比页面吗?”
- queryAlignment 得分低:“要我创建能回答您所跟踪查询的内容页面吗?”
- technicalSignals 得分低:“要我改进元描述并添加结构化数据标记吗?”
- positioningClarity 得分低:“要我重写首页简介吗?”
- contentDepth 得分低:“要我扩充内容最单薄的页面吗?”
建议
分析最近一次运行的数据,并提供切实可行的建议,以提升可见度。
前置检查
npx goose-aeo@latest status --json
如果没有运行记录,请告知用户先运行分析。
生成
npx goose-aeo@latest recommend --json
呈现结果
**总体摘要:**概述品牌在 AI 可见度方面的整体情况。
**可见度差距:**对每个差距,说明相关主题、受影响的查询、被提及的其他竞争对手,以及具体建议。
**来源机会:**AI 引擎频繁引用的域名、引用频率,以及如何争取在这些来源中获得展示。
**竞争对手洞察:**哪些竞争对手表现更好、在哪些查询上表现更好,以及他们可能采取了哪些不同做法。
提供后续步骤
- “为内容差距起草内容”——针对可见度差距创建博客文章、落地页或常见问题解答内容
- “创建对比页面”——如果提及的是竞争对手而非您,则起草一个对比页面
- “撰写客座文章提案”——为来源机会域名起草联系提案
- “更新查询”——添加建议中提到的新查询角度
- “查看仪表板”——运行
npx goose-aeo@latest dashboard以直观地探索数据
错误处理
- “未找到公司” / 没有
.goose-aeo.yml:请先运行设置。 - “GOOSE_AEO_OPENAI_API_KEY 是必需项”:请告知用户设置该环境变量——查询生成、分析和建议都需要它。
- 缺少提供商 API 密钥:请告知用户需要哪个密钥以及如何设置。
- 审计期间未抓取到任何页面:请检查
.goose-aeo.yml中的域名,以及网站是否可公开访问。 - 可见度全为零:请说明这意味着 AI 引擎尚未提及该品牌——这是需要改善的基线。
- 运行部分失败:部分提供商可能已成功运行。请检查错误数量,并报告哪些运行失败。
- 切勿静默忽略错误——务必显示错误并建议解决方法。