360 Secure SkillHub
360 安全技能中心

Nb

该 Skill 提供 nb 命令行笔记工具的用法参考,覆盖笔记本切换与创建、笔记增删改查、跨库搜索、待办与书签管理、文件夹整理,以及基于 Git 的提交、checkpoint 和 sync 同步;笔记以 markdown 存放于 ~/.nb/<notebook>/,要求通过 nb CLI 而非手工编辑。

bjesuiter
bjesuiter
热度 92.55
最近更新 2026-05-11 15:48:53
分类:知识依赖:代码执行 / 读写文件应用场景:笔记整理 / 任务管理 / 工作流

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add nb
Metadata
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 <bjesuiter@gmail.com>
homepage
https://github.com/xwmx/nb
metadata
{"clawdbot":{"emoji":"📓","os":["darwin","linux"],"requires":{"bins":["nb"]}}}

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 notebooks

# Switch to a notebook
nb use <notebook>

# Create a new notebook
nb notebooks add <name>

# 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 <notebook>: add -t "Title" -c "Content"

# Add note with tags
nb add -t "Title" --tags tag1,tag2

# Add note from file content
nb add <notebook>:filename.md

Listing Notes

# List notes in current notebook
nb list

# List all notes (no limit)
nb list -a

# List notes in specific notebook
nb <notebook>: list

# List with excerpts
nb list -e

# List with tags shown
nb list --tags

Showing Notes

# Show note by ID or title
nb show <id>
nb show "<title>"

# Show note from specific notebook
nb show <notebook>:<id>

# Print content (for piping)
nb show <id> --print

Searching Notes

# Search across all notebooks
nb search "query"

# Search in specific notebook
nb <notebook>: 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 <id>

# Edit by title
nb edit "<title>"

# Append content
nb edit <id> -c "New content to append"

# Prepend content
nb edit <id> -c "Content at top" --prepend

# Overwrite content
nb edit <id> -c "Replace all" --overwrite

Deleting Notes

# Delete by ID (will prompt)
nb delete <id>

# Force delete without prompt
nb delete <id> -f

Moving/Renaming

# Move note to another notebook
nb move <id> <notebook>:

# Rename a note
nb move <id> 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 open

# List closed todos
nb todos closed

# Mark todo as done
nb todo do <id>

# Mark todo as not done
nb todo undo <id>

Bookmarks

# Add a bookmark
nb bookmark <url>

# Add with comment
nb bookmark <url> -c "My comment"

# Add with tags
nb bookmark <url> --tags reference,dev

# List bookmarks
nb bookmark list

# Search bookmarks
nb bookmark search "query"

Git Operations

# Sync with remote
nb sync

# Create checkpoint (commit)
nb git checkpoint "Message"

# Check dirty status
nb git dirty

# Run any git command
nb git status
nb git log --oneline -5

Folders

# Add folder to notebook
nb folders add <folder-name>

# List folders
nb folders

# Add note to folder
nb add <folder>/<filename>.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/<notebook>/
cd ~/.nb/<notebook> && git add . && git commit -m "Add note"
nb <notebook>: index rebuild

Searching Across All

# Search everything
nb search "term" --all

# Search by type
nb search "term" --type bookmark
nb search "term" --type todo

Data Location

Notes are stored in ~/.nb/<notebook>/ as markdown files with Git versioning.

~/.nb/
├── notebook-name-1/ # Your first notebook
├── notebook-name-2/ # Your second notebook
└── ...

Tips

  1. Use nb <notebook>: 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