Code removal with an engineer's care
YAGNI maps your full call graph, finds paths production never exercises, and removes them through verified pull requests.
Mapping live and dead paths
YAGNI creates a complete call graph from your codebase and compares it with runtime traces to find every path production has never reached.
Safe, incremental, reviewable
One pull request per removal
YAGNI does not push straight to your main branch. Each removal batch becomes a separate pull request limited to confirmed-dead modules, so your team reviews the diff before merging.
Ignore patterns respected
Place a .yagniignore file at the repository root to keep directories, files, or patterns out of analysis. Migration paths, stable deprecated APIs, and vendor bundles remain untouched.
Human review for higher-risk removals
Removals involving high fan-in, dynamic dispatch, or reflection receive a caution label rather than an automatic pull request. Your team decides whether to continue.
Full audit trail
YAGNI records every analysis, proposed removal, and merged pull request. The Engineering plan lets you export the complete removal history as CSV.
Tests must pass before a merge
YAGNI runs your existing test suite in an isolated container before opening a pull request. Failed tests hold the PR, and you get a report detailing what failed and why.
CI Integration
Connects to GitHub Actions, GitLab CI, and Bitbucket Pipelines. YAGNI reads your existing CI configuration and runs tests in the same environment your team already trusts.
Ephemeral runs
Every analysis runs in an ephemeral container without network access. Your code is discarded when the run ends, leaving no side effects or persistent state.
Target branch
YAGNI opens pull requests on the branch you choose, not directly on your default protected branch. You decide where removal PRs are sent.
Automatic rollback
If a merged removal causes a production issue, YAGNI can open a revert PR automatically. Git history keeps the rollback clean and traceable.
Connect a repository today
Begin with a free read-only analysis. See what YAGNI proposes removing before changes.