Record evidence for
AI-assisted development
evidtrail records scoped evidence, declared autonomy, and repository change signals— with assumptions and limits kept visible.
npm install -g @evidtrail/cli
Real output from this project's own repository. A young window says "no comparison yet" instead of inventing one.
Core Metrics
Repository Change Signals
How often eligible files are touched again within fixed horizons. Too-recent files stay visible and outside the denominator; retouch is not presented as a defect.
Quality Over Time
The repo compared with its own past — the comparator that still works once AI touches nearly every commit. Every period measured through the same window; periods too recent to judge are never compared.
Autonomy, not the binary
Two orthogonal axes: what level of AI participated (autocomplete / assisted / agent) and how we know. Cohort tables render only where real evidence backs them — an assumption never becomes a table.
Declared provenance
The commit hook stamps a mode when EVIDTRAIL_MODE, a supported agent environment, or a team-configured default determines it. When evidtrail cannot know, it writes nothing — unknown remains honest.
PR Comments
Post evidtrail reports directly on pull requests and merge requests. GitHub Actions and GitLab CI are supported; comments are explicit network operations that require a token.
CI/CD Ready
Use the documented workflow with full Git history and scoped token permissions. It runs on every PR and updates its own comment automatically.
Get Started
Install globally
npm install -g @evidtrail/cli
Navigate to your Git repo
cd /path/to/your/repo
Run analysis
evidtrail collect --since 30d && evidtrail analyze && evidtrail report
Supported AI Tools
Known tool and trailer signals can establish AI involvement. They do not, by themselves, prove an autonomy mode; absent evidence remains visible as unknown.
CI/CD Integration
One step in your workflow. The action runs evidtrail doctor first, so a shallow checkout is refused before it can produce a confidently wrong report.
What evidtrail is — and is not
evidtrail does not infer productivity, defects, deployment, causality, capitalization, or developer performance from git history. It records what git can actually establish, with the limits kept visible.
- Does evidtrail measure developer productivity or the ROI of AI coding tools?
- No. It records provenance — who or what wrote a commit, and how that is known — and change signals — how often files are touched again within a fixed horizon. Nothing in git history can establish productivity or value, so evidtrail does not claim it.
- How does it know a commit came from an AI agent, without anyone labelling commits?
- A
prepare-commit-msghook, installed once per clone or automatically through apackage.jsonpreparescript, detects agent sessions (Claude Code, Cursor) from their environment and stamps anAI-Modetrailer. Tool co-author trailers are read as well. A commit with no signal staysunknown— it is never assumed to be human. - Why does it sometimes refuse to show a comparison?
- Because the comparison would describe an assumption, not the repository. Cohort tables appear only where at least one commit carries real evidence. A configured prior can place commits in a cohort, but it never creates a table on its own, never raises coverage, and is always labelled assumed.
- Why is the most recent month left out of the trend?
- A period that ended yesterday has had one day to be reworked; one from last year has had a year. Compared raw, every report would find quality declining. Every period is measured through the same observation window, and only periods that have been over for the full window are compared.
- Does it send code or commit data anywhere?
- Collection, analysis and reporting are local and offline. Two commands use the network, both opt-in:
fetch-prsreads pull request outcomes from the forge API,commentposts the report to a PR. Author identities can be redacted. - Wasn't this called AIDA Metrics?
- Yes, until 1.1. The name collided with the marketing funnel and an opera, and its expansion — "AI Development Accounting" — promised the cost-and-value reading the tool refuses to make. Same tool, same numbers:
@aida-dev/*,.aida.json,AIDA_MODEand theaidacommand keep working for one release and point at their new names.
Ready to make AI evidence auditable?
Start with the repository signals Git can support — and keep their limits visible.