LocalAlibiScan · Open source
Cada afirmação tem um álibi.
O LocalAlibiScan diz-lhe o que é cada projeto no seu disco, como está e o que mudou — e prova cada afirmação com o ficheiro e a linha de onde a tirou. Local, só de leitura, e nunca executa o seu código.
Como funciona
Aponte-o à pasta onde estão os seus projetos e recebe uma linha por projeto — tipo, stack, base de dados, serviços externos, última alteração e alertas:
$ las dashboard ~/code
Depois veja um projeto a fundo. Cada linha é uma afirmação com um estado — ✓ confirmado, ≈ inferido, ⚠ contradição, ? desconhecido — e por baixo a prova: o ficheiro, a linha e o próprio texto. Aqui o README diz uma coisa e o código faz outra:
$ las scan notes-api --only docs-vs-code --evidence
Documentação vs código
⚠ Documentação vs código: Documentação diz PostgreSQL, código usa SQLite
└ README.md:8 - PostgreSQL for persistence
└ src/db/database.ts:1 import Database from 'better-sqlite3';
└ package.json:13 "better-sqlite3": "^9.4.0"
A saída está em inglês por omissão e em português com las --lang-ui pt — os factos são os mesmos nas duas línguas.
Porquê o LocalAlibiScan
- Factos com prova. É o código que extrai os factos — manifestos, imports, rotas, connection strings. Uma dependência declarada mas nunca usada fica «≈ inferido», e não «usa Redis». Quando não consegue saber, mostra
?em vez de adivinhar. - O disco inteiro, não um repositório. Um painel com todos os projetos de uma pasta — incluindo pastas de scripts soltos, sem git — e um relatório HTML autónomo que se abre sem internet ou se partilha.
- Documentação que mente. O README diz PostgreSQL, o código usa SQLite: um ⚠ com as duas provas. Nunca altera nada.
- Mudanças em linguagem de arquitetura. O
las refreshdiz «+ Serviço OpenAI», «+ Nova rotaDELETE /notes/:id», «⚠ o README ainda não menciona a OpenAI» — e não «+42 linhas». Funciona sem git. - Funciona sem IA. Tudo o que é essencial é determinista. Um modelo local (Ollama) é opcional: só escreve a partir dos factos encontrados, cada frase tem de os citar, e um validador remove as que não o fazem.
- Terminal ou janela. Todos os comandos funcionam no terminal; o
las uimostra os mesmos factos e provas numa interface gráfica local, no seu browser, que só escuta nesta máquina. - Só de leitura, por construção. Nunca executa o seu código, nunca altera os seus ficheiros e nunca vai à internet. Só escreve numa pasta
.localalibi/, que se exclui a si própria do git.
Instalação
Python 3.11 ou superior, em macOS, Linux ou Windows:
$ pipx install localalibiscan
$ las dashboard ~/code --html
Depois, las scan para um projeto, las refresh para ver o que mudou, las ask para fazer uma pergunta com as provas primeiro. Não é preciso um modelo local.
Prefere uma janela? Instale a interface gráfica opcional e abra-a na mesma pasta:
$ pipx install 'localalibiscan[ui]'
$ las ui ~/code
O painel, cada afirmação com as provas e as linhas à volta, o que mudou, explain e ask — mais na documentação.
Open source
O LocalAlibiScan é gratuito e open source (licença MIT). A documentação cobre todos os comandos, e há um relatório de exemplo feito com projetos open source conhecidos.