Skip to content

About

Offline, encrypted vault for seed phrases, private keys, passwords and API keys. macOS and Windows.

Topics

Resources

Stars

205 stars

Watchers

0 watching

Forks

Repository files navigation

encrypted-note

An offline, encrypted vault for seed phrases, private keys, passwords and API keys, designed to be easy and safe for AI agents to use.

License: MIT Platforms: macOS and Windows Built with Tauri 2 and Rust

Finding a Note, revealing a fictional password, and hiding it again.

Recorded on macOS with fictional data · full video (36 s) · transcript

Features

  • Offline. No network code, accounts, sync, updater or telemetry. Your Vault is one encrypted file on your computer.
  • Hidden by default. Secrets stay as dots until you choose Show. Seed Phrases and Private Keys also need your Master Password.
  • Careful on screen shares. Asks the OS to keep the window out of captures (best effort) and covers it when a screen-sharing app is running.
  • Recoverable. A Recovery Key you write down at setup, and an Emergency Reader that opens your Vault without the app.
  • Portable. Copy the Vault file to a USB stick to open it on another computer.

Warning

v1 personal project, not independently audited. Keep a paper or metal backup of any seed phrase that holds real funds.

Build

Needs Rust 1.89+, Node 24+, and on Mac the Xcode command-line tools.

npm ci --ignore-scripts
npm run tauri dev   # run in development
npx tauri build     # build the app

Run ./scripts/check.sh (tests, clippy, cargo-deny, TypeScript) before a pull request. Debug builds read ENOTE_DEV_DATA_DIR=<folder> to keep your real Vault untouched, and ENOTE_DEV_ALLOW_CAPTURE=1 to allow screenshots; release builds ignore both.

Agent safety

AI coding agents are instructed to follow AGENTS.md:

  • Use obviously fake secrets in code, tests, docs, local issues and commits. Never include real passwords, keys or seed phrases.
  • Keep the app offline: no HTTP clients, updaters, telemetry, crash reporters or analytics.
  • Keep keys and decrypted Notes in the Rust core. The WebView receives only one Hidden Field at a time.
  • Add dependencies only when clearly needed, pin exact versions, and explain why in the PR or local issue.

Agents should test with fictional data in a separate development Vault using ENOTE_DEV_DATA_DIR and run the checks described above before a pull request.

Docs

License

MIT. The passphrase generator uses the EFF Long Wordlist (CC BY 3.0 US). Seed Phrase checks use the BIP39 English word list via the bip39 crate.

About

Offline, encrypted vault for seed phrases, private keys, passwords and API keys. macOS and Windows.

Topics

Resources

Stars

205 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages