From astro-builder
Audit the Astro 6 project for anti-patterns, missing translations, broken internal links, style guide violations, and schema inconsistencies. Produces a prioritized report with actionable fixes.
How this skill is triggered — by the user, by Claude, or both
Slash command
/astro-builder:auditThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
You are auditing this Astro 6 project for quality issues. Run a thorough inspection across four categories, then produce a prioritized report.
You are auditing this Astro 6 project for quality issues. Run a thorough inspection across four categories, then produce a prioritized report.
Read:
CLAUDE.md — project rules and quality gates..astro-builder/anti-patterns.md — project-specific anti-patterns..astro-builder/content-schema.md — expected content structure..astro-builder/style-guide.md — writing rules.astro.config.ts — i18n config, integrations, adapter.src/content.config.ts — collection schemas.Also read the canonical Astro 6 anti-patterns from docs/astro-patterns.md.
Check for violations of the page-views pattern:
src/pages/ should be ≤5 lines — a single import and component render. Flag any page that contains markup, data fetching, or logic.src/page-views/ should use Astro.currentLocale — flag any that accept a lang prop instead.lang or tl as props — each resolves its own locale. Grep for lang={ and tl={ in component calls.src/content/config.ts must not exist. Only src/content.config.ts is valid.astro.config.mjs must not exist. Only astro.config.ts is valid.src/pages/en/, check that a matching page exists in every other configured locale folder. List missing pages.src/i18n/en.json, check that the same key exists in all other locale JSON files. List missing keys with the English fallback value.translationKey is set. Flag entries that are missing it.translationKey, verify a matching entry exists in every configured locale. List entries with no translation..astro files for literal English text outside of tl() calls (e.g. >About<, >Home<). Flag suspected hardcoded UI strings.For each content collection defined in src/content.config.ts:
lang values match valid configured locales.date fields are valid ISO dates.tags are arrays (not strings).Read .astro-builder/style-guide.md and check a sample of 5 content files per collection:
This is a best-effort check — report findings but don't auto-fix style issues.
Run pnpm build. If it fails, include the full error output in the report as a P0 issue.
Run tsc --noEmit. Include any TypeScript errors as P0 issues.
Run biome check . if Biome is configured. Include lint errors as P1 issues.
Produce a structured report in this format:
## Audit Report — {date}
### P0 — Must fix (build broken or data loss risk)
- [ ] {issue description} → {file:line} → {suggested fix}
### P1 — Should fix (correctness or i18n gaps)
- [ ] {issue description} → {file:line} → {suggested fix}
### P2 — Nice to fix (style, consistency, minor issues)
- [ ] {issue description} → {file:line} → {suggested fix}
### Summary
- Files audited: {n}
- Issues found: {P0: n, P1: n, P2: n}
- Build status: PASS / FAIL
After presenting the report, ask: "Would you like me to fix all P0 and P1 issues automatically?"
If yes, fix them autonomously, then re-run pnpm build and tsc --noEmit to confirm all P0/P1 issues are resolved.
npx claudepluginhub pcamarajr/content-stack --plugin astro-builderAudits multilingual blog content for translation completeness, content parity, SEO meta-tag correctness, hreflang validity, and freshness. Emits a prioritized report with fix commands.
Audits multilingual blog directories for translation completeness, content parity, hreflang correctness, meta-tag parity, and freshness. Builds a coverage matrix, flags stale or missing translations, and emits a prioritized report with fix commands.
Complete content collections setup and management for Astro projects, including type-safe schemas, query patterns, frontmatter validation, and content organization.