Skip to main content

Cross-session personal memory and task protocol for Claude

Project description

Hollow Attractor

Cross-session personal memory and task protocol for Claude, implemented as an MCP server.

Claude has no memory between sessions. Hollow Attractor gives it a persistent, structured workspace — tracked in a local git repo, read and written through MCP tools, never sent anywhere.


How it works

Hollow Attractor runs as a local MCP server connected to Claude Desktop. Each session, Claude loads your current state and picks up where it left off — open tasks, decisions, questions, and a running log.

Everything lives in ~/.hollow-attractor/ as plain text files under git. No cloud, no account, no sync. Your data stays on your machine.

Key concepts

Term Meaning
Worldline A named workspace — one project, one scope
Attractor The global context; entry point for each session
Ship Log Global index of all worldlines and recent updates
Divergence A tracked relationship between two worldlines
Anneal Manual compaction of a worldline with optional intent
Imprint Plain-text state export for backup or migration

Install

Requirements: Python 3.10+, git, Claude Desktop

pip install hollow-attractor
hollow init

Then add the MCP server to Claude Desktop. Edit claude_desktop_config.json:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "hollow-attractor": {
      "command": "hollow"
    }
  }
}

Restart Claude Desktop.


Usage

Start a session in Claude Desktop and say:

hollow, start

Claude will load the hollow_start prompt, read your Ship Log, and resume your current worldline.

From there you can create worldlines, add tasks, log decisions, track open questions, and commit state — all through conversation.

See SYSTEM_PROMPT.md for the full protocol and SCHEMAS.md for file formats.


Migrating from an existing system

Already tracking tasks in Notion, Todoist, a custom Claude setup, or anywhere else? See MIGRATION.md for a prompt you can paste into Claude Desktop to bring your existing backlog across.


Status

V1 is complete and in active daily use. The core protocol is stable.

Planned next:

  • Homebrew formula
  • Hosted sync (V2)

Support

If Hollow Attractor is useful to you, consider sponsoring development:

GitHub Sponsors


License

MIT

Project details


Download files

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

Source Distribution

hollow_attractor-0.2.1.tar.gz (65.9 kB view details)

Uploaded Source

Built Distribution

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

hollow_attractor-0.2.1-py3-none-any.whl (17.8 kB view details)

Uploaded Python 3

File details

Details for the file hollow_attractor-0.2.1.tar.gz.

File metadata

  • Download URL: hollow_attractor-0.2.1.tar.gz
  • Upload date:
  • Size: 65.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.9 {"installer":{"name":"uv","version":"0.10.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for hollow_attractor-0.2.1.tar.gz
Algorithm Hash digest
SHA256 78150c6e2693cf828a5f1cb8f082a0ca0d2fa07fbea6dfad8ab8d6c1c95c4b1b
MD5 2475b02ddb07eb5f48730954c65a4c07
BLAKE2b-256 bd4c34a4091c1b4696370c1e46dc08069a0e93c3a2d8ba57176e60b1a242eac8

See more details on using hashes here.

File details

Details for the file hollow_attractor-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: hollow_attractor-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 17.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.9 {"installer":{"name":"uv","version":"0.10.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for hollow_attractor-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 8534a249c2fc0594730281f3f4cede2a49374e70a0ce0db523164dfa00b368e9
MD5 a9ade6a6a2bd0f5732712e178d5314b9
BLAKE2b-256 378ccba01e87884dae66a527c6dabc796cb5defe5bd74719944861fd13a5ac6e

See more details on using hashes here.

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