Skip to main content
You changed a constant in src/auth.ts. Three sentences across your README and CLAUDE.md quietly became wrong, and nobody will notice until a teammate — or an AI agent — trusts one of them. Run hibi diff --since origin/main and Hibi names the exact sentences your change broke, then hands you the command to fix each. Hibi (日々, “day after day”) tracks claims: sentences in your docs and AI-agent instruction files that assert how the code behaves. You anchor each claim to the code it describes. When either side drifts (you change the code, or you edit the documented sentence itself), hibi check flags the claim and can stamp a status banner into the doc, so no reader, and no agent, acts on a page that has fallen out of sync with the source. Run it in CI, in a git hook, or as a pre-edit lookup an agent makes before it trusts a doc.

The mental model

A claim is a binding between a documented sentence and the code it describes. You record one with hibi record, pointing at a span of prose and the code span(s) it asserts something about. Hibi stores a bidirectional anchor (pointers to both sides, not a copy of the prose) in a committed store beside your docs (.claims/, one file per claim). On every hibi check, Hibi resolves the doc side first: it re-reads the live sentence from the current document. If that sentence is gone or has been edited, Hibi flags the claim and stops. It will not verify a stale sentence against code as if it still existed. If the sentence is intact, Hibi localizes the code side and grades whether the code still matches. The result is a verdict with two independent axes, read like doc:unchanged · code:changed · behavior:at-risk. A flag is a request to re-verify, not a claim that the doc is wrong: the evidence under the sentence moved, and a human or agent decides what the prose should now say. Hibi never rewrites prose. It flags, and can stamp a banner.
Hibi is deterministic: no model runs in the check loop. The same working tree always yields the same verdicts. An optional semantic resolver may advise out-of-process, but it never decides a verdict and never gates.

Start here

Quickstart

Install Hibi and record your first claim in a couple of minutes.

How it works

Claims, anchors, and the doc-first flow that grades verdicts deterministically.

Why Hibi

The problem, the threat model, and why no model sits on the verdict path.

CLI reference

Every command, flag, exit code, and strictness level.

Resolvers & SDKs

Extend drift detection with out-of-process resolvers in any language.

Claude Code skill

Install the official Agent Skill so coding agents use Hibi correctly.

What you can rely on

Deterministic

No model runs in the check loop, so the same working tree yields the same verdicts every time. The optional semantic resolver only advises.

A flag means re-verify

Hibi reports that the evidence under a claim moved: suspect, not false. It never declares a doc wrong on its own.

Any file format

Hibi treats docs as text, so Markdown, plain text, AsciiDoc, or anything else works without a per-format parser in the core.

Offline & shallow-clone safe

The anchor is its own baseline, so check reads your files, never git history. It stays correct even under git clone --depth=1.