space-enthusiast/meeting-minutes

Transforma gravações de reuniões (m4a, mp3, wav, mp4, ...) em atas completas no próprio computador do usuário. Whisper transcreve, pyannote separa os falantes e o agente redige a ata a partir da transcrição rotulada por falante.

O que é meeting-minutes?

Este skill permite gerar atas de reuniões, transcrições e separação de falantes inteiramente na máquina local, sem enviar o áudio para nenhum serviço remoto. Ele utiliza o Whisper para transcrição e o pyannote para diarização (separação de quem fala quando), e então o agente escreve a ata com base na transcrição rotulada, mantendo rastreabilidade até o áudio original. Suporta três modos de operação: orientação (responder dúvidas técnicas), transcrição (transcrição simples, com ou sem separação de falantes) e atas (fluxo completo com todos os arquivos de saída). É neutro em relação à plataforma: pode ser usado com Claude Code, Cursor, Codex ou qualquer outro agente que execute comandos no computador do usuário. O usuário deve fornecer uma gravação de áudio ou vídeo, e o skill cuida de todo o pipeline: configuração, transcrição, diarização, correção de erros de reconhecimento e geração da ata final no formato Markdown.

Funciona com✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/space-enthusiast/meeting-minutes-skill/tree/HEAD/skills/meeting-minutes

Installed? Explore more Produtividade e Colaboração skills: steipete/gemini, steipete/gh-issues, steipete/skill-creator · View all 6 →

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

Atas de Reunião

Produza atas que uma pessoa que perdeu a reunião possa confiar: cada declaração rastreável até a gravação, cada rótulo de falante honesto sobre o seu grau de certeza.

A gravação é a fonte da verdade. Uma transcrição é uma evidência, e a ata é uma interpretação dessa evidência. Anotações feitas por um robô de reunião ou por um participante são secundárias: use-as apenas para verificação cruzada.

Modos de operação

Carregar este skill não autoriza uma execução completa. Escolha o menor modo que atenda à solicitação.

  • Modo de orientação: perguntas sobre como transcrever, qual modelo é adequado para uma máquina, por que os rótulos dos falantes estão errados, como ler uma transcrição existente. Responda a partir do arquivo relevante. Não instale nada nem crie arquivos.
  • Modo de transcrição: o usuário deseja apenas o texto. Execute a configuração, a transcrição e (a menos que recusado) a separação de falantes. Pare após a transcrição rotulada por falante.
  • Modo de atas: o usuário deseja atas. Execute todas as fases e escreva os arquivos listados em "Saídas".

Se a solicitação puder se enquadrar em mais de um modo, faça uma pergunta curta antes de instalar qualquer coisa.

Terminologia da plataforma

Este skill é neutro em relação ao agente.

  • Shell é o que a plataforma usa para executar comandos no computador do usuário.
  • Execução em segundo plano é a forma da plataforma iniciar um comando longo e ser avisada quando ele terminar. Se não houver, execute o comando em primeiro plano e informe ao usuário quanto tempo esperar.
  • Ambiente é um ambiente Python que este skill cria uma vez e reutiliza. <python> é o seu interpretador.
  • Script de referência é um bloco de código nestes arquivos. Salve-o em <out>/work/ e execute-o com <python>. É um ponto de partida testado, não um contrato fixo: adapte-o quando a máquina, a versão da biblioteca ou a solicitação exigirem, e diga o que você alterou.

Princípios

  1. O áudio permanece local. Nunca envie a gravação, ou qualquer parte dela, para um serviço remoto. A transcrição e a separação de falantes são executadas neste computador.
  2. Seja transparente sobre para onde o texto vai. A transcrição é texto, e o agente que escreve a ata o lê. Se esse agente for um modelo em nuvem, o texto vai para esse provedor. Avise uma vez antes da primeira execução se a reunião puder ser confidencial.
  3. Apenas o que foi dito. A ata contém o que a transcrição suporta. Nenhum proprietário, data, número ou decisão inventados.
  4. Rótulos honestos dos falantes. Um número se torna um nome apenas com evidências. Um palpite é marcado como palpite.
  5. Um trabalho pesado por vez, com prioridade baixa. Os modelos de fala usam a máquina inteira. Nunca execute transcrição e separação de falantes juntos. Mais lento é aceitável; o usuário ainda precisa trabalhar neste computador.
  6. Pergunte antes de instalar, nunca manipule segredos. Mostre o comando antes de instalar um programa. O usuário faz login, aceita os termos do modelo e armazena tokens. Não peça senha ou token na conversa.
  7. Erros de reconhecimento são esperados. Nomes, números e jargões são os pontos fracos. Verifique o que é importante em vez de alisar.

