Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
Apple Notes.app integration for macOS. List folders, read, create, search, edit, and delete notes via AppleScript.
Apple Notes.app integration for macOS. List folders, read, create, search, edit, and delete notes via AppleScript.
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
Interact with Notes.app via AppleScript. Run scripts from: cd {baseDir}
CommandUsageList foldersscripts/notes-folders.sh [--tree] [--counts]List notesscripts/notes-list.sh [folder] [limit]Read notescripts/notes-read.sh <name-or-id> [folder]Create notescripts/notes-create.sh <folder> <title> [body]Search notesscripts/notes-search.sh <query> [folder] [limit] [--title-only]Edit notescripts/notes-edit.sh <name-or-id> <new-body> [folder]Delete notescripts/notes-delete.sh <name> <folder> β οΈ folder required
All commands support subfolder paths with / separator: scripts/notes-list.sh "Scanned/Medical & Health" 10 scripts/notes-read.sh "blood test" "Scanned/Medical & Health" scripts/notes-create.sh "Property/416 Garfield" "Inspection notes" "Roof looks good"
This collection has 4000+ notes. Key structure: Scanned β parent folder with many subfolders (Medical & Health, Receipts, etc.) Fetish β parent with subfolders (AW, Bimbo, Events, etc.) Hobbies β parent with subfolders (3d printing, Homelab, etc.) Property β subfolders per address Use --tree --counts to see the full hierarchy.
scripts/notes-folders.sh # Flat list scripts/notes-folders.sh --counts # With note counts scripts/notes-folders.sh --tree --counts # Full hierarchy with counts
scripts/notes-list.sh "Notes" 10 # Specific folder scripts/notes-list.sh "Scanned/Receipts" 5 # Subfolder scripts/notes-list.sh "" 10 # All folders (shows folder name per note) Without a folder, output includes the folder column: ID | Date | Folder | Title With a folder: ID | Date | Title
scripts/notes-read.sh "blood test" "Scanned/Medical & Health" # By name (partial match) scripts/notes-read.sh "x-coredata://β¦/ICNote/p12345" # By ID (direct lookup, fast) Output: Title, Folder, Modified date, ID, then body text.
Title search first (fast), body search fallback (slower): scripts/notes-search.sh "tax" "" 10 # All folders scripts/notes-search.sh "receipt" "Scanned/Receipts" 5 # Specific folder scripts/notes-search.sh "keyword" "" 10 --title-only # Skip body search Output: ID | Date | Folder | Title
scripts/notes-create.sh "Notes" "My Title" "Body text here" # With body scripts/notes-create.sh "Notes" "Empty Note" # Title only Returns the created note's ID.
scripts/notes-edit.sh "My Note" "New body content" "Notes" # By name scripts/notes-edit.sh "x-coredata://β¦/ICNote/p12345" "New body" # By ID
scripts/notes-delete.sh "Old Note" "Notes" # Folder required scripts/notes-delete.sh "receipt" "Scanned/Receipts" β οΈ Folder argument is required for safety β prevents accidental matches across 4000+ notes.
SituationTipListing/searching all notesAlways specify a folder β iterating 4000+ notes is slowReading a known noteUse the ID from a previous list/search β instant lookupSearching large foldersUse --title-only if body search isn't neededFinding the right folderUse --tree --counts first to see hierarchy
ErrorCauseError: Can't get folderFolder name doesn't exist or wrong pathNo note matchingβ¦No partial match found in scopeEmpty body textScanned/image-only notes have no extractable text
Partial name matching for read/edit/delete (first match wins) Multiline body supported via temp files Folder names are case-sensitive All user inputs escaped for AppleScript safety (quotes, backslashes) number of used instead of count of (AppleScript reserved word)
Code helpers, APIs, CLIs, browser automation, testing, and developer operations.
Largest current source with strong distribution and engagement signals.