Summarize or extract text/transcripts from URLs, podcasts, and local files (great fallback for “transcribe this YouTube/video”).
79
76%
Does it follow best practices?
Impact
87%
2.63xAverage score across 3 eval scenarios
Advisory
Suggest reviewing before use
Optimize this skill with Tessl
npx tessl skill review --optimize ./nanobot/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 has good trigger term coverage with natural keywords users would use (transcribe, YouTube, podcasts, summarize), but lacks an explicit 'Use when...' clause which limits its completeness. The scope is moderately specific but could overlap with web scraping or general file processing skills.
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 media file.'
Clarify the distinct niche more precisely—specify supported file types or formats to reduce overlap with general file-processing or web-scraping skills.
| 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 serves as a partial trigger guide but doesn't constitute explicit 'when' guidance, capping this at 2. | 2 / 3 |
Trigger Term Quality | Includes strong natural trigger terms users would say: 'summarize', 'extract text', 'transcripts', 'URLs', 'podcasts', 'YouTube', 'video', 'transcribe'. Good coverage of common variations including the parenthetical fallback note. | 3 / 3 |
Distinctiveness Conflict Risk | The combination of URLs, podcasts, and transcripts gives it some distinctiveness, but 'extract text from URLs' and 'local files' could overlap with general web scraping or file processing skills. The YouTube/video fallback note helps but the scope is still somewhat broad. | 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. Its main weakness is the lack of error handling or troubleshooting guidance for a tool that depends on multiple external API keys and fallback services. The organization and token efficiency are excellent.
Suggestions
Add a brief troubleshooting or error handling note (e.g., what to do if API key is missing, if YouTube extraction fails, or if the command returns an error).
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The content is lean and efficient. It doesn't explain what summarization is or how CLI tools work. Every section serves a purpose—trigger phrases, quick start examples, flags, and config. No unnecessary 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 task (running a CLI command), but the YouTube transcript workflow has a useful conditional ('if huge, summarize first then ask'), which is good. However, there's no error handling guidance—what happens if the command fails, if API keys are missing, or if YouTube extraction doesn't work. For a tool that depends on external APIs and has fallback mechanisms, some validation/error recovery guidance would be valuable. | 2 / 3 |
Progressive Disclosure | For a simple CLI skill under 50 lines with no bundle files, the content is well-organized into logical sections (trigger phrases, quick start, YouTube specifics, model/keys, flags, config). No external references are needed and the structure supports easy scanning. | 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 | |
2666582
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.