CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

blog-analyze

Score one blog post (or a folder of posts) on a 5-category 100-point scale covering content quality, SEO, E-E-A-T, technical elements, and AI citation readiness. Runs the deterministic analyzer first, then adds judgment and prioritized Critical/High/Medium/Low fixes. Advisory style diagnostics never infer authorship or affect the score. Exports markdown, JSON or table; works with MDX, markdown, HTML or a URL. Use when the user asks to analyze, score, rate or check the quality of specific posts ("analyze blog", "blog score", "check blog quality", "rate this post"). For a site-wide health check (orphan pages, cannibalization, stale content, schema across all posts) use blog-audit instead.

Quality

92%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Low

Low-risk findings worth noting

SKILL.md
Quality
Evals
Security

Quality

Content

82%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A highly actionable, well-sequenced operational skill: the analyzer-first mandate, guarded commands, exact flag documentation, and complete output templates leave little ambiguity about what to execute. The main costs are mild redundancy (repeated disclaimers, path lists duplicated, scoring tables inlined alongside the reference that owns them) and the absence of an error-recovery path if the analyzer itself fails.

Suggestions

State the authorship-disclaimer rule once (e.g., in Step 3) and drop the repeats in the description, report template, and JSON example — the report template line '- These observations do not infer authorship' can reference the rule instead of restating it.

Trim Step 2's full per-check point tables to the category structure and point totals, deferring the pass criteria to quality-scoring.md, which the skill already designates as the 'full scoring checklist' — this removes the duplication and shrinks the body substantially.

Add one feedback-loop line for analyzer failure (e.g., 'If analyze_blog.py exits nonzero or emits invalid JSON, report the error and stop — do not fabricate scores'), and list the reference paths once in the opening block instead of repeating them in Steps 2, 4, 4.5, and 4.6.

DimensionReasoningScore

Conciseness

The body is dense and operational — exact commands, flag tables, pass-criteria tables, and output templates, with no explanation of concepts Claude already knows and deliberate anti-duplication ('Do not restate band numbers here'). It drops to 4 rather than 5 because the advisory-diagnostics authorship disclaimer is repeated four times, the reference path list appears twice, and Step 2's full point tables duplicate the referenced quality-scoring.md 'full scoring checklist'.

4 / 5

Actionability

Fully executable guidance throughout: a copy-paste-ready guarded bash snippet (absolute-path case check, env-var fallback), an exact argparse flag table for analyze_blog.py, per-check pass criteria with point values, and complete markdown/JSON/table/batch output templates covering the common cases. Judgment steps are concretely bounded ('say which sub-score you changed and why').

5 / 5

Workflow Clarity

A clear numbered sequence (Step 0 analyzer-first through Step 5 report) with explicit validation checkpoints: the absolute-path guard that exits on error, URL safety checks (scheme allowlist, DNS resolution, private/loopback IP blocking), and batch per-file error fields that do not abort the run. It is 4 rather than 5 because there is no error-recovery feedback loop — e.g., nothing says what to do if the analyzer itself fails or emits malformed JSON; it is not 3 because checkpoints are explicit and batch errors are surfaced rather than silently dropped.

4 / 5

Progressive Disclosure

References are clearly signaled with one-line descriptions of each document's purpose, and thresholds are deliberately delegated to the single source table in quality-scoring.md rather than restated. It is 4 rather than 5 because no bundle files ship in this skill's own directories (all references/scripts point at sibling paths), Step 2's full scoring tables arguably belong in the referenced checklist, and the orchestration chain (this SKILL.md → orchestration-details.md → blog/SKILL.md's fenced helper → project files) runs two levels deep.

4 / 5

Total

17

/

20

Passed

Description

100%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

An exemplary description: concrete and comprehensive on capabilities, explicit third-person voice, natural trigger phrases with synonyms and file formats, and an explicit boundary against the closest conflicting skill. Both 'what' and 'when' are answered with concrete detail.

DimensionReasoningScore

Specificity

The description lists multiple concrete actions — scoring on a named 5-category 100-point scale, running the deterministic analyzer first, adding judgment and prioritized Critical/High/Medium/Low fixes, exporting markdown/JSON/table, and accepting MDX, markdown, HTML or a URL — with comprehensive coverage and no vague padding. Not 4: action, format, and input coverage is complete rather than having minor gaps.

5 / 5

Completeness

Both 'what' (detailed capability list) and 'when' are explicit, with the trigger clause quoting concrete phrases users would say. This matches the top anchor precisely: 'Use when the user asks to analyze, score, rate or check the quality of specific posts' is an explicit, specific 'when', not merely present.

5 / 5

Trigger Term Quality

It covers natural synonyms ('analyze, score, rate or check the quality') plus literal user phrasings ('analyze blog', 'blog score', 'check blog quality', 'rate this post') and input formats (MDX, markdown, HTML, URL). These are exactly the phrases a user would naturally say when they need this skill.

5 / 5

Distinctiveness Conflict Risk

Clear niche (per-post or per-folder quality scoring) with distinct triggers, and it explicitly fences off the nearest sibling: 'For a site-wide health check (orphan pages, cannibalization, stale content, schema across all posts) use blog-audit instead.' Minimal conflict risk.

5 / 5

Total

20

/

20

Passed

Validation

93%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

15

/

16

Passed

Repository

AgriciDaniel/claude-blog

Path

skills/blog-analyze/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.