Proof-chain registry for AI agents — backed by Walrus for persistent, portable, verifiable memory
Project description
verity
A proof-chain registry for AI agents — backed by Walrus for persistent, portable, verifiable memory.
What it does
verity gives AI agents structured, portable memory:
feature → claim → test → evidence → release
│
verity push ──► Walrus blob ID (immutable)
verity pull ◄── restore anywhere, any agent
- Proof-chain registry — track what an agent claimed, what it tested, and what it proved, all in a single
verity.jsonfile. - Agent memory layer — push the registry to Walrus (or MemWal) and pull it back in any future session, on any machine, by any agent.
Built for the Sui Overflow hackathon, Walrus track.
Install
pip install walrus-verity
# With MemWal support
pip install "walrus-verity[memwal]"
AI coding assistant integration
Context skill — teach your AI tool the verity proof chain model, CLI, and API:
verity install-skill # Claude Code (global)
verity install-skill --tool cursor # Cursor → .cursorrules
verity install-skill --tool windsurf # Windsurf → .windsurfrules
verity install-skill --tool codex # OpenAI Codex → AGENTS.md
verity install-skill --tool aider # Aider → CONVENTIONS.md
MCP server — expose all verity tools natively to any MCP-compatible editor:
pip install "walrus-verity[mcp]"
Add to your claude_mcp_config.json (or equivalent):
{
"mcpServers": {
"verity": {
"command": "verity-mcp",
"env": {
"WALRUS_PUBLISHER_URL": "https://publisher.walrus-testnet.walrus.space",
"WALRUS_AGGREGATOR_URL": "https://aggregator.walrus-testnet.walrus.space"
}
}
}
}
Available MCP tools: verity_init, verity_add_feature, verity_add_claim, verity_add_test, verity_add_evidence, verity_set_status, verity_validate, verity_release, verity_push, verity_pull, verity_log, verity_status.
Quick start
The CLI validates on every write, so build the chain with neutral statuses first, then promote them once everything is linked.
verity init --repo-id repo:my-project
# Phase 1 — build the chain (neutral statuses)
verity add feature feat:auth "User authentication"
verity add claim clm:auth.t1 "Login succeeds" --feature feat:auth
verity add test tst:auth.unit "Unit test" --claim clm:auth.t1 --kind unit --path tests/test_auth.py
verity add evidence evd:auth.ci "CI run" --test tst:auth.unit --artifact artifacts/ci.json --status passed
# Phase 2 — promote statuses (edit verity.json: set claim → verified, test → passing)
verity validate # → OK
verity release 1.0.0
verity push # → blob: AbCdEfGh…
# Any agent, any machine, any future session:
verity pull AbCdEfGh…
Why two phases? verity validates after every
addcommand. Setting--status verifiedon a claim before its test exists will fail. Build the full chain first, then mark statuses.Using the Python API instead? Statuses can be set at add time — validation is deferred until you call
validate()orpush(). See Python API.
$ verity validate
OK
$ verity release 1.0.0
Released rel:1.0.0 at 2026-05-23T19:08:25Z
claims: clm:auth.t1
$ verity push
blob: AbCdEfGhIjKlMnOpQrStUvWxYz0123456789
$ verity log
1. [walrus] 2026-05-23T19:08:25Z AbCdEfGhIjKlMnOpQrStUvWxYz0123456789
Documentation
| Topic | |
|---|---|
| CLI Reference | All commands: init, add, validate, release, push, pull, log, site, context, install-skill |
| MCP Server | verity-mcp — expose verity tools to any MCP-compatible editor |
| Python API | VeritySession, low-level functions, custom backends |
| Schema Reference | verity.json fields, ID prefixes, status values, validation rules |
| Walrus Setup | Testnet, mainnet, custom endpoints |
| MemWal Setup | Env vars, delegate keys, namespace isolation |
| Multi-Agent Patterns | Handoff pattern, audit trail, dry-run |
| Scripts | store_project_context.py — seed MemWal with verity project knowledge |
Acknowledgements
The proof-chain model — feature → claim → test → evidence → release — is directly inspired by the ssot-registry project, licensed under Apache 2.0. verity adapts that model for AI agents and Walrus-backed persistence.
Contributing
See CONTRIBUTING.md. Run tests with uv run pytest.
License
MIT — see LICENSE.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file walrus_verity-0.1.6.tar.gz.
File metadata
- Download URL: walrus_verity-0.1.6.tar.gz
- Upload date:
- Size: 422.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f72102675db3453e2e5a97fadc7ecca953c0066cd4ad366ec638660d6a531127
|
|
| MD5 |
380f43b62be40c218d17432e021df773
|
|
| BLAKE2b-256 |
6e79b48aeb38d9c7d4aae811cecfba8211fd657491db2cd61c56b530ce35cf5c
|
Provenance
The following attestation bundles were made for walrus_verity-0.1.6.tar.gz:
Publisher:
publish.yml on vantage-ola/verity
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
walrus_verity-0.1.6.tar.gz -
Subject digest:
f72102675db3453e2e5a97fadc7ecca953c0066cd4ad366ec638660d6a531127 - Sigstore transparency entry: 1635337262
- Sigstore integration time:
-
Permalink:
vantage-ola/verity@fc09a3c27b9bd68e037693a6003c2cd68b6035b2 -
Branch / Tag:
refs/tags/v0.1.6 - Owner: https://github.com/vantage-ola
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@fc09a3c27b9bd68e037693a6003c2cd68b6035b2 -
Trigger Event:
push
-
Statement type:
File details
Details for the file walrus_verity-0.1.6-py3-none-any.whl.
File metadata
- Download URL: walrus_verity-0.1.6-py3-none-any.whl
- Upload date:
- Size: 25.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
be33e983d06db4b7882016b1331ad48b46e9519cf13694e125d5bb83ac284501
|
|
| MD5 |
8b91b3aeedd8edab21f92f841bfd4068
|
|
| BLAKE2b-256 |
074d33e7cd13112819133f1e6c5b47c9ab05c6a5b58b05b3391464c2f80cbdf1
|
Provenance
The following attestation bundles were made for walrus_verity-0.1.6-py3-none-any.whl:
Publisher:
publish.yml on vantage-ola/verity
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
walrus_verity-0.1.6-py3-none-any.whl -
Subject digest:
be33e983d06db4b7882016b1331ad48b46e9519cf13694e125d5bb83ac284501 - Sigstore transparency entry: 1635337297
- Sigstore integration time:
-
Permalink:
vantage-ola/verity@fc09a3c27b9bd68e037693a6003c2cd68b6035b2 -
Branch / Tag:
refs/tags/v0.1.6 - Owner: https://github.com/vantage-ola
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@fc09a3c27b9bd68e037693a6003c2cd68b6035b2 -
Trigger Event:
push
-
Statement type: