dnote
multi-device CLI notebook for commands, snippets, and notes
TLDR
Add a note to a book (opens the configured editor)
$ dnote add [book_name]
Add a note with inline content$ dnote add [book_name] -c "[note content]"
List all books, or notes in a book$ dnote view [book_name]```
**Search** notes with full-text search
Edit a note by ID**Search** notes with full-text search
$ dnote edit [note_id]
Remove a note or an entire book$ dnote remove [note_id|book_name]
Sync notes with a Dnote server$ dnote sync
# SYNOPSISdnote command [options] [args]# PARAMETERSadd book [-c content]Add a note to book (aliases: a, n, new). Opens the editor if content is omitted; accepts stdin.view [book [index]]
List books, notes in a book, or a specific note (alias: v)edit note-id|book
Edit a note or rename a book (alias: e). --book moves a note; --name renames a bookremove note-id|book
Delete a note or book (aliases: rm, d, delete). -y skips confirmationfind keywords
Full-text search; -b book limits scope (alias: f)sync
Synchronize with a configured Dnote server (--full for a full sync)login / logout
Authenticate with or leave a Dnote server--dbPath path
Use a custom SQLite database path instead of the default under XDG data# DESCRIPTIONdnote is a command-line notebook for capturing short notes, commands, and snippets organized into books. Notes are stored locally in SQLite and can optionally sync to a self-hosted or hosted Dnote server for multi-device access.Content can be entered via the system editor, -c, or stdin (handy for piping command output into a book). Search is full-text across notes. The default database path is typically under ~/.local/share/dnote/ on Linux.# CONFIGURATIONEditor and API endpoint settings live in the Dnote config used by the CLI. Override the database location with --dbPath. Use dnote login with --apiEndpoint to target a self-hosted server before dnote sync.# SEE ALSO[nb](/man/nb)(1), [zk](/man/zk)(1)# RESOURCES
$ Homepage
# INSTALL$ brew: brew install dnote
$ nix: nix profile install nixpkgs#dnote