Local control

Data and Privacy

Where Origin keeps data, what stays local, and how Markdown records work with the local index.

Origin teamUpdated May 15, 20265 min read

At a glance

01

Origin is local-first: the memory layer is owned by the daemon on your machine.

02

Markdown artifacts remain readable while the database stores retrieval indexes and metadata.

01

Local-first by default

Origin is designed so the durable context your agents use lives locally first. That context can include project decisions, private constraints, preferences, and work history.

Connected AI tools may still send prompts to their own model providers. Origin's job is to keep the memory layer itself local, inspectable, and shared across tools.

02

Where data lives

Origin exposes human-facing artifacts under ~/.origin. The daemon database lives under the macOS application support directory and is linked from ~/.origin/db for convenience.

The important files are readable without a special app: pages are Markdown, session logs are Markdown, and project status is stored beside the session records.

  • ~/.origin/pages/: distilled wiki pages.
  • ~/.origin/sessions/: session handoff logs.
  • ~/.origin/sessions/_status/: current project status records.
  • ~/.origin/bin/: installed Origin CLI, daemon, and MCP connector binaries.
  • ~/.origin/db/: link to the daemon's local database store.
  • ~/Library/Application Support/origin/: daemon-owned application data.

03

Markdown and the local index

Markdown is the record you can read. The database is the index agents use to retrieve quickly.

This avoids treating the database as an opaque source of truth. Search can be fast and structured while the important artifacts remain inspectable.

04

Local memory setup

Origin stores, embeds, deduplicates, and serves hybrid search without requiring a local model download or Anthropic API key.

Optional model and API paths can add heavier language features, but they are not required for the basic memory loop.

05

Correction and deletion

If a memory is wrong, capture the correction with why it supersedes the old fact. If a memory should be removed entirely, use /forget with the memory ID.

For distilled pages, inspect the Markdown directly. User-edited pages are treated carefully so automated distillation does not overwrite human work casually.

Next

Connect MCP Clients

Use one local Origin memory layer from Claude Code, Codex, Cursor, Claude Desktop, Gemini CLI, and other MCP clients.

Read next