YouTube Transcript v4.0.0
O runtime primário do produto completo é o plugin Obsidian youtube-note-reader. Ele gerencia a máquina de estados determinística, chama o modelo compatível com OpenAI configurado, executa estes scripts, persiste o estado da tarefa e escreve a nota finalizada no Vault ativo. A extensão do Chrome fornece apenas a URL atual do vídeo e o Cookie do navegador. O OpenCode continua sendo um ponto de entrada Skill opcional e não é necessário para a instalação completa do navegador + Obsidian.
Use esta Skill como uma máquina de estados estrita. Não improvise caminhos de extração alternativos.
Versão
Quando o usuário perguntar pela versão atual, execute:
python .obsidian/skills/youtube-transcript/scripts/video_note.py --version
Retorne a saída do comando. Nunca responda de memória. Ele reporta a versão instalada, o caminho de origem e os valores SHA-256 dos arquivos principais.
Fluxo de trabalho fixo
Para cada URL, complete os passos seguintes antes de passar para a próxima URL. Pare todo o lote no primeiro resultado de script não-zero.
- Extrair material de origem:
python .obsidian/skills/youtube-transcript/scripts/extract_transcript.py "<url>" --output-dir "YouTube video" --deadline 300
- Ler a nota gerada e seu SRT. Criar um plano JSON com
article_outlineeframes.article_outlinecontém 3-8 capítulos derivados da transcrição; todo item temsection_id,title,start,end,core_claimselearning_goal. Escolher quadros pelo valor de aprendizado, normalmente um quadro obrigatório para cada capítulo visualmente significativo, mais evidências opcionais para etapas ou resultados distintos. A maioria dos vídeos precisa de 6 a 14 quadros; 24 é apenas o limite máximo de segurança, nunca uma meta. Não crie múltiplos pontos no tempo quase idênticos apenas para aumentar a contagem. Todo quadro temsection_id,timestamp,purposeerequired. Use o mesmosection_idpara vincular cada captura de tela ao seu capítulo de resumo detalhado. Não renomeie ou reescreva a nota ainda. Não escreva scripts de sonda ou inspecione formatos de vídeo manualmente. - Extrair os quadros planejados exatamente uma vez. Após um resultado bem-sucedido de materiais, este é o único próximo comando executável permitido:
python .obsidian/skills/youtube-transcript/scripts/extract_frames.py "<url>" --plan "<plan.json>" --note "<generated-note.md>" --output-dir "YouTube video" --deadline 120
- Confirmar que o resultado do quadro tem
status: ok, pelo menos uma captura de tela e um caminhomanifestreal. O script escreve automaticamenteframe_manifestno YAML da nota. Se algum destes estiver faltando, pare; não escreva a nota final e não substitua a capa. - Renomear e reescrever a nota gerada no local de acordo com references/note-contract.md. Em
## 详细内容总结, use cadaarticle_outline.titlecomo um cabeçalho###exato, explique suas afirmações principais e insira cada quadro obrigatório bem-sucedido em seu capítulo correspondente com uma explicação em chinês. Para capturas de tela locais do vault, use sempre embeds wiki do Obsidian como![[YouTube video/assets/VIDEO_ID/frame.jpg]]; nunca use um alvo Markdown não escapado contendo espaços. Apenas imagens listadas no manifesto contam como capturas de tela. - Validar:
python .obsidian/skills/youtube-transcript/scripts/validate_note.py "<finished-note.md>"
- Se a validação falhar, edite apenas essa nota uma vez e execute o validador mais uma vez. Nunca execute extração, escreva scripts temporários, inspecione código de implementação ou diagnostique comportamento da plataforma durante este reparo. Se ainda falhar, pare e reporte os erros retornados. Após uma validação bem-sucedida, o validador remove apenas rascunhos Markdown
待命名 - ...na mesma pasta cujo YAMLurlcorresponda exatamente à nota final; rascunhos incompletos não correspondentes permanecem disponíveis para retomada.
Política de falha
PIPELINE_RESULT é a fonte da verdade. Em status: error, pare imediatamente e reporte a URL, estágio, código, mensagem, ação, URLs concluídas e URLs não iniciadas.
Nunca responda a uma falha executando outro downloader, um navegador, Puppeteer, extração de cookies do Chrome/Edge, uma pesquisa na web, uma gravação de áudio ou uma segunda tentativa. A única nova tentativa controlada está dentro dos scripts: uma última verificação de Cookie conhecida como boa e uma atualização da URL do fluxo de vídeo durante a extração de quadros direcionada.
O ASR está desabilitado por padrão. Use --allow-asr apenas se o usuário aceitar explicitamente o download de áudio e processamento mais lento.
Requisitos visuais
- Capturas de tela são evidências, não decoração.
- Use demonstrações, interfaces, diagramas, parâmetros, estados de comparação e resultados.
- O script de quadro primeiro usa um fluxo remoto 720p ou inferior com cabeçalhos de requisição yt-dlp. Se a busca remota falhar, ele pode baixar apenas um segmento limitado de 8 segundos em torno de cada ponto no tempo planejado. Segmentos temporários são excluídos imediatamente e um vídeo completo nunca é baixado para capturas de tela.
- A falha de um quadro obrigatório ou menos de 70% de cobertura do plano de quadros é uma falha grave.
- Uma capa, miniatura, imagem copiada manualmente ou embed duplicado nunca conta como um quadro-chave.
- Mantenha os quadros planejados mesmo quando seus layouts gerais parecerem semelhantes. Texto de terminal, código, slides e mudanças de estado da interface são úteis. Rejeite apenas quadros efetivamente em branco preto/branco; não use OCR, análise de imagem por IA ou filtragem de duplicatas perceptuais.
- Nunca afirme conclusão a menos que
frame_manifestexista e todo quadro obrigatório do manifesto apareça em## 详细内容总结. - Não crie arquivos Canvas.
Requisitos da nota final
- Nome do arquivo:
中文标题 - English Title. - YAML contém
skill_version: 4.0.0,quality_profile_version: 1e umframe_manifestválido escrito porextract_frames.py. - O corpo começa em
## 一句话摘要sem um título H1 duplicado. - Remova status de origem, descrição do vídeo, índices de material visual, avisos de extração, instruções de tarefa e seções de auto-verificação do corpo final; o YAML já carrega metadados de origem.
- Use chinês primeiro; explique terminologia inglesa necessária no primeiro uso.
- Deixe a transcrição determinar o esboço do artigo e a profundidade. As imagens apoiam a explicação; nunca encurte ou omita conteúdo importante apenas porque um quadro correspondente não está disponível.
- Combine a profundidade do artigo com a duração do vídeo. Cada capítulo planejado precisa de uma explicação real, evidência em vídeo ou exemplo, e uma implicação clara de aprendizado. Evite preenchimento genérico e parágrafos repetidos.
- Vincule o SRT ao final. Não cole o texto bruto da transcrição.
- Remova a lista de verificação de auto-verificação antes da conclusão final.