space-enthusiast/meeting-minutes

Convierte una grabación de reunión (m4a, mp3, wav, mp4, ...) en un acta en tu propio ordenador. Whisper transcribe, pyannote separa a los hablantes y el agente redacta el acta a partir de la transcripción etiquetada por hablante. Úsalo cuando el usuario proporcione una grabación y solicite el acta, un resumen, una transcripción, conversión de voz a texto o 'quién dijo qué'. El audio nunca sale del ordenador.

¿Qué es meeting-minutes?

Esta skill permite transformar cualquier grabación de reunión en un acta detallada y fiable, ejecutándose completamente en local. Utiliza Whisper para la transcripción y pyannote para la separación de hablantes, generando un acta donde cada afirmación es trazable hasta la grabación y las etiquetas de los hablantes son honestas sobre su nivel de certeza. Es compatible con cualquier plataforma de agente (como Claude Code, Cursor, Codex) y funciona en macOS, Linux y Windows con Python. La skill sigue un flujo de trabajo por fases: configuración, transcripción, separación de hablantes, corrección de errores de reconocimiento y redacción del acta final. Garantiza la privacidad del audio al no enviarlo nunca a servicios remotos, y está diseñada para ser eficiente en recursos, ejecutando un proceso pesado a la vez y a baja prioridad para no interferir con el trabajo del usuario.

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

Installed? Explore more Productividad y colaboración skills: steipete/gemini, steipete/gh-issues, steipete/skill-creator · View all 6 →

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

Actas de reunión

Genera actas que una persona que se perdió la reunión pueda considerar fiables: cada afirmación trazable hasta la grabación, cada etiqueta de hablante honesta sobre su nivel de certeza.

La grabación es la fuente de verdad. Una transcripción es una evidencia, y el acta es una interpretación de esa evidencia. Las notas escritas por un bot de reuniones o por un asistente son secundarias: utilízalas solo para verificación cruzada.

Modos de operación

Cargar esta skill no autoriza una ejecución completa. Elige el modo más pequeño que responda a la solicitud.

  • Modo guía: preguntas sobre cómo transcribir, qué modelo se adapta a una máquina, por qué las etiquetas de hablante son incorrectas, cómo leer una transcripción existente. Responde desde el archivo correspondiente. No instales nada ni crees archivos.
  • Modo transcripción: el usuario solo quiere el texto. Ejecuta la configuración, la transcripción y (a menos que se rechace) la separación de hablantes. Detente después de la transcripción etiquetada por hablante.
  • Modo acta: el usuario quiere el acta. Ejecuta todas las fases y escribe los archivos listados en "Salidas".

Si la solicitud podría corresponder a más de un modo, haz una pregunta breve antes de instalar nada.

Terminología de plataforma

Esta skill es neutral respecto al agente.

  • Shell es lo que la plataforma utiliza para ejecutar comandos en el ordenador del usuario.
  • Ejecución en segundo plano es la forma que tiene la plataforma de iniciar un comando largo y recibir notificación cuando termine. Si no existe, ejecuta el comando en primer plano e informa al usuario del tiempo previsto.
  • Entorno es un entorno de Python que esta skill crea una vez y reutiliza. <python> es su intérprete.
  • Script de referencia es un bloque de código en estos archivos. Guárdalo en <out>/work/ y ejecútalo con <python>. Es un punto de partida probado, no un contrato fijo: adáptalo cuando la máquina, la versión de la biblioteca o la solicitud lo requieran, e indica qué cambiaste.

Principios

  1. El audio permanece local. Nunca subas la grabación, ni ninguna parte de ella, a un servicio remoto. La transcripción y la separación de hablantes se ejecutan en este ordenador.
  2. Sé transparente sobre dónde va el texto. La transcripción es texto, y el agente que redacta el acta lo lee. Si ese agente es un modelo en la nube, el texto va a ese proveedor. Indícalo una vez antes de la primera ejecución si la reunión puede ser sensible.
  3. Solo lo que se dijo. El acta contiene lo que la transcripción respalda. Sin propietarios, fechas, números o decisiones inventados.
  4. Etiquetas de hablante honestas. Un número se convierte en nombre solo con evidencia. Una suposición se marca como tal.
  5. Un trabajo pesado a la vez, a baja prioridad. Los modelos de voz utilizan toda la máquina. Nunca ejecutes transcripción y separación de hablantes simultáneamente. Más lento está bien; el usuario aún tiene que trabajar en este ordenador.
  6. Pregunta antes de instalar, nunca manejes secretos. Muestra el comando antes de instalar un programa. El usuario inicia sesión, acepta los términos del modelo y almacena los tokens. No pidas una contraseña o un token en la conversación.
  7. Se esperan errores de reconocimiento. Los nombres, números y jerga son los puntos débiles. Verifica lo que sea importante en lugar de suavizarlo.

