Notas de reunião 100% locais · Windows, macOS e Linux

Sua reunião vira nota sem sair da máquina

O CrunchLog grava a call em duas faixas (o que você ouve e o que você fala), transcreve na sua CPU e entrega uma nota em Markdown com cada fala marcada por pessoa. Sem bot na call, sem conta, sem chave de API.

CrunchLog: reuniões transcritas localmente
O que é

Um notetaker de reuniões que não manda seu áudio pra nuvem

Criado por Christian Landsteiner e apresentado na comunidade AI Automations by Jack (Skool). Versão testada aqui: 2.0.0a1. Este guia e os scripts de Linux são do INEMA; o software não está neste repositório porque a licença de avaliação proíbe redistribuir.

Recursos do CrunchLog: duas faixas, transcrição local, nota Markdown, resumo, MCP e Linux

🎧 Duas faixas, sem driver

A saída de som (Zoom, Meet, YouTube) e o microfone são gravados separados. Tudo o que vem do microfone é você ("Me"); a IA só precisa separar quem está do outro lado. Não precisa de VoiceMeeter nem de BlackHole.

🔒 Transcrição local

Parakeet TDT 0.6B v2 e separação de falantes com sherpa-onnx, tudo na CPU. Medido aqui: 27,6× o tempo real, ou seja, uma call de 1 hora fica pronta em uns 2 minutos.

🤖 Claude e Codex pela assinatura

Resumo, decisões, itens de ação e perguntas sobre a reunião usam a sua CLI do Claude Code ou do Codex já logada, sem API paga. Tem também servidor MCP e integração com o Claude OS.

Como funciona

Uma tecla para ligar, outra para desligar, e a nota aparece

Cada gravação vira uma pasta (o "bundle") com far.wav, mic.wav e meta.json. O pipeline local transforma isso na nota.

crunchlog toggle→ far.wav + mic.wav→ VAD + ASR por faixa→ gate tira o eco do mic→ separação de falantes→ nota Markdown→ resumo opcional (Claude/Codex)

Nota

Fica em ~/CrunchLog/notes/, com frontmatter, resumo, decisões, itens de ação, perguntas abertas e a transcrição com [mm:ss] Falante:. Funciona bem dentro de um cofre do Obsidian.

Privacidade

Áudio e bundles nunca saem da máquina. Texto só sai se você pedir resumo ou ask, conectar um cliente MCP ou ligar o modo Live (que manda o áudio para a AssemblyAI). Modo privado total: provider = "none".

Limites

Só inglês nesta versão, ~700 MB de modelos baixados uma vez, macOS 14.2+ em Apple Silicon. Tudo além de gravar e gerar a nota é experimental. No Linux, oficialmente só o processamento roda; a gravação vem dos nossos scripts.

Pré-requisitos

O que você precisa antes

O zip fica no post do Skool (comunidade AI Automations by Jack). O uv baixa o Python 3.12 sozinho.

uv

Gerenciador de Python da Astral. Instale e abra um terminal novo.

# Windows (PowerShell)
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
# macOS / Linux
curl -LsSf https://astral.sh/uv/install.sh | sh

Sistema

Windows 10/11 ou macOS 14.2+ (Apple Silicon). Linux com PipeWire usando os scripts deste repositório (testado em Ubuntu ARM64).

# Linux: confira o PipeWire
which pw-record wpctl

Opcionais

ffmpeg para importar mp3/mp4. Claude Code ou Codex logados, para resumo e perguntas.

claude --version
codex --version
ffmpeg -version
Guia de uso · passo a passo

Do zip à primeira nota em 10 minutos

Comandos reais, testados nesta máquina. Os tempos e números vêm das execuções de 05/10/2026.

1

Baixe e descompacte

Entre no post do Skool, baixe crunchlog-2.0.0a1.zip e descompacte. O caminho mais fácil, recomendado pelo autor, é deixar o Claude Code instalar: abra um terminal na pasta, rode claude e cole:

I have extracted CrunchLog into this folder. Read START-HERE.md and AGENTS.md and install it for me, then run the demo so I get my first note.

Ele segue o AGENTS.md do zip, faz quatro perguntas (pasta de notas, dispositivo far, microfone, provedor de resumo) e termina com o demo. Se preferir fazer à mão, siga os passos abaixo.

2

Instale como ferramenta do uv

Dentro da pasta descompactada. O [mcp] já inclui o servidor MCP; use ".[mcp,tray]" se quiser o ícone na bandeja.

uv tool install --python 3.12 ".[mcp]"
crunchlog --version   # crunchlog 2.0.0a1 (build 1daf268 of 2026-10-04)

