CtrlK
BlogDocsLog inGet started
Tessl Logo

blog-audio

Generate audio narration of blog posts using Google Gemini TTS. Supports summary narration, full article read-aloud, and two-speaker podcast/dialogue mode with 30 voice options. Outputs MP3 with HTML5 audio embed code. Works standalone via /blog audio or internally from blog-write. Falls back gracefully when API key is not configured. Use when user says "blog audio", "narrate blog", "audio version", "text to speech", "tts", "podcast mode", "read aloud", "audio narration", "voice", "narration", "generate audio".

71

Quality

88%

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

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

The body is a well-structured, actionable guide with a clear workflow and validation gates, but it is undermined by missing bundle files: the referenced scripts and references/voices.md are absent, so commands cannot run and the progressive-disclosure pointer is broken.

Suggestions

Ship the referenced scripts (scripts/run.py and scripts/generate_audio.py) so the documented commands are actually executable, or replace script invocation details with a note describing how to obtain them.

Provide references/voices.md (the file the body tells Claude to load on-demand) so the one-level reference resolves instead of dangling.

Move the inline voice-recommendation list into references/voices.md and keep only the top picks in the body to tighten conciseness and complete the progressive-disclosure split.

DimensionReasoningScore

Conciseness

Mostly efficient with well-organized tables and copy-paste blocks, but a few sections carry light over-explanation (e.g., "Write as natural speech, not written text", verbose voice recommendation list) that could be trimmed; sits noticeably above the midpoint anchor.

4 / 5

Actionability

Provides concrete, fully-formed commands with real flags (--voice Charon --model flash --json) and an error-resolution table, but the referenced scripts (scripts/run.py, scripts/generate_audio.py) are not present in the bundle, so the commands are not executable as shipped — a gap below the copy-paste-ready level 5.

4 / 5

Workflow Clarity

Clear six-step generation sequence with explicit validation checkpoints (API-key gate pattern, dry-run verification, error-handling table with feedback loops for recovery), matching the level-5 anchor.

5 / 5

Progressive Disclosure

Structure is present and references are signaled ("Load on-demand" voices.md), but the referenced references/voices.md does not exist in the bundle and the voice catalog content is partly inlined in the body, leaving organization only moderately effective.

3 / 5

Total

16

/

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.

The description is exemplary: it states concrete capabilities, output format, integration behavior, and graceful fallback, then supplies a rich set of natural trigger phrases. It clearly answers both what the skill does and when to invoke it.

DimensionReasoningScore

Specificity

Lists multiple concrete actions ("Generate audio narration", "summary narration, full article read-aloud, and two-speaker podcast/dialogue mode", "Outputs MP3 with HTML5 audio embed code", "Falls back gracefully") with comprehensive coverage, matching the level-5 anchor.

5 / 5

Completeness

Explicitly answers both "what" (narration modes, MP3/HTML5 embed output, Gemini TTS) and "when" with concrete trigger phrases, matching the level-5 anchor exactly.

5 / 5

Trigger Term Quality

Provides a "Use when user says" clause with eleven natural trigger phrases including synonyms ("blog audio", "narrate blog", "tts", "podcast mode", "read aloud", "voice", "narration", "generate audio"), matching the comprehensive coverage anchor.

5 / 5

Distinctiveness Conflict Risk

Occupies a clear niche (blog-post TTS narration via Gemini) with distinct, specific triggers and a named integration (blog-write), giving minimal conflict risk with other skills.

5 / 5

Total

20

/

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: 7 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.