Cross-platform agent that collects AI coding tool memory files and syncs to a central server
Project description
memento-collector
Cross-platform agent that automatically collects AI coding tool memory files and syncs them to a central Memento server (a shared brain for your AI coding tools).
Supported AI Tools
| Tool | Data Collected |
|---|---|
| Claude Code | Conversations, memory, plans, history |
| OpenClaw | Sessions, identity, memory, learnings, skills |
| Codex | Sessions (active + archived), history, skills |
| Antigravity | Full conversations (built-in .pb decryption — AES-256-GCM + protobuf), brain plans, code snapshots |
| Obsidian | All markdown notes in your vault |
| Cursor | Agent transcripts, skills, MCP config |
Install
pip install memento-brain-collector
Antigravity support (decrypting encrypted .pb conversation files) is built in —
no extras needed. The cryptography library is already a required dependency.
Quick Start
# Interactive setup (first time)
memento-collector setup
# Or run directly
memento-collector run
The setup wizard will:
- Detect your platform (macOS / Linux / Windows)
- Auto-discover installed AI tools and Obsidian vaults
- Configure the server URL and auth token
- Optionally install as a system service (auto-start on boot)
Commands
memento-collector setup # Interactive setup wizard
memento-collector run # Run in foreground
memento-collector install # Install as system service
memento-collector start # Start the service
memento-collector stop # Stop the service
memento-collector status # Show collector status
memento-collector uninstall # Remove system service
How It Works
- File Watching — Uses
watchdog(FSEvents on macOS, inotify on Linux, ReadDirectoryChanges on Windows) to detect file changes in real-time - Parsing — Supports Markdown, JSONL, JSON, TOML, SQLite formats
- Sanitization — Automatically redacts API keys, tokens, passwords, private keys before upload
- Queuing — Local SQLite queue for offline resilience (syncs when server is reachable)
- Syncing — HTTP upload to server, with chunked upload for files > 2MB (tested with 37MB files)
- Device Identity — Each device gets a persistent unique ID, all data tagged with device info
Configuration
Environment variables (or set via memento-collector setup):
| Variable | Default | Description |
|---|---|---|
MEMENTO_SERVER_URL |
http://localhost:8001 |
Server API URL |
MEMENTO_SERVER_TOKEN |
Collector auth token | |
MEMENTO_OBSIDIAN_VAULT_PATH |
Auto-detected | Obsidian vault path |
Config file: ~/.memento/config.json
System Service
| Platform | Service Type | Config Location |
|---|---|---|
| macOS | LaunchAgent | ~/Library/LaunchAgents/com.memento.collector.plist |
| Linux | systemd user | ~/.config/systemd/user/memento-collector.service |
| Windows | Task Scheduler | MementoCollector scheduled task |
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file memento_brain_collector-0.0.8.tar.gz.
File metadata
- Download URL: memento_brain_collector-0.0.8.tar.gz
- Upload date:
- Size: 62.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5fd3f08e7c85d3f4c74f6789537e841de93152063f6c71a7a243804d265caf59
|
|
| MD5 |
3c9ec14abd00a642c7e35642032fc1be
|
|
| BLAKE2b-256 |
313cdecba61ca21bf00826fad1fd09af933183d09ef3411d1c3f0e6fb59a9d94
|
Provenance
The following attestation bundles were made for memento_brain_collector-0.0.8.tar.gz:
Publisher:
release.yml on ddong8/memento
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
memento_brain_collector-0.0.8.tar.gz -
Subject digest:
5fd3f08e7c85d3f4c74f6789537e841de93152063f6c71a7a243804d265caf59 - Sigstore transparency entry: 1448211479
- Sigstore integration time:
-
Permalink:
ddong8/memento@d2e254df15253549cc3749c85765f2ecbdd6691a -
Branch / Tag:
refs/tags/v0.0.8 - Owner: https://github.com/ddong8
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@d2e254df15253549cc3749c85765f2ecbdd6691a -
Trigger Event:
push
-
Statement type:
File details
Details for the file memento_brain_collector-0.0.8-py3-none-any.whl.
File metadata
- Download URL: memento_brain_collector-0.0.8-py3-none-any.whl
- Upload date:
- Size: 74.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
97c622297bcdd758e14861b64d6047f84450469e5c822565df906e0e99f11d79
|
|
| MD5 |
bb745e95169aeba2882e0768a076cd42
|
|
| BLAKE2b-256 |
152bfad2c78bb636de6afe0e5a2645978ad890d992871c23554f70cabdd57a96
|
Provenance
The following attestation bundles were made for memento_brain_collector-0.0.8-py3-none-any.whl:
Publisher:
release.yml on ddong8/memento
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
memento_brain_collector-0.0.8-py3-none-any.whl -
Subject digest:
97c622297bcdd758e14861b64d6047f84450469e5c822565df906e0e99f11d79 - Sigstore transparency entry: 1448211524
- Sigstore integration time:
-
Permalink:
ddong8/memento@d2e254df15253549cc3749c85765f2ecbdd6691a -
Branch / Tag:
refs/tags/v0.0.8 - Owner: https://github.com/ddong8
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@d2e254df15253549cc3749c85765f2ecbdd6691a -
Trigger Event:
push
-
Statement type: