From SEO-ajaypipes
Full-site blog health assessment scanning all blog files for quality scores, orphan pages, topic cannibalization, stale content, and AI citation readiness. Spawns parallel subagents for comprehensive analysis. Produces per-post scores and a prioritized action queue. Use when user says "audit blog", "blog audit", "site audit", "blog health", "audit all posts", "check all blogs".
How this skill is triggered — by the user, by Claude, or both
Slash command
/SEO-ajaypipes:blog-audit [directory][directory]The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Performs a comprehensive blog health assessment across all posts in the project.
Performs a comprehensive blog health assessment across all posts in the project. Scans for quality scores, orphan pages, topic cannibalization, stale content, and AI citation readiness. Uses parallel subagents for efficient analysis and produces a prioritized action queue.
content//posts//blog/ directory. Use references/used-keywords.md as the post inventory (all 100 titles, primary keywords, publish dates, URLs) and fetch live URLs via WebFetch for content analysis instead of Glob/Read on local files.references/used-keywords.md documents 3 clusters covering ~25 posts ("best/top pipe company/brand," "best pipe for plumbing," "which pipe is best"). Start from that list, then look for anything new outside it.on-page-seo-ajaypipes.md — the site's sitemap.xml is frozen at 2024-06-03 and excludes all 2025/2026 content. If freshness/indexation issues show up across many posts, the root cause is very likely this stale sitemap, not per-post content staleness. Say so explicitly rather than recommending individual content refreshes as the fix.on-page-seo-ajaypipes.md). Report this as the top-priority link-health finding, not just generic orphan-page detection.Scan the project for all blog content files:
*.md, *.mdx, *.html in common blog directoriescontent/posts/blog/src/content/_posts/pages/blog/articles/src/pages/blog/If no blog files are found in standard locations, search the entire project root for markdown files with blog-like frontmatter (title, date, description).
Spawn subagents via the Task tool for parallel processing across all discovered blog files:
Analyze across all posts for keyword competition:
Build and analyze the internal link graph:
{ page -> [pages it links to] }{ page -> [pages linking to it] }Audit content freshness across all posts:
lastUpdated, dateModified, date, updatedAggregate all results into a comprehensive report:
## Blog Audit Report
**Audit Date:** [date]
**Total Posts:** N
**Average Score:** XX/100
### Health Overview
| Metric | Count |
|--------|-------|
| Posts Scoring 90+ (Excellent) | N |
| Posts Scoring 70-89 (Good) | N |
| Posts Scoring 50-69 (Needs Work) | N |
| Posts Scoring <50 (Poor) | N |
| Orphan Pages | N |
| Dead-End Pages | N |
| Cannibalization Issues | N |
| Stale Content (90+ days) | N |
### Per-Post Scores
| Post | Score | Content | SEO | E-E-A-T | Technical | AI Citation | Issues |
|------|-------|---------|-----|---------|-----------|-------------|--------|
| [filename] | XX/100 | X/25 | X/20 | X/20 | X/15 | X/20 | [count] |
### Prioritized Action Queue (Lowest Score First)
| Priority | Post | Score | Top Issue | Recommended Action |
|----------|------|-------|-----------|--------------------|
| 1 | [file] | XX | [issue] | [action] |
| 2 | [file] | XX | [issue] | [action] |
### Topic Cannibalization
| Keyword | Competing Posts | Recommendation |
|---------|----------------|----------------|
| [keyword] | post-a.md, post-b.md | Merge / Redirect / Differentiate |
### Orphan Pages (No Inbound Links)
| Page | Inbound Links | Recommended Link Sources |
|------|---------------|--------------------------|
| [file] | 0 | post-a.md, post-b.md, post-c.md |
### Stale Content
| Post | Last Updated | Days Stale | Priority | Refresh Effort |
|------|-------------|------------|----------|----------------|
| [file] | [date] | [N] | High/Med/Low | Light/Moderate/Heavy |
Save the complete report to blog-audit-report.md in the project root.
After saving, inform the user:
[project-root]/blog-audit-report.md/blog analyze <file> on the lowest-scoring post first/blog geo <file> for AI citation optimization on key postsFor evidence-led audit prompts beyond this site-wide health pass, see /blog flow optimize (visibility, CTR, schema, extraction audits) and /blog flow win (dual-surface scorecard, conversion audit).
npx claudepluginhub captaindevv/seo-ajaypipesGuides collaborative design exploration before implementation: explores context, asks clarifying questions, proposes approaches, and writes a design doc for user approval.
Creates structured, bite-sized implementation plans from specs or requirements before writing code. Useful for breaking down multi-step tasks into testable steps with file structure and task boundaries.
Implements work from a spec or tickets using TDD at agreed seams, with regular typechecking and test runs, followed by code review.