Table of Contents
Checkboxes
nt has first-class support for Markdown checkboxes — you can check, uncheck, and interactively toggle tasks from the command line without opening an editor.
Checkbox Syntax
Inside a note, checkboxes follow standard GitHub-Flavoured Markdown:
- [ ] Unchecked item
- [X] Checked item
Indentation is supported for nested tasks:
- [ ] Top-level task
- [ ] Sub-task A
- [X] Sub-task B (done)
nt check
Marks the first checkbox whose text matches <pattern> (case-insensitive).
nt check <note> <pattern>
nt check meeting "Follow up with Alice"
# ✓ Checked item matching 'Follow up with Alice'
nt uncheck
Reverses a checked item back to unchecked.
nt uncheck <note> <pattern>
nt uncheck meeting "Follow up with Alice"
# ✓ Unchecked item matching 'Follow up with Alice'
nt toggle — Interactive TUI
Displays all checkboxes in a note as a numbered list and lets you toggle them by entering the item number. Press q to quit.
nt toggle <note>
Example session:
Checkboxes in 'meeting' (enter number to toggle, q to quit)
1. [ ] Follow up with Alice
2. [✓] Book conference room
3. [ ] Send agenda
Toggle #: 1
Checked ✓
Toggle #: q
Changes are written to the file and committed after each toggle.
How Matching Works
Both check and uncheck use a case-insensitive substring match against the full checkbox line. If multiple lines match the pattern, all of them are updated. Use a more specific pattern if you need to target a single item.
# Updates ALL items containing "Alice"
nt check meeting "alice"
# More specific — targets only this exact task
nt check meeting "Follow up with Alice by Friday"