Skip to main content

Source code quality evaluation platform powered by AI

Project description

Quodeq

AI-powered code quality evaluation

Evaluate any repository across six quality dimensions — Security, Reliability, Maintainability, Performance, Flexibility, and Usability — using LLM-driven analysis mapped to ISO 25010 and CWE classifications.


Install

# Recommended
pipx install quodeq

# Or with Homebrew
brew install quodeq/tap/quodeq

# Or with pip
pip install quodeq

From source (development)

git clone https://github.com/quodeq/quodeq.git
cd quodeq
uv sync

Prerequisites

Usage

Launch the dashboard

quodeq dashboard

Opens a web UI at http://localhost:4173 where you can browse evaluations and launch new ones.

Run an evaluation

# Local repository (auto-detects language)
quodeq evaluate /path/to/your/project

# Remote repository
quodeq evaluate git@github.com:org/repo.git

# Specific dimensions only
quodeq evaluate /path/to/project -d security,reliability

# Specific language plugin
quodeq evaluate /path/to/project -p typescript

Configure AI client

quodeq configure

CLI Reference

quodeq evaluate

Flag Default Description
repo (required) Path or URL to the repository
-p, --plugin auto-detect Plugin ID (typescript, python, kotlin, java, bash, mobile_ios)
-o, --output ~/.quodeq/evaluations Reports output directory
-m, --mode numerical Scoring mode: numerical or grades
-d, --dimensions all Comma-separated dimensions to evaluate
--evidence-only off Produce evidence JSON only (skip scoring)
--max-turns 200 Max AI conversation turns per dimension
--max-duration 1800 Max seconds per dimension
--no-prescan off Skip source-file counting

quodeq dashboard

Flag Default Description
--port 4173 Dashboard server port
--evaluations ~/.quodeq/evaluations Evaluations directory
--open true Open browser automatically
--no-build off Skip web UI build
--api-host auto Override Action API host
--api-port auto Override Action API port

Supported Languages

Plugin Languages
typescript TypeScript, JavaScript
python Python
kotlin Kotlin
java Java
bash Bash, Shell
mobile_ios Swift (iOS)

How it works

  1. Plugin detection — identifies the language and loads the matching evaluator
  2. Prompt building — assembles standards, knowledge bases, and dimension-specific prompts
  3. AI analysis — spawns the AI CLI with read-only tools for code exploration
  4. Evidence collection — findings stream as JSONL via MCP tool calls
  5. Scoring — maps findings to ISO 25010 principles with CWE classifications
  6. Reporting — produces per-dimension reports with grades, violations, and compliance

Evaluations are stored in ~/.quodeq/evaluations/ and persist across sessions.

Development

# Run tests
uv run pytest

# Start Action API (for UI dev)
uv run python -m quodeq.action_api

# Start dashboard in dev mode
cd ui/web && npm install && npm run dev

License

See LICENSE.

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

quodeq-0.4.0.tar.gz (395.8 kB view details)

Uploaded Source

Built Distribution

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

quodeq-0.4.0-py3-none-any.whl (457.0 kB view details)

Uploaded Python 3

File details

Details for the file quodeq-0.4.0.tar.gz.

File metadata

  • Download URL: quodeq-0.4.0.tar.gz
  • Upload date:
  • Size: 395.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.10 {"installer":{"name":"uv","version":"0.10.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for quodeq-0.4.0.tar.gz
Algorithm Hash digest
SHA256 1aa6df2cbdcefb9761bf712cc48cd18015e091ca6589d1db917f1725f5727d94
MD5 10f34bc68eb856c8e0abaeab25135360
BLAKE2b-256 081985dd54e8219c93f499953662ddb7bed3a7f0b676225ad6b89603406f905b

See more details on using hashes here.

File details

Details for the file quodeq-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: quodeq-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 457.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.10 {"installer":{"name":"uv","version":"0.10.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for quodeq-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7bab7f1b9d3559ec11180000381eada9410b79b232944ef9547c768b8070b248
MD5 b662b1be5e6f6adf61105eb223252eb5
BLAKE2b-256 de41d6e546f070139146c2bd76f8b56e17623de12d2ea74f746494f181c07b39

See more details on using hashes here.

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