🎩 Goodfella
Strict Pair Programmer CLI — Um assistente de IA focado estritamente em Engenharia de Software que atua como um Pair Programmer Rigoroso e Arquiteto de Software.
O que é?
O Goodfella analisa códigos, detecta violações de princípios (SOLID, Clean Architecture, DDD, etc.) e sugere melhorias. Ele não altera código diretamente — apenas aconselha.
Características
- 🔒 Local-First — Processamento padrão 100% local via Ollama
- ☁️ Multi-Provedor — Suporte a OpenAI, Anthropic, Gemini
- 🧠 RAG Inteligente — Base vetorial com ChromaDB embutido
- 📂 Isolamento por Projeto — Contextos independentes por diretório
- 💬 Chat Interativo — REPL fluido no terminal com Rich
Instalação
A maneira recomendada de instalar o Goodfella globalmente na sua máquina é utilizando o pipx (que instala a CLI em um ambiente isolado, evitando o erro de ambiente gerenciado externamente no Linux/Mac):
pipx install goodfella
Alternativamente, você pode instalar via pip tradicional:
pip install goodfella
Uso
Para iniciar o assistente, basta rodar o comando na raiz do diretório do seu projeto:
goodfella
Configurando o Provedor de IA (Local vs Cloud)
O Goodfella foi desenhado para ser Local-First. Por padrão, ele tentará se conectar ao Ollama rodando localmente na sua máquina (porta 11434). Essa é a recomendação para máxima privacidade, já que seu código nunca sai do seu computador.
Como usar com o Ollama (Padrão):
- Certifique-se de que o Ollama está instalado e rodando no seu terminal (
ollama serve). - Baixe o modelo padrão do Goodfella (Qwen 2.5 Coder):
ollama pull qwen2.5-coder:7b
- Rode o comando
goodfellano seu projeto e a CLI se conectará automaticamente.
Se você não possui uma GPU forte ou se deseja análises arquiteturais mais profundas usando outros modelos, o Goodfella possui integrações nativas com a nuvem.
Como habilitar e usar provedores Cloud:
Interativamente (via chat):
Inicie o Goodfella normalmente e digite o comando /setup. Um menu interativo guiará você na escolha do provedor e na inserção segura da sua chave de API.
Dica: Uma vez dentro do assistente, utilize o comando /status para auditar rapidamente qual provedor de IA e modelo específico estão assumindo o controle das respostas no momento.
Comandos Principais
| Comando | Descrição |
|---|---|
/review |
Revisão estrita de Clean Architecture/SOLID |
/deep-review |
Análise completa via modelo Cloud |
/setup |
Assistente de configuração de provedor |
/status |
Saúde do sistema e provedor ativo |
/rule add |
Adicionar regra customizada |
/rebuild |
Reconstruir banco vetorial do zero |
/quit |
Encerrar e salvar histórico |
Stack Técnica
- Python + uv
- LangChain — Orquestração de IA
- ChromaDB — Banco vetorial embutido
- Rich — Interface de terminal
- Ollama — LLM local (padrão)
Licença
Proprietary / All Rights Reserved
O código-fonte é disponibilizado apenas para visualização e fins educacionais. É estritamente proibido modificar, distribuir, sublicenciar ou utilizar este projeto (ou qualquer parte dele) para fins comerciais sem autorização prévia por escrito.
Metadata
Release files for goodfella 0.1.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| goodfella-0.1.5.tar.gz | 314.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| goodfella-0.1.5-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 354.1 kB
Release files / goodfella-0.1.5.tar.gz
| Download URL | goodfella-0.1.5.tar.gz |
|---|---|
| Size | 314.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
79c092bbdb354ffb9cb75f2d8c69cf5fd916647f8f8ecd8032341d5f06031e59
|
|
BLAKE2b-256 checksum How to use checksums |
a1c3bc3df359f750f8acf8874f07ac924189815efd33efe14a03be1603ce8759
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 10, 2026.
Transparency logRelease files / goodfella-0.1.5-py3-none-any.whl
| Download URL | goodfella-0.1.5-py3-none-any.whl |
|---|---|
| Size | 39.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a41161a9f3714b46a0cf320221af228181acee6060e9867639c8c03d3065f84d
|
|
BLAKE2b-256 checksum How to use checksums |
90579367e837d6af5751589f443607f1e0d7cc981d062bae5db203ac95e3c5d1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 10, 2026.
Transparency log