Skip to main content

alethech

PyPI version Python License: MIT Tests CI Mutation paths Coverage Type hints

Verifiable agent continuity protocol — local-first, zero-LLM, zero-blockchain. The art of un-concealing transmission integrity.

Copyright (c) 2026 AliceLabs LLC.

From Greek ἀλήθεια (aletheia, "truth as un-concealment") + τέχνη (techne, "art, craft"). The art of revealing that a memory was not modified after being signed.

This is the reference implementation of the protocol specified in docs/implementacion-nucleo-minimo.md (rev 2 + rev 3 identity layer).

what this is

alethech is a Python package that provides cryptographically verifiable memory continuity for AI agents. It lets an agent sign its memory commits with Ed25519, link them in a hash-linked DAG, rotate keys without losing identity, and prove to a third party that its memory was not tampered with.

What this repo IS:

  • A cryptographic protocol implementation (Ed25519 + SHA-256 + JCS RFC 8785)
  • 9 CLI commands (init, commit, evidence, verify, export, import, migrate, key rotate, key revoke)
  • A test suite with mutation-guard paths (each guarantee has a test that fails when the check is defeated)
  • MIT licensed, published on PyPI as alethech

What this repo is NOT:

  • It is NOT a memory store or retrieval system
  • It is NOT the legacy memex project (Python/ChromaDB memory server)
  • It has no MCP server, no Docker, no auto-update, no LLM calls
  • It depends only on cryptography and click — no mem0ai, no chromadb, no ollama

The legacy memex codebase (167 commits, AliceLabs Proprietary License) is preserved in a separate repository: eddyflores100-lang/memex-legacy. It is not part of this repo and not installed by pip install alethech.

the property

This memory set forms part of a cryptographically verifiable history associated with a determined identity, whose commits can be independently verified with respect to their integrity, cryptographic authorship, and provenance relations.

When a reference checkpoint exists, it can additionally be verified that the presented history continues from that checkpoint.

The protocol does NOT prove that the agent's claims are true — only that they were signed by the identity that claims them. The truth being un-concealed is the truth about transmission integrity, not about content.

status

Version 0.8.4. 9 commands, 230 Python tests, 8 mutation-guard paths, 85% coverage. No LLM, no MCP, no network, no P2P, no cloud, no consensus, no trust providers, no marketplace, no skill verification, no multi-agent consensus.

install

pip install alethech

For development:

git clone https://github.com/eddyflores100-lang/alethech.git
cd alethech
pip install -e ".[dev]"

usage

alethech init                              # generate identity + genesis commit
alethech commit --content <json-file>      # create signed MemoryCommit
alethech evidence --tool <name>            # create signed EvidenceCommit
  --input <file> --output <file>
alethech verify                            # verify the whole store, offline
alethech export --output <dir>             # portable package
alethech import --input <dir>              # import external memory
alethech key rotate                        # rotate operational key
alethech key revoke --key-id <id>          # revoke a key
alethech migrate --to v0.2                  # migrate identity layer

what it does NOT do

  • It does NOT prove that the agent's claims are true. Only that they were signed by the identity that claims them.
  • It does NOT detect rollback without an external checkpoint.
  • It does NOT encrypt content at rest.
  • It does NOT delegate permissions between agents.
  • It does NOT call any LLM.

what the name means

