Skip to main content
A resolver is a program Hibi spawns to grade an anchor kind, run a verifier, or attach advisories. Hibi talks to it in JSONL-RPC over stdio. The SDK is one export from the main package that handles the framing:
For the protocol, the manifest, and override, see Resolvers.

The handler

verify receives no file contents. A grader that only handles anchors omits verify (the server answers with an unknown-method error, and the engine records no result). A runner can return an empty kinds list and handle only verify. tier defaults to 1; 3 is the advisory tier.

Exports

@npupko/hibi/resolver exports serveResolver, ResolverHandler, the protocol types (DescribeResult, ResolveParams, ResolveResult, VerifyParams, VerifyResult, RpcRequest, RpcResponse, PROTOCOL_VERSION, LineFramer, encodeLine), and the model types (Assertion, Anchor, AnchorState, BehaviorState, Selector, SelectorBundle, Verdict, VerdictEvidence, Verifier, Advisory, ChangedEvidence, Enforcement, Proposition).

Other languages

Every message has a JSON Schema generated from the Zod model. Print one with hibi schema --name <Name>, or read schemas/*.v3.json in the repository. A resolver in any language reads one JSON object per line on stdin and writes one per line on stdout.

Next

Resolvers

The protocol, the manifest, and the override flag.

Behavioral claims

Where verify fits.