CtrlK
BlogDocsLog inGet started
Tessl Logo

summarize

Summarize or extract text/transcripts from URLs, podcasts, and local files (great fallback for “transcribe this YouTube/video”).

64

Quality

79%

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

Fix and improve this skill with Tessl

tessl review fix ./bot/workspace/skills/summarize/SKILL.md

The canonical home for this skill is summarize in HKUDS/nanobot

SKILL.md
Quality
Evals
Security

Quality

Content

92%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 an exemplary short CLI-skill reference: fully executable commands, a useful summary-vs-transcript decision rule, and tight section organization with no filler. The only notable weakness is the repeated, version-sensitive default model id, which is both a minor token cost and a staleness risk.

DimensionReasoningScore

Conciseness

The body is lean and assumes competence — no concept explanations, no padding — matching anchor 4 ('efficient; minor instances that could be trimmed'). It is not 5 because the version-locked model id "google/gemini-3-flash-preview" is time-sensitive and repeated three times across the quick start and model section; per the guidelines, time-sensitive version information penalizes conciseness unless isolated in a deprecated section.

4 / 5

Actionability

The quick start gives copy-paste-ready commands covering the three common cases (URL, local file, YouTube), plus a concrete extract-only example and a flag list with exact syntax — matching anchor 5 ('fully executable; copy-paste ready; specific examples cover the common cases').

5 / 5

Workflow Clarity

This is a simple, single-purpose skill whose single action is unambiguous (run the CLI with the right flags), so per the scoring notes it can score 5 without a multi-step workflow. It even adds decision guidance: summary vs transcript, and the escalation rule "If the user asked for a transcript but it's huge, return a tight summary first, then ask which section/time range to expand."

5 / 5

Progressive Disclosure

The skill is under 50 lines, has no bundle files (references/scripts/assets are absent and none are needed), and is organized into clearly labeled sections (trigger phrases, quick start, summary vs transcript, model+keys, flags, config) — matching the guideline that short, self-contained, well-organized skills score 5 on progressive disclosure.

5 / 5

Total

19

/

20

Passed

Description

66%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 specific, natural-sounding, and distinct, with a clear statement of what the skill does. Its main weakness is the absence of an explicit 'Use when...' trigger clause, leaving the 'when' only weakly implied and capping completeness at 3.

Suggestions

Append an explicit trigger clause, e.g. "Use when the user asks to summarize a link/article, extract text from a URL or local file, or transcribe a YouTube/video."

Add a few natural synonyms users would say — "article", "transcript", ".pdf" — to strengthen trigger term coverage.

Briefly surface one or two distinctive capabilities (e.g. machine-readable --json output or length control) to differentiate from generic summarization skills.

DimensionReasoningScore

Specificity

"Summarize or extract text/transcripts from URLs, podcasts, and local files" names the domain and several concrete actions (summarize, extract text, extract transcripts, YouTube fallback), matching anchor 4 ('lists several specific actions; minor gaps'). It is not 5 because coverage is not comprehensive (capabilities like length control, JSON output, or config are absent), and not 3 because it goes beyond 1-2 actions.

4 / 5

Completeness

The 'what' is clear (summarize/extract text and transcripts from URLs, podcasts, local files), but there is no 'Use when...' clause or equivalent explicit trigger guidance — the "(great fallback for 'transcribe this YouTube/video')" parenthetical only weakly implies when. Per the judging guideline, a missing explicit trigger clause caps completeness at 3.

3 / 5

Trigger Term Quality

Natural phrases users would say are present: "summarize", "transcribe this YouTube/video", "URLs", "podcasts", "local files" — matching anchor 4 ('good keyword coverage; a few natural terms missing'). It falls short of anchor 5 because common synonyms and extensions like "article", "transcript", or ".pdf" are absent, and exceeds anchor 3 because the quoted fallback phrase is exactly what a user would say.

4 / 5

Distinctiveness Conflict Risk

The description carves a distinct niche (CLI summarization/transcript extraction with a YouTube/video transcription fallback), matching anchor 4 ('mostly distinct; minor overlap risk'). It is not 5 because "summarize ... URLs" could still overlap with other general summarization or content-extraction skills, and not 3 because the YouTube-transcript fallback trigger is quite specific.

4 / 5

Total

15

/

20

Passed

Validation

81%

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

Validation — 13 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

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

13

/

16

Passed

Repository
volcengine/OpenViking
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.