alethech comes from:

  • aletheia (ἀλήθεια) — Greek for "truth", more precisely "un-concealment" (Heidegger's reading: truth as the act of revealing what was hidden)
  • techne (τέχνη) — Greek for "art, craft, technique"

So alethech = "the art of un-concealing". The protocol un-conceals:

  • whether a memory was modified after being signed
  • who signed it
  • what signed timestamp was recorded (NOT physical signing time — only the timestamp recorded in the artifact)
  • what its provenance is
  • whether the chain of custody is intact

It does NOT un-conceal whether the content is true — that's the agent's responsibility, not the protocol's.

tests

python -m pytest tests/

230 tests covering:

  • crypto primitives (Ed25519, SHA-256, base64url, base32)
  • JCS canonicalization (RFC 8785) — 56 conformance vectors including:
    • integer/float serialization per ECMAScript Number.prototype.toString()
    • -0 serializes as "0" (per RFC 8785 erratum, NOT preserved)
    • scientific notation format (positive exponents keep '+', negative strip leading zeros)
    • decimal vs scientific threshold (1e21 / 1e-6)
    • UTF-16 key ordering with surrogate pairs
    • string escaping (control chars, non-ASCII preservation)
    • NaN/Infinity rejection
  • agent_id derivation (cryptographic binding to public_key)
  • MemoryCommit signing, tamper detection, wrong-key rejection
  • EvidenceCommit signing (supports both legacy and V2 identity)
  • all 9 CLI commands (init, commit, evidence, verify, export, import, migrate, key rotate, key revoke)
  • checkpoint emission + rollback detection + causal continuity (ancestry check)
  • identity_mismatch detection
  • export/import roundtrip preservation
  • tampered manifest rejection
  • key rotation with cutoff_head reachability guarantee
  • ancestry_check mutation guard (3 code-level defeats)
  • recall-seam defeats (2 data-level mutations: active-keys tampering, cutoff_head mutation)
  • root_id binding (RootAuthority ↔ IdentityRecord ↔ ControlEvent)
  • checkpoint continuity (checkpoint HEAD must be ancestor of current HEAD)
  • IdentityRecordV2 signature verification (against root public key)
  • import causal continuity (ancestry check before writing)
  • import hardening (symlinks, path traversal, archive bombs, artifact hash verification)

repository structure

alethech/                    # this repo — cryptographic protocol only
├── alethech/                # source: crypto, objects, store, verify, cli, canonical
│   └── integrations/        # langchain + memex hooks
├── alethech-rs/             # Rust SDK (31 tests, cross-validation)
├── alethech-ts/             # TypeScript SDK (15 tests, Web Crypto API)
├── tests/                   # 230 tests (incl. 56 JCS conformance + 8 mutation-guard paths)
├── conformance/             # 15 adversarial conformance vectors
├── docs/                    # protocol specification
├── examples/                # basic_usage.py
├── INTEGRATION.md           # how to integrate with memex via MemexAlethechHook
├── CHANGELOG.md             # version history
├── SECURITY.md              # threat model + vulnerability policy
├── CONTRIBUTING.md          # dev setup + PR process
├── CODE_OF_CONDUCT.md      # Contributor Covenant
├── CITATION.cff             # academic citation
├── LICENSE                  # MIT
├── README.md                # this file
└── pyproject.toml           # alethech 0.8.4, deps: cryptography + click only

cross-language validation

The protocol is implemented in three independent languages:

Language Tests Dependencies
Python 230 cryptography + click
Rust 31 ed25519-dalek, sha2, serde
TypeScript 15 0 (Web Crypto API only)

All three use the same NIST SHA-256 test vectors, RFC 4648 base32 vectors, and RFC 8785 JCS conformance vectors. The cross-language claim is backed by an executable harness:

python conformance/cross_language_check.py

This runs all three implementations against the same shared fixtures in conformance/ and asserts byte-exact agreement on canonical bytes for accepted fixtures. The default run is fail-closed: exit 0 = all three ran and agree, 1 = disagreement, 2 = an implementation/runtime is unavailable. CI builds the Rust helper and executes the three-runtime harness. See conformance/CROSS_LANGUAGE.md for the contract and how to add a 4th implementation.

license

MIT.

  • eddyflores100-lang/memex-legacy — Legacy Memex codebase (167 commits, AliceLabs Proprietary License). Python/ChromaDB memory system with MCP integration. Preserved for historical reference. NOT installed by pip install alethech.

Copyright (c) 2026 AliceLabs LLC. MIT License.

Metadata

Release files for alethech 0.8.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for alethech 0.8.4
File Size Uploaded
alethech-0.8.4.tar.gz 88.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for alethech 0.8.4
File Interpreter ABI Platform
alethech-0.8.4-py3-none-any.whl Python 3 none any Details

Total release size: 138.8 kB

Release files / alethech-0.8.4.tar.gz

Download URL alethech-0.8.4.tar.gz
Size 88.9 kB
Tags Source
SHA-256 checksum
How to use checksums
9c7879b2b6ce6242a9917b9f3d8f1cd60483975bbc126eb51e62fb5f1a1cc337
BLAKE2b-256 checksum
How to use checksums
9b820d5f5cc68c0a8e286bf050102c84c274741a9eed92b5c3a78e24da4b4ad0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.14

Release files / alethech-0.8.4-py3-none-any.whl

Download URL alethech-0.8.4-py3-none-any.whl
Size 49.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c954b35961144b71deba33bee06ca56983218691243e95586c71ddf559abd35d
BLAKE2b-256 checksum
How to use checksums
c650f1d5f1111c7659bd3e576b3bf9678e44cbc65e66b9b10cc8443d2d9eb56d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.14

Release history Release notifications | RSS feed

0.9.5

2 release files

0.9.4

2 release files

0.9.3

2 release files

0.9.2

2 release files

0.9.1

2 release files

0.9.0

2 release files

0.8.5

2 release files

This release

0.8.4 This release

2 release files

0.8.3

2 release files

0.8.2

2 release files

0.8.1

2 release files

0.8.0

2 release files

0.7.0

2 release files

0.6.0

2 release files

0.5.8

2 release files

0.5.7

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.5

2 release files

0.4.4

2 release files

0.4.3

2 release files

0.4.2

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page