Skip to main content
Bolting onto the Keystone should be small. algovoi-keystone-connect is an open (Apache-2.0) toolkit with two halves: build a data-plane connector from a declarative spec, and test any bolt-on at any stage of the chain, fully offline. Every reference reduces to one primitive, ref = "sha256:" + SHA-256(RFC 8785 JCS(payload)), so there is no AlgoVoi software in your trust base and nothing new to learn.
algovoi-keystone-connect is pure Python and readable on purpose: the whole binding is about thirty inspectable lines. It installs from the Keystone control panel (the integrity path, from the AlgoVoi index) and, like the connectors, is also available from PyPI for those not using the panel. Its output is byte-identical to the hand-written connectors, so records drop straight into algovoi-keystone-validate.

Install

CPython 3.10 to 3.13 on Linux (x86_64 / aarch64) or Windows (AMD64). Prerequisites, the AlgoVoi-index integrity path, control-panel setup, and keystone doctor verification are documented once on the Keystone install hub.

Build a connector

A connector binds each real write on a data plane to the decision_ref that authorised it. With the toolkit that is a spec, not a class:
That is a complete connector. writes maps each write method to (action, scope_fn). The scope_fn(call) receives a Call(args, kwargs, client), so it reads call.kwargs or call.args for per-call values and call.client for fixed context such as a container name or a queue entity. Reads pass through unbound; a write that raises is recorded FAILED and re-raised. The emitted execution_ref is byte-identical to the hand-written algovoi-keystone-s3, so the short way and the long-hand way are provably the same.

Test a bolt-on at any stage

You do not need a live gateway or real payments to know a bolt-on is correct. synth_ref(stage) gives a content-addressed stand-in for whatever precedes your bolt-on, and the check battery verifies the keystone properties.
check_ref_builder works at any stage of the chain, passport through trust_query, because every stage is the same primitive over its own payload.

The conformance battery

Both checks return a Report with an ok roll-up. Between them they assert: A connector that ignores its decision_ref, or a ref-builder that is not content-addressed, fails report.ok. The harness never crashes on a broken bolt-on; it reports the failure.

Package and publish

For internal use the connector(...) value is enough: wrap your client and go. To share a connector, wrap it in a small module and publish it like any other Keystone bolt-on, per Publishing a Keystone bolt-on. Consumers get the same one-line ergonomics and can self-certify with the same check_connector battery, so coverage of new data planes becomes the ecosystem’s job, not a bottleneck.

One primitive

Everything above is one function:
Any party recomputes any reference with a stock RFC 8785 implementation and standard SHA-256, with no AlgoVoi software involved. That is what lets a developer build on the Keystone without adopting it into their trust base. See the connector catalogue and the Keystone chain.