Se aparecer command not found, rode uv tool update-shell e abra outro terminal.

3

Configure e baixe os modelos

Escreve a config, o glossário e o modelo de resumo e baixa ~700 MB de modelos (Parakeet, silero, pyannote, TitaNet). Enter aceita os padrões.

crunchlog devices                  # números dos dispositivos far e mic
crunchlog setup                    # ou: --yes --provider none (sem perguntas)
crunchlog doctor                   # exit 0 e nenhum [fail] = pode gravar

No macOS, a primeira gravação pede duas permissões para crunchlog-audio: Microfone e Gravação de Tela e Áudio do Sistema. Sem a segunda, a faixa far fica muda.

4

Primeira nota: o demo

A voz do computador encena uma reunião inventada com três pessoas e o pipeline real processa tudo. Não precisa de microfone.

crunchlog demo          # Windows / macOS
crunchlog-linux demo    # Linux (Piper), veja a seção Linux
# turns: 33 turns, talk seconds per role {'Me': 53.8, 'Speaker 2': 55.5, 'Speaker 3': 29.0}
# done in 57 s
# note: ~/CrunchLog/notes/2026-10-05-1642-demo.md
5

Grave uma reunião de verdade

Ligue crunchlog toggle numa tecla: PowerToys ou AutoHotkey com crunchlogw toggle no Windows, um atalho do app Atalhos no macOS, ou ação do Stream Deck. Aperte quando a call começar e de novo quando acabar.

crunchlog toggle                            # começa
crunchlog toggle                            # para e escreve a nota
crunchlog start --slug acme --speakers 3     # nome na pasta + total de pessoas (com você)
crunchlog check-audio --tone                # testa as duas faixas antes da 1ª call
6

Importe áudio ou vídeo que você já tem

mp3, m4a, mp4 e wav entram como faixa far (sem "Me"). Testamos com o walkthrough de 2:26 do autor: nota pronta em 18 s.

crunchlog process reuniao.mp4
crunchlog watch ~/Gravador                  # processa tudo o que cair na pasta
7

Resumo e perguntas com Claude ou Codex

No ~/.config/crunchlog/config.toml, mude o provedor. O CrunchLog chama claude -p (ou codex) com ferramentas e MCP desligados, e isso sai da sua assinatura. Medido: resumo do demo em 10,3 s.

# config.toml
[summary]
provider = "claude"        # none | claude | codex | auto
claude_model = "opus"
claude_effort = "medium"

crunchlog ask latest "What was decided about the beta launch?"
# The beta starts on November 12 with 200 testers ... [01:13 Me]
8

Ajuste a nota depois

Dê nomes aos falantes, acrescente suas anotações, exporte legendas ou abra no Obsidian.

crunchlog speakers <gravação> "Speaker 2=Dana" "Speaker 3=Lee"
crunchlog note "cliente quer proposta até sexta"
crunchlog export ~/CrunchLog/recordings/<gravação> --format srt   # srt|vtt|txt|json|csv|md
crunchlog templates use standup
crunchlog open latest --obsidian
9

Cola antes da próxima reunião

Junta itens de ação em aberto, decisões e perguntas das últimas notas de um cliente numa folha, com perguntas-roteiro que se marcam sozinhas quando a próxima nota responde. Não chama modelo nenhum.

crunchlog prep "acme" --calendar "Qui 14h, Ana e Bruno"
# ~/CrunchLog/notes/2026-10-05-acme-cheatsheet.md
10

Dashboard no navegador

Gravador com medidores, forma de onda das duas faixas, transcrição clicável, renomear falantes, prompts, configurações e doctor. Só escuta em 127.0.0.1. Na primeira visita, use o link com ?t=... que ele imprime.

crunchlog dashboard     # http://127.0.0.1:47431/  (--port muda)
11

MCP: pergunte das reuniões no Claude Code

Depois de registrar, pergunte "o que combinamos com a Acme na terça?" ou "começa a gravar". Testamos por stdio e o servidor respondeu com 15 ferramentas: status, list_recordings, get_transcript, get_note, get_summary, search_notes, prep, cheatsheet, start/stop/toggle_recording, process, rename_speakers, export e doctor.

claude mcp add crunchlog -- crunchlog mcp

Se você usa o Claude OS de Jack Roberts (aula do Agentic OS, só para membros), um comando registra o MCP e cria um cofre que a página Memory sincroniza:

crunchlog connect agentic-os --dry-run    # mostra o que vai fazer
crunchlog connect agentic-os              # --status | --undo
12

Modo Live (alpha, desligado por padrão)

