All use cases

Auto-write tests for every code change — overnight

Zero scans merged PRs for untested files, writes tests following your conventions, and opens a PR — so you start each day with better coverage.

Zero connects:GitHubLinearSlack

Why test coverage always slips — and how to fix it

It's Tuesday morning. CI is red — coverage dropped from 82% to 79% overnight because someone merged a new feature with zero tests. Again. You could stop what you're doing, read their code, and write tests yourself. Or you could have Zero do it every morning at 4 AM, so when you sit down, there's already a test PR waiting for review.

How to ask Zero to auto-cover your code

@Zero check all merged PRs from the past 24 hours in vm0-ai/vm0. For each changed file that has no corresponding test file, write integration tests following the project's testing patterns. Open a single PR with all new tests.

How Zero writes tests while you sleep

Zero scans merged PRs for uncovered files
Zero queries GitHub for recently merged pull requests, lists every changed file, and cross-references against your test directory. Files that have no corresponding test file get flagged for coverage.
Zero writes tests following your project's conventions
Zero reads the source file, understands the component or function's interface, checks your existing test patterns (framework, imports, helpers, assertion style), and writes tests that blend in — same structure, same patterns, same quality bar.
Zero opens a PR and posts a summary
All generated tests land in a single pull request with a clear description of what's covered. Zero posts a summary table to Slack showing which files got tests and how many. CI runs automatically, and Zero follows up with the result.

Keep your coverage climbing

Review and merge the test PR
Check the generated tests and merge if they look good.
@Zero what's the CI status on the test PR #10153?
Exclude generated or config files
Tell Zero which files to skip so it focuses on meaningful coverage.
@Zero when auto-covering tests, skip any files in generated/, *.d.ts, and config files
Make it routine
Schedule daily test generation so coverage never slips again.
@Zero every day at 4am, scan for merged changes without tests, write them, and open a PR

Required integrations: GitHub and Slack

GitHub
GitHub
GitHub — read access to scan merged PRs and changed files. Write access to open pull requests with generated tests.
Required
Slack
Slack
Slack — posts a summary of generated tests and CI results to your team channel.
Required
Linear
Linear
useCases.content.auto-test-coverage.integrations.2.description
Optional

Best practices for automated test generation

Be explicit about your test framework and patterns — "use vitest with @testing-library/react, follow the arrange-act-assert pattern" produces much better output.
Run it overnight so the test PR is ready for review when the team starts work. 4 AM is a good default — it runs after any late-night merges.
Chain with tech-debt-scan for comprehensive code health: tech debt catches anti-patterns, auto-test-coverage catches gaps, together they keep your codebase clean.