mindin
Memory for Claude and coding agents, kept as markdown notes you own, with a schema that holds and a tie to your git history.
Install
curl -fsSL https://mindin.dev/install.sh | sh
It installs the mindin command with uv, asks where your vault lives (a folder, an S3 bucket or a vault server), and offers to add the vault to Claude Code, Codex and Cursor; it changes nothing in them without a yes. mindin was called notes-vault-mcp: the notes-vault-mcp package and command still work, and install and run mindin.
A vault server
A vault server with Docker Compose, for claude.ai, Claude Desktop, mobile and every machine you work on. You need a domain pointing at the machine, ports 80 and 443 open, and an SMTP account for sign-in links.
mkdir notes-vault && cd notes-vault
curl -fsSL -O https://github.com/gronare/mindin/releases/latest/download/compose.yml -O https://github.com/gronare/mindin/releases/latest/download/Caddyfile
curl -fsSL -o .env https://github.com/gronare/mindin/releases/latest/download/example.env
docker compose run --rm --no-deps vault master-key generate # paste into .env, with VAULT_HOST and SMTP
docker compose up -d
docker compose exec vault mindin accounts invite you@example.com
Then open https://VAULT_HOST/account and sign in. Install with Docker walks through each step.
Without the script, on one machine: uv tool install mindin, then mindin setup.
Use
Add the server's address, https://VAULT_HOST/mcp, as a custom connector in claude.ai. Claude searches, reads and writes your notes. The same search from a shell on a signed-in machine:
$ mindin search "signing in"
1 note · archive and superseded hidden
myapp system 3 days
Areas/myapp.md
## Sign-in Users sign in with passkeys; email links are the fallback.
What you get
- Notes you own. Plain markdown in a folder or an S3 bucket; open them in Obsidian, keep them in git.
- A schema with teeth. Required fields, legal statuses and kinds, a tag vocabulary; a write that breaks the contract is refused. Start from PARA, a simple vault, a journal or your own layout.
- A lifecycle.
closearchives finished work,backlog_addfiles what was deferred,log_appendwrites one line per repo per session,lintreports drift. - Memory tied to code. A note names the paths it describes; the session-start hook prints the commits newer than the note.
- Search that reads your languages. Stemming, folded diacritics, synonyms, and optional search by meaning that runs on your machine.
- Your own vault server. Accounts with passkeys, email links, GitHub or your identity provider, several vaults each, shared vaults, sealed in storage.
Documentation
docs/ has the install guides, the how-tos for each client, the reference for every tool, command and setting, and how it works.
License
MIT. See LICENSE.
Metadata
Release files for mindin 0.14.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| mindin-0.14.1.tar.gz | 547.3 kB | With provenance | Details for mindin-0.14.1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| mindin-0.14.1-py3-none-any.whl | Python 3 | none | any | Details for mindin-0.14.1-py3-none-any.whl |
Total release size: 789.3 kB
Release files / mindin-0.14.1.tar.gz
| Download URL | mindin-0.14.1.tar.gz |
|---|---|
| Size | 547.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
9f983dc0c7a830d4975824278e6d109cf376c59bccbe23ceb01c6aae12621f4d
|
|
BLAKE2b-256 checksum How to use checksums |
d6d4c4aca360ad1713c985acb4156a587c0a753c0d314238b93dfc6dd5895d17
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Nov 4, 2026.
Transparency logRelease files / mindin-0.14.1-py3-none-any.whl
| Download URL | mindin-0.14.1-py3-none-any.whl |
|---|---|
| Size | 242.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1067ff7cdbd22d9dca787057b2490a1752488aefee9fd12c337977c04fe84d01
|
|
BLAKE2b-256 checksum How to use checksums |
2d5b6b742d62335304e832d8a610152eb1ce76955da42ec23846934e34f5a965
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Nov 4, 2026.
Transparency logSecurity for mindin 0.14.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for mindin-0.14.1.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Nov 4, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.