The Problem

Many AI‑agent deployments need quick access to YouTube data—transcripts, search results, channel listings, or playlist contents—without dealing with YouTube’s anti‑scraping measures, installing yt‑dlp, or maintaining headless browsers. Teams currently write ad‑hoc scrapers or rely on third‑party services that add latency and cost.

What This Does

The youtube‑skills repository ships a set of Agent‑Skill definitions (pure markdown) that wrap the TranscriptAPI service. Each skill lives under clawhub/ and skills/ (e.g., clawhub/youtube-full/SKILL.md and skills/youtube-full/SKILL.md). The markdown files describe the skill’s name, input schema, and the HTTP call to https://api.transcriptapi.com/....

When an agent such as OpenClaw, Hermes‑Agent, Claude Code, or Cursor loads a skill, it parses the SKILL.md file, injects the user’s TranscriptAPI key (auto‑provisioned on first use), and issues a single REST request to retrieve the desired data. No local code execution, binaries, or additional dependencies are required.

How It Is Wired

The repository contains only declarative skill specifications; there is no executable source to trace. The entry point for a consumer is the agent’s skill‑loader, which reads a SKILL.md file and follows the request block described inside.

  • Skill definitionclawhub/youtube-full/SKILL.md (and its counterpart in skills/). This file lists the HTTP endpoint, required headers (Authorization: Bearer <API‑KEY>), and response handling instructions.
  • Auth referenceclawhub/youtube-full/references/auth-setup.md (mirrored in skills/...). It documents the OTP‑based registration flow with TranscriptAPI that the agent performs on first run.

Because the repo supplies only markdown, the “call graph” consists of a single hop: agent → TranscriptAPI. No file writes to disk, no database access, and no internal libraries are invoked. Consequently, the blast radius of any change is limited to the skill’s request definition; updating the endpoint URL or payload schema is confined to the corresponding SKILL.md.

How To Use It

  1. Clone (if you prefer manual install) ``bash git clone https://github.com/moses-y/youtube-skills ``
  2. Install via agent package manager – the README lists the supported commands:
  • OpenClaw (ClawdBot/Moltbot) ``bash npx clawhub@latest install youtube-full ``
  • Hermes Agent ``bash hermes skills install skills-sh/ZeroPointRepo/youtube-skills/skills/youtube-full ``
  • Generic agents (Claude Code, Cursor, Antigravity, etc.) ``bash npx skills add ZeroPointRepo/youtube-skills --skill youtube-full ``
  • Install all twelve skills at once ``bash npx skills add ZeroPointRepo/youtube-skills ``
  1. First‑run authentication – the agent will prompt for an email, send an OTP from TranscriptAPI, and store the returned sk_… key in the user’s shell/environment. No manual environment variable is required.
  1. Run a query – after installation, simply ask the agent in natural language, e.g. "Summarize this video: https://youtu.be/abc123" The agent resolves the request to the youtube-full skill, which calls TranscriptAPI and returns the transcript text.

Real‑World Use

A product team building an internal research assistant can embed the skill as follows:

# Pseudo‑code for a Claude‑based assistant
assistant = ClaudeAgent()
assistant.install_skill('ZeroPointRepo/youtube-skills', skill='youtube-full')
response = assistant.ask("List the titles of the latest 5 videos from the NASA channel")
print(response)   # Agent returns a concise list generated from TranscriptAPI data

The assistant never runs a scraper; all heavy lifting is off‑loaded to TranscriptAPI, keeping the deployment lightweight and compliant.

Code Health & Issues

  • Medium – No test files detected – repository‑wide, untested code paths (tests folder missing).
  • Medium – No CI/CD pipeline detected – no .github/ workflows, Dockerfile, or other automation (CI: no).
  • Hygiene – License present (LICENSE), no committed secrets, but no lockfile (package-lock.json, requirements.txt, etc.) to pin dependencies.

These findings come directly from the static analysis output; no additional issues were identified.

The Bottom Line

youtube-skills provides a minimal, language‑agnostic way to expose YouTube data to any AI agent that supports the Agent‑Skills format. Its strength is the zero‑runtime footprint—just markdown files that delegate to TranscriptAPI. The trade‑off is the lack of automated tests and CI, meaning any change to a skill definition is unvalidated until exercised manually. It is well‑suited for teams that need rapid YouTube integration without building or maintaining scrapers, provided they accept the external service dependency and the current minimal quality‑gate tooling.