CtrlK
BlogDocsLog inGet started
Tessl Logo

blog

Full-lifecycle blog engine with 31 sub-skills, 12 content templates, 5-category 100-point scoring, and 5 specialized agents. Routes user requests to the right sub-skill: writing, rewriting, analysis, outlines, audits, schema, charts, images, repurposing, AI citation SEO, FLOW framework prompts, topic-cluster execution, and multilingual publishing. Optimized for Google rankings around the May 2026 Core Update, E-E-A-T, and AI citations as one SEO discipline. Supports any platform (WordPress, Next.js MDX, Hugo, Ghost, Astro, Jekyll, 11ty, Gatsby, HTML). Use when user says "blog", "write a blog", "blog post", "blog strategy", "content brief", "editorial calendar", "blog audit", "blog optimization", "topic cluster", "multilingual blog", "FLOW framework", or any /blog subcommand. Sub-skill descriptions cover narrower triggers.

68

Quality

84%

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

73%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 well-structured orchestrator body with strong workflow validation and good reference disclosure, undermined by verbosity in the inlined security contract and triplicated command-routing tables. The core execution flow and progressive-disclosure navigation are excellent; the token budget is not.

Suggestions

Move the untrusted-data security contract (the nonce rationale, threat-model primer, and VULN-039/040 version history) into a dedicated reference file, keeping only the operational rule ('invoke load_untrusted_root.py via Bash; never hand-write a fence') inline.

Collapse the three overlapping command listings (Quick Reference table, Orchestration Logic routing list, Sub-Skills table) into one canonical routing table; reference it from the other sections instead of restating it.

Trim conceptual explanations Claude already knows (e.g. what a CSPRNG is, why a nonce is unforgeable) to one-line operational statements; the helper enforces the crypto, so the prose does not need to re-derive it.

DimensionReasoningScore

Conciseness

Mostly efficient dense tables, but the inlined untrusted-data contract (~65 lines) explains concepts Claude already knows — a nonce/CSPRNG crypto primer ('an attacker who controls the file contents cannot pre-embed...'), a defense-class summary table, and VULN-039/040 version history — that could be tightened or moved to a reference.

3 / 5

Actionability

Concrete `/blog` commands, platform-detection signals, a copy-paste bash helper-resolution block, and specific script invocations ('scripts/blog_preflight.py --draft <folder> --strict') give mostly executable guidance, with minor gaps because sub-skill internals are deferred to references.

4 / 5

Workflow Clarity

The numbered execution flow has explicit validation checkpoints and a real feedback loop: 'Run the 5-gate preflight', 'Check the BLOCKING: line', 'loop back to Step 4 with the failure diagnostic; max 3 iterations; on the 3rd failure, STOP'.

5 / 5

Progressive Disclosure

A clear one-level-deep reference list (22 real, verified files) with 'load only what the task needs' guidance, but command routing is duplicated across the Quick Reference table, the Orchestration routing list, and the Sub-Skills table, and the security contract is inlined rather than split into its own reference.

4 / 5

Total

16

/

20

Passed

Description

95%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.

A strong, comprehensive description that explicitly states capabilities and natural trigger phrases in third person. It borders on over-claiming with feature counts ('31 sub-skills, 12 content templates, 5 specialized agents') but remains concrete and clearly scoped to the blog domain.

DimensionReasoningScore

Specificity

Lists several specific actions ('writing, rewriting, analysis, outlines, audits, schema, charts, images, repurposing, AI citation SEO, FLOW framework prompts, topic-cluster execution, and multilingual publishing') with broad coverage, but they are abstract gerund nouns rather than the fully concrete verbs (e.g. 'fill forms, merge documents') of the 5 anchor.

4 / 5

Completeness

Explicitly answers both 'what' ('Full-lifecycle blog engine with 31 sub-skills... Routes user requests to the right sub-skill') and 'when' ('Use when user says...') with concrete trigger phrases.

5 / 5

Trigger Term Quality

Comprehensive natural trigger coverage including synonyms and slash commands: 'blog', 'write a blog', 'blog post', 'blog strategy', 'content brief', 'editorial calendar', 'blog audit', 'blog optimization', 'topic cluster', 'multilingual blog', 'FLOW framework', plus 'any /blog subcommand'.

5 / 5

Distinctiveness Conflict Risk

Clear blog-content niche with distinct blog-specific triggers; minimal overlap risk with other skills.

5 / 5

Total

19

/

20

Passed

Validation

87%

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

Validation14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

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

Warning

referenced_paths_exist

Referenced path issues: 10 missing

Warning

Total

14

/

16

Passed

Repository
AgriciDaniel/claude-blog
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.