
If your day already starts in a terminal, opening an Electron notes app just to jot a thought feels like an interruption. That is why CLI note-taking has quietly become a movement of its own. The terminal is fast, scriptable, and always open. This guide walks through eight CLI note-taking apps for Windows, macOS and Linux that turn your shell into a note capture surface without pulling you out of flow.
What to look for in a CLI note-taking app
- Speed of capture. How many keystrokes from thought to saved note.
- Storage format. Plain text markdown wins over proprietary databases.
- Sync story. Does it sit on top of git or a filesystem you already back up.
- Editor of choice. Some launch $EDITOR, some ship their own TUI, some are Vim or Emacs plugins.
- Search and tagging. Full-text is table stakes; tag namespaces are a big quality-of-life win.
- Cross-tool interop. Whether the same notes open cleanly in Obsidian, Logseq or Neovim.
Quick comparison
| App | Best for | Platforms | Free plan | Starting price | Rating |
|---|---|---|---|---|---|
| Obsidian CLI | Existing Obsidian vaults | Windows, macOS, Linux | Yes, full | Free | 4.9 GitHub stars |
| nb | Feature-rich CLI notebook | Windows (WSL), macOS, Linux | Yes, full | Free | 6k+ GitHub stars |
| jrnl | Simple daily journaling | Windows, macOS, Linux | Yes, full | Free | 6k+ GitHub stars |
| Neorg | Neovim-native note system | Wherever Neovim runs | Yes, full | Free | Active |
| VimWiki | Personal wiki inside Vim | Wherever Vim runs | Yes, full | Free | Established |
| Emacs Org-mode | Everything-in-one power tool | Wherever Emacs runs | Yes, full | Free | Legendary |
| dnote | Multi-device developer notes | Windows, macOS, Linux | Yes (limited) | Around $9/month | Solid |
| Nap | Code-snippet stashes | Windows, macOS, Linux | Yes, full | Free | Charm Labs polish |
The 8 best CLI note-taking apps for desktop
1. Obsidian CLI — best for existing Obsidian users
Obsidian CLI (the community obs-cli project and its cousins) exposes an Obsidian vault to the terminal so you can create notes, append to daily notes and search without opening the Obsidian app. Notes are the same markdown files, so nothing about your vault changes. That interop is the killer feature.
Where it falls short: The tooling is community-maintained rather than official, so update cadence is uneven. Advanced Obsidian plugins like Dataview do not run from the CLI.
Pricing:
- Free: Obsidian core and the CLI wrappers are free.
- Paid: Obsidian Sync ($4/month) and Publish ($8/month) are optional.
Platforms: Windows, macOS, Linux. Requires Node or a compiled binary depending on the wrapper.
Download: Obsidian for desktop · obs-cli on GitHub
Bottom line: If your notes already live in an Obsidian vault, this is the way to add a terminal capture layer without changing your storage.
2. nb — best all-purpose CLI notebook
nb is a single Bash script that packs a full notes-and-bookmarks system with encryption, tagging, bookmark archival, and git-based sync. It launches your $EDITOR for edits, supports pinning, exports to Markdown, HTML, PDF, and works fine over SSH.
Where it falls short: It is a Bash script, so Windows-native use needs WSL or Git Bash. The feature list is huge, which means the learning curve is deeper than jrnl.
Pricing:
- Free: everything.
- Paid: none.
Platforms: macOS, Linux, Windows via WSL.
Download: nb on GitHub · nb site
Bottom line: nb is the pick when you want one tool that owns notes, bookmarks and even reference PDFs from the terminal.
3. jrnl — best for daily journaling and quick thoughts
jrnl is a Python CLI whose whole design principle is “type jrnl and start writing.” It timestamps every entry, supports tags, and stores journals as plain text (optionally encrypted). It is the shortest path from open terminal to captured thought on this list.
Where it falls short: It is a journal, not a knowledge base. There is no wiki-style linking, no tags-of-tags, no attachments.
Pricing:
- Free: everything.
- Paid: none.
Platforms: Windows, macOS, Linux.
Download: jrnl site · jrnl on GitHub
Bottom line: Install jrnl even if you use a bigger system. It is the quickest capture on this list, full stop.
4. Neorg — best for Neovim natives
Neorg is Neovim’s answer to Org-mode. Structured markup, task and agenda handling, folded outlines, and workspaces all live inside Neovim itself. Because it is a plugin, it plays with your existing Neovim keybinds and treesitter setup.
Where it falls short: Only works inside Neovim. The syntax is Neorg’s own dialect (.norg), so notes are not portable to Obsidian without export.
Pricing:
- Free: everything.
- Paid: none.
Platforms: Wherever Neovim runs.
Download: Neorg on GitHub
Bottom line: If Neovim is your editor, Neorg is the shortest path to a serious note system without leaving it.
5. VimWiki — best for a personal wiki inside Vim
VimWiki is the older Vim staple that predates most competitors. It gives Vim a hyperlinked personal wiki with markdown or its own syntax, plus diary support and to-do list handling. Simple and stable.
Where it falls short: Feature depth is thinner than Neorg or Org-mode. Some users find syntax linking clunky compared to modern markdown editors.
Pricing:
- Free: everything.
- Paid: none.
Platforms: Wherever Vim runs.
Download: VimWiki on GitHub
Bottom line: VimWiki is the calm, boring pick. It has worked the same way for a decade and still delivers.
6. Emacs Org-mode — best for power users
Emacs Org-mode is not really a note app. It is a plain-text outliner, task manager, calendar, bibliography, spreadsheet, and literate programming environment that happens to also take notes. Nothing on this list is more powerful.
Where it falls short: It is Emacs. The learning curve is famous, and everything from clocking to agenda views requires config. Windows and macOS builds work but Linux is the native home.
Pricing:
- Free: everything.
- Paid: none.
Platforms: Wherever Emacs runs.
Download: Org-mode site · GNU Emacs
Bottom line: If you already use Emacs, Org-mode wins by default. If you do not, expect a real investment before the payoff.
7. dnote — best for multi-device developer notes
dnote is a CLI notebook designed for developers who want their notes synced across machines. It runs a local SQLite store and optionally syncs to a hosted server, so dnote add js "closure gotcha..." on your laptop appears seconds later on the desktop. The book-and-note model is deliberately simple.
Where it falls short: The hosted sync is a paid service, and the self-hosted server takes work to set up. Notes are not markdown files on disk by default, which limits mixing with other tools.
Pricing:
- Free: local CLI, self-hosted server if you run it.
- Paid: Pro hosted sync around $9/month.
Platforms: Windows, macOS, Linux.
Download: dnote site · dnote on GitHub
Bottom line: dnote is the pick when you want zero-friction sync between a MacBook and a work desktop without running your own server.
8. Nap — best for code snippet stashes
Nap by Charm Labs is not a general note app; it is a CLI code-snippet manager. Store useful bash one-liners, SQL queries, or Kubernetes manifests, then recall them with a fuzzy TUI. Because Nap uses Charm’s Bubble Tea framework, the interface is genuinely pleasant.
Where it falls short: It is a snippet tool, not a knowledge base. No wiki, no daily notes, no tagging beyond folders.
Pricing:
- Free: everything.
- Paid: none.
Platforms: Windows, macOS, Linux.
Download: Nap on GitHub
Bottom line: Add Nap alongside a real note app. It is the fastest place to stash and recall command-line recipes.
How to pick the right one
- If your notes already live in Obsidian, use Obsidian CLI. Same files, terminal-fast capture.
- If you want the shortest path to typing an entry, use jrnl. It is unbeatable for daily thoughts.
- If you want the everything-tool and you already use Vim or Emacs, use Neorg, VimWiki, or Org-mode in that order of newness.
- If you want a serious CLI notebook without an editor commitment, use nb.
- If sync between devices matters more than plain text, pay for dnote Pro.
- If you just need a place to stash shell recipes, use Nap.
FAQ
What is the best free CLI note-taking app? For general notes, nb has the deepest feature set among free options. For daily journaling, jrnl is the fastest to install and use.
Can I use Obsidian from the terminal? Yes, through community wrappers like obs-cli. The CLI operates on the same vault Obsidian’s GUI uses, so notes remain interchangeable.
Does Emacs Org-mode work on Windows? Yes, Emacs has native Windows builds and Org-mode ships in the box. Setup is more involved than on Linux but perfectly usable.
Is there a note app that syncs without an account? nb combined with a private git repo gives you sync without a third-party account. Push and pull like any other repo.
What do developers actually use to take notes? Surveys on r/vim, r/emacs and r/commandline point at four winners: Obsidian (with CLI helpers) for markdown vaults, Neorg for Neovim users, Org-mode for Emacs users, and jrnl for anyone who just wants to type and log off.