algovoi-keystone-agent is the
open (Apache-2.0) behaviour layer that sits on top of keystone-connect:
connectors bind each write to the decision that authorised it, and behaviours decide, gate and
react to those writes. Every firing reduces to one primitive,
ref = "sha256:" + SHA-256(RFC 8785 JCS(payload)), so a behaviour’s verdict is itself a verifiable
Keystone record with no AlgoVoi software in your trust base.
Like the rest of the Keystone family,
algovoi-keystone-agent installs from the Keystone control
panel: the integrity path, from the AlgoVoi index that is baked into the installer, so you run the
validated build rather than a mutable public artifact. New releases land on the AlgoVoi index first;
PyPI mirrors follow for those not using the panel.Install
keystone doctor verification are documented once on the
Keystone install hub.
Three small pieces
A governing behaviour is a rule (a pure predicate to a verdict), a trigger (when it wakes), and an optional action (what to do). That is the whole model:"ALLOW", "FLAG" or "BLOCK" (or a bool). Engine.dispatch(event) fires every
behaviour whose trigger matches and appends a self-describing behaviour_ref record to engine.log;
Engine.verdict(event) returns the strongest verdict, ordered BLOCK over FLAG over ALLOW.
Gate a real write
Engine.guard(client) wraps a keystone-connect client so each call is dispatched as an event first.
A BLOCK denies the call before it reaches the data plane; reads and non-matching calls pass
straight through, because their triggers simply do not match.
Ready-made behaviours
Thelibrary module ships the common policies so a guardrail is one call, not a lambda. Each rule is
a pure function of a single event and reads both flat stage records and guarded-connector calls:
Test a behaviour at any stage
You do not need a live gateway or real payments.synth_event(stage) stands in for whatever precedes
your behaviour, and the check battery verifies the keystone properties offline.
- A behaviour
- A rule or trigger
The conformance battery
Both checks return aReport with an ok roll-up. Between them they assert:
A behaviour that ignores its
decision_ref, or a rule that is not deterministic, fails report.ok.
The harness never crashes on a broken behaviour; it reports the failure.
One primitive
Everything above is one function:behaviour_ref with a stock RFC 8785 implementation and standard SHA-256,
with no AlgoVoi software involved. That is what lets an agent be governed by rules whose every
decision is independently verifiable. See Build a bolt-on, the
connector catalogue and the Keystone chain.