Summarize or extract text/transcripts from URLs, podcasts, and local files (great fallback for “transcribe this YouTube/video”).
82
76%
Does it follow best practices?
Impact
100%
3.44xAverage score across 3 eval scenarios
Advisory
Suggest reviewing before use
Optimize this skill with Tessl
npx tessl skill review --optimize ./skills/summarize/SKILL.mdQuality
Discovery
64%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 does a good job including natural trigger terms that users would say (YouTube, transcribe, podcasts, summarize) and identifies the core capabilities. However, it lacks an explicit 'Use when...' clause, which limits its completeness score, and the actions described are somewhat general (summarize, extract) rather than listing multiple specific concrete operations.
Suggestions
Add an explicit 'Use when...' clause, e.g., 'Use when the user asks to summarize a URL, transcribe a podcast or video, or extract text from a local media file.'
List more specific concrete actions to improve specificity, e.g., 'Summarizes web pages, extracts transcripts from podcasts and YouTube videos, and converts local audio/video files to text.'
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Names the domain (URLs, podcasts, local files) and some actions (summarize, extract text/transcripts), but doesn't list comprehensive specific actions beyond summarize/extract. | 2 / 3 |
Completeness | The 'what' is reasonably clear (summarize/extract text from URLs, podcasts, files), but there is no explicit 'Use when...' clause. The parenthetical hint about YouTube/video fallback partially implies when, but doesn't constitute explicit trigger guidance. | 2 / 3 |
Trigger Term Quality | Includes strong natural trigger terms users would say: 'summarize', 'extract text', 'transcripts', 'URLs', 'podcasts', 'transcribe', 'YouTube', 'video', and 'local files'. Good coverage of common variations. | 3 / 3 |
Distinctiveness Conflict Risk | The combination of summarization + transcription + URLs/podcasts/files is somewhat distinctive, but 'summarize' and 'extract text' are broad enough to potentially overlap with general summarization or file-processing skills. The YouTube/podcast angle adds some distinctiveness. | 2 / 3 |
Total | 9 / 12 Passed |
Implementation
87%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This is a well-crafted, concise skill that provides immediately actionable CLI commands with clear trigger phrases and organized reference sections. Its main weakness is the lack of error handling or validation guidance for a tool that depends on external APIs and network connectivity. Overall it's a strong skill that efficiently communicates everything needed to use the summarize tool.
Suggestions
Add brief error handling guidance: what to do if the API key is missing, the URL is unreachable, or extraction returns empty content (e.g., fallback to --firecrawl).
Consider adding a note about verifying the tool is installed/available before first use (e.g., `which summarize` or installation path).
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The content is lean and efficient. It doesn't explain what summarization is or how CLI tools work. Every section earns its place—trigger phrases, quick start examples, flags, and config are all necessary reference material with no padding. | 3 / 3 |
Actionability | Provides fully executable, copy-paste-ready bash commands for all major use cases (URLs, local files, YouTube). Flags are listed concisely with their options, and config examples are concrete JSON. | 3 / 3 |
Workflow Clarity | The skill covers a relatively simple single-command tool, but the YouTube transcript workflow has a useful conditional ('if huge, summarize first then ask'). However, there's no guidance on error handling—what if the command fails, the API key is missing, or extraction returns empty content. For a tool that depends on external APIs and network requests, some validation/fallback guidance would strengthen this. | 2 / 3 |
Progressive Disclosure | For a skill under 50 lines with no need for external references, the content is well-organized into clearly labeled sections (trigger phrases, quick start, YouTube specifics, model/keys, flags, config). The structure supports quick scanning and discovery. | 3 / 3 |
Total | 11 / 12 Passed |
Validation
72%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 8 / 11 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
metadata_version | 'metadata.version' is missing | Warning |
metadata_field | 'metadata' should map string keys to string values | Warning |
frontmatter_unknown_keys | Unknown frontmatter key(s) found; consider removing or moving to metadata | Warning |
Total | 8 / 11 Passed | |
4467e04
Table of Contents
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.