# Blog Audit

Full-site blog health assessment scanning all blog files for quality scores, orphan...

- Repository: https://github.com/AgriciDaniel/claude-blog (2608 stars)
- Category: Writing
- License: MIT
- Last updated: 2026-10-30
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add AgriciDaniel/claude-blog --skill blog-audit -g -a claude-code -y`
Codex: `npx skills add AgriciDaniel/claude-blog --skill blog-audit -g -a codex -y`
Cursor: `npx skills add AgriciDaniel/claude-blog --skill blog-audit -g -a cursor -y`
Gemini CLI: `npx skills add AgriciDaniel/claude-blog --skill blog-audit -g -a gemini-cli -y`
Claude Code plugin marketplace: `/plugin marketplace add AgriciDaniel/claude-blog`

## Description

Full-site blog health assessment scanning all blog files for quality scores, orphan pages, topic cannibalization, stale content, and AI citation readiness. Runs canonical batch analysis before site-wide checks. 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".

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Blog Audit: Full-Site Health Assessment

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 the canonical analyzer JSON as the score source
and produces a prioritized action queue.

## Audit Process

### Step 1: Discover Blog Files

Scan the project for all blog content files:

- Recursively glob for `.md`, `.mdx`, `.html`, `.astro`, `.svelte`, `.vue`,
  `.tsx`, and `.jsx` in common blog directories and CMS export folders
- Common paths to check:
  - `content/`
  - `posts/`
  - `blog/`
  - `src/content/`
  - `_posts/`
  - `pages/blog/`
  - `articles/`
  - `content/blog/**`
  - CMS export folders explicitly provided by the user
  - `src/pages/blog/`
- Filter out hidden, vendor, generated, and secret-adjacent paths: `.git/`,
  dot-directories, `node_modules/`, `vendor/`, `dist/`, `build/`, `.next/`,
  `coverage/`, `reports/`, generated exports, README, CHANGELOG, LICENSE,
  config files, SKILL.md, package files, `.env*`, keys, and private notes
- Report: "Found N blog files in [directories]"

If no blog files are found in standard locations, ask for an allow-listed root
or only search user-approved content directories. Do not scan the entire project
root by default.

### Step 2: Canonical Batch Analysis

Run canonical analyzer output first and use it as the source of per-post scores:

```bash
python3 scripts/analyze_blog.py <blog-root> --batch --format json
```

Process files in chunks, cap parallel follow-up work to a small fixed number,
respect context limits, and aggregate deterministic JSON with `file`, `score`,
`categories`, `issues`, and `metadata`. Layer the site-wide checks below on top
of analyzer JSON, not separate scoring rubrics.

The rest: https://github.com/AgriciDaniel/claude-blog/blob/HEAD/brain/.raw/sources/claude-blog-skill/skills/blog-audit/SKILL.md
