Skip to content

bimakw/detective-benno

Repository files navigation

Detective Benno Logo

Detective Benno

PyPI

LLM-powered code review tool that investigates your code for bugs, security issues, and code smells. Supports multiple LLM providers and runs as a CLI or GitHub Action.

Features

  • Multi-provider — OpenAI, Anthropic, Google Gemini, Groq, and local models via Ollama
  • Smart Analysis — detects bugs, security vulnerabilities, code smells, and logic errors
  • Git-aware — review staged changes, diffs between branches, or entire directories
  • Configurable — severity levels, ignore patterns, custom rules via .benno.yaml
  • GitHub Action — automated PR review with inline comments
  • Fast — parallel file analysis with configurable concurrency

Install

pip install detective-benno

Usage

# review a file or directory
benno investigate src/main.py
benno investigate src/

# review staged changes
benno staged

# review a branch diff
git diff main..feature | benno diff

Switch Providers

benno investigate --provider ollama --model codellama src/
benno investigate --provider anthropic src/
benno investigate --provider gemini src/

Configuration

Run benno init to create a .benno.yaml:

provider: openai
model: gpt-4o
severity: medium        # minimum severity to report
ignore:
  - "*.test.go"
  - "vendor/"
concurrency: 4

GitHub Action

- uses: bimakw/detective-benno@v1
  with:
    github_token: ${{ secrets.GITHUB_TOKEN }}
    openai_api_key: ${{ secrets.OPENAI_API_KEY }}
    severity: medium

Testing

pytest

License

Apache 2.0 — see LICENSE.

About

Code review bot that comments on PRs

Resources

License

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages