MultiTool Checks

Overview

MultiTool Checks is a free, open-source command-line tool that verifies a codebase meets requirements you define. You write each requirement in a CHECKS.md file, run multi check, and get a pass or fail for each one. It works like a test suite, but for requirements that have no obvious unit test, such as "authentication lives in one service," "no serif fonts," or "every public function is documented." Each requirement is evaluated by an AI agent, so you can state it in plain language.

Why it exists

Two kinds of requirements are difficult to keep enforced. The first are requirements that erode over time due to multi-session drift: when work on a codebase spans many agent sessions and constraints set early (architectural boundaries, conventions) get forgotten later. Catching multi-session drift is the primary reason we built this tool.

The second type of requirement that's hard to enforce is the kind that was never testable to begin with. You can unit-test a function's return value, but not "handlers contain no business logic." Requirements like these usually live in someone's head or a review comment. Checks make them explicit and repeatable.

How it works

You declare requirements in a CHECKS.md file in your repository. Each requirement has one or more checks, and passes only if all of them pass.

# Requirement No GPL dependencies

Third-party licenses must stay compatible with our closed-source distribution.

## Check No GPL licenses

No dependency in the project is licensed under the GPL.

Running multi check finds every CHECKS.md in the project and evaluates each check independently. A few things are worth knowing:

  • Each check runs in its own fresh context. The agent sees only that check and your code, so every verdict maps to a single requirement.
  • The agent is read-only. It inspects a sandboxed copy of your code and never modifies or runs your project.
  • Every failure includes evidence: the file, line, or reason the check did not pass.

Where it fits

MultiTool Checks runs locally and in CI. It exits non-zero when any requirement fails, so you can gate a merge on it. Because CHECKS.md files are plain Markdown kept beside your code, requirements are version-controlled and reviewed like any other change.

Current scope

Today the tool runs on macOS and Linux, and checks are prompts evaluated by an AI agent. You bring your own API key for Anthropic, OpenAI, or Gemini. Planned work includes Windows support, shell-based and executable checks, and browser-based checks for frontend behavior.