Warning
This software is a product of Vibe Coding and is highly unstable. In particular, the documentation is largely fictional—please do not rely on it.
AI-powered code review for pre-commit hooks
Upsilon is an intelligent code review tool that leverages Anthropic's Claude AI to perform comprehensive code analysis during your git pre-commit process. It combines the power of large language models with traditional static analysis tools to provide context-aware feedback and catch issues that conventional linters often miss.
- 🤖 AI-Powered Analysis: Uses Anthropic's Claude for intelligent, context-aware code reviews
- 🛠️ Tool Integration: Seamlessly integrates with mypy, ruff, eslint, compilers, and other development tools
- 🌍 Multi-Language Support: Python, JavaScript, TypeScript, Go, Rust, C++, Julia, and more
- ⚙️ Highly Configurable: Customize rules, tools, prompts, and language settings
- 🔧 Pre-commit Integration: Works seamlessly with pre-commit hooks and CI/CD pipelines
- 📊 Rich Output: Beautiful CLI output with detailed issue reporting in multiple formats
pip install upsilon# Review specific files
upsilon review src/main.py src/utils.py
# Review all Python files in a directory
upsilon review src/*.py
# Use with pre-commit (reads from stdin)
git diff --cached --name-only | upsilon review --stdinCreate a configuration file (pyproject.toml, upsilon.yaml, or upsilon.toml):
# upsilon.yaml
model: claude-3-7-sonnet-20250219
max_tokens: 2000
temperature: 0.1
language: en
builtin_tools:
spell_check:
enabled: true
syntax_check:
enabled: true
import_analysis:
enabled: true
external_tools:
mypy:
command: mypy --no-error-summary
languages: [python]
enabled: true
ruff:
command: ruff check --no-fix
languages: [python]
enabled: trueAdd to your .pre-commit-config.yaml:
repos:
- repo: local
hooks:
- id: upsilon
name: Upsilon AI Code Review
entry: upsilon review --stdin --quiet
language: system
types: [python] # or other file types
pass_filenames: falseUpsilon goes beyond traditional linters to identify:
- Logic Errors: Potential bugs and logical inconsistencies
- Code Clarity: Readability and maintainability issues
- Best Practices: Language-specific conventions and patterns
- Security Issues: Potential vulnerabilities and unsafe patterns
- Performance: Bottlenecks and optimization opportunities
- Architecture: Design patterns and structural concerns
- Python (
.py,.pyi) - JavaScript (
.js,.jsx,.mjs) - TypeScript (
.ts,.tsx) - Go (
.go) - Rust (
.rs) - C++ (
.cpp,.hpp,.cc,.hh) - C (
.c,.h) - Julia (
.jl) - Java (
.java) - Ruby (
.rb) - PHP (
.php) - Shell (
.sh,.bash,.zsh)
For detailed documentation, configuration options, and advanced usage:
git clone https://github.com/user/upsilon.git
cd upsilon
rye syncrye test