Skip to main content

Tawn — the twin you own

taw (ת) + own — Local-first personal digital twin. Your data, your machine, your intelligence.

Tawn is a self-hosted memory and context core that unifies your work, wealth, research, and academic life into one searchable brain — shared across every AI agent you use (Claude Code, Cursor, Gemini CLI, and others).

pip install tawn
tawn init
tawn web start    # opens the web dashboard at http://tawn:8787

What it does

  • Memory federation — indexes conversations from Claude, ChatGPT, Gemini, Obsidian, and local files into one semantic store
  • Domain modules — Work, Wealth (read-only), Research, and Academic — each with its own compiled wiki and entity graph
  • Multi-provider model routing — Anthropic, OpenAI, Gemini, DeepSeek, OpenRouter, Ollama; local by default, cloud when needed
  • MCP server — any MCP-compatible agent gets recall, note, and brief verbs against your twin's memory
  • Web dashboard — streaming chat, memory browser, audit log, settings — at tawn:8787
  • Capability grants — deny-all filesystem access by default; every read and write is audited

Quick start

Requirements

  • Python 3.12+
  • PostgreSQL (for memory and federation tables)
  • Node.js 18+ (only needed if installing from source)

Install

# fast core install (add providers when needed)
pipx install tawn

# or install everything at once
pipx install "tawn[full]"

# individual provider extras
pip install "tawn[anthropic]"   # Claude
pip install "tawn[openai]"      # OpenAI / OpenRouter
pip install "tawn[gemini]"      # Google Gemini
pip install "tawn[ollama]"      # local models
pip install "tawn[vectors]"     # pgvector for semantic search
pip install "tawn[mcp]"         # MCP server

Setup

tawn init                  # creates ~/.tawn/
tawn db setup              # initialises PostgreSQL
tawn web start             # starts the web server at tawn:8787

Configure model providers:

tawn setup                 # interactive wizard — sets API keys, DB, local model

Or set keys directly:

# keys are stored in the OS keyring, never in files
tawn setup                 # interactive

MCP integration (Claude Code)

Add to your ~/.claude/claude.json:

{
  "mcpServers": {
    "tawn": {
      "command": "tawn",
      "args": ["mcp"]
    }
  }
}

Then from any Claude session: tawn.recall("…"), tawn.note("…"), tawn.brief("work").

Domain modules

Domain What it tracks
work Tasks, projects, decisions — per employer
wealth Portfolio, net worth, holdings — read-only, never trades
research Papers, experiments, entity graph, morning brief
academic Applications, deadlines, proposal drafts

Extend with your own domain:

tawn domain add health     # scaffolds a new domain plugin

CLI reference

tawn                       # chat with your twin
tawn note "…"              # append a note to today's raw file
tawn recall "query"        # semantic search over compiled memory
tawn brief work            # daily summary for a domain
tawn compile               # compile raw/ into wiki + vectors
tawn federation sources    # list federated AI tool sources
tawn federation merge      # ingest pending federation records
tawn web start/stop/status # web server control
tawn update                # check and install latest release
tawn config list           # view all settings

Architecture

~/.tawn/
├── raw/          # immutable ingested sources
├── wiki/         # compiled markdown knowledge
├── federation/   # AI tool exports + adapters
├── grants.yaml   # capability grants (deny-all default)
└── audit.log     # every write, every cross-domain action

API server binds to 127.0.0.1 only. Wealth core is read-only. No withdrawal credentials ever stored.

License

MIT — see LICENSE.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tawn-0.3.0.tar.gz (2.1 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tawn-0.3.0-py3-none-any.whl (2.0 MB view details)

Uploaded Python 3

File details

Details for the file tawn-0.3.0.tar.gz.

File metadata

  • Download URL: tawn-0.3.0.tar.gz
  • Upload date:
  • Size: 2.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for tawn-0.3.0.tar.gz
Algorithm Hash digest
SHA256 96f4a020adcf738cb015e7f27820756fa64373c7d41379f8d56c50eba7fb3213
MD5 f1688d277e4ee47b358d9d2e437b616e
BLAKE2b-256 fbb04b96fcd0efb0489b54a020dbb1a2c7c782f349d9caf41fd7a65c1465d43b

See more details on using hashes here.

Provenance

The following attestation bundles were made for tawn-0.3.0.tar.gz:

Publisher: publish.yml on tawn-hq/tawn

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tawn-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: tawn-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 2.0 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for tawn-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7d74c1c1567b8809c2503eec39ec076ac540c18cd489ae5f95e63fb7129b4a3a
MD5 1d4ec5dee944b896352552d3711ef57a
BLAKE2b-256 9f24f7762df528ae2a93c3542555c040d3faabb2f2d73ba375c8aca772f17334

See more details on using hashes here.

Provenance

The following attestation bundles were made for tawn-0.3.0-py3-none-any.whl:

Publisher: publish.yml on tawn-hq/tawn

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page