Read, create, update, and delete Apple Notes via AppleScript.
- macOS (uses AppleScript via
osascript) - Apple Notes app
- OpenClaw gateway running on macOS host (not in a container)
openclaw plugins install openclaw-apple-notesThis downloads the plugin from npm and extracts it to ~/.openclaw/extensions/apple-notes/.
Alternative: install from source
git clone https://github.com/androidStern/openclaw-apple-notes.git
openclaw plugins install ./openclaw-apple-notesAdd to ~/.openclaw/openclaw.json:
{
"plugins": {
"entries": {
"apple-notes": {
"enabled": true
}
}
}
}Since these tools can modify data, they are registered as optional: true and must be explicitly allowed.
Add "apple-notes" to your sandbox tool allowlist in ~/.openclaw/openclaw.json:
{
"tools": {
"sandbox": {
"tools": {
"allow": ["group:runtime", "group:fs", "apple-notes"]
}
}
}
}openclaw gateway restartopenclaw plugins list
# Should show: Apple Notes | apple-notes | loaded| Tool | Description |
|---|---|
apple_notes_list |
List all notes with ID, folder, and title |
apple_notes_read |
Read note content (HTML) by ID |
apple_notes_create |
Create a note in a folder with title and HTML body |
apple_notes_update |
Update note content by ID |
apple_notes_delete |
Delete a note by ID |
Use apple_notes_list to see all my notes
Read the note with ID "x-coredata://..." using apple_notes_read
Create a new note in "Notes" folder titled "Shopping List" with content "<h1>Shopping</h1><ul><li>Milk</li></ul>"
Update note ID "x-coredata://..." with new HTML content
- Content is HTML. Apple Notes uses a subset of HTML (basic tags like
<h1>,<p>,<ul>,<li>,<b>,<i>, etc.) - The "Recently Deleted" folder is automatically excluded from listings
- Note IDs are CoreData URIs (e.g.,
x-coredata://...)
- Runs AppleScript via
osascriptas a local subprocess - Requires macOS automation permissions for the Notes app
- Tools are marked
optional: trueso they must be explicitly allowed
MIT