内容
<p align="center">
<img src="apps/web/public/favicon.svg" alt="SEO 技能命令行工具" width="72" height="72">
</p>
<h1 align="center">SEO 技能命令行工具</h1>
<p align="center">
为 AI 代理和开发者提供的技术 SEO 技能。爬取网站,连接搜索数据,并将本地证据转化为优先修复。
</p>
<p align="center">
<a href="#快速入门">开始使用</a>
·
<a href="https://seoskills.dev/docs">文档</a>
·
<a href="https://www.npmjs.com/package/seo">npm</a>
·
<a href="https://github.com/iannuttall/seo/issues">问题</a>
·
<a href="https://seoskills.dev/privacy">隐私政策</a>
·
<a href="SECURITY.md">安全</a>
·
<a href="LICENSE">许可证</a>
·
<a href="AGENTS.md">代理说明</a>
</p>
<p align="center">
<a href="https://github.com/iannuttall/seo/actions/workflows/ci.yml"><img alt="检查" src="https://img.shields.io/github/actions/workflow/status/iannuttall/seo/ci.yml?branch=main&label=checks&style=flat-square"></a>
<a href="https://www.npmjs.com/package/seo"><img alt="npm 版本" src="https://img.shields.io/npm/v/seo?style=flat-square"></a>
<a href="https://www.npmjs.com/package/seo"><img alt="npm 下载量" src="https://img.shields.io/npm/dm/seo?style=flat-square"></a>
<img alt="Node 22 或更高版本" src="https://img.shields.io/badge/Node-22%2B-339933?style=flat-square">
<img alt="TypeScript" src="https://img.shields.io/badge/TypeScript-ready-3178c6?style=flat-square">
<a href="LICENSE"><img alt="Apache 2.0 许可证" src="https://img.shields.io/badge/license-Apache--2.0-lightgrey?style=flat-square"></a>
</p>
`seo` 查找技术问题,将它们与受影响的页面和查询联系起来,并显示优先修复的内容。报告在您的机器上运行,并保留支持证据,以便您可以采取行动而无需猜测。
## 快速入门
需要 Node 22 或更高版本。
运行引导式设置,无需全局安装任何内容:
```sh
npx seo start
npx seo report
```
或一次性安装命令:
```sh
npm i -g seo
seo start
seo report
```
设置引导您完成 Google 登录、搜索控制台属性、GA4 属性和本地项目配置文件。公共版本可以包含共享的 Google 应用。如果在您的构建中不可用,设置将引导您添加自己的桌面 OAuth 客户端。
这是正常的人类路径。下面的示例使用全局 `seo` 命令。如果您不想安装它,请在命令前加上 `npx`。
主要报告使用可用的证据,解释无法检查的内容,并推荐简短的后续命令列表。
## 您将获得
- 跨元数据、链接、索引能力、规范、结构化数据、性能、安全、移动、国际 SEO 和社交预览查找技术障碍。
- 使用受影响的 URL、规则严重性、搜索可见性和分析值排名工作,而不是平等对待每个警告。
- 查看发现的原因、支持证据、修复方法和验证更改的方法。
- 保存和比较爬取报告,而无需再次运行相同的爬取。
- 使用匹配的 Search Console 窗口前后测量 SEO 更改。
- 为脚本和代理提供确定性的 JSON、Markdown、稳定的规则 ID 和紧凑的本地 MCP 接口。
## 每天使用
`seo start` 可以保存项目配置文件,即网站、搜索控制台属性、GA4 属性和品牌术语的本地快捷方式。如果您有一个默认项目,大多数命令不需要标志。
```sh
seo report
seo refresh-priorities
seo quick-wins
seo second-page
seo technical-watch
```
在您有多个项目时使用 `--project`:
```sh
seo report --project example
seo projects list
```
您也可以在没有保存配置文件的情况下工作:
```sh
seo report --site sc-domain:example.com
seo crawl https://example.com
seo audit-page --url https://example.com/pricing
```
运行 `seo help` 获取快捷方式或 `seo help all` 获取完整命令列表。
## 爬取网站
运行可读的技术爬取:
```sh
seo crawl https://example.com --format pretty
```
保存它、导出它或与早期爬取结果进行比较:
```sh
seo crawl https://example.com --save
seo crawl https://example.com --format html --output report.html
seo crawl-reports
seo crawl-reports --compare latest --against previous
```
有用的爬取控制包括 `--max-pages`、`--max-depth`、`--include`、`--exclude`、`--no-sitemap`、`--no-external` 和 `--fail-on` 用于 CI。
## 在 CI 和脚本中使用
JSON 模式从不提示。在无人值守的运行中显式传递网站或项目。
```sh
seo report --project example --json
seo crawl https://example.com --json --output crawl.json
seo crawl https://example.com --fail-on high --json
```
报告保留观察数据、派生发现、跳过的部分、限制和提供商错误,以便自动化可以做出决定而无需解析终端散文。
代理可以发现并运行与 MCP 相同的报告目录,而无需启动服务器:
```sh
seo reports list --category crawl --json
seo reports describe audit-page --json
seo reports run audit-page --params '{"url":"https://example.com"}' --json
```
始终在构造参数之前描述报告。CLI 和 MCP 接口从同一注册表读取,因此它们的 ID 和 JSON 架构不会漂移。
## 与 AI 代理一起使用
将本地 stdio MCP 服务器安装到支持的客户端:
```sh
seo mcp install
```
提示检测到已安装的客户端。脚本可以显式选择一个或多个客户端:
```sh
seo mcp install --codex
seo mcp install --claude-code
seo mcp install --cursor
seo mcp install --claude-desktop
```
您的客户端在需要时启动服务器。仅在手动配置或测试时直接运行:
```sh
seo mcp serve
```
软件包还在 `skills/` 下提供了聚焦的技能。它们教会代理何时发现报告、运行分析、检查证据并请求较小的后续操作,而不是将巨大的报告加载到上下文中。
列出或安装它们,无需自己查找 npm 包目录:
```sh
seo skills list
seo skills install --target codex
seo skills install --target claude
seo skills install --target project
```
代理还可以从 `https://seoskills.dev/.well-known/agent-skills/index.json` 发现完整的技能目录。每个条目都链接到规范的技能说明,并包含用于验证的内容摘要。
有关设置和工具的详细信息,请参阅 [MCP 和代理](https://seoskills.dev/docs/agents)。
## 作为库使用
在任何 Node 22 或更高版本的项目中安装相同的无作用域包:
```sh
npm install seo
```
```ts
import { auditPage, crawlSite } from 'seo'
import { createServer } from 'seo/mcp'
```
主要的 `seo` 导出包含报告、提供商、爬虫、存储和渲染 API。`seo/mcp` 公开了 stdio MCP 服务器。
## 本地数据和 Google 访问
Google OAuth 令牌和项目配置文件存储在您的用户配置目录中,具有私有文件权限。爬取报告和提供商缓存也是本地的。使用以下命令检查或删除它们:
```sh
seo privacy
seo doctor
seo auth logout
seo reset
```
高级用户可以提供自己的 Google OAuth 客户端。有关可用的身份验证路径,请参阅 [开始使用](https://seoskills.dev/docs/getting-started)。
## 文档
问题、错误报告和功能请求通过 [GitHub 问题](https://github.com/iannuttall/seo/issues) 进行。报告疑似漏洞请通过 [SECURITY.md](SECURITY.md) 中的流程进行。
- [开始使用](https://seoskills.dev/docs/getting-started)
- [CLI 命令](https://seoskills.dev/docs/cli)
- [爬虫](https://seoskills.dev/docs/crawler)
- [报告和数据](https://seoskills.dev/docs/reports)
- [MCP 和代理](https://seoskills.dev/docs/agents)
- [AI 搜索证据](https://seoskills.dev/docs/ai-search)
- [隐私政策](https://seoskills.dev/privacy)
- [使用条款](https://seoskills.dev/terms)
- [安全政策](https://seoskills.dev/security)
- [贡献](CONTRIBUTING.md)
- [商标和品牌政策](TRADEMARKS.md)
## 本地开发
大多数用户不需要源代码检出。如果您想贡献:
```sh
git clone https://github.com/iannuttall/seo.git
cd seo
pnpm install
pnpm build
node dist/cli.js start --dry-run
```
在打开拉取请求之前运行完整的质量检查:
```sh
pnpm build
pnpm typecheck
pnpm test
pnpm lint
pnpm pack --dry-run
```
贡献者架构和报告质量规则位于 [AGENTS.md](AGENTS.md)。
## 许可证
代码在 [Apache-2.0](LICENSE) 下可用。项目名称和艺术作品分别受 [商标和品牌政策](TRADEMARKS.md) 的约束。