Skip to content

Repository files navigation

Sennit

User-owned storage for an AI's memory, sessions, and skills, encrypted, on the Sia network.

Sennit gives an AI agent a long-term memory that belongs to you rather than to a vendor: encrypted on your device before it is sent, stored on decentralized infrastructure that cannot read it, retrieved by meaning, and portable across apps, models and machines.

Status: beta. The substrate, the CLI and the MCP server are built and measured against the live Sia network, and the quickstart is tested end to end. Prebuilt binaries are available, see v0.1.0-beta-mvp. It is beta because it works and is measured, and because it has been used by very few people. See Status for what is and is not proven, and What's changing for the parts of the quickstart a coming release replaces.


Why

An AI assistant's memory is trapped. It lives inside one provider, it can't move with you, and you can't inspect, own, or truly export it. To have it available everywhere, you normally hand it to a cloud that can read it.

Sennit takes the other path:

  • You own it. Keys are derived from your recovery phrase and never leave your device.
  • Nobody on the network can read it. Records are encrypted client-side before they touch the network; storage providers and the coordinating indexer see only ciphertext of your records.
  • The copy on your own machine is readable. Your device keeps a working copy in the clear, because the search, the ranking and the decryption all happen there. This is the same choice a local-first notes app makes: protect the device the way you protect those, and see SECURITY.md.
  • It's portable. Memory follows you across agents, tools and machines, not locked to one vendor.
  • It's searched by meaning. Semantic recall over your own records, computed locally.

This is storage plumbing, not an AI assistant. "AI" describes the data being stored, AI apps and agents are consumers of it.

How it works

Two record types today on one encrypted, content-addressed, versioned substrate, with a third designed for and not yet built:

Record What it holds Retrieved by Built?
memory facts, preferences, learned context semantic (vector) search yes
session past conversations you can resume metadata + version yes
skill reusable procedures an agent can load name + version not yet

Agents talk to it over MCP (Model Context Protocol) on stdio, so any MCP client that launches a local server, such as Claude Code, Claude Desktop or Cursor, can use the same memory. Clients that only connect to a remote MCP server over HTTP cannot reach it yet.

The search never leaves your machine. Query embedding and vector search run locally against a local index; only opaque fetches of already-identified records hit the network. Nobody learns the words you searched for, though the indexer does see which records you then fetched.

remember ──▶ embed + encrypt locally ──▶ pack ──▶ Sia
recall   ──▶ embed query locally ──▶ local vector search ──▶ fetch those records ──▶ decrypt locally

Get started

Download a release, get a recovery phrase, approve the installation once in a browser, and remember something. About ten minutes, most of it one download and one approval click.

→ Quickstart

No Sia node, no wallet and no payment are needed; the hosted indexer's free tier covers it. init, remember, recall and status also take --offline if you want to see recall working before connecting to Sia; the commands that move data to or from the network need the indexer.

Documentation

Page What it covers
Quickstart Install, recovery phrase, approval, first memory, recall, connecting an MCP client
Storage Why "saved" is not "on Sia", flushing, quota, and reclaiming storage
Cost What storage costs, the arithmetic and its sources
Status What is built, what is measured against live Sia, and what is not proven
What's changing Planned changes that will replace parts of the quickstart
Troubleshooting Common errors and what to do about them
Design principles What Sennit is and is not, and what it is built on
Reporting a problem What to include in a beta report, and the two checks worth more than any bug report
Host checks The two ten-minute checks, scripted

Contributing

Early and in flux. See CONTRIBUTING.md. Bug reports and design discussion are welcome; please open an issue before a large pull request.

Security

Sennit handles encryption keys and personal data. Please report vulnerabilities responsibly, see SECURITY.md. Do not open public issues for security problems.

License

MIT, matching the Sia SDK and the wider Go ecosystem.

About

Own your AI's memory, sessions & skills; encrypted on the Sia network, portable across agents via MCP.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages