Revisões em tempo real
Mais recentes no topo, com etiqueta de origem (commit / PR) e severidade. Filtra por projeto, busca no texto, isola só as críticas.
Code Watcher observa suas pastas de projeto em background e manda cada alteração — arquivo salvo, commit, pull request — para um LLM revisar. Os achados chegam num painel em tempo real, sem você pedir.
git commit a um achado acionável.
Arquivo salvo com mudança não commitada, hash novo em .git/refs, ou PR aberto no GitHub.
Uma revisão por vez, com teto configurável de chamadas ao LLM por hora.
Scan local de segredos — chave em plaintext, token sem expiração — antes de qualquer envio.
Claude Code CLI ou API da OpenAI, com um prompt de code review focado em bugs e risco.
Anexa ao review-log.md do projeto e publica um evento pro painel.
Tudo alimentado por um único log append-only. Nenhuma tela inventa dado — só reagrupa o que já aconteceu.
Mais recentes no topo, com etiqueta de origem (commit / PR) e severidade. Filtra por projeto, busca no texto, isola só as críticas.
Todo achado de severidade alta ou média entra numa fila acionável: resolver, dispensar ou reabrir — e o estado persiste entre reinícios.
Severidade por dia, arquivos que mais voltam pra revisão, custo de LLM e volume por projeto, origem das alterações.
Estilo Git City: cada projeto é um distrito, cada arquivo é um prédio, cada commit é um bloco empilhado. Prédio com achado crítico acende em vermelho.
Uma ferramenta pequena não precisa de infra grande. Cada escolha aqui foi por menos partes móveis.
events.jsonl append-only é a fonte da verdade. No boot, o app relê o arquivo e reconstrói o estado na memória. Fácil de inspecionar, trivial de versionar.
control.json num sentido, events.jsonl no outro. Sem portas, sem sockets. Sobrevive ao reinício de qualquer um dos lados e dá o histórico de graça.
A interface é um ui.html — HTML/CSS/JS puro, sem framework, sem CDN. O único ponto que toca a rede é a chamada ao LLM.
Janela, watcher, ícone da bandeja e o tail do log rodam no mesmo processo. O processo morrer encerra tudo — nada de órfão.
Precisa de Python 3.11+, git no PATH e um provedor de LLM — o Claude Code CLI, ou uma chave da OpenAI colada no painel.
$ git clone https://github.com/ndmg-dev/CodeWatcher.git$ cd CodeWatcher$ pip install -r requirements.txt # watchdog, pywebview, pystray, Pillow$ pythonw watcher_gui.py --show
nota Windows apenas — a bandeja e a janela usam WebView2 + Win32. A revisão de PR é somente leitura: nada é postado de volta no GitHub.