Create a record when the action happens.
Bind the declared actor, tool, scope, and action to an exact signed envelope.
matrixscroll hook installmatrixscroll envelope create
Read the signing quickstart →
Open protocol · Apache-2.0 · release 0.7.0
Matrix Scroll creates signed records for the declared actor, tool, scope, and action. Reviewers can verify them offline in the CLI, browser, or CI.
SSX360 uses Matrix Scroll to package signed records for offline review.
See it work
Install the pinned release, create signed records, then require the same verification in local review and CI.
pip install "matrixscroll==0.7.0"
Verification proves origin from the key holder and detects changes. It does not prove that the action was authorized.
Three workflows
The 14-tool MCP server remains part of release 0.7.0. The complete tool ledger and behavior are documented in the quickstart.
Bind the declared actor, tool, scope, and action to an exact signed envelope.
matrixscroll hook installmatrixscroll envelope create
Read the signing quickstart →
Use the CLI or browser verifier. The check runs offline and requires no Matrix Scroll account.
Open the verifier →Scroll Gate walks the pull-request range and identifies every missing or invalid record before merge.
Configure Git and CI →
Dedicated signer
The private Ed25519 key remains inside the secure element. The device returns signatures to the same Matrix Scroll verifier used by the software signer.
matrixscroll[mcp,hardware]==0.7.0connect_cardRelease 0.7.0
Shipping now: PyPI 0.7.0, software signing, the 14-tool MCP server, Git hooks, Scroll Gate range checks, browser verification, MCP surface scanning, and USB signer host support.
Separate path: The physical signer is supplied through direct contact. PyPI distributes its host software.
Authorization boundary: Actor, tool, scope, and action are declared origin fields. A valid signature proves the record came from the key holder and was not changed; it does not establish that the action was approved.
Post-quantum overlay: ML-DSA and SLH-DSA run through liboqs. Treat this as an algorithm implementation. liboqs states that it should not protect sensitive production data.