Portable context layer for T-shaped AI-native users. Single-file encrypted SQLite vault served over MCP.
Project description
Tessera — Portable context for AI tools
A local-first context layer for agents and AI tools. Tessera stores durable user and project context in an encrypted SQLite vault, exposes it through a scoped MCP surface, and retrieves cross-facet bundles with hybrid search, rerank, SWCR, and token budgeting.
Open source. Local-first. Apache 2.0.
Status
v0.1.0rc1 is live on PyPI as tessera-context. The repo contains the packaged Python CLI, encrypted vault, daemon, HTTP MCP endpoint, first-party stdio MCP bridge, connector writers, retrieval pipeline, and test suite. General availability gates on external-user demo validation and cross-platform install recording — both scoped to the v0.1.x → v0.5 stabilization window per the decision on 2026-04-25. The rc1 is install-stable for technical users; expect real-user feedback to drive a follow-up rc before GA. See docs/release-spec.md for the release bar and docs/v0.1-dod-audit.md for DoD status.
Install
From PyPI (recommended):
pip install --pre tessera-context
# or pin explicitly:
pip install tessera-context==0.1.0rc1
pip's default resolver skips pre-releases, so --pre or an explicit version pin is required. The PyPI distribution name is tessera-context; the CLI binary and Python import path remain tessera. The short tessera name on PyPI is held by a 2017-dormant Graphite dashboard project; PEP 541 reclaim is pursued in parallel.
From source (for development):
git clone https://github.com/Mathews-Tom/Tessera.git
cd Tessera && uv sync --dev
uv run tessera --help
Core local flow
tessera init --vault ~/.tessera/vault.db
tessera daemon start --vault ~/.tessera/vault.db
tessera connect claude-desktop --vault ~/.tessera/vault.db
# or wire every detected client in one shot:
tessera connect all --vault ~/.tessera/vault.db
ChatGPT Developer Mode is deferred to v0.1.x because the current ChatGPT flow requires HTTPS/OAuth/canonical HTTP MCP compatibility that Tessera v0.1 does not yet ship. The v0.1 demo flow uses Claude Desktop and Claude Code as the MCP-capable clients.
What is Tessera
A local daemon owns a single-file SQLite vault that holds five v0.1 context facets:
identity— stable user factspreference— behavioral rules and tool preferencesworkflow— repeated proceduresproject— active work contextstyle— writing voice samples
MCP-capable tools connect with scoped capability tokens and call six tools: capture, recall, show, list_facets, stats, and forget. A bare recall searches every facet type the token can read, then returns a budgeted cross-facet bundle.
The lead user is the AI-native developer who wants durable context across Claude Code, Claude Desktop, Cursor, Codex, local model workflows, and custom harnesses without handing memory to a hosted service.
Where to read, by role
| If you want to | Read |
|---|---|
| Pitch to a colleague or evaluate whether this is interesting | docs/pitch.md |
| Understand the market position, category claim, and trade-offs | docs/system-overview.md |
| Understand the architecture, schema, retrieval pipeline, encryption | docs/system-design.md |
| Understand the SWCR retrieval algorithm and its ablation bar | docs/swcr-spec.md |
| Understand the security model and threat analysis | docs/threat-model.md |
| Understand how migrations are safe | docs/migration-contract.md |
| Understand how debuggability works without telemetry | docs/determinism-and-observability.md |
| Know what ships in v0.1, v0.3, v0.5, v1.0 | docs/release-spec.md |
| Know what will never ship | docs/non-goals.md |
| Review the load-bearing decisions | docs/adr/ |
| Fix an install failure, bad first run, or a broken connector | docs/troubleshooting.md |
Posture
This is a solo-developer craft project by Tom Mathews, paced by evening and weekend velocity while a dissertation on agentic memory systems lands in parallel. The v0.1 commitment is explicit; v0.3 and beyond are contingent on real-user signal. There is no telemetry, no hosted service in v0.1, and no model reselling ever. See docs/non-goals.md for the full list of things Tessera will not become.
The reason this exists is that the amnesia tax is real for a growing audience — T-shaped users operating across three or more AI tools a week — the engineering shape is interesting, and the adjacent products in the space treat memory as flat blobs in someone else's cloud. Tessera treats it as structured context on disk.
License
Apache 2.0. No CLA.
Project details
Release history Release notifications | RSS feed
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 tessera_context-0.1.0rc2.tar.gz.
File metadata
- Download URL: tessera_context-0.1.0rc2.tar.gz
- Upload date:
- Size: 640.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.6.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f65bc5c2dd9b172dbe0ae4f9b46622521c68e0113ecaee85d933987c21a035e9
|
|
| MD5 |
599ef489c96177d6b7b29a9fd1d50945
|
|
| BLAKE2b-256 |
0f086563f68deb6045cdfc934da16ac7f1d5b055603a4a1aa08831b49f4c9d83
|
File details
Details for the file tessera_context-0.1.0rc2-py3-none-any.whl.
File metadata
- Download URL: tessera_context-0.1.0rc2-py3-none-any.whl
- Upload date:
- Size: 182.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.6.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5455843360085bffe3cfb0880cca3b6ae3ca3cd6a0749ccb102f00b13259e501
|
|
| MD5 |
124262215f89788a1c5170ddad980945
|
|
| BLAKE2b-256 |
c7178b920cbf37a928945558aea4d5f74d6778f68dd4df1c63b3a816e6ea0d5b
|