skilljar-transcripts
Skill0 starsChanged 4 months agoMITView on GitHub
Dirige por linguagem natural a CLI local do Anthropic Skilljar (anthropic-skilljar-cli) para navegar cursos e baixar os transcripts das aulas em vídeo (.srt + .txt). Resolve nomes soltos de curso/aula para os slugs/ids certos, garante o login e roda o comando certo (courses/lessons/transcript/export). Use quando o usuário quiser, sobre o Skilljar/Anthropic Academy/Anthropic Learn: "lista os cursos do skilljar", "quais aulas tem o curso de API", "pega/baixa o transcript da aula X", "exporta os transcripts do curso Y", "legenda da aula ... em português", "transcreve o curso claude 101", "quero o texto daquela aula em vídeo". Gatilhos: /skilljar, "skilljar", "transcript/legenda de aula", "exportar/transcrever curso", "aulas do skilljar".
- Installs packages
In this repository17 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- agent-skills-and-subagentsSkill
- anthropic-api-handbookSkill
- app-to-cliSkill
- claude-code-handbookSkill
- docs-to-skillSkill
- install-skillSkill
- mcp-handbookSkill
- session-handoffSkill
- site-endpoint-scanSkill
- site-to-cliSkill
- skill-evalSkill
- skill-lintSkill
- skill-prospectorSkill
- skill-scoutSkill
- ui-reskinSkill
- video-curriculumSkill
The file
We split this skill into the rules it gives an agent
1 rule. About 0 are common, 0 are distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈0
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 61
Default en. Se o usuário pedir português (ou o pedido estiver em PT e ele quiser legenda PT), passe --lang pt.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
/skilljar — transcripts do Anthropic Skilljar por linguagem natural
Você traduz um pedido em linguagem natural ($ARGUMENTS + a mensagem) num comando da CLI local e
reporta o resultado. Você não reescreve a lógica — apenas resolve nomes→slugs/ids, garante o
login e invoca a CLI.
A CLI
Fica em <caminho-para>/anthropic-skilljar-cli/cli/cli.mjs. Invoque sempre por caminho
absoluto (a saída cai sempre em …\cli\transcripts\, independente do cwd):
node "<caminho-para>/anthropic-skilljar-cli/cli/cli.mjs" <comando> [args] [--flags]Comandos: auth · login · courses · lessons <slug> · transcript <slug/id> · export <slug>.
Flags: --lang en|pt|es|fr|de|ja|ko (default en) · --out <dir> · --limit N (export) ·
--all (export inclui quizzes) · --json (saída estruturada — use sempre que for parsear).
JW Player não precisa de nada extra; cursos no YouTube precisam do
yt-dlp(pip install yt-dlp).
Sempre faça primeiro: garantir o login
- Rode
… auth --json. Seok:true, siga. Se não: - Rode
… loginem background (run_in_background) — abre um browser. Diga ao usuário: "Abri o login do Skilljar — faça login na janela; eu detecto e sigo sozinho." Espere a tarefa de background concluir (a CLI detecta e salva a sessão), então prossiga. Não fique perguntando.
Resolver nomes soltos → slug/id
O usuário fala "o curso de API", "claude 101", "a aula de tool use". Resolva antes de agir:
- Curso → slug: rode
… courses --json, case o texto do usuário contratitle/slug(case-insensitive, sem acento). Ex.: "curso de API"/"building with the api" →claude-with-the-anthropic-api; "claude 101" →claude-101. Se houver 2+ candidatos plausíveis, pergunte comAskUserQuestion. - Aula → id: rode
… lessons <slug> --json, case contratitle. Use oidnotranscript. Se o usuário deu um número que já parece id, use direto (transcript <slug>/<id>).
Mapa de intenção → comando
| O usuário quer… | Faça |
| listar/ver os cursos | … courses (sem --json p/ mostrar bonito ao humano) |
| ver as aulas de um curso | resolve slug → … lessons <slug> |
| transcript de uma aula | resolve slug + id → … transcript <slug>/<id> [--lang …] |
| baixar/exportar o curso inteiro | resolve slug → … export <slug> [--lang …] |
| "só algumas pra testar" | … export <slug> --limit N |
| em português / outro idioma | acrescente --lang pt (etc.) |
Idioma
Default en. Se o usuário pedir português (ou o pedido estiver em PT e ele quiser legenda PT),
passe --lang pt. JW Player tem 7 idiomas; YouTube depende das captions do vídeo.
Reportar o resultado
transcript: confirme o título, provedor e os caminhos.srt/.txt. Se ele quiser o conteúdo, leia o.txte mostre (ou um resumo, se ele pediu resumo).export: ao terminar, leia…\cli\transcripts\<slug>\_index.jsone resuma: quantasok, quantasno-video/no-caption, e onde ficaram os arquivos.- Avise sobre tempo:
exportabre cada aula em browser headless (~10–15 s/aula); para cursos grandes (ex.: 74 vídeos) sugira--limitpara amostrar ou confirme antes de rodar o curso todo.
Edge cases
- Aula sem vídeo (texto/quiz): a CLI reporta
no-video— diga isso, não trate como erro. - YouTube sem
yt-dlp: saino-captioncom motivo "yt-dlp ausente" → sugirapip install yt-dlp. - Sessão expirada no meio: rode
loginde novo (fluxo acima). --jsonpara parsear, saída humana (sem--json) só quando for mostrar direto ao usuário.- Detalhes da CLI estão no
README.mdao lado dela — leia sob demanda se precisar.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

