Your AI forgets everything. Sextant remembers — and knows when it’s no longer sure.

A self-hosted memory and orchestration layer for your AI sessions. Plain markdown you own. Memory that ages, gets re-checked, and says so when it is no longer sure.

Apache-2.0 · 4,000+ tests, CI on 3 OSes · 30 MCP tools · in daily use by its maker

claude code — session startsextant-mcp · 30 tools
~/work $ claude
✻ sextant · session primed — 47 facts loaded, 2 flagged stale

> what did we decide about the staging database?

● From memory (verified 2026-08-02):
  Staging Postgres lives at 10.0.0.5.
  Migrations run through CI only — never by hand.

⚠ One related fact is stale (91 days unverified):
  "staging still uses self-signed certs"
  Queued for re-verification. Not asserting it.
Illustrative output, not a recording.
The problem

Every session starts from zero. And the memory tools that fix that have two problems of their own: your knowledge lives in someone else’s cloud, and the memory lies — confidently repeating things that stopped being true months ago, because nothing ever checks.

The answer

Instead of confidently wrong, you get honestly unsure.

100%0CONFIDENCEtime →reality changestypical memory — still 100% sure: confidently wrongre-verified ✓re-verify failsflagged stale — honestly unsuresextant
Illustrative. A fact ages; Sextant re-verifies it. When reality changes and re-verification fails, the fact is flagged — not repeated.
  • # notes.mdindexrebuildable
    01

    Markdown is the source of truth

    Your corpus is plain files you can read, grep, edit, and back up. Everything else is derived and rebuildable.

  • reverifyverifiedagingstale0d30d60d90d
    02

    Memory that ages

    Verification timestamps, decay jobs, reverify loops. Search that answers ‘starved’ instead of guessing.

  • nearest by meaning · local
    03

    Search that understands meaning

    Hybrid keyword + semantic search, with local embeddings through your Ollama by default.

  • laptopdesktopvpsquarantinehub
    04

    Every device, one corpus

    Hub/spoke sync with conflict quarantine: conflicts are parked for review instead of overwritten. Secrets and key material never sync.

  • ✓tests4,000+✓ciwin · mac · linux✓defaultsfail-closed✓uninstallsafe, report-first
    05

    The boring parts included

    4,000+ tests, 3-OS CI, auth on every surface, fail-closed defaults, report-first uninstall.

  • obsidian/chatgpt.zipclaude.jsoncorpus/
    06

    Bring your history

    Import Obsidian vaults, ChatGPT and Claude exports in one command.

Quickstart

Clone to primed session in ten minutes.

Windows, Linux, macOS. Python 3.11+. Everything binds loopback and fails closed by default.

git clone https://github.com/protechtus/sextant.git && cd sextant
python -m venv .venv && . .venv/bin/activate   # Windows: .venv\Scripts\activate
python -m pip install -e ".[dev]"
sextant-init && sextant-doctor
An honest comparison

Mem0, Zep, and Letta offer managed memory services for product agents, and Mem0 and Letta are open source too. Sextant is not that: it’s the memory layer for your own sessions, under your own roof, with no per-seat pricing and no cloud dependency. If you want a managed API, use them. If you want a second brain you actually own, this is it.

Follow the voyage

Occasional notes on self-hosted AI memory — releases and what broke. No marketing.

or just watch releases on GitHub