matrixscroll 0.3.0__tar.gz → 0.4.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/PKG-INFO +20 -33
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/README.md +13 -27
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/docs/ADOPTER_KIT.md +3 -3
- matrixscroll-0.4.0/docs/ADOPTION.md +13 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/docs/COMPARISON.md +1 -1
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/docs/FIVE_MINUTES.md +2 -2
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/docs/ROADMAP_2026-07.md +2 -2
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/docs/WHITEPAPER.md +4 -4
- matrixscroll-0.4.0/docs/commercial/PLATFORM_PIVOT.md +62 -0
- matrixscroll-0.4.0/docs/commercial/SCROLL_GATE_V2.md +47 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/docs/hardware-provider.md +1 -1
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/docs/quickstart-agent.md +1 -1
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/docs/quickstart-claude-code.md +1 -1
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/docs/quickstart-git.md +4 -4
- matrixscroll-0.4.0/docs/quickstart-mcp.md +62 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/docs/rekor-guac-bridge-design.md +1 -1
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/examples/ci/protected-branch.yml +3 -3
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/matrixscroll/__init__.py +1 -1
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/matrixscroll/_claim.py +1 -1
- matrixscroll-0.4.0/matrixscroll/cloud/__init__.py +19 -0
- matrixscroll-0.4.0/matrixscroll/cloud/client.py +91 -0
- matrixscroll-0.4.0/matrixscroll/mcp.py +417 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/matrixscroll/providers/se050_transport.py +1 -1
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/pyproject.toml +9 -8
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/tests/test_release_metadata.py +2 -2
- matrixscroll-0.3.0/docs/quickstart-mcp.md +0 -50
- matrixscroll-0.3.0/matrixscroll/mcp.py +0 -167
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/.gitignore +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/CHANGELOG.md +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/CONTRIBUTING.md +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/LICENSE +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/SECURITY.md +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/SPEC.md +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/controls/agentic_ai_controls.json +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/docs/AGENTIC_AI_SECURITY.md +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/docs/CI_HARD_GATE.md +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/docs/COMMIT_TIME_VS_ARTIFACT_TIME.md +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/docs/HERO_DEMO.md +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/docs/SE050_POC_SCOPE.md +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/docs/SE050_USB_PROTOCOL.md +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/docs/SOFTWARE_PRODUCTS.md +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/docs/delegation-attestation-rfc.md +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/docs/registries-guide.md +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/docs/superpowers/plans/2026-06-19-ci-action-plan.md +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/docs/superpowers/plans/2026-06-19-sdk-refactor-plan.md +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/docs/superpowers/specs/2026-06-19-matrixscroll-git-design.md +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/docs/yubikey-bridge.md +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/docs/yubikey-smoke.md +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/examples/agentic_ai_evidence_manifest.json +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/examples/agentic_ai_evidence_manifest.signed.json +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/examples/commit-envelope.json +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/examples/commit-envelope.signed.json +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/examples/demo/agent-commit-demo.sh +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/examples/demo/generate_signed_examples.py +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/examples/demo/hero-self-attestation-demo.sh +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/examples/release-manifest.json +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/examples/release-manifest.signed.json +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/examples/trusted-keys-policy.json +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/matrixscroll/_core.py +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/matrixscroll/_payment.py +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/matrixscroll/canonical.py +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/matrixscroll/cli.py +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/matrixscroll/constants.py +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/matrixscroll/errors.py +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/matrixscroll/gate.py +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/matrixscroll/git.py +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/matrixscroll/guac_export.py +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/matrixscroll/hooks/post-commit +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/matrixscroll/hooks/pre-push +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/matrixscroll/manifest.py +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/matrixscroll/mcp_core.py +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/matrixscroll/policy.py +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/matrixscroll/providers/__init__.py +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/matrixscroll/providers/base.py +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/matrixscroll/providers/emulated.py +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/matrixscroll/providers/hardware.py +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/matrixscroll/providers/registry.py +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/matrixscroll/providers/tpm.py +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/matrixscroll/providers/yubikey.py +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/matrixscroll/py.typed +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/matrixscroll/rekor_publish.py +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/schemas/commit-envelope.v1.json +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/schemas/evidence-pack.v1.json +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/schemas/release-manifest.v1.json +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/tests/__init__.py +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/tests/fixtures/github-gpgsig-commit.txt +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/tests/test_agentic_guidance.py +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/tests/test_canonical.py +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/tests/test_cli.py +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/tests/test_core.py +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/tests/test_gate.py +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/tests/test_git_envelope.py +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/tests/test_guac_rekor.py +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/tests/test_mcp_core.py +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/tests/test_mcp_server.py +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/tests/test_policy.py +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/tests/test_se050_transport.py +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/tests/test_tpm_provider.py +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/tests/test_vectors.py +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/tests/test_yubikey_provider.py +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/vectors/README.md +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/vectors/_fixture_key.json +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/vectors/_generate.py +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/vectors/tampered_algorithm.json +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/vectors/tampered_device_id.json +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/vectors/tampered_field.json +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/vectors/tampered_nested.json +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/vectors/tampered_public_key.json +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/vectors/tampered_schema.json +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/vectors/tampered_signature.json +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/vectors/unsigned_empty_block.json +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/vectors/unsigned_no_block.json +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/vectors/valid_commit_envelope.json +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/vectors/valid_nested.json +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/vectors/valid_simple.json +0 -0
- {matrixscroll-0.3.0 → matrixscroll-0.4.0}/vectors/valid_unicode.json +0 -0
|
@@ -1,23 +1,24 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: matrixscroll
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.4.0
|
|
4
4
|
Summary: Signed provenance for agent-assisted Git commits with offline verification; emulated Ed25519 ships today and the SE050 hardware path remains an optional preview.
|
|
5
|
-
Project-URL: Homepage, https://
|
|
6
|
-
Project-URL: Documentation, https://
|
|
5
|
+
Project-URL: Homepage, https://ssx360.com
|
|
6
|
+
Project-URL: Documentation, https://ssx360.com/docs
|
|
7
|
+
Project-URL: Repository, https://github.com/SSX360/matrixscroll
|
|
7
8
|
Project-URL: Source, https://github.com/SSX360/matrixscroll
|
|
8
9
|
Project-URL: Issues, https://github.com/SSX360/matrixscroll/issues
|
|
9
10
|
Project-URL: Specification, https://github.com/SSX360/matrixscroll/blob/main/SPEC.md
|
|
10
11
|
Project-URL: Whitepaper, https://github.com/SSX360/matrixscroll/blob/main/docs/WHITEPAPER.md
|
|
11
|
-
Project-URL: Verifier, https://
|
|
12
|
-
Project-URL: Compare, https://
|
|
12
|
+
Project-URL: Verifier, https://ssx360.com/verify
|
|
13
|
+
Project-URL: Compare, https://ssx360.com/docs
|
|
13
14
|
Project-URL: Changelog, https://github.com/SSX360/matrixscroll/blob/main/CHANGELOG.md
|
|
14
15
|
Project-URL: Discussions, https://github.com/SSX360/matrixscroll/discussions
|
|
15
16
|
Project-URL: Security, https://github.com/SSX360/matrixscroll/blob/main/SECURITY.md
|
|
16
17
|
Project-URL: GitHub Action, https://github.com/SSX360/matrixscroll-verify-action
|
|
17
18
|
Project-URL: PyPI Provenance, https://pypi.org/project/matrixscroll/
|
|
19
|
+
Project-URL: Reference Device, https://ssx360.com/hardware
|
|
18
20
|
Project-URL: Tests, https://github.com/SSX360/matrixscroll/tree/main/tests
|
|
19
21
|
Project-URL: Public Roadmap, https://github.com/SSX360/matrixscroll/blob/main/docs/ROADMAP_2026-07.md
|
|
20
|
-
Project-URL: Reference Device, https://matrixscroll.com/device
|
|
21
22
|
Author-email: SSX360 <security@matrixscroll.com>
|
|
22
23
|
License-Expression: Apache-2.0
|
|
23
24
|
License-File: LICENSE
|
|
@@ -53,6 +54,8 @@ Description-Content-Type: text/markdown
|
|
|
53
54
|
|
|
54
55
|
# Matrix Scroll
|
|
55
56
|
|
|
57
|
+
[](https://github.com/SSX360/matrixscroll/actions/workflows/provenance-gate.yml)
|
|
58
|
+
|
|
56
59
|
**Signed proof of who — or what — wrote every commit.** Matrix Scroll is the
|
|
57
60
|
open Ed25519 commit-provenance protocol for agent-assisted Git — verified
|
|
58
61
|
offline in CLI, browser, and CI. Hardware (SE050) is an optional preview trust
|
|
@@ -60,7 +63,7 @@ upgrade; emulated mode ships today.
|
|
|
60
63
|
|
|
61
64
|
**Hosted control plane:** identity, billing, and device confirmation live at
|
|
62
65
|
[ssx360.com](https://ssx360.com/). Teams evaluating protected-branch enforcement should
|
|
63
|
-
[book a provenance pilot](
|
|
66
|
+
[book a provenance pilot](https://ssx360.com/contact?intent=pilot);
|
|
64
67
|
Provisioned pilot and team accounts sign in at [ssx360.com/signup](https://ssx360.com/signup).
|
|
65
68
|
|
|
66
69
|
## Compliance evidence mapping
|
|
@@ -74,22 +77,6 @@ Matrix Scroll **maps to** and **produces evidence for** (never “required by”
|
|
|
74
77
|
|
|
75
78
|
Full matrix: [`controls/agentic_ai_controls.json`](controls/agentic_ai_controls.json)
|
|
76
79
|
|
|
77
|
-
## Adoption signals
|
|
78
|
-
|
|
79
|
-
Track outbound and registry traction while rolling out:
|
|
80
|
-
|
|
81
|
-
| Signal | Counter |
|
|
82
|
-
|--------|---------|
|
|
83
|
-
| PyPI `matrixscroll` | [](https://pypi.org/project/matrixscroll/) |
|
|
84
|
-
| PyPI `[mcp]` extra | [](https://pypi.org/project/matrixscroll/) |
|
|
85
|
-
| GitHub stars | [](https://github.com/SSX360/matrixscroll/stargazers) |
|
|
86
|
-
| Scroll Gate Action | [](https://github.com/SSX360/matrixscroll-verify-action) |
|
|
87
|
-
| Glama MCP registry | [matrixscroll on Glama](https://glama.ai/mcp/servers/SSX360/matrixscroll) |
|
|
88
|
-
|
|
89
|
-
## Hero demo (post–MCP merge)
|
|
90
|
-
|
|
91
|
-
Record the 60–90s provenance flow in [`docs/HERO_DEMO.md`](docs/HERO_DEMO.md) — Scroll Gate + browser verifier + MCP verbs only.
|
|
92
|
-
|
|
93
80
|
## Install — MCP server (headline path)
|
|
94
81
|
|
|
95
82
|
Agents sign commits in-loop via the **provenance-only** MCP server:
|
|
@@ -106,7 +93,7 @@ Agents sign commits in-loop via the **provenance-only** MCP server:
|
|
|
106
93
|
```
|
|
107
94
|
|
|
108
95
|
```bash
|
|
109
|
-
pip install "matrixscroll[mcp]==0.
|
|
96
|
+
pip install "matrixscroll[mcp]==0.4.0"
|
|
110
97
|
matrixscroll-mcp # stdio — register in Cursor / Claude Desktop / VS Code
|
|
111
98
|
```
|
|
112
99
|
|
|
@@ -116,7 +103,7 @@ matrixscroll-mcp # stdio — register in Cursor / Claude Desktop / VS Code
|
|
|
116
103
|
## Also available — CLI & hooks
|
|
117
104
|
|
|
118
105
|
```bash
|
|
119
|
-
pip install "matrixscroll==0.
|
|
106
|
+
pip install "matrixscroll==0.4.0"
|
|
120
107
|
matrixscroll hook-install
|
|
121
108
|
export MATRIXSCROLL_ACTOR_TYPE=agent
|
|
122
109
|
export MATRIXSCROLL_TOOL=agent-runner
|
|
@@ -149,11 +136,11 @@ preview path until device acceptance is complete.
|
|
|
149
136
|
|
|
150
137
|
## Honest limits
|
|
151
138
|
|
|
152
|
-
- Shipping now: PyPI `matrixscroll==0.
|
|
139
|
+
- Shipping now: PyPI `matrixscroll==0.4.0`, Git post-commit hooks,
|
|
153
140
|
`matrixscroll envelope-verify`, Scroll Gate PR verification, browser
|
|
154
141
|
verifier, the GitHub Action, and a USB CDC host transport preview for the
|
|
155
142
|
SE050 rollout path. Emulated mode is the default evaluation path.
|
|
156
|
-
- In progress:
|
|
143
|
+
- In progress: nRF52840 + SE050 firmware validation (AP2 Vault Card PoC), external Ed25519-capable
|
|
157
144
|
hardware key backends, and transparency-log integrations.
|
|
158
145
|
- Not: IAM, sandboxing, prompt filtering, or an agent runtime.
|
|
159
146
|
|
|
@@ -194,7 +181,7 @@ alongside your existing scanners, branch protection, and build attestations.
|
|
|
194
181
|
## Quickstart (CLI)
|
|
195
182
|
|
|
196
183
|
```bash
|
|
197
|
-
pip install "matrixscroll==0.
|
|
184
|
+
pip install "matrixscroll==0.4.0"
|
|
198
185
|
matrixscroll hook-install
|
|
199
186
|
matrixscroll hook-status
|
|
200
187
|
|
|
@@ -221,7 +208,7 @@ See [`docs/quickstart-git.md`](docs/quickstart-git.md) and run
|
|
|
221
208
|
head-ref: ${{ github.event.pull_request.head.sha }}
|
|
222
209
|
base-ref: ${{ github.event.pull_request.base.sha }}
|
|
223
210
|
source: notes
|
|
224
|
-
matrixscroll-version: "0.
|
|
211
|
+
matrixscroll-version: "0.4.0"
|
|
225
212
|
require-mode: emulated
|
|
226
213
|
```
|
|
227
214
|
|
|
@@ -241,7 +228,7 @@ git push origin refs/notes/matrixscroll
|
|
|
241
228
|
head-ref: ${{ github.event.pull_request.head.sha }}
|
|
242
229
|
base-ref: ${{ github.event.pull_request.base.sha }}
|
|
243
230
|
source: notes
|
|
244
|
-
matrixscroll-version: "0.
|
|
231
|
+
matrixscroll-version: "0.4.0"
|
|
245
232
|
summary-output: provenance-summary.json
|
|
246
233
|
```
|
|
247
234
|
|
|
@@ -273,12 +260,12 @@ when they preserve the same pure Ed25519 byte contract.
|
|
|
273
260
|
- GitHub Action: <https://github.com/SSX360/matrixscroll-verify-action>
|
|
274
261
|
- Agentic AI controls: [`docs/AGENTIC_AI_SECURITY.md`](docs/AGENTIC_AI_SECURITY.md)
|
|
275
262
|
- Site: <https://matrixscroll.com>
|
|
276
|
-
- Reference device path: [
|
|
263
|
+
- Reference device path: [AP2 Vault Card hardware](https://ssx360.com/hardware)
|
|
277
264
|
|
|
278
265
|
## Python API
|
|
279
266
|
|
|
280
267
|
```bash
|
|
281
|
-
pip install "matrixscroll==0.
|
|
268
|
+
pip install "matrixscroll==0.4.0"
|
|
282
269
|
```
|
|
283
270
|
|
|
284
271
|
```python
|
|
@@ -388,7 +375,7 @@ The MCP server exposes **provenance verbs only**: `create_envelope`, `verify_env
|
|
|
388
375
|
Install and register in Cursor / Claude Desktop / VS Code:
|
|
389
376
|
|
|
390
377
|
```bash
|
|
391
|
-
pip install "matrixscroll[mcp]==0.
|
|
378
|
+
pip install "matrixscroll[mcp]==0.4.0"
|
|
392
379
|
matrixscroll-mcp # stdio
|
|
393
380
|
```
|
|
394
381
|
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
# Matrix Scroll
|
|
2
2
|
|
|
3
|
+
[](https://github.com/SSX360/matrixscroll/actions/workflows/provenance-gate.yml)
|
|
4
|
+
|
|
3
5
|
**Signed proof of who — or what — wrote every commit.** Matrix Scroll is the
|
|
4
6
|
open Ed25519 commit-provenance protocol for agent-assisted Git — verified
|
|
5
7
|
offline in CLI, browser, and CI. Hardware (SE050) is an optional preview trust
|
|
@@ -7,7 +9,7 @@ upgrade; emulated mode ships today.
|
|
|
7
9
|
|
|
8
10
|
**Hosted control plane:** identity, billing, and device confirmation live at
|
|
9
11
|
[ssx360.com](https://ssx360.com/). Teams evaluating protected-branch enforcement should
|
|
10
|
-
[book a provenance pilot](
|
|
12
|
+
[book a provenance pilot](https://ssx360.com/contact?intent=pilot);
|
|
11
13
|
Provisioned pilot and team accounts sign in at [ssx360.com/signup](https://ssx360.com/signup).
|
|
12
14
|
|
|
13
15
|
## Compliance evidence mapping
|
|
@@ -21,22 +23,6 @@ Matrix Scroll **maps to** and **produces evidence for** (never “required by”
|
|
|
21
23
|
|
|
22
24
|
Full matrix: [`controls/agentic_ai_controls.json`](controls/agentic_ai_controls.json)
|
|
23
25
|
|
|
24
|
-
## Adoption signals
|
|
25
|
-
|
|
26
|
-
Track outbound and registry traction while rolling out:
|
|
27
|
-
|
|
28
|
-
| Signal | Counter |
|
|
29
|
-
|--------|---------|
|
|
30
|
-
| PyPI `matrixscroll` | [](https://pypi.org/project/matrixscroll/) |
|
|
31
|
-
| PyPI `[mcp]` extra | [](https://pypi.org/project/matrixscroll/) |
|
|
32
|
-
| GitHub stars | [](https://github.com/SSX360/matrixscroll/stargazers) |
|
|
33
|
-
| Scroll Gate Action | [](https://github.com/SSX360/matrixscroll-verify-action) |
|
|
34
|
-
| Glama MCP registry | [matrixscroll on Glama](https://glama.ai/mcp/servers/SSX360/matrixscroll) |
|
|
35
|
-
|
|
36
|
-
## Hero demo (post–MCP merge)
|
|
37
|
-
|
|
38
|
-
Record the 60–90s provenance flow in [`docs/HERO_DEMO.md`](docs/HERO_DEMO.md) — Scroll Gate + browser verifier + MCP verbs only.
|
|
39
|
-
|
|
40
26
|
## Install — MCP server (headline path)
|
|
41
27
|
|
|
42
28
|
Agents sign commits in-loop via the **provenance-only** MCP server:
|
|
@@ -53,7 +39,7 @@ Agents sign commits in-loop via the **provenance-only** MCP server:
|
|
|
53
39
|
```
|
|
54
40
|
|
|
55
41
|
```bash
|
|
56
|
-
pip install "matrixscroll[mcp]==0.
|
|
42
|
+
pip install "matrixscroll[mcp]==0.4.0"
|
|
57
43
|
matrixscroll-mcp # stdio — register in Cursor / Claude Desktop / VS Code
|
|
58
44
|
```
|
|
59
45
|
|
|
@@ -63,7 +49,7 @@ matrixscroll-mcp # stdio — register in Cursor / Claude Desktop / VS Code
|
|
|
63
49
|
## Also available — CLI & hooks
|
|
64
50
|
|
|
65
51
|
```bash
|
|
66
|
-
pip install "matrixscroll==0.
|
|
52
|
+
pip install "matrixscroll==0.4.0"
|
|
67
53
|
matrixscroll hook-install
|
|
68
54
|
export MATRIXSCROLL_ACTOR_TYPE=agent
|
|
69
55
|
export MATRIXSCROLL_TOOL=agent-runner
|
|
@@ -96,11 +82,11 @@ preview path until device acceptance is complete.
|
|
|
96
82
|
|
|
97
83
|
## Honest limits
|
|
98
84
|
|
|
99
|
-
- Shipping now: PyPI `matrixscroll==0.
|
|
85
|
+
- Shipping now: PyPI `matrixscroll==0.4.0`, Git post-commit hooks,
|
|
100
86
|
`matrixscroll envelope-verify`, Scroll Gate PR verification, browser
|
|
101
87
|
verifier, the GitHub Action, and a USB CDC host transport preview for the
|
|
102
88
|
SE050 rollout path. Emulated mode is the default evaluation path.
|
|
103
|
-
- In progress:
|
|
89
|
+
- In progress: nRF52840 + SE050 firmware validation (AP2 Vault Card PoC), external Ed25519-capable
|
|
104
90
|
hardware key backends, and transparency-log integrations.
|
|
105
91
|
- Not: IAM, sandboxing, prompt filtering, or an agent runtime.
|
|
106
92
|
|
|
@@ -141,7 +127,7 @@ alongside your existing scanners, branch protection, and build attestations.
|
|
|
141
127
|
## Quickstart (CLI)
|
|
142
128
|
|
|
143
129
|
```bash
|
|
144
|
-
pip install "matrixscroll==0.
|
|
130
|
+
pip install "matrixscroll==0.4.0"
|
|
145
131
|
matrixscroll hook-install
|
|
146
132
|
matrixscroll hook-status
|
|
147
133
|
|
|
@@ -168,7 +154,7 @@ See [`docs/quickstart-git.md`](docs/quickstart-git.md) and run
|
|
|
168
154
|
head-ref: ${{ github.event.pull_request.head.sha }}
|
|
169
155
|
base-ref: ${{ github.event.pull_request.base.sha }}
|
|
170
156
|
source: notes
|
|
171
|
-
matrixscroll-version: "0.
|
|
157
|
+
matrixscroll-version: "0.4.0"
|
|
172
158
|
require-mode: emulated
|
|
173
159
|
```
|
|
174
160
|
|
|
@@ -188,7 +174,7 @@ git push origin refs/notes/matrixscroll
|
|
|
188
174
|
head-ref: ${{ github.event.pull_request.head.sha }}
|
|
189
175
|
base-ref: ${{ github.event.pull_request.base.sha }}
|
|
190
176
|
source: notes
|
|
191
|
-
matrixscroll-version: "0.
|
|
177
|
+
matrixscroll-version: "0.4.0"
|
|
192
178
|
summary-output: provenance-summary.json
|
|
193
179
|
```
|
|
194
180
|
|
|
@@ -220,12 +206,12 @@ when they preserve the same pure Ed25519 byte contract.
|
|
|
220
206
|
- GitHub Action: <https://github.com/SSX360/matrixscroll-verify-action>
|
|
221
207
|
- Agentic AI controls: [`docs/AGENTIC_AI_SECURITY.md`](docs/AGENTIC_AI_SECURITY.md)
|
|
222
208
|
- Site: <https://matrixscroll.com>
|
|
223
|
-
- Reference device path: [
|
|
209
|
+
- Reference device path: [AP2 Vault Card hardware](https://ssx360.com/hardware)
|
|
224
210
|
|
|
225
211
|
## Python API
|
|
226
212
|
|
|
227
213
|
```bash
|
|
228
|
-
pip install "matrixscroll==0.
|
|
214
|
+
pip install "matrixscroll==0.4.0"
|
|
229
215
|
```
|
|
230
216
|
|
|
231
217
|
```python
|
|
@@ -335,7 +321,7 @@ The MCP server exposes **provenance verbs only**: `create_envelope`, `verify_env
|
|
|
335
321
|
Install and register in Cursor / Claude Desktop / VS Code:
|
|
336
322
|
|
|
337
323
|
```bash
|
|
338
|
-
pip install "matrixscroll[mcp]==0.
|
|
324
|
+
pip install "matrixscroll[mcp]==0.4.0"
|
|
339
325
|
matrixscroll-mcp # stdio
|
|
340
326
|
```
|
|
341
327
|
|
|
@@ -11,7 +11,7 @@ who want to trial Matrix Scroll without changing their core workflow.
|
|
|
11
11
|
|
|
12
12
|
## 15-minute pilot
|
|
13
13
|
|
|
14
|
-
1. Install `matrixscroll==0.
|
|
14
|
+
1. Install `matrixscroll==0.3.0` in one repo.
|
|
15
15
|
2. Run `matrixscroll hook-install`.
|
|
16
16
|
3. Make one agent-assisted commit and verify it locally.
|
|
17
17
|
4. Publish notes with `matrixscroll envelope-publish-notes`.
|
|
@@ -38,7 +38,7 @@ jobs:
|
|
|
38
38
|
head-ref: ${{ github.event.pull_request.head.sha }}
|
|
39
39
|
base-ref: ${{ github.event.pull_request.base.sha }}
|
|
40
40
|
source: notes
|
|
41
|
-
matrixscroll-version: "0.
|
|
41
|
+
matrixscroll-version: "0.3.0"
|
|
42
42
|
require-mode: emulated
|
|
43
43
|
```
|
|
44
44
|
|
|
@@ -64,7 +64,7 @@ jobs:
|
|
|
64
64
|
## Clean-machine proof status
|
|
65
65
|
|
|
66
66
|
Recorded on `2026-06-21` against the pinned public flow:
|
|
67
|
-
`pip install "matrixscroll==0.
|
|
67
|
+
`pip install "matrixscroll==0.3.0"` -> `matrixscroll hook-install` ->
|
|
68
68
|
`matrixscroll hook-status` -> first agent-assisted commit ->
|
|
69
69
|
`matrixscroll envelope-verify`.
|
|
70
70
|
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# Adoption signals (internal)
|
|
2
|
+
|
|
3
|
+
Track outbound and registry traction while rolling out. Not published on the public README.
|
|
4
|
+
|
|
5
|
+
| Signal | Counter |
|
|
6
|
+
|--------|---------|
|
|
7
|
+
| PyPI `matrixscroll` | [](https://pypi.org/project/matrixscroll/) |
|
|
8
|
+
| PyPI `[mcp]` extra | [](https://pypi.org/project/matrixscroll/) |
|
|
9
|
+
| GitHub stars | [](https://github.com/SSX360/matrixscroll/stargazers) |
|
|
10
|
+
| Scroll Gate Action | [](https://github.com/SSX360/matrixscroll-verify-action) |
|
|
11
|
+
| Glama MCP registry | [matrixscroll on Glama](https://glama.ai/mcp/servers/SSX360/matrixscroll) |
|
|
12
|
+
|
|
13
|
+
Update this file during GTM reviews; keep badges out of user-facing install docs.
|
|
@@ -60,7 +60,7 @@ No single competitor listed above combines all four today.
|
|
|
60
60
|
- **CI gate:** Scroll Gate ships in **0.2.3+** — PR commit-range verification via `envelope-verify-range`, git notes transport (`refs/notes/matrixscroll`), and filesystem bundles. [`matrixscroll-verify-action`](https://github.com/SSX360/matrixscroll-verify-action) supports `head-ref`/`base-ref` range mode with agent/human counts.
|
|
61
61
|
- **Owner/delegation attestation:** Optional `delegation` block in commit envelope schema (**0.2.4+**); see [`delegation-attestation-rfc.md`](delegation-attestation-rfc.md). Alien still leads on OIDC/DPoP owner binding.
|
|
62
62
|
- **Multi-agent commits:** Multiple actors in one envelope — on the roadmap.
|
|
63
|
-
- **Rekor / GUAC export:** Dry-run CLI ships in **0.
|
|
63
|
+
- **Rekor / GUAC export:** Dry-run CLI ships in **0.3.0** (`envelope-publish-rekor`, `envelope-export-guac`); full Rekor upload integration still in progress.
|
|
64
64
|
- **Hardware:** SSX360 reference device and Scroll Key retail are **in progress**; L1 emulated key is what you can use now.
|
|
65
65
|
|
|
66
66
|
## When to use what
|
|
@@ -12,7 +12,7 @@ five-minute path from `pip install` to a verifiable commit envelope.
|
|
|
12
12
|
## 1. Install the SDK
|
|
13
13
|
|
|
14
14
|
```bash
|
|
15
|
-
pip install "matrixscroll==0.
|
|
15
|
+
pip install "matrixscroll==0.3.0"
|
|
16
16
|
matrixscroll hook-install
|
|
17
17
|
matrixscroll hook-status
|
|
18
18
|
```
|
|
@@ -61,7 +61,7 @@ git push origin refs/notes/matrixscroll
|
|
|
61
61
|
head-ref: ${{ github.event.pull_request.head.sha }}
|
|
62
62
|
base-ref: ${{ github.event.pull_request.base.sha }}
|
|
63
63
|
source: notes
|
|
64
|
-
matrixscroll-version: "0.
|
|
64
|
+
matrixscroll-version: "0.3.0"
|
|
65
65
|
require-mode: emulated
|
|
66
66
|
```
|
|
67
67
|
|
|
@@ -8,13 +8,13 @@ what ships now before widening the story.
|
|
|
8
8
|
## Baseline on June 21, 2026
|
|
9
9
|
|
|
10
10
|
- GitHub: early public repo, product-first docs, and offline verification
|
|
11
|
-
- Current public release target: `matrixscroll==0.
|
|
11
|
+
- Current public release target: `matrixscroll==0.3.0`
|
|
12
12
|
- Public trust contract: pure Ed25519 over canonical manifest bytes
|
|
13
13
|
- Hardware path: SSX360 SE050 reference implementation in progress
|
|
14
14
|
|
|
15
15
|
## Next 7 days
|
|
16
16
|
|
|
17
|
-
- cut and publish `0.
|
|
17
|
+
- cut and publish `0.3.0` without widening the manifest or verify surface
|
|
18
18
|
- make the GitHub Action a real public proof surface
|
|
19
19
|
- align site, README, action docs, and PyPI around one install flow
|
|
20
20
|
- remove broken links and stale release drift from public copy
|
|
@@ -71,7 +71,7 @@ Full wire format: [`SPEC.md`](../SPEC.md). Schema: [`schemas/commit-envelope.v1.
|
|
|
71
71
|
### 1. Install
|
|
72
72
|
|
|
73
73
|
```bash
|
|
74
|
-
pip install "matrixscroll==0.
|
|
74
|
+
pip install "matrixscroll==0.3.0"
|
|
75
75
|
matrixscroll hook-install
|
|
76
76
|
matrixscroll hook-status
|
|
77
77
|
```
|
|
@@ -87,7 +87,7 @@ matrixscroll envelope-verify "$(git rev-parse HEAD)"
|
|
|
87
87
|
|
|
88
88
|
Hooks default to **warn mode**; set `"enforce": true` in `.git/matrixscroll/config.json` to block commits when signing fails. See [`docs/quickstart-git.md`](quickstart-git.md).
|
|
89
89
|
|
|
90
|
-
**Windows:** support landed in matrixscroll **0.2.1**; pin **0.
|
|
90
|
+
**Windows:** support landed in matrixscroll **0.2.1**; pin **0.3.0** or newer in pilot environments.
|
|
91
91
|
|
|
92
92
|
### 3. CI gate
|
|
93
93
|
|
|
@@ -95,12 +95,12 @@ Hooks default to **warn mode**; set `"enforce": true` in `.git/matrixscroll/conf
|
|
|
95
95
|
- uses: SSX360/matrixscroll-verify-action@v1
|
|
96
96
|
with:
|
|
97
97
|
manifest: path/to/signed-manifest.json
|
|
98
|
-
matrixscroll-version: "0.
|
|
98
|
+
matrixscroll-version: "0.3.0"
|
|
99
99
|
require-mode: emulated
|
|
100
100
|
trusted-keys: trusted-keys.json
|
|
101
101
|
```
|
|
102
102
|
|
|
103
|
-
Policy flags (`--require-mode`, `--trusted-keys`) are available in the `0.2.x` line; this whitepaper pins `0.
|
|
103
|
+
Policy flags (`--require-mode`, `--trusted-keys`) are available in the `0.2.x` line; this whitepaper pins `0.3.0` for copy-and-paste examples.
|
|
104
104
|
|
|
105
105
|
### 4. Optional scope manifest
|
|
106
106
|
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
# SSX360 platform pivot — migration guide
|
|
2
|
+
|
|
3
|
+
Matrix Scroll remains the **open protocol and thin client** (PyPI + MCP). SSX360 is the **hosted control plane** for identity, billing, network verification, audit, and fleet cards.
|
|
4
|
+
|
|
5
|
+
## URL map
|
|
6
|
+
|
|
7
|
+
| Old | New |
|
|
8
|
+
|-----|-----|
|
|
9
|
+
| matrixscroll.com (catch-all) | ssx360.com/docs |
|
|
10
|
+
| matrixscroll.com/verify | ssx360.com/verify |
|
|
11
|
+
| matrixscroll.com/hardware | ssx360.com/hardware |
|
|
12
|
+
| PyPI Homepage | ssx360.com |
|
|
13
|
+
|
|
14
|
+
## Product split
|
|
15
|
+
|
|
16
|
+
**Free (local):** `create_envelope`, `verify_envelope`, `status`, emulated signing, hooks.
|
|
17
|
+
|
|
18
|
+
**Paid (network, `SSX360_API_KEY`):** hosted Scroll Gate, `list_envelopes`, platform audit export, team policy, compliance.
|
|
19
|
+
|
|
20
|
+
## Signup & API keys
|
|
21
|
+
|
|
22
|
+
1. Sign up at [ssx360.com/signup](https://ssx360.com/signup)
|
|
23
|
+
2. A **Community API key** is provisioned automatically on first sign-in
|
|
24
|
+
3. Community tier: **100 hosted verifications/day**
|
|
25
|
+
4. Manage keys at [ssx360.com/settings](https://ssx360.com/settings)
|
|
26
|
+
|
|
27
|
+
## CI migration (Scroll Gate v2)
|
|
28
|
+
|
|
29
|
+
See [SCROLL_GATE_V2.md](./SCROLL_GATE_V2.md). Set `SSX360_API_KEY` in GitHub Actions secrets.
|
|
30
|
+
|
|
31
|
+
## SDK 0.4.0
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
pip install "matrixscroll[mcp]==0.4.0"
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
New module: `matrixscroll.cloud` — HTTP client for ssx360.com APIs.
|
|
38
|
+
|
|
39
|
+
## MCP environment
|
|
40
|
+
|
|
41
|
+
```json
|
|
42
|
+
{
|
|
43
|
+
"mcpServers": {
|
|
44
|
+
"matrixscroll-mcp": {
|
|
45
|
+
"command": "matrixscroll-mcp",
|
|
46
|
+
"env": {
|
|
47
|
+
"SSX360_API_KEY": "sk_live_..."
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
## Pricing tiers
|
|
55
|
+
|
|
56
|
+
| Tier | Price | Highlights |
|
|
57
|
+
|------|-------|------------|
|
|
58
|
+
| Community | Free | Auto API key, 100 verifications/day, local signing |
|
|
59
|
+
| Team | $99–299/org/mo | Seats, audit export, shared history |
|
|
60
|
+
| Enterprise | Contact | SSO, SIEM, custom policy |
|
|
61
|
+
|
|
62
|
+
Upgrade at [ssx360.com/#pricing](https://ssx360.com/#pricing).
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
# Scroll Gate v2 — hosted verification
|
|
2
|
+
|
|
3
|
+
Scroll Gate **v2** calls the SSX360 hosted API. Local-only verification remains in the Matrix Scroll SDK and MCP (`verify_envelope`, offline `source=local|notes|bundle`).
|
|
4
|
+
|
|
5
|
+
## Requirements
|
|
6
|
+
|
|
7
|
+
- **`SSX360_API_KEY`** — required for CI and hosted MCP Scroll Gate
|
|
8
|
+
- Community tier includes **100 CI verifications/day**
|
|
9
|
+
- Get a key at [ssx360.com/signup](https://ssx360.com/signup)
|
|
10
|
+
|
|
11
|
+
## GitHub Actions
|
|
12
|
+
|
|
13
|
+
Add repository secret `SSX360_API_KEY` (Settings → Secrets → Actions).
|
|
14
|
+
|
|
15
|
+
The workflow in `.github/workflows/provenance-gate.yml` posts to:
|
|
16
|
+
|
|
17
|
+
```text
|
|
18
|
+
POST https://ssx360.com/api/v1/verify
|
|
19
|
+
Authorization: Bearer $SSX360_API_KEY
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
Example body:
|
|
23
|
+
|
|
24
|
+
```json
|
|
25
|
+
{
|
|
26
|
+
"base": "<base-sha>",
|
|
27
|
+
"head": "<head-sha>",
|
|
28
|
+
"commits": []
|
|
29
|
+
}
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
## Migration from v1
|
|
33
|
+
|
|
34
|
+
| v1 (local) | v2 (hosted) |
|
|
35
|
+
|------------|-------------|
|
|
36
|
+
| `matrixscroll-verify-action@v1` | `curl` or `@v2` action against ssx360.com |
|
|
37
|
+
| Local git notes only | Network audit + usage metering |
|
|
38
|
+
| No API key | `SSX360_API_KEY` required |
|
|
39
|
+
|
|
40
|
+
## MCP
|
|
41
|
+
|
|
42
|
+
Set `SSX360_API_KEY` in your MCP server environment. The default `verify_pr_range` source is `hosted`. Use `source=notes` for offline git-notes verification without a key.
|
|
43
|
+
|
|
44
|
+
## Docs
|
|
45
|
+
|
|
46
|
+
- Platform docs: [ssx360.com/docs](https://ssx360.com/docs)
|
|
47
|
+
- Migration guide: [PLATFORM_PIVOT.md](./PLATFORM_PIVOT.md)
|
|
@@ -23,7 +23,7 @@ matrixscroll status
|
|
|
23
23
|
## Quickstart (USB CDC preview)
|
|
24
24
|
|
|
25
25
|
```bash
|
|
26
|
-
pip install "matrixscroll[hardware]==0.
|
|
26
|
+
pip install "matrixscroll[hardware]==0.3.0"
|
|
27
27
|
export MATRIXSCROLL_MODE=hardware
|
|
28
28
|
export MATRIXSCROLL_SE050_PORT=/dev/ttyACM0
|
|
29
29
|
matrixscroll status
|
|
@@ -12,7 +12,7 @@ verify that proof offline before merge.
|
|
|
12
12
|
## Install hooks
|
|
13
13
|
|
|
14
14
|
```bash
|
|
15
|
-
pip install "matrixscroll==0.
|
|
15
|
+
pip install "matrixscroll==0.3.0"
|
|
16
16
|
matrixscroll hook-install
|
|
17
17
|
matrixscroll hook-status
|
|
18
18
|
```
|
|
@@ -42,10 +42,10 @@ Enable enforce mode in `.git/matrixscroll/config.json`:
|
|
|
42
42
|
|
|
43
43
|
## Windows
|
|
44
44
|
|
|
45
|
-
Windows support landed in **matrixscroll 0.2.1**. Pin `0.
|
|
45
|
+
Windows support landed in **matrixscroll 0.2.1**. Pin `0.3.0` or newer after upgrading:
|
|
46
46
|
|
|
47
47
|
```powershell
|
|
48
|
-
pip install -U "matrixscroll==0.
|
|
48
|
+
pip install -U "matrixscroll==0.3.0"
|
|
49
49
|
matrixscroll hook-install
|
|
50
50
|
```
|
|
51
51
|
|
|
@@ -89,7 +89,7 @@ Use [`SSX360/matrixscroll-verify-action@v1`](https://github.com/SSX360/matrixscr
|
|
|
89
89
|
|
|
90
90
|
## How can I integrate Matrix Scroll into a CI/CD workflow?
|
|
91
91
|
|
|
92
|
-
1. Install `matrixscroll==0.
|
|
92
|
+
1. Install `matrixscroll==0.3.0` and `matrixscroll hook-install` in the repo.
|
|
93
93
|
2. Publish commit envelopes to `refs/notes/matrixscroll` before PR review.
|
|
94
94
|
3. Run `SSX360/matrixscroll-verify-action@v1` in GitHub Actions to verify the
|
|
95
95
|
full PR commit range from notes.
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
# Matrix Scroll MCP quickstart
|
|
2
|
+
|
|
3
|
+
Install the provenance MCP server so agents can sign and verify commit envelopes in-loop.
|
|
4
|
+
|
|
5
|
+
## Install
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
pip install "matrixscroll[mcp]==0.4.0"
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
The console script `matrixscroll-mcp` is the preferred entry point. `python -m matrixscroll.mcp` also works.
|
|
12
|
+
|
|
13
|
+
## Register in your editor
|
|
14
|
+
|
|
15
|
+
Add this to `.cursor/mcp.json` (project) or your global MCP config:
|
|
16
|
+
|
|
17
|
+
```json
|
|
18
|
+
{
|
|
19
|
+
"mcpServers": {
|
|
20
|
+
"matrixscroll-mcp": {
|
|
21
|
+
"type": "stdio",
|
|
22
|
+
"command": "matrixscroll-mcp",
|
|
23
|
+
"args": [],
|
|
24
|
+
"env": {
|
|
25
|
+
"SSX360_API_KEY": "sk_live_..."
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
On Windows, if `matrixscroll-mcp` is not on PATH, use the full path to the script inside your virtual environment.
|
|
33
|
+
|
|
34
|
+
Get a free Community API key (100 hosted verifications/day) at [ssx360.com/signup](https://ssx360.com/signup).
|
|
35
|
+
|
|
36
|
+
## Verify the connection
|
|
37
|
+
|
|
38
|
+
1. Enable the server in your editor's MCP settings.
|
|
39
|
+
2. Invoke the `status` tool (free, local).
|
|
40
|
+
3. Invoke `list_envelopes` to confirm network access with your API key.
|
|
41
|
+
|
|
42
|
+
## Tool tiers
|
|
43
|
+
|
|
44
|
+
| Tool | Tier |
|
|
45
|
+
|------|------|
|
|
46
|
+
| `create_envelope`, `verify_envelope`, `status` | Free (local) |
|
|
47
|
+
| `verify_pr_range` (hosted), `list_envelopes`, `audit_export` | Requires `SSX360_API_KEY` |
|
|
48
|
+
|
|
49
|
+
Use `verify_pr_range` with `source=notes` for offline git-notes verification without a key.
|
|
50
|
+
|
|
51
|
+
## CLI and hooks (repos without MCP)
|
|
52
|
+
|
|
53
|
+
For Git hook and CI workflows without MCP, use:
|
|
54
|
+
|
|
55
|
+
```bash
|
|
56
|
+
pip install "matrixscroll==0.4.0"
|
|
57
|
+
matrixscroll hook-install
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
Scroll Gate v2 CI calls `https://ssx360.com/api/v1/verify` — see [SCROLL_GATE_V2.md](./commercial/SCROLL_GATE_V2.md).
|
|
61
|
+
|
|
62
|
+
See [FIVE_MINUTES.md](./FIVE_MINUTES.md) for the hook path.
|
|
@@ -24,7 +24,7 @@ jobs:
|
|
|
24
24
|
uses: SSX360/matrixscroll-verify-action@v1
|
|
25
25
|
with:
|
|
26
26
|
manifest: examples/release-manifest.signed.json
|
|
27
|
-
matrixscroll-version: "0.
|
|
27
|
+
matrixscroll-version: "0.3.0"
|
|
28
28
|
|
|
29
29
|
verify-pr-envelopes:
|
|
30
30
|
runs-on: ubuntu-latest
|
|
@@ -42,7 +42,7 @@ jobs:
|
|
|
42
42
|
source: notes
|
|
43
43
|
notes-ref: refs/notes/matrixscroll
|
|
44
44
|
fetch-notes: "true"
|
|
45
|
-
matrixscroll-version: "0.
|
|
45
|
+
matrixscroll-version: "0.3.0"
|
|
46
46
|
summary-output: provenance-summary.json
|
|
47
47
|
# Optional policy enforcement:
|
|
48
48
|
# require-mode: emulated
|
|
@@ -71,4 +71,4 @@ jobs:
|
|
|
71
71
|
base-ref: ${{ github.event.pull_request.base.sha }}
|
|
72
72
|
source: bundle
|
|
73
73
|
bundle-dir: evidence/bundle
|
|
74
|
-
matrixscroll-version: "0.
|
|
74
|
+
matrixscroll-version: "0.3.0"
|