audit-website

作者: squirrelscan

使用squirrelscan CLI审计网站,并根据发现结果修复代码。运行SEO、性能、安全、技术、内容、无障碍及其他15类规则(249+条规则),返回一份针对LLM优化的报告,然后驱动迭代修复循环,将问题映射到源文件,应用修复,并重新审计,直到网站评分良好。用于发现和评估网站或Web应用的问题,并推动问题得到修复。

npx skills add https://github.com/squirrelscan/skills --skill audit-website

Audit a Website and Fix It

Run a squirrelscan audit against a website, read the LLM report, map each issue to the code or content that causes it, fix in batches, and re-audit until the score target is met.

Requires the squirrel CLI (squirrelscan.com/download; verify with squirrel --version). For CLI setup, login, publishing, MCP, and general CLI usage, use the companion squirrelscan skill.

Rule docs

Look up any rule at https://docs.squirrelscan.com/rules/{rule_category}/{rule_id}, for example:

https://docs.squirrelscan.com/rules/links/external-links

Running the audit

squirrel audit https://example.com --format llm
  • ALWAYS use --format llm: it is compact, exhaustive, and made for agents.
  • If the user doesn't provide a URL, ask which site to audit.
  • PREFER auditing the live site: only there do you see true rendering, performance, and redirect behavior. If both a local dev server and a live site exist, suggest the live one; apply the fixes to the local code either way.
  • Audits are cached locally. Re-render later without recrawling: squirrel report <audit-id> --format llm.

Scan progression

  1. First pass, quick coverage (the default): a fast, shallow scan to learn the site's structure, technology, and biggest problems without impacting the site.
  2. Second pass, deeper coverage: -C surface (one page per URL pattern) for template-level coverage, or -C full for a comprehensive crawl before sign-off.
ModeDefault pagesUse
quick25First look, CI checks
surface100Template-level coverage (one sample per pattern like /blog/{slug})
full500Final verification, deep analysis

Useful flags: --refresh (ignore cache, full re-fetch), --resume (continue an interrupted crawl), -m <n> (page cap), --verbose (progress detail).

If the site blocks unknown crawlers (Shopify / Cloudflare), pass Web Bot Auth headers with repeated -H "Name: Value" flags. Header values are secrets and are redacted in output. See https://docs.squirrelscan.com/guides/web-bot-auth

The fix loop

  1. Present the report: score, grade, top issues by severity.
  2. Propose fixes: list the issues you can fix and confirm with the user before changing anything.
  3. Map issues to source: find the template, component, or content file behind each finding.
  4. Fix in batches: apply the approved fixes; use subagents to parallelize independent files.
  5. Re-audit (use --refresh after deploys or content changes) and show before/after scores.
  6. Repeat until the target is met or only judgment calls remain (for example "should this link be removed?"). Flag those for user review instead of guessing.

After each batch, verify the project still builds and existing checks pass.

Score targets

Starting scoreTargetExpected work
< 50 (F)75+ (C)Major fixes
50-70 (D)85+ (B)Moderate fixes
70-85 (C)90+ (A)Polish
> 85 (B+)95+Fine-tuning

A site is only considered COMPLETE and FIXED when it scores 95+ (Grade A) with --coverage full.

Issue categories and fix approach

CategoryFix approachParallelizable
Meta tags / titles / descriptionsEdit page components or metadata configNo
Structured dataAdd JSON-LD to page templatesNo
Missing H1 / heading hierarchyEdit page components + content filesYes (content)
Image alt textEdit content filesYes
Short meta descriptionsExtend frontmatter descriptionsYes
HTTP to HTTPS linksFind and replace in contentYes
Broken linksManual review, flag for userNo

Rules carry a level (error, warning, notice) and a rank (1-10): fix errors first, then high-rank warnings. Code changes and content changes are equally important; treat them the same.

Parallelizing with subagents

  • Ask the user first: always confirm which fixes to apply before spawning subagents.
  • Group 3-5 files per subagent for the same fix type; only parallelize independent files (no shared components or config).
  • Spawn the subagents in a single message so they run concurrently.

Verifying regressions

Compare against a baseline to prove improvement or catch regressions:

squirrel report --diff <baseline-audit-id> --format llm
squirrel report --regression-since example.com --format llm

Completion

Done means: all errors fixed; warnings fixed or documented as needing human review; a re-audit confirms the improvement; and the user has seen the before/after score comparison plus a summary of every change made. Re-audit regularly to keep the site healthy. If the user wants to share results, offer a published report (see the squirrelscan skill).

Report format

The LLM report is a compact XML/text hybrid optimized for token efficiency: summary with health score, issues grouped by category with affected URLs, broken links, and prioritized recommendations. Full spec: OUTPUT-FORMAT.md

相关技能

writing-server-code
bitwarden
Bitwarden 服务器代码规范,适用于 C# 和 .NET。在处理服务器仓库、创建命令、查询、服务或 API 端点时使用。也适用于……
notion-knowledge-capture
firecrawl
将对话和决策捕获到结构化的Notion页面中;在将聊天/笔记转化为wiki条目、操作指南、决策或常见问题解答时使用,并带有适当的…
authoring-log-alerts
posthog
在PostHog项目中为服务编写实用、低噪音的日志告警。当用户要求为其日志设置告警、建议应添加的告警时使用,…
matter-briefing
anthropic
对某一事项的深度简报——当前态势、变化情况、下一个截止日期、待解决问题以及风险重新评估检查,准备在GC更新或……之前完成。
bug-triage
apify
对 apify/apify-mcp-server 上的开放 bug 问题进行分类。分析、草拟回复、获取批准、发布。
swiftui-expert-skill
expo
编写、审查或改进SwiftUI代码,遵循状态管理、视图组合、性能、macOS特定API以及iOS 26+ Liquid Glass设计的最佳实践…
parallel-cli-setup
parallel-web
设置和维护 Parallel CLI(安装、认证、余额、技能安装)
firebase-hosting-basics
firebase
将静态站点、单页应用和微服务部署到全球CDN,支持零配置SSL。支持静态站点、单页应用(React、Vue等)以及通过Cloud Functions或Cloud Run集成实现的动态内容。包含预览频道,可在临时URL上测试更改后再进行正式部署,并支持GitHub Actions自动化。通过firebase.json配置路由、重定向、重写和标头;部署前可在本地http://localhost:5000进行模拟。不适用于全栈框架...