Repository navigation
Releases
Releases · gronare/mindin
mindin 0.15.2
Fixed
- Deleting a note on an S3 server that ignores the etag on deletes is refused when the note changed meanwhile.
mindin 0.15.1
Fixed
- Removing two ways in at once on a hosted server always leaves the account one way in.
- A write with a local vault's etag is refused whenever the note changed, also when a same-size edit lands within the same instant.
searchandmindin searchwithout a limit return as many notes as the schema'ssearch.default_limit.mindin readin a terminal shows the title once when the note opens with the same# heading.
mindin 0.15.0
What's new
mindin setupasks whether to share anonymous usage data, and nothing is sent until you say yes.
mindin 0.14.3
What's new
- Sign-in and invitation emails come as branded HTML with one button, in light and dark, and a plain-text part.
mindin 0.14.2
Fixed
mindinwithout a vault starts the server and answers each tool call with how to runmindin setup.
mindin 0.14.1
What's new
- The install script answers at
curl -fsSL https://mindin.dev/install.sh | sh, and mindin.dev is the package's homepage. - The Claude Code plugin runs
mindinitself instead of thenotes-vault-mcppackage, like a fresh install.
mindin 0.14.0
What's new
- Renamed from notes-vault-mcp to mindin: the package, the command and the image are
mindin. Thenotes-vault-mcppackage and command keep working and run mindin, the image is published under both names, and~/.config/notes-vault-mcpand~/.cache/notes-vault-mcpmove tomindinon the first run, so no machine is signed out or indexed again. Extensions register in themindin.extensionsentry point group and import frommindin.extension_api. mindin setupasks where the vault lives, a folder, an S3 bucket or a vault server, and saves it for every command and client on the machine;--folder,--s3and--serverdo it from a script. The environment still wins, and the Claude Code plugin's settings are read when mindin has none.statusnames which one decided insource.curl -fsSL https://github.com/gronare/mindin/releases/latest/download/install.sh | shinstalls mindin with uv, runssetupand offers to add the vault to Claude Code, Codex and Cursor.mindin about --jsontells a tool the name, version, contract and the commands this install has.
notes-vault-mcp 0.13.0
What's new
- The documentation lives in
docs/, sorted into install guides, how-tos, reference and explanation, with a page listing every environment variable. deploy/docker/holds the Docker Compose setup, and each GitHub release carries itscompose.yml,Caddyfileandexample.env, so a server installs with twocurllines. Its.envkeeps the vaults in the container's volume unless you set a bucket.VAULT_HTTP_STATELESS=onserves MCP without sessions, so a server restart drops no session a client holds.notes-vault-mcp embed-worker --listen host:portruns the model for search by meaning in a process of its own that the server reaches throughVAULT_EMBED_URL, withVAULT_EMBED_TOKENas its secret, so the server restarts fast and stays small.GET /readyanswers200when the server is ready for requests and503with the names of the failing checks, for a load balancer or a readiness probe.VAULT_INDEX_SNAPSHOTS=onkeeps a sealed copy of each vault's search index in storage, so a restarted or moved server restores a vault's index instead of indexing and embedding every note again. A busy vault's copy is written at most once perVAULT_INDEX_SNAPSHOT_MINUTES(default 10) and only when the index changed, plus once when it goes idle and once when the server stops.VAULT_FORWARDED_ALLOW_IPSnames the reverse proxies, as addresses or CIDR ranges, whoseX-Forwarded-Forthe server trusts, so rate limits count each real client; the limits are kept in the account store and survive a restart.- Extensions import what they build on from
notes_vault_mcp.extension_api; Extensions describes each hook. - A vault server has one address,
/mcp; another vault than the one picked when connecting is/mcp?vault=<slug>, and a slug is one lowercase word, unique among the vaults an account reaches. A new account's first vault isnotes, and existing slugs that break the rule are rewritten on the first start.
Fixed
- Two writes to one note at the same moment both land:
append_file,set_status,close,log_append,write_fileand the monthly log pages write over the version they read and read again when the note changed meanwhile, twobacklog_addcalls with one title get two notes, and a new vault's first files never overwrite a file already there. - WebDAV
PUThonoursIf-MatchandIf-None-Match: *and answers412when the file changed. - A note's age counts calendar days in local time, so a note from five days back reads "5 days" also just after midnight.
- A vault server's root address opens the account page instead of answering not found.
- The access log leaves out query strings, so sign-in and invitation links never land in it.
- An unknown vault address answers like a known one the caller cannot reach.
- WebDAV opens vaults and talks to storage off the event loop, so a slow vault never stalls other requests or
/up. - An edit from Obsidian over WebDAV shows in search at once instead of after up to 20 seconds.
closekeeps a change that lands on the note while it is being archived.
notes-vault-mcp 0.12.0
What's new
- In a terminal,
search,backlog,readandlintprint for a person: titles first, paths whole, ages in words, colour for status, priority and kind, and rows cut at the terminal's width. In a pipe or with--plainthey print as before;NO_COLORdrops the colour. contextshows what a session in this repo starts with: the system note, the commits newer than it, open tasks, the backlog, traps and the last log line.--pathreads it for another folder.backlog --pathsshows each note's path, and a backlog of more than 20 ideas is grouped by priority;--allshows every row.read --rawprints the note exactly as stored, also in a terminal.lintin a terminal counts the findings per kind with a plain explanation, andlint --kind <kind>lists one kind.
Fixed
- The session-start hook's repo log shows only log lines, never the log note's frontmatter.
notes-vault-mcp 0.11.0
What's new
- The stop hook asks the agent to save the decisions and ideas in your messages once you have written three since its last vault write, also outside a git repo;
VAULT_STOP_HOOK_PROMPTSsets the number or turns the checkoff. VAULT_STOP_HOOK_COMMITS=offturns off the stop hook's unlogged-commit and stale-note checks and keeps the message check, for sessions whose log another tool writes.- A vault server loads the extensions installed beside it, from the Python entry point group
notes_vault_mcp.extensions. - An account on a vault server owns several vaults, each with its own name, address (
/v/<slug>/mcp), keys, connections, layout and encryption key; a key, connector or signed-in computer reaches only the vault it was made for. An existing account's vault becomes its first vault, in place, on the first start. /accountlists your vaults and makes new ones; each vault has its own page to connect, see and revoke what reaches it, export, import and delete it. Who you are, ways in, support access and account deletion move to Account. A vault's layout is picked when it is made and switched on its own page.login --vault <slug>signs a machine in to one vault, andvault use <slug> [--dir <folder>]picks the vault for this machine or for a folder and everything below it; the hooks and the stdio server follow the folder they run in.- A vault can be shared: its owner invites people by email, each signs in with their own account and makes their own keys and connections, and the owner removes members, hands the vault over or deletes it. A shared vault keeps only current notes (system, howto, decision, reference, trap) and refuses tasks, backlog and logs with a message the agent can act on.
- Every write, move and delete in a shared vault, through MCP or WebDAV, is kept with who made it, through what and when; its page shows each change as a diff and restores the version before it as a new change.
accounts add-vault --shared,members,add-memberandremove-memberdo the same from the shell, andwhoamiandstatus --probeshow each vault's kind and role. - Support access is granted per vault, and
supportandaccounts importtake--vaultwhen the account has several.accounts vaults,add-vaultandrename-vaultmanage an account's vaults from the shell.