mcpField
R
respira-site-audit

respira-site-audit

github.com/respira-press测试与质量4978 次安装1 周前更新
代码仓库

关于 respira-site-audit

指导 Agent 使用 Respira 审计 WordPress 网站的技能,涵盖分析器选择、问题排序,以及准确说明安全检查范围与限制。

主要功能

  1. 01单页与全站审计流程
  2. 02SEO、AEO、无障碍与性能检查
  3. 03按严重程度排列问题
  4. 04报告安全检查范围与缺口
  5. 05结合页面构建器提供修复指引

适用场景

  1. 01检查已发布页面的 SEO 与无障碍状况
  2. 02汇总全站问题并排列修复优先级
  3. 03说明安全审计结果及扫描限制

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/respira-press/agent-skills-wordpress --skill respira-site-audit

安装后在 Claude Code 中输入/respira-site-audit确认已加载。

详细介绍

Respira 网站审计

常见错误

错误正确做法
不清楚要审计哪个页面就运行分析器始终确认目标:整个网站(所有公开页面),或特定页面 URL 或 ID。
未按优先级整理就直接报告分析器的原始输出按严重程度分组结果(CRITICAL、WARNING、SUGGESTION),并优先展示可快速解决的问题。
只需要一个分析器时,却依次运行所有分析器根据问题选择分析器。如果用户只询问 SEO,就运行 respira_analyze_seo,跳过其他分析器。
报告元素级问题前跳过 respira_get_builder_info构建器类型会影响可行的修复方案。Elementor、Divi 4、Divi 5、Bricks、Beaver 和 Oxygen 的修复方式各不相同。
将 AEO 和 SEO 混为一谈SEO 面向搜索排名,AEO 面向 AI 生成的答案。两种分析器检查不同的信号,通常都需要运行。
审计前未检查页面是否已发布草稿和私有页面可能产生不完整的结果。请先确认 status: publish。
只需要了解结构时使用 extract_builder_content若要查看“此页面上有什么”,请使用 respira_get_page_outline。它更轻量,并在每一行中包含主标题。
因安装了安全插件就声称网站安全运行 respira_run_security_audit,并报告检查了哪些内容、哪些内容无法检查。部分扫描或无法执行的漏洞检查绝不代表“没有问题”。
将 respira_get_core_web_vitals 的结果当作真实用户数据引用这是基于静态分析的启发式估算。请使用 respira_run_pagespeed_audit 获取 Lighthouse 实验室数据和 CrUX 实地数据。

输入

  • 目标:特定页面 URL、页面 ID,或“整个网站”。
  • 范围:要运行哪些分析器。默认运行全部八种分析器,并在全站审计时添加安全审计。
  • 输出格式:面向用户的摘要,或供 CI / CD 管道使用的 JSON。

工作流

单页审计
  1. respira_get_site_context。确认网站 URL、已启用的 SEO 插件(RankMath、Yoast、AIOSEO、SEOPress)、已启用的构建器以及是否存在 WooCommerce。
  2. respira_get_builder_info。记录构建器类型,以便提出元素级修复建议。
  3. 如果需要讨论页面结构,则使用 respira_get_page_outline。
  4. 尽可能并行运行分析器:
    • respira_analyze_seo。标题、元描述、标题层级、内链、规范链接。
    • respira_analyze_aeo。结构化内容、FAQ 架构、答案框信号。
    • respira_analyze_readability。Flesch 分数、句子长度、被动语态。
    • respira_analyze_performance。加载时间、图片大小、阻塞渲染的资源。
    • respira_scan_page_accessibility。WCAG 2.1 AA 违规项、替代文本、对比度。
    • respira_analyze_images。每张图片的体积、格式,以及超出尺寸的倍数。
    • respira_check_structured_data。每个页面是否包含 Schema.org 数据。
    • respira_run_pagespeed_audit。PageSpeed Insights:Lighthouse 实验室指标,以及 Google 为该 URL 发布数据时的 CrUX 实地数据(LCP、INP、CLS 的 p75 值)。
  5. 按严重程度汇总结果:CRITICAL → WARNING → SUGGESTION。
  6. 制定按优先级排序的修复清单:先列出可快速解决的问题(替代文本、缺少元数据),再列出结构性变更。
  7. 报告每个领域的总体评分,以及每个领域的前 3 项修复建议。
全站审计
  1. 使用 respira_list_pages 并设置 status: publish。收集所有已发布页面的 ID。
  2. 针对每个页面或具有代表性的样本,运行上述单页工作流。
  3. 汇总全站结果:表现最差的页面、最常见的问题类型、总体评分区间。
