🚀 快速安装
复制以下命令并运行,立即安装此 Skill:
npx @anthropic-ai/skills install squirrelscan/skills/audit-website
💡 提示:需要 Node.js 和 NPM
网站审计技能
使用 squirrelscan CLI 审计网站的 SEO、技术、内容、性能和安全问题。
squirrelscan 提供了一个 CLI 工具 squirrel,适用于 macOS、Windows 和 Linux。它通过模拟浏览器、搜索引擎爬虫,并根据 230 多条规则分析网站的结构和内容,进行广泛的网站审计。
它会为您提供一系列问题以及关于如何修复这些问题的建议。
链接
- squirrelscan 网站位于 https://squirrelscan.com
- 文档(包括规则参考)位于 docs.squirrelscan.com
您可以使用以下模板查找任何规则的文档:
https://docs.squirrelscan.com/rules/{规则类别}/{规则ID}
示例:
https://docs.squirrelscan.com/rules/links/external-links
此技能的功能
此技能使 AI 代理能够根据 21 个类别的 230 多条规则审计网站,包括:
- SEO 问题:元标签、标题、描述、规范 URL、Open Graph 标签
- 技术问题:链接断开、重定向链、页面速度、移动端友好性
- 性能:页面加载时间、资源使用情况、缓存
- 内容质量:标题结构、图片替代文本、内容分析
- 安全性:泄露的秘密、HTTPS 使用情况、安全标头、混合内容
- 可访问性:替代文本、颜色对比度、键盘导航
- 可用性:表单验证、错误处理、用户流程
- 链接:检查内部和外部链接是否断开
- E-E-A-T:专业知识、经验、权威性、可信度
- 用户体验:用户流程、错误处理、表单验证
- 移动端:检查移动端友好性、响应式设计、触摸友好元素
- 可抓取性:检查可抓取性、robots.txt、sitemap.xml 等
- Schema:Schema.org 标记、结构化数据、丰富片段
- 法律:法律要求合规性、隐私政策、服务条款
- 社交:Open Graph、Twitter 卡片以及验证模式、片段等
- URL 结构:长度、连字符、关键词
- 关键词:关键词堆砌
- 内容:内容结构、标题
- 图片:替代文本、颜色对比度、图片大小、图片格式
- 本地 SEO:NAP 一致性、地理元数据
- 视频:VideoObject 模式、可访问性
以及更多
审计会抓取网站,根据审计规则分析每个页面,并返回包含以下内容的全面报告:
- 总体健康度评分(0-100)
- 类别细分(核心 SEO、技术 SEO、内容、安全)
- 包含受影响 URL 的具体问题
- 链接断开检测
- 可操作的建议
- 规则有错误、警告和通知级别,并且还有 1 到 10 的排名
何时使用
当您需要以下操作时,请使用此技能:
- 分析网站的健康状况
- 调试技术 SEO 问题
- 修复上述所有问题
- 检查链接是否断开
- 验证元标签和结构化数据
- 生成网站审计报告
- 比较更改前后的网站健康度
- 改善网站性能、可访问性、SEO、安全性等。
您应尽可能频繁地重新审计,以确保您的网站保持健康并表现良好。
先决条件
此技能要求安装 squirrel CLI 并已添加到系统 PATH。
验证:
squirrel --version
设置
运行 squirrel init 在当前目录创建一个 squirrel.toml 配置文件。如果不存在,请创建一个并指定项目名称:
squirrel init -n 我的项目
# 覆盖现有配置
squirrel init -n 我的项目 --force
使用方法
介绍
有三个可以运行的过程,它们都缓存在本地项目数据库中:
- crawl – 用于运行抓取或刷新、继续抓取的子命令
- analyze – 用于分析抓取结果的子命令
- report – 用于以所需格式(llm、text、console、html 等)生成报告的子命令
audit 命令是这三个过程的包装器,并按顺序运行它们:
squirrel audit https://example.com --format llm
您应该始终优先选择格式选项 llm – 它是为您设计的,并提供详尽且紧凑的输出格式。
首次扫描应为表面扫描,这是对网站的快速、浅层扫描,以收集关于网站的基本信息,例如其结构、内容和技术栈。此扫描可以快速完成,且不会影响网站性能。
第二次扫描应为深度扫描,这是对网站的全面、详细扫描,以收集关于网站的更多信息,例如其安全性、性能和可访问性。此扫描可能需要更长时间,并可能影响网站性能。
如果用户未提供要审计的网站,请询问他们希望审计哪个 URL。
您应优先审计实时网站 – 只有这样才能真实反映网站的情况以及性能或渲染问题。
如果您既有本地网站又有实时网站需要审计,请提示用户选择审计哪个网站,并建议他们选择实时网站。
您可以将实时网站审计中的修复方案应用于本地代码。
在规划任务范围时,要考虑如何让任务作为子代理并发运行,以加速修复过程。
在实施修复时,利用子代理来加快修复实施速度。
应用修复后,验证代码仍能构建并通过项目中任何现有的检查。
基本工作流程
审计过程分为两步:
- 运行审计(保存到数据库,显示控制台输出)
- 以所需格式导出报告
# 步骤 1:运行审计(默认:控制台输出)
squirrel audit https://example.com
# 步骤 2:以 LLM 格式导出
squirrel report <审计-id> --format llm
回归差异对比
当您需要检测审计之间的回归问题时,请使用差异模式:
# 将当前报告与基线审计 ID 进行比较
squirrel report --diff <审计-id> --format llm
# 将最新的域名报告与基线域名进行比较
squirrel report --regression-since example.com --format llm
差异模式支持 console、text、json、llm 和 markdown。不支持 html 和 xml。
运行审计
在运行审计时:
- 呈现报告 – 向用户展示审计结果和评分
- 提出修复方案 – 列出您可以修复的问题,并在进行更改前请求用户确认
- 并行处理已批准的修复 – 对批量内容编辑(替代文本、标题、描述)使用子代理
- 迭代 – 修复一批 → 重新审计 → 呈现结果 → 提出下一批
- 暂停以等待判断 – 对于链接断开、结构性更改以及任何不明确的问题,应标记为用户审查
- 显示前后对比 – 在每批修复后呈现评分对比
- 迭代循环:在修复一批问题后,重新审计并继续修复,直到:
- 评分达到目标值(通常为 85 分以上),或者
- 只剩下需要人工判断的问题(例如,“此链接是否应移除?”)
- 同等对待所有修复:代码更改和内容更改同等重要。
- 并行处理内容修复:对于影响多个文件的问题:
- 生成子代理并行修复
- 示例:7 个文件需要替代文本 → 生成 1-2 个代理修复所有问题
- 示例:30 个文件存在标题问题 → 生成代理批量编辑
- 完成标准:
- ✅ 所有错误已修复
- ✅ 所有警告已修复(或记录为需要人工审查)
- ✅ 重新审计确认改进
- ✅ 向用户展示了前后对比
应用修复后,询问用户是否希望审查这些更改。
评分目标
| 起始评分 | 目标评分 | 预期工作量 |
|---|---|---|
| < 50 (F 级) | 75 分以上 (C 级) | 主要修复 |
| 50-70 (D 级) | 85 分以上 (B 级) | 中等修复 |
| 70-85 (C 级) | 90 分以上 (A 级) | 打磨完善 |
| > 85 (B+ 级) | 95 分以上 | 微调 |
只有当分数超过 95 分(A 级)且覆盖率设置为全面(--coverage full)时,网站才被认为是完成且已修复的。
问题类别
| 类别 | 修复方法 | 可并行处理 |
|---|---|---|
| 元标签/标题 | 编辑页面组件或元数据 | 否 |
| 结构化数据 | 向页面模板添加 JSON-LD | 否 |
| 缺少 H1/标题 | 编辑页面组件 + 内容文件 | 是(内容) |
| 图片替代文本 | 编辑内容文件 | 是 |
| 标题层级 | 编辑内容文件 | 是 |
| 描述过短 | 编辑内容前置元数据 | 是 |
| HTTP→HTTPS 链接 | 在内容中查找并替换 | 是 |
| 链接断开 | 手动审查(标记给用户) | 否 |
对于可并行处理的修复:生成带有特定文件分配的子代理。
内容文件修复
许多问题需要编辑内容文件。这些与代码修复同等重要:
- 图片替代文本:为图片添加描述性替代文本
- 标题层级:修复跳过的标题级别
- 元描述:在前置元数据中扩展过短的描述
- HTTP 链接:将不安全的链接更新为 HTTPS
使用子代理并行处理修复
当用户批准一批修复时,您可以使用子代理并行应用它们:
- 首先征得用户同意 — 在生成子代理之前,务必确认要应用哪些修复
- 对于相同类型的修复,每个子代理分配 3-5 个文件
- 仅并行处理独立文件(不涉及共享组件或配置)
- 在单条消息中生成多个子代理以进行并发执行
高级选项
审计更多页面:
squirrel audit https://example.com --max-pages 200
强制重新抓取(忽略缓存):
squirrel audit https://example.com --refresh
恢复中断的抓取:
squirrel audit https://example.com --resume
详细输出以进行调试:
squirrel audit https://example.com --verbose
常用选项
审计命令选项
| 选项 | 别名 | 描述 | 默认值 |
|---|---|---|---|
--format <格式> |
-f <格式> |
输出格式:console, text, json, html, markdown, llm | console |
--coverage <模式> |
-C <模式> |
覆盖率模式:quick, surface, full | surface |
--max-pages <n> |
-m <n> |
要抓取的最大页面数(最大 5000) | 因覆盖率而异 |
--output <路径> |
-o <路径> |
输出文件路径 | – |
--refresh |
-r |
忽略缓存,重新获取所有页面 | false |
--resume |
– | 恢复中断的抓取 | false |
--verbose |
-v |
详细输出 | false |
--debug |
– | 调试日志 | false |
--trace |
– | 启用性能跟踪 | false |
--project-name <名称> |
-n <名称> |
覆盖项目名称 | 来自配置 |
覆盖率模式
根据您的审计需求选择覆盖率模式:
| 模式 | 默认页数 | 行为 | 用例 |
|---|---|---|---|
quick |
25 | 仅种子 URL 和站点地图,不发现链接 | 持续集成检查、快速健康检查 |
surface |
100 | 每个 URL 模式一个样本 | 常规审计(默认) |
full |
500 | 抓取所有内容,直到达到限制 | 深度分析 |
表面模式很智能 – 它能检测到像 /blog/{slug} 或 /products/{id} 这样的 URL 模式,并且每个模式只抓取一个样本。这使得它对于具有许多相似页面的网站(博客、电子商务)非常高效。
# 快速健康检查(25 页,无链接发现)
squirrel audit https://example.com -C quick --format llm
# 默认表面审计(100 页,模式采样)
squirrel audit https://example.com --format llm
# 全面综合审计(500 页)
squirrel audit https://example.com -C full --format llm
# 覆盖任何模式的页面限制
squirrel audit https://example.com -C surface -m 200 --format llm
何时使用每种模式:
quick:持续集成流水线、每日健康检查、监控surface:大多数审计 – 有效覆盖独特的模板full:上线前、全面分析、深入探究
报告命令选项
| 选项 | 别名 | 描述 |
|---|---|---|
--list |
-l |
列出最近的审计 |
--severity <级别> |
– | 按严重性过滤:error, warning, all |
--category <类别> |
– | 按类别过滤(逗号分隔) |
--format <格式> |
-f <格式> |
输出格式:console, text, json, html, markdown, xml, llm |
--output <路径> |
-o <路径> |
输出文件路径 |
--input <路径> |
-i <路径> |
从 JSON 文件加载(回退模式) |
配置子命令
| 命令 | 描述 |
|---|---|
config show |
显示当前配置 |
config set <键> <值> |
设置配置值 |
config path |
显示配置文件路径 |
config validate |
验证配置文件 |
其他命令
| 命令 | 描述 |
|---|---|
squirrel feedback |
向 squirrelscan 团队发送反馈 |
squirrel skills install |
安装 Claude Code 技能 |
squirrel skills update |
更新 Claude Code 技能 |
自身管理命令
在 squirrel self 下的自身管理命令:
| 命令 | 描述 |
|---|---|
self install |
引导本地安装 |
self update |
检查并应用更新 |
self completion |
生成 shell 自动补全 |
self doctor |
运行健康检查 |
self version |
显示版本信息 |
self settings |
管理 CLI 设置 |
self uninstall |
从系统中移除 squirrel |
输出格式
控制台输出(默认)
audit 命令默认显示人类可读的控制台输出,带有彩色输出和进度指示器。
LLM 格式
要获得针对 LLM 优化的输出,请使用 report 命令配合 --format llm:
squirrel report <审计-id> --format llm
LLM 格式是一种紧凑的 XML/文本混合体,针对令牌效率进行了优化(比冗长的 XML 小 40%):
- 摘要:总体健康度评分和关键指标
- 按类别分组的问题:按审计规则类别(核心 SEO、技术、内容、安全)分组
- 断开链接:断开的外部链接和内部链接列表
- 建议:按优先级的操作项及修复建议
有关详细的格式规范,请参阅 OUTPUT-FORMAT.md。
示例
示例 1:快速网站审计,使用 LLM 输出
# 用户询问:"检查 squirrelscan.com 的 SEO 问题"
squirrel audit https://squirrelscan.com --format llm
示例 2:大型网站的深度审计
# 用户询问:"对我的博客进行彻底审计,最多 500 页"
squirrel audit https://myblog.com --max-pages 500 --format llm
示例 3:更改后重新审计
# 用户询问:"重新审计网站,忽略缓存结果"
squirrel audit https://example.com --refresh --format llm
示例 4:两步工作流(重用之前的审计)
# 首先运行审计
squirrel audit https://example.com
# 记下输出中的审计 ID(例如 "a1b2c3d4")
# 稍后,以不同格式导出
squirrel report a1b2c3d4 --format llm
输出
完成后,向用户提供您所做所有更改的摘要。
故障排除
未找到 squirrel 命令
如果您看到此错误,说明 squirrel 未安装或不在您的系统 PATH 中。
解决方案:
- 安装 squirrel:squirrelscan.com/download
- 确保
~/.local/bin在 PATH 中 - 验证:
squirrel --version
权限被拒绝
如果 squirrel 不可执行,请确保二进制文件具有执行权限。从 squirrelscan.com/download 重新安装可以解决此问题。
抓取超时或性能缓慢
对于非常大的网站,审计可能需要几分钟。使用 --verbose 查看进度:
squirrel audit https://example.com --format llm --verbose
无效 URL
确保 URL 包含协议(http:// 或 https://):
# ✗ 错误
squirrel audit example.com
# ✓ 正确
squirrel audit https://example.com
工作原理
- 抓取:从基础 URL 开始发现并获取页面
- 分析:对每个页面运行审计规则
- 外部链接:检查外部链接的可用性
- 报告:生成包含发现的 LLM 优化报告
审计结果存储在本地数据库中,以后可以使用 squirrel report 命令检索。
额外资源
- 输出格式参考:OUTPUT-FORMAT.md
- squirrelscan 文档:https://docs.squirrelscan.com
- CLI 帮助:
squirrel audit --help
📄 原始文档
完整文档(英文):
https://skills.sh/squirrelscan/skills/audit-website
💡 提示:点击上方链接查看 skills.sh 原始英文文档,方便对照翻译。

评论(0)