Valores de configuración

Resuélvelos antes de la primera fase. Pregunta al usuario solo por lo que no puedas averiguar por ti mismo.

  • Directorio de la skill: el directorio absoluto que contiene este SKILL.md.
  • Grabación: la ruta absoluta del archivo de audio o video.
  • Directorio de salida <out>: por defecto, una nueva carpeta junto a la grabación, nombrada con el nombre de esta más -minutes. Usa otra ubicación cuando el usuario la nombre o la grabación esté en una carpeta sincronizada o compartida donde no deban estar los archivos de trabajo.
  • Idioma: pregunta, o deja que el modelo lo detecte.
  • Asistentes: nombres, y equipos o roles si se conocen. Necesario para asignar nombres a los hablantes y para el encabezado del acta. Si el usuario no lo sabe, continúa con hablantes numerados.
  • Título, fecha y hora, propósito: para el encabezado. Tómalos del usuario o del nombre del archivo y metadatos; nunca de suposiciones.

Salidas

Todas las rutas están dentro de <out>.

ArchivoEscrito enContenido
transcript.jsonFase 2Segmentos con marcas de tiempo a nivel de palabra. Nunca se edita después
transcript.txtFase 2El mismo texto, una línea con marca de tiempo por segmento. El registro sin corregir
diarization.jsonFase 3Quién habló cuándo, hablantes numerados desde 1
speakers.jsonFase 4Número de hablante a nombre, con marcas de incertidumbre
corrections.tsvFase 4Errores de reconocimiento recurrentes y sus correcciones
transcript-speakers.txtFase 4La transcripción corregida y etiquetada por hablante. La base del acta
minutes.mdFase 5El acta, con la transcripción etiquetada por hablante como apéndice
work/todasScripts de referencia tal como se ejecutaron, y registros

Flujo de trabajo

FaseLeeResultado
1. ConfiguraciónSETUP.mdUn entorno funcional, y una decisión sobre GPU o CPU y sobre separación de hablantes
2. TranscripciónTRANSCRIPTION.mdtranscript.json, transcript.txt
3. Separación de hablantesDIARIZATION.mddiarization.json
4. Hablantes y correccionesSPEAKERS.mdspeakers.json, corrections.tsv, transcript-speakers.txt
5. ActaMINUTES.mdminutes.md

La fase 1 se realiza una vez por ordenador; ejecuciones posteriores solo la verifican. Las fases 2 y 3 son largas: utiliza una ejecución en segundo plano y continúa cuando termine. La fase 3 se omite cuando el usuario rechaza el acceso único al modelo; el resto sigue funcionando, sin nombres.

Verifica el resultado de cada fase antes de comenzar la siguiente. Cada archivo termina con una sección "Verificación".

Informar al usuario

Cuando termine la ejecución, informa al usuario:

  • dónde está minutes.md;
  • qué nombres de hablante están confirmados y cuáles son suposiciones;
  • qué se omitió o cambió respecto a los valores predeterminados, y por qué;
  • los puntos débiles conocidos de esta ejecución (nombres o números poco claros, superposición de voz, un tramo de audio deficiente).

Anti-patrones

  • Resumir notas escritas por un bot de reuniones cuando la grabación está disponible. Dichas notas omiten tramos de la reunión y fusionan todas las voces en una.
  • Ejecutar transcripción y separación de hablantes al mismo tiempo "para ahorrar tiempo". Ralentiza ambos procesos y puede agotar la memoria de la GPU.
  • Proporcionar al modelo de voz una lista de nombres de asistentes como pista. Entonces escribe esos nombres en tramos de silencio y omite el habla real.
  • Nombrar a un hablante porque un nombre "encaja". Una atribución incorrecta en un acta compartida cuesta más que diez etiquetas de "Hablante 3".
  • Corregir la transcripción reescribiendo frases. Corrige los errores recurrentes de palabras mal escuchadas a través de corrections.tsv; deja la redacción intacta.
  • Escribir un elemento de acción con un propietario y una fecha que nadie mencionó.
  • Informar éxito sin abrir el resultado. Lee el primer y último minuto de la transcripción y compara el recuento de hablantes con el recuento de asistentes.

Skills relacionados