Skip to content

hummbl-dev/arbiter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

183 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Arbiter

CI PyPI Python 3.11+ License

Agent attribution for code quality.
Install arbiter-score, run arbiter score, and quickly see which AI agent or human produced your highest-risk code.

pip install "arbiter-score[analyzers]"
arbiter score .

Example output:

┌──────────────────────┬──────────┬────────┐
│ Agent                │ Quality  │ Grade  │
├──────────────────────┼──────────┼────────┤
│ claude               │ 72.3%    │ C      │
│ gpt-4o               │ 88.1%    │ B      │
│ copilot              │ 91.4%    │ A      │
│ human (you)          │ 94.2%    │ A      │
└──────────────────────┴──────────┴────────┘

Every team using AI coding tools has a "who wrote this mess?" moment. Arbiter makes that visible -- per file, per commit, and per author -- then grades the code quality signal.

pip install "arbiter-score[analyzers]"    # one-time install
arbiter score .                         # grade everything
arbiter diff . --base main              # only changed files in this branch
arbiter agents                          # author leaderboard
arbiter trend --days 30                 # quality over time
arbiter worst --limit 20                # highest-risk files
arbiter audit-fleet ./repos             # score every repo in a directory
arbiter serve                           # start web dashboard

Why Arbiter exists

AI-written code often optimizes for speed over maintainability. The result can include unused imports, high complexity, duplicated logic, and risky patterns. Standard linters catch some symptoms; Arbiter also attributes risk back to the contributor model/actor so you can review the right places first.

In practice, teams tune gates per agent tier (for example: stricter thresholds for autonomous agents, looser for exploratory branches) and keep human review focused on high-risk commits.

What makes Arbiter different

Feature Traditional tools Arbiter
Agent attribution None First-class: tracks contribution source (AI and humans)
Per-commit scoring Repository-wide only Scores changed files by commit and author
Diff analysis Optional / limited Scores only what changed in PR/branch workflows
Review workflows Static report Supports agent-specific gate thresholds
Dashboard output SaaS + build steps Local, single-file HTML dashboard endpoint
Core runtime Multi-tool runtime Lightweight core (LibCST only); optional analyzer dependencies

Scoring model

Analyzer Weight Finds
Lint (ruff) 35% Style violations, import errors, bugbear patterns
Security (bandit) 30% Hardcoded secrets, shell injection, risky command patterns
Complexity (radon) 35% Cyclomatic complexity by function (A-F)
Dead code (vulture) penalty Unused functions, imports, variables
Duplication (AST hash) penalty Near-duplicate function bodies

Arbiter computes a normalized score from analyzer penalties and total lines of code.

Common format:

100 - (penalty / LOC) * normalization

Grades: A (90+), B (80+), C (70+), D (60+), F (<60).

Install

From PyPI (recommended)

pip install arbiter-score                    # core (LibCST runtime)
pip install "arbiter-score[analyzers]"       # + ruff, radon, vulture, bandit

Note: The PyPI package is arbiter-score (not arbiter, which is different). The CLI command is arbiter.

From source

git clone https://github.com/hummbl-dev/arbiter.git && cd arbiter
pip install -e ".[analyzers]"

Tests

pip install -e ".[test]"
python -m pytest tests/ -v

Requirements

  • Python 3.11+
  • git

Quality gates

Arbiter enforces quality checks in CI.

arbiter score . --fail-under 90 --json
arbiter diff . --base main --fail-under 80

Common gotchas

  • Use arbiter-score package name to avoid installing the wrong package.
  • Run from repository root for consistent path reporting and results.
  • Optional analyzers improve signal quality, but many core checks run without the analyzer extras installed.

License

Apache 2.0 — see LICENSE.


Built by HUMMBL.

About

Agent-aware code quality scoring — cyclomatic complexity, dependency analysis, test coverage, governance compliance. Grades repos A through F with evidence-backed findings.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors

Languages