Temporal Code Intelligence
Static analysis tells you a file is complex. GitVoyant tells you whether that complexity is growing.
Time-series complexity analysis across Python, JavaScript, Java, and Go. Trend detection, confidence scoring, and predictive decay forecasting on Git commit history.
How It Works
The temporal evaluation pipeline
Every file in your repository has a complexity trajectory. GitVoyant extracts it, measures it, and classifies it.
Commit History
→
AST Analysis
→
Complexity Time Series
→
Linear Regression
→
Trend Classification
01
Extract
Retrieve commit history for each source file. Compute cyclomatic complexity at every snapshot using language-specific parsers.
02
Analyze
Fit linear regression to the complexity time series. Compute trend slope as complexity change per month. Score confidence based on commit history depth.
03
Classify
Classify each file as IMPROVING, DECLINING, or STABLE. Forecast quality decay risk bounded between 0 and 1. Surface the files that need attention.
| File |
Trend |
Score |
Confidence |
Risk |
| src/api/handlers.py |
[-] DECLINING |
+2.3 |
0.91 |
HIGH |
| src/core/engine.go |
[~] STABLE |
+0.1 |
0.87 |
LOW |
| src/utils/transform.js |
[+] IMPROVING |
-1.4 |
0.93 |
LOW |
| src/models/User.java |
[-] DECLINING |
+1.8 |
0.85 |
MEDIUM |
| src/services/auth.py |
[+] IMPROVING |
-0.6 |
0.90 |
LOW |
| src/routes/index.ts |
[~] STABLE |
+0.0 |
0.72 |
LOW |
Repository Health: STABLE | 6 files analyzed | 4 languages detected
Languages
Four parsers, one protocol
Each language has a dedicated analyzer implementing a common interface. Language detection is automatic based on file extension.
JavaScript
tree-sitter
.js .jsx .ts
Quick Start
Three commands to running
Clone, bootstrap, analyze. GitVoyant uses UV for dependency management and provides a Makefile for all common operations.
git clone https://github.com/Cre4T3Tiv3/gitvoyant.git
cd gitvoyant
make bootstrap
gitvoyant analyze temporal /path/to/repo
gitvoyant analyze temporal /path/to/repo --language javascript
gitvoyant analyze agent