Skip to main content

Strict Pair Programmer CLI — AI-powered software architecture reviewer

Project description

🎩 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):

  1. Certifique-se de que o Ollama está instalado e rodando no seu terminal (ollama serve).
  2. Baixe o modelo padrão do Goodfella (Qwen 2.5 Coder):
    ollama pull qwen2.5-coder:7b
    
  3. Rode o comando goodfella no 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.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

goodfella-0.1.3.tar.gz (287.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

goodfella-0.1.3-py3-none-any.whl (34.9 kB view details)

Uploaded Python 3

File details

Details for the file goodfella-0.1.3.tar.gz.

File metadata

  • Download URL: goodfella-0.1.3.tar.gz
  • Upload date:
  • Size: 287.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for goodfella-0.1.3.tar.gz
Algorithm Hash digest
SHA256 ece65a3eb8ede118c50af84811c03ad187d3bc47a27a051a430bbdf392460ccb
MD5 89fad01c2fc05ee7272ebe87450107a6
BLAKE2b-256 cf4cea23d770a83164fc018affd9eeae611cac3447fe993fff3b3913303dcf7a

See more details on using hashes here.

Provenance

The following attestation bundles were made for goodfella-0.1.3.tar.gz:

Publisher: publish.yml on BrunoSaintClair/goodfella-ai

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file goodfella-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: goodfella-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 34.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for goodfella-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 4101b10a795b017e7f61df8c5aa300b4ac3e53b407ddc2312320e97858baaa27
MD5 68c72e00a9846f3c7d390630db2fc5ef
BLAKE2b-256 fdae3c54bacaa3f880bc9732fd5f49a0add9f448cdefcef7ae3140aa101ab1da

See more details on using hashes here.

Provenance

The following attestation bundles were made for goodfella-0.1.3-py3-none-any.whl:

Publisher: publish.yml on BrunoSaintClair/goodfella-ai

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page