Repository navigation
brain0 v0.1.2
Security
brain0 0.1.1 and earlier created its .brain0/ store (index, payload and key files) in the working directory without a .gitignore. A routine git add -A, which coding agents run all the time, could commit the payload encryption key next to the payload it encrypts, along with the attestation signing key.
0.1.2:
- writes
.brain0/.gitignore(*) whenever it opens the store, and warns if git already tracks files in it; - keeps key files outside the repository, in
<user data dir>/brain0/keys/<store id>/(override withBRAIN0_KEYS_DIRor--key-file), and moves an existing.brain0/keyring.keyor.brain0/attest.keythere on first run.
If .brain0/ was ever committed: upgrading protects what comes next, not what is already in your history. Follow "If .brain0/ was committed" in docs/security.md.
Thanks to the researcher who reported this privately.
Fixes
- Linux binaries now link against glibc 2.28 instead of 2.39, so brain0 runs on Debian 12 and the official
node:20images, Ubuntu 20.04+ and RHEL 8+ (#4).
Dependencies
- rustls 0.23.46, rustls-webpki 0.103.16, webpki-roots 1.0.10 (RUSTSEC-2026-0285, -0346, -0348, -0349, -0381, -0382).
- @xmldom/xmldom 0.8.15 in the GUI bundle.
Upgrade: npx brain0@latest up
Full Changelog: v0.1.1...v0.1.2