AI writes code.
ShipCheck proves it.

Specialized agents inspect code, tests, history, contracts, and runtime behavior, then produce one evidence-backed ship decision.

ShipCheck product overview

From GitHub event to governed verdict.

Agents collect independent evidence, the proof engine resolves it, and ShipCheck publishes one clear merge decision.

shipcheck / verification-run #1842
GitHub pull requestbase → head
Agent swarm
Contextcode · history
Contracts12 invariants
Runtimebase · head
Proof enginecoverage · policy
GitHub verdict0 regressions
00:04.281runtime.compare

base passed · head passed · behavior preserved

verified

Specialized agents investigate.
Policy decides what counts as proof.

ShipCheck decomposes verification into bounded jobs, persists their evidence, and applies deterministic policy before a result affects the ship verdict.

01
agent.context

Repository context agent

Builds a bounded graph of changed code, callers, tests, schemas, authorization boundaries, and the history that explains why behavior exists.

02
agent.contract

Behavior verification agent

Matches the change against versioned invariants and scenarios, then demands the exact evidence each Behavior Contract requires.

03
agent.runtime

Differential execution agent

Runs the same protected scenario against base and head to separate new regressions from pre-existing failures.

Evidence policyv2.4
citation integrity92%
scenario coverage84%
contradictions4/4

Runtime proof required for critical contracts

Uncited claims remain inconclusive

Regressions block the merge gate

The agents do not start from zero on every pull request.

Behavior Contracts define what must remain true, how important it is, and which evidence is strong enough to verify it.

Read the contract model
checkout.authorizationcontract v7

criticalityregulated

enforcementblock

invariantauthorization precedes payment intent

scenariounauthenticated checkout → 401

evidenceruntime + differential

contract
v7
middleware.tscheckout.test.tsincident #42consumer API
Introduced in 91a8c2 · learned from incident #42 · approved by platform-security

Same scenario. Two revisions.
A regression has nowhere to hide.

basea18f4c
$ pnpm vitest checkout.auth
PASSrejects unauthenticated payment intent
headd903be
$ pnpm vitest checkout.auth
PASSrejects unauthenticated payment intent

Every escaped regression makes the system harder to break twice.

Pre-merge evidence, production observation, and incident learning share the same behavioral model.

01

Change

A pull request changes observable behavior.

02

Verify

Agents investigate code, contracts, and runtime evidence.

03

Govern

Policy produces a verdict and merge check.

04

Observe

Production Sentinels detect drift after deploy.

05

Learn

Incidents become new invariants and scenarios.

Give your coding agents
a system of judgment.

Connect GitHub. Discover the behavior your codebase depends on. Verify every change against evidence.

GitHub-native · Free during beta · No credit card