AI-powered codebase health scanner
Project description
🩺 Vett — AI-Powered Codebase Health Scanner
Free alternative to SonarQube. Runs locally. Uses Claude AI.
Install
pip install anthropic click rich
pip install -e .
Usage
# Optional but recommended on Windows (prevents UnicodeEncodeError)
set PYTHONUTF8=1 # Windows CMD
$env:PYTHONUTF8=1 # PowerShell
# Step 1 — Set your API key (free at console.anthropic.com)
export ANTHROPIC_API_KEY=your-key-here # Mac/Linux
set ANTHROPIC_API_KEY=your-key-here # Windows CMD
$env:ANTHROPIC_API_KEY="your-key-here" # PowerShell
# Step 2 — Scan any project
vett scan . # scan current folder
vett scan ./my-project # scan a specific folder
vett scan . --no-ai # no API key needed, local checks only
python -m vett.cli scan . # fallback if `vett` is not in PATH
What it checks
| Check | Description |
|---|---|
| 🔐 Security | Hardcoded secrets, unsafe eval/exec, SQL injection |
| 📏 Complexity | Functions longer than 50 lines |
| 📦 Large files | Files over 300 lines |
| 📝 TODOs | Unresolved TODO/FIXME/HACK comments |
| 🤖 AI Analysis | Project summary, grade, strengths, suggestions |
Output
- Beautiful terminal report
vett_report.mdsaved in your project folder
Troubleshooting
vett: command not found-> runpython -m vett.cli scan . --no-aiUnicodeEncodeErroron Windows -> setPYTHONUTF8=1and run againNo API key found-> setANTHROPIC_API_KEYor use--no-aiNo source files found-> verify the target path includes supported code files (.py,.js,.ts, etc.)
Requirements
- Python 3.9+
- Anthropic API key (free tier available at console.anthropic.com)
Open Source
- License: MIT (
LICENSE) - Contributing guide:
CONTRIBUTING.md - Security policy:
SECURITY.md
Quick start for contributors
pip install anthropic click rich
pip install -e .
python -m vett.cli scan . --no-ai
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
vett-0.1.0.tar.gz
(10.0 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
vett-0.1.0-py3-none-any.whl
(10.2 kB
view details)
File details
Details for the file vett-0.1.0.tar.gz.
File metadata
- Download URL: vett-0.1.0.tar.gz
- Upload date:
- Size: 10.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3f399e4225a2f69d5f8817c99b4de4d4f9641ba6c5522830a569720611f5de60
|
|
| MD5 |
4ab2cd4e497aaa4264c19348c1afed20
|
|
| BLAKE2b-256 |
9c6dd5573b21440636155ddfdbc86ef393944353881778c3ef4ac7538b26f9ac
|
File details
Details for the file vett-0.1.0-py3-none-any.whl.
File metadata
- Download URL: vett-0.1.0-py3-none-any.whl
- Upload date:
- Size: 10.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c27a41172a0c97534e50309e0590513fcd873b277e197082c8b594996d582984
|
|
| MD5 |
8c6db99811739eaab644265e83687cc3
|
|
| BLAKE2b-256 |
4ccfe70ac4936605d3d7ce59a5e5f2680d940a9465e3aaa11c8ac64745ffe94c
|