Note Taking Skill
Manage the user's notes as plain text/markdown files in the data directory.
Storage
All notes are stored as plain .md files in the home (data) directory at ~/notes/.
Do NOT use a database, JSON blob, or any other structured format -- just simple files on disk.
This makes notes portable, grep-able, and easy to back up.
Directory Structure
code
~/notes/
quick.md # Scratch pad for quick one-liners
ideas.md # Ideas and brainstorming
meetings/
2026-02-09.md # Meeting notes by date
projects/
<project-name>.md # Per-project notes
topics/
<topic>.md # Notes organized by topic
Create subdirectories as needed. Default to the top-level ~/notes/ for simple notes.
Creating a Note
- •
Determine the appropriate file based on context:
- •Quick thought or no category specified: append to
~/notes/quick.md - •Meeting notes:
~/notes/meetings/<date>.md - •Project-specific:
~/notes/projects/<project>.md - •Topic-specific:
~/notes/topics/<topic>.md
- •Quick thought or no category specified: append to
- •
Ensure the directory exists:
bashmkdir -p ~/notes/meetings ~/notes/projects ~/notes/topics
- •
Append the note with a timestamp header:
bashecho -e "\n## $(date '+%Y-%m-%d %H:%M')\n\n<content>" >> ~/notes/<file>.md
Reading Notes
- •
Show a specific note file:
bashcat ~/notes/<file>.md
- •
List all notes:
bashfind ~/notes -name '*.md' -type f | sort
- •
Search across all notes:
bashgrep -rl "<search term>" ~/notes/
Updating Notes
- •To edit an existing note, read the file, modify the content, and write it back.
- •When appending, always add a new timestamped section rather than overwriting.
Deleting Notes
- •Only delete when the user explicitly asks:
bash
rm ~/notes/<file>.md
Tips
- •Always confirm with the user before deleting or overwriting notes.
- •When the user says "note that..." or "remember that...", save it to
quick.mdunless a better category is obvious. - •Keep note content concise but complete -- capture the user's intent faithfully.
- •Use markdown formatting (headers, lists, bold) to keep notes scannable.