EvalShift: Open-source CLI for detecting LLM regressions during model migration

EvalShift is an open-source Python CLI designed to detect regressions when switching between LLMs or model versions. It runs your golden input suite against both source and target models, evaluates outputs, and produces a local HTML report — no backend, accounts, or telemetry.
Key features
- Source vs target model comparison via LiteLLM
- JSONL golden suites with tags/slices
- Structural evaluators: JSON schema, regex, length
- Semantic evaluator: embedding similarity
- LLM-as-judge pairwise evaluation
- Tool-call evaluators: tool selection, argument matching, trace structure
- Paired statistical tests: t-test / Wilcoxon
- Effect sizes: Cohen's d
- Multiple-comparison correction: Benjamini-Hochberg
- Slice-level breakdowns
- Local caching to control cost
- Resumable runs
- Single-file HTML report + JSON output
The project's narrow goal is migration safety: “Can I switch models without breaking my prompt/agent behavior?” The author emphasizes catching silent agent regressions — e.g., a newer model producing a decent-looking final answer but skipping a required tool call, calling the wrong tool, or mutating arguments.
Use cases
- Claude 4.5 → Claude 5
- GPT-5 → GPT-6
- Gemini 2 → 3
- Local model → hosted model
The author is seeking feedback on usefulness for local vs hosted models, most important evaluator types for local LLM workflows, and whether tool-call/structured-output regressions are a real pain point. The repo is MIT licensed.
📖 Read the full source: r/LocalLLaMA
👀 See Also

Claude Code Built Treelo: A Free Video Transcription Tool
A video editor used Claude Code to build Treelo, a free tool that transcribes video/audio files, removes filler words, allows SFX placement at exact timestamps, and exports SRT for Premiere or ASS for DaVinci Resolve.

Tacit: An LLM-First Programming Language Built with Claude Code and Opus 4.7
Tacit is an experimental LLM-first programming language designed and implemented using Claude Code and Opus 4.7. It strips away human conveniences to minimize token usage and ships with a primer that teaches mid-tier+ LLMs (Sonnet and above) how to write Tacit code.

Fehu: CLI Double-Entry Bookkeeping with Claude AI MCP Integration
Fehu is a lightweight CLI personal accounting tool that connects to Claude AI via MCP, allowing natural language transaction recording with a SQLite-backed double-entry system. It features hierarchical accounts, auto-tagging with hashtags, a powerful calc engine, and multi-currency support.

SprintiQ: Open-Source Sprint Planning for Claude Code
SprintiQ is an open-source agile platform that acts as an orchestration layer for Claude Code, offering AI-powered user story generation, sprint planning, velocity tracking, and a CLI that syncs git activity to sprints in real time.