Manage Apple Notes
/install managing-apple-notes
Managing Apple Notes with inotes
inotes is a macOS CLI for Apple Notes. It communicates with Notes.app via AppleScript and supports all CRUD operations plus search. Output defaults to a human-readable table; use --json for machine-readable output.
🔒 Privacy & Security
- ✅ Open source: Full source code at https://github.com/wangwalk/inotes
- ✅ Local-only: All operations run locally via AppleScript; no data leaves your machine
- ✅ No network calls:
inotesdoes not connect to any remote servers - ✅ Auditable install: Binary installed via Homebrew from signed release or GitHub Releases
- ✅ MIT Licensed: Free and open for inspection and contributions
- ⚠️ Requires macOS Automation permission for Notes.app (user grants via System Settings)
- 📦 Universal binary: Supports both Apple Silicon (arm64) and Intel (x86_64)
Prerequisites
System Requirements:
- macOS 14+ (Sonoma or later)
- Apple Notes.app (comes with macOS)
Install via Homebrew (recommended):
brew install wangwalk/tap/inotes
Verify installation:
inotes --version # Should show: 0.1.2
which inotes # Should be in /opt/homebrew/bin/ or /usr/local/bin/
Manual installation from GitHub Releases:
Download from GitHub Releases and verify SHA256:
curl -LO https://github.com/wangwalk/inotes/releases/download/v0.1.2/inotes-0.1.2-universal-apple-darwin.tar.gz
# Verify checksum from release notes
tar xzf inotes-0.1.2-universal-apple-darwin.tar.gz
sudo cp inotes /usr/local/bin/
sudo chmod +x /usr/local/bin/inotes
Check permission:
inotes status
If permission is denied, the user must enable Automation access for their terminal in System Settings > Privacy & Security > Automation > Notes.
Commands
List notes
inotes # recent iCloud notes (default)
inotes today # modified today
inotes show week # modified this week
inotes show all # all notes
inotes show --folder Work # notes in a specific folder
inotes show recent --limit 10 # limit results
List folders
inotes folders
List accounts
inotes accounts
Create a folder
inotes mkfolder "Projects"
inotes mkfolder "Work Notes" --account Exchange
Read a note
inotes read 1 # by index from last show output
inotes read A3F2 # by ID prefix (4+ characters)
Create a note
inotes add --title "Meeting Notes" --body "Action items" --folder Work
Edit a note
inotes edit 1 --title "Updated Title"
inotes edit 2 --body "New content" --folder Projects
Delete a note
inotes delete 1 # with confirmation
inotes delete 1 --force # skip confirmation
Search notes
inotes search "quarterly review"
inotes search "TODO" --folder Work --limit 10
Multi-account support
By default only iCloud notes are shown. Use --account \x3Cname> or --all-accounts to access other accounts.
inotes accounts # list available accounts
inotes show all --account Exchange
inotes show all --all-accounts
Output formats
| Flag | Description |
|---|---|
| (default) | Human-readable table |
--json / -j |
JSON |
--plain |
Tab-separated |
--quiet / -q |
Count only |
Agent usage guidelines
- Always use
--jsonwhen you need to parse output programmatically. - Use
--no-inputto disable interactive prompts in non-interactive contexts. - Use
--no-colorwhen capturing output to avoid ANSI escape sequences. - Identify notes by index (from the last
showoutput) or by ID prefix (first 4+ hex characters of the note ID). - Run
inotes statusfirst to verify automation permission before attempting other commands. - The CLI automatically filters out notes in "Recently Deleted" folders across all supported languages.
Examples for common tasks
Create daily note:
inotes add --title "Daily Notes $(date +%Y-%m-%d)" --body "## TODO\
\
## Done\
"
Export all notes to JSON:
inotes show all --json > notes-backup.json
Find notes with specific tag:
inotes search "#important" --json | jq '.[] | select(.folder == "Work")'
Archive completed notes:
inotes search "DONE" --folder Inbox --json | jq -r '.[].id' | while read id; do
inotes edit "$id" --folder Archive
done
Troubleshooting
"Automation permission denied"
- Go to System Settings > Privacy & Security > Automation
- Find your terminal app (e.g., Terminal.app, iTerm.app)
- Enable access to "Notes"
"Command not found"
- Run
which inotesto check if it's in your PATH - If using Homebrew:
brew doctorand check for warnings - Try
brew reinstall wangwalk/tap/inotes
"Note not found" when using index
- Run
inotes showagain to get fresh indices - Use ID prefix instead:
inotes read A3F2
Performance issues with many notes
- Use
--limitflag to reduce result set - Filter by folder:
--folder "Work" - Use date filters:
today,week,recent
Additional resources
- GitHub: https://github.com/wangwalk/inotes
- Releases: https://github.com/wangwalk/inotes/releases
- Issues: https://github.com/wangwalk/inotes/issues
- License: MIT
- 确保已安装 OpenClaw(本地或 Docker 部署)
- 在对话框中输入安装命令:
/install managing-apple-notes - 安装完成后,直接呼叫该 Skill 的名称或使用
/managing-apple-notes触发 - 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
Manage Apple Notes 是什么?
Manage Apple Notes from the terminal using the inotes CLI. Use when asked to list, read, create, edit, delete, or search notes in Notes.app on macOS. 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 1202 次。
如何安装 Manage Apple Notes?
在 OpenClaw 或 Claude Code 对话框中运行命令「/install managing-apple-notes」即可一键安装,无需额外配置。
Manage Apple Notes 是免费的吗?
是的,Manage Apple Notes 完全免费(开源免费),可自由下载、安装和使用。
Manage Apple Notes 支持哪些平台?
Manage Apple Notes 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(darwin)。
谁开发了 Manage Apple Notes?
由 Walker Wang(@wangwalk)开发并维护,当前版本 v1.0.1。