Przejdź do treści
Biblioteka skilli
Produktywność osobista · Konwersja i formaty

youtube-transcript

/youtube-transcript

Pobiera transkrypcję filmu YouTube jako zwykły tekst ze znacznikami czasu, skryptem Pythona bez zewnętrznych zależności, także z chmury.

Repozytorium
agent-skills ↗
Licencja
MIT
Ostatnia zmiana repozytorium
27.10.2026

Ocena i bezpieczeństwo

100/ 100Klasa: dobry
Format25 / 25
Frontmatter z nazwą i opisem, poprawna nazwa, opis do 1024 znaków, nazwa zgodna z folderem.
Odkrywalność25 / 25
Opis mówi, kiedy użyć skilla, ma sensowną długość i jest w 3. osobie.
Treść35 / 35
Co najmniej 150 słów i do 500 linii, nagłówki, listy kroków, przykłady albo kod.
Higiena15 / 15
Bez zaślepek typu TODO, bez ścieżek Windows, z licencją.
Ryzykobrak sygnałów w skanie
Pliki w paczce
3
Skrypty
1
Komentarze HTML
0
Adresy URL w SKILL.md
3
Przestarzałość

Brak sygnałów. Repozytorium zmienione 27.10.2026, bez odwołań do wycofanych modeli i API.

Licencja

MIT, otwarta: można używać i zmieniać, z zachowaniem informacji o autorze.

Co sprawdzić przed instalacją
  • 1 skrypt w paczce. Przejrzyj je przed instalacją, bo Claude może je uruchomić.

Skrypty: scripts/yt_transcript.py

Co robi i kiedy

Pobiera transkrypcję filmu YouTube jako zwykły tekst ze znacznikami czasu, skryptem Pythona bez zewnętrznych zależności, także z chmury.

Wyzwalacze z opisu

transcriptsummarise this video
Oryginalny opis (EN)

Fetches a YouTube video's transcript as plain text (optional [mm:ss] timestamps) with a stdlib-only Python script that works from cloud IPs where yt-dlp and youtube-transcript-api are blocked. Use before summarising or quoting a video; triggers on a youtube.com / youtu.be link plus "transcript", "summarise this video", or "/youtube-transcript".

Jak działa

  1. Procedure
  2. When it fails
Sekcje z nagłówków SKILL.md, w oryginale · 46 linii, 402 słów
Podgląd SKILL.md
---
name: youtube-transcript
description: >
  Fetches a YouTube video's transcript as plain text (optional [mm:ss] timestamps) with a stdlib-only Python script that works from cloud IPs where yt-dlp and youtube-transcript-api are blocked.
  Use before summarising or quoting a video; triggers on a youtube.com / youtu.be link plus "transcript", "summarise this video", or "/youtube-transcript".
disable-model-invocation: false
license: MIT
metadata:
  author: mthines
  version: '1.0.0'
  workflow_type: applied
  tags:
    - youtube
    - transcript
    - captions
    - research
---

# YouTube Transcript

Gets a YouTube video's captions as text in one command.
Why the script takes this route, and what fails instead: [`references/why-innertube.md`](./references/why-innertube.md).

## Procedure

1. Run the script with the URL or the 11-character video id:

   ```bash
   python3 -I <skill_dir>/scripts/yt_transcript.py "<url-or-id>" > transcript.txt
   ```

   - `--lang <code>` picks the caption language (default `en`).
     It prefers a human-made track and falls back to an auto-generated (`asr`) one, then to any track.
   - `--timestamps` emits one `[mm:ss] text` line per caption instead of one paragraph.
   - stderr carries `# <title> [<lang>, <manual|asr>]`; stdout carries only the transcript.
2. Read `transcript.txt` from disk.
   Never paste a long transcript back to the user verbatim: summarise or quote short passages.
3. Tell the user when the track is `asr`: auto-captions mishear names and jargon, so quote them with that caveat.

```bash
# ✓ Right — one call, output to a file
python3 -I scripts/yt_transcript.py "https://youtu.be/J9NQTYUP6k0" --timestamps > transcript.txt

# ✗ Wrong — these are bot-blocked from cloud IPs; do not try them first
pip install youtube-transcript-api && youtube_transcript_api J9NQTYUP6k0
yt-dlp --write-auto-subs --skip-download "https://youtu.be/J9NQTYUP6k0"
```

## When it fails

| Exit message contains | Do this |
| --- | --- |
| `LOGIN_REQUIRED` / `not a bot` on both clients | Bump `clientVersion` and the matching `User-Agent` for `ANDROID` and `IOS` in `CLIENTS` to the current app versions, then retry once |
| `HTTP 429` | Wait a minute and retry once; the IP is rate-limited |
| any other `HTTP <code>` or `network error` | Retry once; if it repeats, the host is unreachable from this session — report it verbatim |
| `unreadable caption track` or `unexpected response` | Retry once; if it repeats, YouTube is serving a block page to this IP — treat it as unobtainable (below). The video may still have captions, so never say it has none |
| `UNPLAYABLE` / `ERROR` with a reason | The video is private, removed, or age/region-restricted; report the reason to the user |
| `no captions` | The video has no caption tracks; say so — do not invent content |

If it still fails, tell the user the transcript is unobtainable from this IP.
Offer three ways forward: run the script on a residential IP (a local machine), set a proxy, or paste the transcript from YouTube's "Show transcript" panel.
The video title is always available without a block from `https://www.youtube.com/oembed?url=<url>&format=json`.
Pliki w paczce (3)
  • SKILL.md 3 KB
  • references/why-innertube.md 2 KB
  • scripts/yt_transcript.py 5 KB

Wersje

RepozytoriumWynikLicencja
Ta strona · mthines/agent-skills100MIT
tubeagentkit/youtube-transcript-skills100MIT
davepoon/buildwithclaude100MIT
glebis/claude-skills100MIT
mkurman/zorai100MIT
qa-aman/claude-skills100MIT
browser-act/skills100MIT
adilkalam/orca100MIT
sideshowroberto/vfx-agent-toolkit91MIT

Migawka bazy z 28.10.2026 · wersja paczki 538c40bcde38 (skrót SHA-256 całej paczki)

Pobrania w ostatnich 30 dniach: 0 · ranking

Zgłoś problem z tym skillem: szkodliwa treść, błędny opis albo prośba autora o usunięcie.

Podobne skille

  • 100youtube-download
    Pobiera transkrypcję, metadane, rozdziały i slajdy z filmu YouTube przez sesję przeglądarki gstack, do dalszej pracy.
  • 100watch
    Pobiera transkrypcje filmów YouTube przez yt-dlp i przekazuje je do nauki, gdy użytkownik podaje link.
  • 100ytapi-youtube-transcript
    Pobiera transkrypcję, napisy lub podpisy filmu YouTube w różnych formatach i językach, także gdy yt-dlp zawodzi z powodu blokad.
  • 100ingest-youtube
    Pobiera transkrypcję lub streszczenie filmu, kanału albo podcastu z YouTube do vaulta, by treść trafiła do grafu wiedzy.
  • 100youtube-transcribe-skill
    Wyciąga napisy lub transkrypcję z adresu YouTube i zapisuje lokalnie znormalizowany tekst ze znacznikami czasu.
  • 84youtube-content
    Pobiera transkrypcję filmu z YouTube i zamienia ją w rozdziały, podsumowania, wątki lub wpisy na blog.

Uwagi i zgłoszenia

Wiadomość trafi do Bartosza Sokolińskiego. Adres e-mail jest potrzebny tylko do odpowiedzi. Szczegóły w polityce prywatności.