Valores de configuração

Resolva estes antes da primeira fase. Pergunte ao usuário apenas pelo que você não conseguir descobrir sozinho.

  • Diretório do skill: o diretório absoluto que contém este SKILL.md.
  • Gravação: o caminho absoluto do arquivo de áudio ou vídeo.
  • Diretório de saída <out>: o padrão é uma nova pasta ao lado da gravação, nomeada com o nome dela mais -minutes. Use outro local quando o usuário nomear um ou a gravação estiver em uma pasta sincronizada ou compartilhada onde arquivos de trabalho não pertencem.
  • Idioma: pergunte ou deixe o modelo detectar.
  • Participantes: nomes, e equipes ou cargos se conhecidos. Necessário para atribuir nomes aos falantes e para o cabeçalho da ata. Se o usuário não souber, continue com falantes numerados.
  • Título, data e hora, propósito: para o cabeçalho. Extraia do usuário ou do nome do arquivo e metadados; nunca por adivinhação.

Saídas

Todos os caminhos estão dentro de <out>.

ArquivoEscrito emConteúdo
transcript.jsonFase 2Segmentos com timestamps palavra a palavra. Nunca editado depois
transcript.txtFase 2O mesmo texto, uma linha com timestamp por segmento. O registro não corrigido
diarization.jsonFase 3Quem falou quando, falantes numerados de 1
speakers.jsonFase 4Número do falante para nome, com marcas de incerteza
corrections.tsvFase 4Erros de reconhecimento recorrentes e suas correções
transcript-speakers.txtFase 4A transcrição corrigida e rotulada por falante. A base para a ata
minutes.mdFase 5A ata, com a transcrição rotulada por falante como apêndice
work/todasScripts de referência conforme executados e logs

Fluxo de trabalho

FaseLêResultado
1. ConfiguraçãoSETUP.mdUm ambiente funcional, e uma decisão sobre GPU ou CPU e sobre separação de falantes
2. TranscriçãoTRANSCRIPTION.mdtranscript.json, transcript.txt
3. Separação de falantesDIARIZATION.mddiarization.json
4. Falantes e correçõesSPEAKERS.mdspeakers.json, corrections.tsv, transcript-speakers.txt
5. AtaMINUTES.mdminutes.md

A Fase 1 é feita uma vez por computador; execuções posteriores apenas verificam. As Fases 2 e 3 são longas: use uma execução em segundo plano e continue quando terminar. A Fase 3 é pulada quando o usuário recusa o acesso único ao modelo; o restante ainda funciona, sem nomes.

Verifique o resultado de cada fase antes de iniciar a próxima. Cada arquivo termina com uma seção "Verificação".

Relatório ao usuário

Quando a execução terminar, informe ao usuário:

  • onde está minutes.md;
  • quais nomes de falantes estão confirmados e quais são palpites;
  • o que foi pulado ou alterado em relação aos padrões e por quê;
  • os pontos fracos conhecidos desta execução (nomes ou números pouco claros, fala sobreposta, um trecho de áudio ruim).

Antipadrões

  • Resumir anotações feitas por um robô de reunião quando a gravação está disponível. Essas anotações omitem trechos da reunião e fundem todas as vozes em uma.
  • Executar transcrição e separação de falantes ao mesmo tempo "para economizar tempo". Isso desacelera ambos e pode esgotar a memória da GPU.
  • Fornecer ao modelo de fala uma lista de nomes dos participantes como dica. Ele então escreve esses nomes em silêncios e perde fala real.
  • Nomear um falante porque um nome "encaixa". Uma atribuição errada em atas compartilhadas custa mais do que dez rótulos "Falante 3".
  • Corrigir a transcrição reescrevendo frases. Corrija erros recorrentes de palavras mal compreendidas através de corrections.tsv; deixe a redação original.
  • Escrever um item de ação com um responsável e uma data que ninguém declarou.
  • Relatar sucesso sem abrir o resultado. Leia o primeiro e o último minuto da transcrição e compare a contagem de falantes com a contagem de participantes.

Habilidades Relacionadas