Manda as duas faixas para a AssemblyAI (sua conta, paga) e mostra durante a call a cola se marcando, resumos por bloco e um "pergunte à reunião". A nota final continua vindo do pipeline local. Não ligue em calls confidenciais.

[live]
enabled = true
provider = "assemblyai"
api_key = "..."     # sua chave
Linux · scripts deste repositório

No Linux, a gravação e o demo vêm dos nossos scripts

A versão 2.0.0a1 só grava no Windows e no macOS. No Linux, o processamento roda inteiro (transcrição, falantes, nota, resumo, ask, export, prep, dashboard e MCP) e as dependências instalaram sem patch em ARM64. Faltavam duas peças, e escrevemos as duas sem alterar o código do CrunchLog.

🎚️ recorder_linux.py

Grava com pw-record do PipeWire: monitor da saída padrão → far.wav e entrada padrão → mic.wav, em 16 kHz mono, com meta.json no contrato oficial (bundle v2). No stop, chama o pipeline oficial.

🗣️ demo_linux.py

O mesmo crunchlog demo (mesmo roteiro, mesma montagem, mesmo pipeline), só trocando a voz do sistema pelo Piper, que é offline. Testado: 33 falas, "Me" separado de Speaker 2 e 3, em 57 s.

⌨️ crunchlog-linux

Atalho com demo, start, stop, toggle, status e devices. Ligue crunchlog-linux toggle num atalho do GNOME ou do KDE.

# 1. CrunchLog (na pasta do zip) + modelos
uv tool install --python 3.12 ".[mcp]"
crunchlog setup --yes --provider none

# 2. extras deste repositório: Piper + 3 vozes (~190 MB) + crunchlog-linux em ~/.local/bin
git clone https://github.com/inematds/crunchlog
bash crunchlog/linux/instalar-extras-linux.sh

# 3. usar
crunchlog-linux demo
crunchlog-linux devices                   # far (monitor da saída) e mic (entrada)
crunchlog-linux toggle                    # começa / para + nota
CRUNCHLOG_FAR_TARGET=<sink> CRUNCHLOG_MIC_TARGET=<source> crunchlog-linux start   # outras placas (wpctl status)

O crunchlog doctor no Linux mostra dois [fail] (platform e devices). São só da gravação nativa, que o crunchlog-linux substitui. Todo o resto dá [ok]. O botão Record do dashboard não funciona no Linux, mas as gravações feitas pelo script aparecem e tocam normalmente lá.

Telas reais

O dashboard rodando nesta máquina

Capturas de 05/10/2026, com o demo (reunião inventada) e as gravações de teste feitas no Linux.

Overview com o gravador e as últimas gravações
Overview: botão Record/Stop, medidores das faixas far e mic, últimas gravações, disco e modelos.
Gravação do demo com as duas faixas e três falantes
Gravação: forma de onda das duas faixas, quem fala quando (Me, Speaker 2, Speaker 3), player e export.
Lista de gravações
Recordings: o arquivo de gravações com filtros e status de cada nota.
Página de configurações
Settings: pastas, dispositivos, transcrição, falantes, limpeza, resumo, ask e live.
Página de prompts de resumo
Prompts: os modelos de resumo por tipo de reunião e qual está em uso.
Página Doctor
Doctor: as checagens da máquina e o botão de atualização.
Problemas comuns

Quando algo não sai como esperado

Do README do autor e do que encontramos nos testes.

macOS
Faixa far mudaFalta a permissão "Gravação de Tela e Áudio do Sistema" para crunchlog-audio. Conceda e grave de novo. Se o Gatekeeper bloquear o helper, rode xattr -cr . só na pasta do zip.
Windows
Processar falha, gravar funcionaO doctor mostra "bundled onnxruntime missing". Rode uv tool install --python 3.12 --reinstall ".[mcp]" na pasta do zip, com o tray e o dashboard fechados (senão dá Access is denied).
Falantes
Duas pessoas viraram umaReprocesse informando o total: crunchlog process <pasta> --speakers N (N conta você).
Nomes
Nome errado sempre do mesmo jeitoUse o glossário ~/.config/crunchlog/glossary.txt, uma linha "errado => certo". No demo, "Quillory" saiu "Quillery".
Linux
Far ou mic vazioRode crunchlog-linux devices. Se o som sai por outra placa, use CRUNCHLOG_FAR_TARGET. Numa sessão remota (RDP) a entrada não tem microfone; use uma entrada real com CRUNCHLOG_MIC_TARGET.
Atualizar
Nova versãoBaixe o zip novo na pasta Downloads e clique em Update CrunchLog (bandeja) ou Update now (Doctor), ou rode crunchlog update. Config, gravações e notas ficam. Desinstalar: uv tool uninstall crunchlog.