mac-notes-agent

📝 macOS 原生笔记智能管家

基于 AppleScript 的 macOS 本地笔记管理工具,零外部依赖实现 Apple Notes 的增删改查,确保数据完全本地化处理。

收藏
2.6k
安装
977
版本
v1.1.0
CLS 安全性认证2026-05-15
点击查看完整报告 >

使用说明

Mac Notes Agent 是一款专为 macOS 生态系统设计的本地笔记自动化工具,通过 Node.js CLI 桥接 AppleScript 技术,实现与 Apple Notes 应用的无缝集成。该工具支持完整的笔记生命周期管理,包括创建、读取、更新、删除和搜索等核心操作,所有功能均通过本地命令行接口完成,无需依赖外部网络服务。

该 Skill 的核心用法十分直观。用户通过 node cli.js 命令配合不同子命令(add、list、get、update、append、delete、search)即可操控 Notes 应用。工具采用 (folderName, title) 作为主键识别机制,并生成合成 ID 便于精确定位。值得注意的是,它支持自动创建不存在的文件夹,并将换行符自动转换为 HTML 的 <br> 标签以适应 Notes 的渲染格式。

显著优点体现在其极简的架构设计。首先,零外部 npm 依赖,仅使用 Node.js 内置的 child_process 模块,极大降低了供应链攻击风险。其次,所有数据操作完全在本地完成,通过 AppleScript 直接与系统 Notes 应用交互,不存在数据外传或云端同步的隐私隐患。此外,轻量化的实现使其启动迅速,资源占用极低,适合作为自动化工作流的核心组件。

然而,该工具也存在若干局限性。平台独占性是最主要的限制——仅支持 macOS 系统,且依赖系统自带的 osascript 工具。功能层面,由于 Apple Notes 本身不暴露稳定 ID,工具采用标题+文件夹的复合键机制,当存在重名笔记时只能操作最近创建的一条,这可能引发误操作。更重要的是,delete 命令执行即时删除且不提供二次确认机制,存在误删风险。

该 Skill 最适合 macOS 生态的重度用户,特别是需要批量处理笔记、自动化记录工作流或将 Notes 作为知识库管理的个人用户。对于开发者而言,其简洁的 JSON 接口也便于集成到更复杂的自动化脚本中。

使用风险主要包括:系统权限依赖(首次使用需授予自动化权限)、误删不可逆(建议重要笔记提前备份)、以及 AppleScript 执行的性能瓶颈(处理大量笔记时可能出现延迟)。此外,由于直接操作系统级应用,macOS 版本更新可能导致 AppleScript 接口行为变化,存在兼容性维护风险。

安全解读

核心用法

mac-notes-agent 是一款专为 macOS 设计的 Apple Notes 桥接工具,通过 Node.js CLI 调用本地 osascript 与系统备忘录应用交互。支持完整的笔记生命周期管理:创建(add)、列表(list)、读取(get)、更新(update)、追加(append)、删除(delete)及搜索(search)。所有操作均通过命令行参数指定,如 --folder 指定文件夹、--title 指定标题,支持通过合成 ID 精确定位笔记。

显著优点

  • 零外部依赖:仅使用 Node.js 内置 child_process 模块,无 npm 依赖,彻底消除供应链攻击风险
  • 完全离线运行:无网络 API 调用,数据不出设备,符合 GDPR/CCPA 隐私合规要求
  • 轻量化设计:4 个文件、781 行代码,结构清晰易于审计
  • AppleScript 原生集成:直接调用系统级备忘录接口,无需额外配置

潜在缺点与局限性

  • macOS 独占:依赖 AppleScript 与 Notes 应用,Windows/Linux 用户无法使用
  • 同步阻塞:使用 execFileSync 同步执行,处理大量笔记时可能阻塞事件循环
  • 标识符限制:Apple Notes 无稳定 ID,采用 (folder, title) 主键,同名笔记只能操作最新创建的一条
  • 输入转义简易:当前仅转义 \" 字符,存在边缘情况下的 AppleScript 注入风险

适合人群

  • 需在自动化工作流(如 AI Agent)中集成本地备忘录的 macOS 用户
  • 对隐私敏感、拒绝云端同步方案的个人用户
  • 开发者构建离线优先的 macOS 效率工具链

常规风险

  • T3 来源风险:作者为个人开发者(swancho),GitHub 活跃度一般,建议关注后续更新
  • 权限边界:需确保运行环境对 Notes 应用有 Accessibility/自动化权限授权
  • 数据误操作:更新命令直接替换全文,建议操作前备份重要笔记

mac-notes-agent 内容

手动下载zip · 5.7 kB
cli.jstext/javascript
请选择文件