安全性(全站审计,或涉及安全性时)
  1. 每个站点运行一次 respira_run_security_audit,而不是每个页面运行一次。在插件 9.0 及更高版本中传入 deep_scan: true,此时只会读取数据。在较早版本的插件中,深度扫描还会在 uploads 中写入并删除一个无害的探测文件,因此应先征求同意,或将其关闭。此处绝不要设置 probe_uploads_execution;WordPress Security Review 技能会在征得同意后请求设置该项。
  2. 阅读 indicators(每个条目,以及其 summary 和证据中的 note)、coverage(未检查的内容)和 known_vulnerabilities(插件 9.0 及更高版本:status: ok 表示已运行匹配检查,且每个匹配项都附有修复该问题的版本;unavailable 或 not_run 表示未运行)。
  3. 严重程度:已知漏洞或高严重性指标属于 CRITICAL;中严重性指标属于 WARNING;覆盖缺口(executable_file_scan 部分完成或未运行、标记为 false 的主机级项目)应明确列为未检查。
  4. 当覆盖不完整、缺少 known_vulnerabilities、其 status 不是 ok,或存在高严重性指标时,绝不要写“安全”“干净”或“没有已知漏洞”。应写“已检查的内容中未发现问题”,并说明哪些内容未检查。
  5. 修复由 WordPress Security Review 技能负责:更新须经批准,并且一次只运行一项;未经所有者同意,不得删除或撤销任何内容。
RankMath / Yoast 集成

如果 RankMath、Yoast、AIOSEO 或 SEOPress 已启用(可在 respira_get_site_context 中查看):

  • respira_analyze_rankmath 会读取 RankMath 自身的焦点关键词评分和建议。
  • 将这些评分与 respira_analyze_seo 的结果结合使用,以获得更全面的分析。不要将它们作为替代方案。
  • respira_check_seo_issues 会返回当前 SEO 插件自身的问题列表。

规则

  • 始终先运行 respira_get_site_context。插件是否存在(RankMath、Yoast、WooCommerce、ACF、WPML)会影响哪些工具适用。
  • 安全性发现来自 respira_run_security_audit,而不是根据安装了哪个安全插件来判断。
  • 严重程度分类:每项发现都必须归为 CRITICAL(损坏或缺失,会影响排名或用户体验)、WARNING(有改进空间,可处理)或 SUGGESTION(可选改进)。
  • 不要建议绕过构建器进行更改。对于元素级 SEO 修复(替代文本、标题层级),确认构建器后使用 respira_find_element 和 respira_update_element。
  • 对于无障碍修复,如果工具涵盖相关发现,优先使用 respira_apply_accessibility_fixes,而不是手动编辑元素。
  • 性能发现仅供参考。不要为此修改主题文件或插件。指出问题,并建议采取适当的插件或托管服务措施。
  • 对于启用了 WPML 的站点,审计按语言进行。传入 lang 参数以限定运行范围。

验证

应用修复后:

  1. 重新运行指出该问题的分析器。
  2. 确认该发现不再以相同的严重程度出现。
  3. 对于 SEO 修复,请注意索引刷新和排名变化会有所延迟。告知用户这一点。

对于全站审计,修复后重新审计表现最差的 3 个页面,以确认评分变化。

升级处理

出现以下情况时,停止操作并询问用户:

  • 站点已发布页面超过 200 个,且请求是“审计整个站点”。确认要抽查多少个页面。
  • CRITICAL 发现需要进行结构性更改(任何页面都没有 H1、没有 <html lang> 属性)。这类问题通常需要 Respira 范围之外的主题或插件更改。
  • respira_analyze_performance 返回的 LCP > 4s 或 CLS > 0.25。将其标记为高优先级,并询问是否需要让开发人员介入。
  • 站点位于多站点网络中,且未指定审计目标。确认运行范围是单个子站点还是整个网络。

示例

目标:审计首页的 SEO 和 AEO 就绪情况。

1. respira_get_site_context        → WordPress 6.9, RankMath active, Elementor 3.21
2. respira_get_builder_info        → Elementor, supported
3. respira_analyze_seo             → CRITICAL: no meta description | WARNING: 3 images missing alt
4. respira_analyze_aeo             → WARNING: no FAQ schema | SUGGESTION: add HowTo schema
5. respira_analyze_rankmath        → Focus keyword score: 62/100, improve keyword density
6. respira_scan_page_accessibility → WARNING: 2 buttons have no accessible label
7. respira_run_pagespeed_audit     → LCP 2.8s (needs improvement), INP 180ms (good), CLS 0.05 (good)

Report:
  CRITICAL  → Add meta description (missing entirely)
  CRITICAL  → Add alt text to 3 hero images
  WARNING   → Add FAQ schema block for AEO (AI answer-box eligibility)
  WARNING   → 2 buttons need aria-label for screen readers
  WARNING   → LCP at 2.8s, target sub-2.5s by deferring the hero video
  SUGGESTION → Increase focus keyword density from 0.4% to 0.8%

评论

支持 Markdown