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.1.0.tar.gz (1.9 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.1.0-py3-none-any.whl (1.9 MB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for tawn-0.1.0.tar.gz
Algorithm Hash digest
SHA256 6d0c70412d56450aa64efd7d15e6894ea7471d13458a182aca5b3b8fb32b041f
MD5 a5d3de1182f15ce0a056dd38b29e03c0
BLAKE2b-256 c834db9d75bff2f31d55ba28cf1b21fd2e3324de3e5cd7d84fe4f36bde312b50

See more details on using hashes here.

Provenance

The following attestation bundles were made for tawn-0.1.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.1.0-py3-none-any.whl.

File metadata

  • Download URL: tawn-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 1.9 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.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 be823a56ec9a6f9e021a006a73063f78b6c2eaaca7a9b8e2f2b55bad65964104
MD5 b4494daabab27241f27eed6a4850753b
BLAKE2b-256 135b2cbafe07b35a650a2b3c23ee08ba03ade5bc3195cd3505a620589cf54919

See more details on using hashes here.

Provenance

The following attestation bundles were made for tawn-0.1.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