CtrlK
BlogDocsLog inGet started
Tessl Logo

youtube-apify-transcript

Fetch YouTube transcripts via APIFY API. Works from cloud IPs (Hetzner, AWS, etc.) by bypassing YouTube's bot detection. Free tier includes $5/month credits (~714 videos). No credit card required.

54

Quality

68%

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 ./skills/research-tools/capabilities/youtube-apify-transcript/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

68%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 content is highly actionable — every operation has a copy-paste-ready command, and setup is a concrete numbered procedure — with a well-organized section structure and a real, correctly referenced script. Weaknesses are promotional padding and volatile pricing figures that waste tokens, and the absence of validation or error-recovery steps for batch operations, which caps workflow clarity at 3.

Suggestions

Remove marketing asides ("Perfect for personal use", "(less than 1 cent!)", "(FREE!)") and either drop or clearly date the pricing figures ($0.007/video, $5/month) since they are time-sensitive and will drift.

Add validation guidance for batch mode: how to check per-video results in batch output, what happens when one URL fails, and how to retry just the failures.

Expand the Error Handling section from a bare list of handled errors into brief recovery actions (e.g., what the script exits with and what to do about quota exhaustion or missing transcripts).

DimensionReasoningScore

Conciseness

The body is command-driven and mostly lean, but contains marketing padding ("Perfect for personal use", "(less than 1 cent!)", "Caching (saves money!)", "(FREE!)") and time-sensitive pricing ($0.007 per video, $5/month credits) presented outside any deprecated/old-patterns section. This fits anchor 3 (mostly efficient but with some unnecessary content that could be tightened); not 4 because the promotional asides and volatile pricing figures are clearly trimmable.

3 / 5

Actionability

Every section gives copy-paste-ready, executable commands covering the common cases: setup with exact URLs and env-var syntax, basic usage with both URL forms, options (--output, --json, --lang), cache management, and batch mode with a heredoc creating the URL file. This matches anchor 5 (fully executable, specific examples covering common cases); it is not 4 because there are no meaningful gaps in the concrete guidance.

5 / 5

Workflow Clarity

The setup→usage sequence is clear, but the skill includes batch operations (--batch urls.txt) and cache-clearing with no validation or verification steps (e.g., checking batch results for partial failures or confirming cache behavior), which caps workflow clarity at 3 per the judging guidelines. The Error Handling section only lists handled errors ("Invalid YouTube URL", "Video has no transcript", "API quota exceeded", "Network errors") without any recovery guidance, which also fits anchor 3 (sequence present but checkpoints missing).

3 / 5

Progressive Disclosure

The body is well-organized into clear sections (Why APIFY?, Free Tier, Cost, Links, Setup, Usage, APIFY Actor Input, Error Handling) and the single bundle file is a real, correctly-pathed one-level reference (scripts/fetch_transcript.py, verified to exist). This matches anchor 4 (good structure, most content appropriately placed, references clear, minor gaps); not 5 because at 164 lines with a detailed Actor input/output field reference, some content (e.g., the APIFY actor I/O schema and output format examples) could be split into a reference file, and the script's options are only documented in the body rather than via a help reference.

4 / 5

Total

15

/

20

Passed

Description

53%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 communicates a clear, concrete purpose and a distinctive niche (APIFY-based transcript fetching that works from cloud IPs), but it reads more like a product pitch (pricing, free tier, no credit card) than a skill trigger. It lacks any "use when" guidance and misses natural synonyms like captions or subtitles, capping both completeness and trigger quality at 3.

Suggestions

Add an explicit trigger clause, e.g. "Use when the user asks for a transcript, captions, or subtitles of a YouTube video, or when direct transcript fetching fails from cloud IPs."

Include natural synonyms users actually say — "captions", "subtitles", "YouTube video transcript" — to improve trigger term coverage.

Trim pricing/account details ("Free tier includes $5/month credits (~714 videos). No credit card required.") from the description or compress them, and instead mention capability variations (JSON output with timestamps, batch mode, local caching).

DimensionReasoningScore

Specificity

One concrete action is stated ("Fetch YouTube transcripts via APIFY API"), but the rest of the description covers infrastructure constraints ("Works from cloud IPs (Hetzner, AWS, etc.) by bypassing YouTube's bot detection") and pricing rather than additional capabilities like JSON output, batch mode, or caching. This matches anchor 3 (domain plus 1-2 concrete actions, not comprehensive); it is not 4 because no list of several specific actions is given, and not 2 because the core action is concrete rather than generic.

3 / 5

Completeness

The "what" is clear ("Fetch YouTube transcripts via APIFY API"), but there is no "Use when..." clause or equivalent trigger guidance anywhere, which caps completeness at 3 per the judging guidelines. It is not 4 because the "when" is entirely absent rather than just imprecise, and not 2 because the "what" is concrete and specific.

3 / 5

Trigger Term Quality

Natural phrases like "YouTube transcripts" and "transcripts" are present, but common user synonyms such as "captions", "subtitles", or "video transcript" are missing, and terms like "cloud IPs" and "bot detection" are technical jargon users would rarely say when needing this skill. This fits anchor 3 (some relevant keywords but missing common variations); not 4 because keyword coverage has clear gaps.

3 / 5

Distinctiveness Conflict Risk

The niche is fairly clear — YouTube transcripts specifically, via the APIFY service — so it would rarely be confused with unrelated skills, matching anchor 4 (mostly distinct, minor overlap risk). It is not 5 because without explicit trigger guidance it could overlap with a generic YouTube/transcript-fetching skill, and "transcripts" alone is a moderately broad trigger.

4 / 5

Total

13

/

20

Passed

Validation

93%

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

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

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

Warning

Total

15

/

16

Passed

Repository
gooseworks-ai/goose-skills
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.