Repo triage
Finds package managers, tests, entrypoints, and the likely failure path before touching code.
finishit diagnose scripts -> test, build risk -> stale deps
Give FinishIt a stale repo. It clones, diagnoses the smallest useful finish line, patches the code, runs checks, and opens a PR with the work explained.
npx @finishit/finishit github.com/you/that-repo-from-2024
FinishIt is for repos that are close enough to rescue: half-built CLIs, abandoned demos, broken package upgrades, and apps that need one disciplined pass before review.
Finds package managers, tests, entrypoints, and the likely failure path before touching code.
finishit diagnose scripts -> test, build risk -> stale deps
Asks the configured model for a narrow implementation and keeps generated work tied to the discovered task.
task -> make CLI usable diff -> focused mode -> PR-ready
Runs the checks it can run locally and writes the pull request summary around evidence, not vibes.
checks -> build/test summary -> commands handoff -> limitations
Provider routing is controlled by the model name or by the tools already on your PATH. Use Codex or Claude Code for subscription-backed runs, APIs for hosted models, and Ollama for local work.
Local, no API key. Any non-Claude and non-OpenAI model id routes to Ollama.
ollama serve ollama pull qwen2.5-coder:14b npx @finishit/finishit . --model qwen2.5-coder:14b
Use the Claude Code CLI or an Anthropic API key. Claude model names route to Anthropic.
npm i -g @anthropic-ai/claude-code npx @finishit/finishit . --model claude-code export ANTHROPIC_API_KEY=sk-ant-... npx @finishit/finishit . --model claude-sonnet-4-6
Use Codex CLI or an OpenAI API key. GPT and o-series names route to OpenAI.
brew install codex npx @finishit/finishit . --model codex export OPENAI_API_KEY=sk-... npx @finishit/finishit . --model gpt-5
The tool biases toward boring, reviewable progress: local clone, narrow diagnosis, explicit provider selection, checks before PR, and no hidden dashboard dependency.