/install mac-notes-agent
Mac Notes Agent
Overview
This skill lets the agent talk to Apple Notes on macOS using AppleScript
(via osascript). It is implemented as a small Node.js CLI:
node skills/mac-notes-agent/cli.js \x3Ccommand> [options]
Requires macOS with the built-in Notes app and
osascriptavailable.
All operations target the default Notes account. Optionally you can specify which folder to use.
Commands
1) Add a new note
node skills/mac-notes-agent/cli.js add \
--title "Meeting notes" \
--body "First line\
Second line\
Third line" \
[--folder "Jarvis"]
--title(required): Note title--body(required): Note body text. Use\for line breaks.--folder(optional): Folder name. If omitted, uses system default folder. If folder doesn't exist, it will be created.
Line breaks (
\) are converted to\x3Cbr>tags internally for proper rendering in Notes.
Result (JSON):
{
"status": "ok",
"id": "Jarvis::2026-02-09T08:40:00::Meeting notes",
"title": "Meeting notes",
"folder": "Jarvis"
}
2) List notes
node skills/mac-notes-agent/cli.js list [--folder "Jarvis"] [--limit 50]
- Lists notes in the given folder (or all folders if omitted).
- Output is JSON array with
title,folder,creationDate, and syntheticid.
3) Read a note (get)
# By folder + title
node skills/mac-notes-agent/cli.js get \
--folder "Jarvis" \
--title "Meeting notes"
# By synthetic id
node skills/mac-notes-agent/cli.js get --id "Jarvis::2026-02-09T08:40:00::Meeting notes"
4) Update a note (replace body)
node skills/mac-notes-agent/cli.js update \
--folder "Jarvis" \
--title "Meeting notes" \
--body "New content\
Replaces everything"
- Replaces the entire body of the matching note.
- Can also use
--idfor identification.
5) Append to a note
node skills/mac-notes-agent/cli.js append \
--folder "Jarvis" \
--title "Meeting notes" \
--body "\
---\
Additional notes here"
- Appends new content to the end of the existing note.
6) Delete a note
node skills/mac-notes-agent/cli.js delete \
--folder "Jarvis" \
--title "Meeting notes"
7) Search notes
node skills/mac-notes-agent/cli.js search \
--query "keyword" \
[--folder "Jarvis"] \
[--limit 20]
- Searches note titles and bodies for the keyword.
Identification Model
Apple Notes doesn't expose stable IDs. This CLI uses:
- Primary key:
(folderName, title) - Synthetic ID:
folderName::creationDate::title
When multiple notes share the same title, the CLI operates on the most recently created one.
Environment
- macOS only: Uses AppleScript via
osascript - No npm dependencies: Uses only Node.js built-ins (
child_process)
- 确保已安装 OpenClaw(本地或 Docker 部署)
- 在对话框中输入安装命令:
/install mac-notes-agent - 安装完成后,直接呼叫该 Skill 的名称或使用
/mac-notes-agent触发 - 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
Mac Notes Agent 是什么?
Integrate with the macOS Notes app (Apple Notes). Supports creating, listing, reading, updating, deleting, and searching notes via a simple Node.js CLI that bridges to AppleScript. 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 1534 次。
如何安装 Mac Notes Agent?
在 OpenClaw 或 Claude Code 对话框中运行命令「/install mac-notes-agent」即可一键安装,无需额外配置。
Mac Notes Agent 是免费的吗?
是的,Mac Notes Agent 完全免费(开源免费),可自由下载、安装和使用。
Mac Notes Agent 支持哪些平台?
Mac Notes Agent 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。
谁开发了 Mac Notes Agent?
由 Swan C(@swancho)开发并维护,当前版本 v1.1.0。