Releases: ThiagoEMatumoto/pitwall
Release list
v0.72.1
v0.71.0
Automated draft for v0.71.0. Review the Linux, macOS and Windows artifacts before publishing.
v0.70.0 — Quem disse o quê
Quem está falando
- Vozes separadas automaticamente na trilha da chamada: cada pessoa vira "Participante N" com cor própria no transcript (diarização local com sherpa-onnx; só Linux nesta versão).
- Renomeie uma vez, o Pitwall lembra: "Participante 2" → "Bianca" salva a voz; na próxima reunião ela já aparece com o nome. Chips de participantes com contagem de turnos e badge "voz salva".
- Modelo de voz (39 MB) baixado no primeiro uso, com progresso na área Reuniões.
Tarefas só quando você quiser
- Nada é criado automaticamente. As ações extraídas vêm com dono (quem assumiu na conversa) e citação; você marca as que quer e clica "Criar tarefas". Tarefas de outras pessoas ganham
[Nome]no título.
Resumo no formato que funciona
- Participantes → Resumo por tema → Decisões → Próximas etapas com [Dono] → Detalhes com
(mm:ss). Modelo escolhível (Sonnet/Opus) ao regenerar.
Microfone
- Correção do mic quase mudo: o gate de silêncio agora olha atividade por janela e o áudio é normalizado antes da transcrição. Se o ganho do seu microfone estiver baixo, aparece um aviso com o comando
wpctlpronto para copiar. O mic usado é o mesmo que o app da chamada usa.
Correções
- Uma instância só: abrir o Pitwall de novo foca a janela existente (fim dos ícones duplicados na bandeja).
- Ícone da bandeja com o glifo do Pitwall e badge vermelho/âmbar por estado.
Verificado com e2e sintéticos e reais: duas vozes → dois speakers, voz reconhecida na reunião seguinte, transcrição real com 86 % de similaridade, resumo real com donos, zero tarefas criadas sem seleção.
v0.69.0
Automated draft for v0.69.0. Review the Linux, macOS and Windows artifacts before publishing.
v0.68.0 — Ela percebe quando a reunião começa
Detecção automática de reunião
- O Pitwall percebe a chamada: quando o Chrome (Meet), Zoom, Teams etc. abrem o microfone, aparece a notificação "Reunião detectada — clique para gravar", um banner com Gravar / Ignorar na área Reuniões e na janela flutuante, o pill âmbar "Reunião detectada · Gravar" na barra do app e o ícone da bandeja fica âmbar com o item "Gravar reunião detectada".
- Para sozinho quando a chamada acaba (a gravação iniciada a partir da detecção é vinculada ao stream de áudio) — em vez de esperar 15 minutos de silêncio.
- Nunca grava sem consentimento. Em Configurações › Reuniões: "Detectar reuniões automaticamente" (ligado) e "Gravar automaticamente ao detectar" (desligado por padrão).
- Detecção via PipeWire (
pw-dumpa cada 2 s, ~12 ms), sem extensão de navegador e sem bot na chamada; a própria gravação do Pitwall é ignorada.
Correção
- A janela flutuante agora pode ser movida e redimensionada — o tipo
toolbarfazia o GNOME negar mover/redimensionar.
Verificado com e2e sintético (12/12) e com um stream de captura real (arecord): detecção em até 8 s, auto-stop em até 20 s após o fim da chamada.
v0.67.0 — A reunião que se anota sozinha
Reuniões v2 (estilo Granola)
- Gravar é um clique: botão na área Reuniões, atalho global
Ctrl+Shift+R, ou o ícone do Pitwall na barra do sistema (menu Iniciar/Parar; pisca em vermelho enquanto grava). - Sempre visível: pill "● Gravando mm:ss" na barra do app em qualquer área e uma janela flutuante always-on-top com a transcrição ao vivo e campo de nota rápida.
- Áudio do sistema + microfone capturados via PipeWire (
pw-record), sem bot na chamada e sem Python; nada de áudio é gravado em disco. - Transcrição quase em tempo real por chunks usando o STT já configurado em
~/.config/voz/voz.env, com atribuição Eu / Participante por trilha. - Resumo e tarefas automáticos ao parar: notas aprimoradas (resumo, decisões, próximos passos, perguntas em aberto) com suas anotações destacadas, e action items com citação do transcript que viram tarefas no Pitwall.
- 6 MCP tools (
meeting_list,meeting_get,meeting_start,meeting_stop,meeting_note_append,meeting_search). - Pesquisa que embasou a feature:
docs/research/granola-spec.json.
Verificado com áudio real nesta máquina (pw-play → pw-record → STT → resumo): 1º segmento em ~13 s, ~90% de similaridade com o transcript esperado.
v0.66.0 — Quatro portas que nunca abriram
Quatro portas que nunca abriram
Dossiês, Reuniões, Jobs agendados e Conteúdo ocupavam quatro das quinze entradas do menu lateral desde que foram criadas — e nenhuma delas chegou a funcionar. Esta versão remove as quatro. O menu cai para onze áreas, todas em uso.
O que sai junto com elas:
- O sidecar Python de transcrição (faster-whisper + sherpa-onnx) e o passo de empacotamento que o embutia no instalador. O app fica mais leve para baixar e instalar.
- Dez ferramentas MCP —
scheduled_job_*,job_report,job_run_list,content_contract_*econtent_gate_*— que apareciam para todo agente conectado ao Pitwall. - A doutrina de contratos de conteúdo que era injetada nas instruções do servidor MCP: dois parágrafos que todo agente lia em toda sessão, sobre um fluxo que não existia.
- Quatorze tabelas do banco, recolhidas por migration. Diagramas ligados a essas entidades perdem só o vínculo — os diagramas em si continuam lá.
O que ficou intacto e foi verificado: o auto-pull de repositórios, que tinha um agendador próprio e nunca dependeu do de jobs.
Nada aqui muda um fluxo que você usa. É o app carregando menos peso morto — no menu, no instalador e no contexto de cada agente.
v0.65.2 — Nenhum repositório fica pra trás
Repositórios "sumidos" e sessões que não abriam
Um bundle de sync gravado sem a raiz de projetos configurada podia publicar paths relativos — e o pull seguinte sobrescrevia o banco local com eles. Resultado: todos os repositórios apareciam como "não estão no disco", nenhuma sessão de repositório abria e o layout de sessões abertas deixava de ser restaurado.
Esta versão corrige nas duas pontas:
- Importação blindada — o sync nunca mais persiste um path não-absoluto: ele é resolvido contra a raiz local de projetos e, quando isso não é possível, o valor que já estava no banco é preservado em vez de sobrescrito.
- Leitura resiliente — paths relativos que já estejam no banco passam a ser resolvidos contra a raiz de projetos na hora do uso. Basta atualizar: os repositórios voltam a aparecer e as sessões voltam a abrir e a ser restauradas, sem nenhum reparo manual.
v0.65.1 — A frente aparece de todo lugar
Complemento da 0.65.0: a feature agora aparece de todo lugar onde uma sessão aparece, e o backlog para de encher sozinho.
De volta para a feature, de qualquer lugar
Antes, você abria uma sessão pela feature e ela virava anônima na tela de Projetos. Agora uma marca clicável mostra de que frente a sessão é — na aba, na barra de sessões vivas, no switcher, na paleta e na lista de sessões do repo. Um clique volta para o dossiê. Onde não há feature, não aparece nada.
Vincular no meio do caminho
Percebeu que a sessão pertence a outra frente? Dá para ligar — ou trocar — direto pelo cabeçalho da sessão, sem reabrir nada. Antes, isso só era possível escolhendo antes de começar, ou a heurística adivinhava no fim.
Escolher a feature ficou usável
O campo virou um seletor com busca: as frentes em foco no topo, o resto por atividade real, arquivadas fora. Vale no diálogo de nova sessão e no cabeçalho.
O backlog para de encher sozinho
A cada feature sem OKR, o app criava uma tarefa "Revisar vínculo sugerido". No uso real eram 45 tarefas, nenhuma jamais aberta — 26% do backlog. Elas deixam de ser criadas: a ausência de OKR continua visível como aviso na própria feature, com ação para resolver na hora. O vínculo automático de alta confiança continua funcionando.
Limpeza de duplicatas pelo agente
feature_merge_duplicate chegou às ferramentas MCP: mescla duas features movendo sessões e registros para a que fica, e arquiva a outra — nunca apaga.
Dois defeitos encontrados e corrigidos na validação: a marca ficava inerte ao clique em uma das telas (só o teclado respondia), e o seletor era cortado pelo diálogo, mostrando uma opção e meia de 38.
2400 testes, 215 suítes. Validado no app real.
v0.65.0 — Features com pulso
As features do Pitwall deixam de ser um cadastro que apodrece e viram um loop: têm pulso, saúde própria e um ponto de partida para o trabalho.
O status não se declara mais — deriva
Antes, status era um campo digitado: se ninguém lembrava de mudar, uma frente morta há dois meses continuava dizendo "em andamento". Agora cada feature tem uma vitalidade calculada a partir de atividade real — vivo, silêncio, quebrado, pausado ou concluído. Silêncio aparece sozinho quando ninguém toca a frente dentro da cadência.
Pulso
Uma frase de até 200 caracteres dizendo como a frente está agora, com histórico datado e a origem visível — se foi você, uma sessão ou o MCP. Escrever um novo empurra o anterior para o histórico, nunca sobrescreve.
A sessão fecha o próprio loop
O Claude Code ganhou 9 ferramentas MCP. Ao pegar uma feature, a sessão lê feature_health_get e se situa; ao terminar, grava pulso e registra o que mudou. Se ela esquecer, o Pitwall extrai um pulso do próprio resumo da sessão, sem chamar o modelo de novo.
O contexto injetado no prompt encolheu (de ~1545 para ~1074 caracteres): em vez de despejar o documento, aponta para <repo>/.pitwall/loop-<slug>.md, um arquivo versionado que viaja junto do repositório.
Trabalhar numa feature agora é um clique
- "Trabalhar nesta feature" no dossiê, com repo e feature já resolvidos — antes eram seis passos e uma troca de tela.
- As sessões da feature listadas ali: viva → focar, encerrada → retomar, em um clique.
- Um chip no topo da sessão leva de volta à feature.
Ctrl+Shift+Fe "Ir para Features" na paleta.
Correção importante: retomar uma sessão perdia o vínculo com a feature e não recebia o contexto dela. Como retomar é o gesto mais comum, na prática o contexto quase nunca chegava.
Parede e higiene
A nova view padrão mostra em cima o que você fixou, e abaixo o resto por atividade. O dossiê ganhou uma faixa de avisos acionáveis — sem pulso, sem OKR, objetivo longo demais, possível duplicata.
A causa das duplicatas foi corrigida na raiz: o limiar de afinidade era frouxo o bastante para que um título de duas palavras casasse com apenas uma, colando sessões na feature errada. Agora a faixa intermediária vira suspeita — cria o rascunho e marca para triagem, em vez de adivinhar em silêncio.
Também nesta versão
Ledger e métricas por feature (com alvo, piso e alarme), export do loop para dentro do repositório, e sincronização das novas tabelas entre máquinas.
2360 testes, 209 suítes. Validado no app real.