Nb
by @bjesuiter
Manage notes, bookmarks, and notebooks using the nb CLI. Create, list, search, and organize notes across multiple notebooks with Git-backed versioning.
clawhub install nbπ About This Skill
name: nb description: Manage notes, bookmarks, and notebooks using the nb CLI. Create, list, search, and organize notes across multiple notebooks with Git-backed versioning. author: Benjamin Jesuiter
nb - Command Line Note-Taking
> β οΈ IMPORTANT: Never edit files in nb git repos (~/.nb/*) by hand! Always use the nb CLI to ensure proper indexing and Git commits.
A command line and local web note-taking, bookmarking, and archiving tool with plain text data storage, Git-backed versioning, and wiki-style linking.
Quick Reference
Notebooks
# List all notebooks
nb notebooksSwitch to a notebook
nb use Create a new notebook
nb notebooks add Show current notebook
nb notebooks current
Adding Notes
# Add a note with title
nb add -t "Title" -c "Content here"Add note to specific notebook
nb : add -t "Title" -c "Content"Add note with tags
nb add -t "Title" --tags tag1,tag2Add note from file content
nb add :filename.md
Listing Notes
# List notes in current notebook
nb listList all notes (no limit)
nb list -aList notes in specific notebook
nb : listList with excerpts
nb list -eList with tags shown
nb list --tags
Showing Notes
# Show note by ID or title
nb show
nb show ""Show note from specific notebook
nb show :Print content (for piping)
nb show --print
Searching Notes
# Search across all notebooks
nb search "query"Search in specific notebook
nb : search "query"Search with AND/OR/NOT
nb search "term1" --and "term2"
nb search "term1" --or "term2"
nb search "term1" --not "exclude"Search by tag
nb search --tag "tagname"
Editing Notes
# Edit by ID
nb edit Edit by title
nb edit ""Append content
nb edit -c "New content to append"Prepend content
nb edit -c "Content at top" --prependOverwrite content
nb edit -c "Replace all" --overwrite
Deleting Notes
# Delete by ID (will prompt)
nb delete Force delete without prompt
nb delete -f
Moving/Renaming
# Move note to another notebook
nb move :Rename a note
nb move new-filename.md
Todos
# Add a todo
nb todo add "Task title"Add todo with due date
nb todo add "Task" --due "2026-01-15"List open todos
nb todos openList closed todos
nb todos closedMark todo as done
nb todo do Mark todo as not done
nb todo undo
Bookmarks
# Add a bookmark
nb bookmark Add with comment
nb bookmark -c "My comment"Add with tags
nb bookmark --tags reference,devList bookmarks
nb bookmark listSearch bookmarks
nb bookmark search "query"
Git Operations
# Sync with remote
nb syncCreate checkpoint (commit)
nb git checkpoint "Message"Check dirty status
nb git dirtyRun any git command
nb git status
nb git log --oneline -5
Folders
# Add folder to notebook
nb folders add List folders
nb foldersAdd note to folder
nb add /.md
Common Patterns
Adding Note with Full Content
For longer notes, create a temp file and import:
# Write content to temp file first, then copy to nb
cp /tmp/note.md ~/.nb//
cd ~/.nb/ && git add . && git commit -m "Add note"
nb : index rebuild
Searching Across All
# Search everything
nb search "term" --allSearch by type
nb search "term" --type bookmark
nb search "term" --type todo
Data Location
Notes are stored in ~/.nb/ as markdown files with Git versioning.
~/.nb/
βββ notebook-name-1/ # Your first notebook
βββ notebook-name-2/ # Your second notebook
βββ ...
Tips
1. Use nb prefix to work with specific notebooks
2. IDs are numbers shown in nb list
3. Titles can be used instead of IDs (quoted if spaces)
4. All changes are automatically Git-committed
5. Use nb sync to push/pull from remote repos
π Tips & Best Practices
1. Use nb prefix to work with specific notebooks
2. IDs are numbers shown in nb list
3. Titles can be used instead of IDs (quoted if spaces)
4. All changes are automatically Git-committed
5. Use nb sync to push/pull from remote repos