Skip to main content
RapidDev - Software Development Agency
openclaw-integrationsDirect API Integration

How to Connect Apple Notes to OpenClaw

To connect Apple Notes to OpenClaw on macOS, configure OpenClaw to run AppleScript or JXA (JavaScript for Automation) commands that interact with the Notes app directly. No API key is needed — OpenClaw uses macOS automation to create, read, and search notes in any Apple Notes account or folder. This integration requires macOS and works with the Notes app that ships with every Mac.

What you'll learn

  • How to configure OpenClaw to run AppleScript commands targeting the macOS Notes app
  • How to grant macOS Automation permissions to OpenClaw for Notes access
  • How to create, read, and search Apple Notes from OpenClaw workflows
  • How to target specific iCloud folders and accounts in Apple Notes via AppleScript
  • How to handle HTML content in Apple Notes (Notes uses HTML internally, not plain text)
Book a free consultation
4.9Clutch rating
600+Happy partners
17+Countries served
190+Team members
Intermediate13 min read20 minutesNotes & DocumentsMarch 2026RapidDev Engineering Team
TL;DR

To connect Apple Notes to OpenClaw on macOS, configure OpenClaw to run AppleScript or JXA (JavaScript for Automation) commands that interact with the Notes app directly. No API key is needed — OpenClaw uses macOS automation to create, read, and search notes in any Apple Notes account or folder. This integration requires macOS and works with the Notes app that ships with every Mac.

Why Connect Apple Notes to OpenClaw on macOS?

Apple Notes is one of the most widely used note-taking apps on macOS because it is built in, free, syncs instantly with iPhone and iPad via iCloud, and supports rich content including images, tables, checklists, and attachments. For users who live in the Apple ecosystem, it is often the fastest place to capture thoughts — faster than opening a web app or standalone tool.

Connecting OpenClaw to Apple Notes means your AI agent can work with your existing notes without requiring you to migrate to a different note-taking tool. OpenClaw can create structured notes from research tasks, search your existing notes for relevant context, append meeting summaries to existing notes, and organize notes into folders — all using macOS's built-in automation framework.

The integration uses AppleScript (or its modern JavaScript equivalent, JXA), which is the standard macOS mechanism for automating native app behavior. The key thing to understand is that Apple Notes stores content as HTML internally — not plain text or Markdown. When OpenClaw reads a note, it gets the raw HTML body. When creating notes, you can pass HTML for rich formatting or plain text for simple content. This is different from Obsidian or Bear Notes, which use plain Markdown, but it allows OpenClaw to create notes with bold text, bullet lists, checkboxes, and other formatting Apple Notes supports.

Integration method

Direct API Integration

Apple Notes has no public REST API. OpenClaw integrates with it on macOS using AppleScript or JXA (JavaScript for Automation), which are macOS's built-in scripting frameworks for controlling native apps. OpenClaw runs osascript commands that tell the Notes app to create, read, search, or move notes programmatically. This is a macOS-only integration — it requires the Notes app to be installed (it is pre-installed on every Mac) and macOS Automation permissions to be granted to OpenClaw.

Prerequisites

  • A Mac running macOS 12 (Monterey) or later with the Notes app installed and configured
  • OpenClaw installed on the same Mac
  • macOS Automation permissions — you will need to allow OpenClaw (specifically the `osascript` command) to control the Notes app in System Settings
  • An iCloud account logged in on the Mac if you want notes to sync to iPhone/iPad (optional — local notes work without iCloud)
  • No API key or developer account required for this integration

Step-by-step guide

1

Grant macOS Automation Permissions to OpenClaw

Apple Notes automation via AppleScript requires explicit macOS permission. When OpenClaw (or osascript) first attempts to control the Notes app, macOS will show a permission dialog asking whether to allow automation. You must approve this for the integration to work. To pre-grant permission: open System Settings > Privacy & Security > Automation. Look for Terminal, OpenClaw, or the relevant application in the list. Ensure that 'Notes' is checked as an allowed target app. If the permission dialog never appeared, try running the test AppleScript command below manually from Terminal first — this triggers the permission request. Once you approve it in Terminal, OpenClaw (which also uses osascript under the hood) inherits the permission. On macOS 14 (Sonoma) and later, automation permissions are managed per-app. If OpenClaw runs as its own process (not via Terminal), it may need a separate permission grant. Check System Settings > Privacy & Security > Automation after running OpenClaw for the first time.

terminal
1# Test AppleScript access to Notes from Terminal (triggers permission dialog)
2osascript -e 'tell application "Notes" to get name of every account'
3# Expected output: {"iCloud", "On My Mac"} or similar
4# If you get a permission error, approve it in System Settings
5
6# Check if Notes automation permission is granted:
7osascript -e 'tell application "Notes" to get name of first note of first account'
8# Should return the name of your first note confirms read access is working

Pro tip: If you see 'osascript is not allowed assistive access' or a similar error, open System Settings > Privacy & Security > Accessibility and add Terminal to the list. Automation and Accessibility permissions are separate on macOS.

Expected result: Running the test osascript commands in Terminal returns note names without permission errors. The permission dialog has been approved.

2

Configure Apple Notes Integration in OpenClaw

Open your OpenClaw config file at `~/.openclaw/config.yaml` and add the Apple Notes integration under the `integrations` key. Because Apple Notes uses osascript for all operations, the config specifies which AppleScript commands to run for each operation type. The `account` field specifies which Notes account to use. Apple Notes can have multiple accounts (iCloud, On My Mac, Exchange). Use `iCloud` for cloud-synced notes that appear on iPhone/iPad, or `On My Mac` for local-only notes. The `default_folder` specifies which folder new notes are created in by default. If the folder does not exist, OpenClaw will create it using AppleScript. Leave it empty to create notes in the root of the account. Note that OpenClaw's Notes integration uses osascript internally — it constructs and runs AppleScript commands based on the operations you request. The config examples show the underlying AppleScript patterns for reference, but OpenClaw handles the script construction automatically.

~/.openclaw/config.yaml
1# ~/.openclaw/config.yaml
2integrations:
3 apple-notes:
4 account: "iCloud" # 'iCloud' or 'On My Mac'
5 default_folder: "OpenClaw" # default folder for new notes (created if missing)
6 content_format: "html" # 'html' or 'plaintext' for note body (default: plaintext)
7 include_creation_date: true # add creation date to note body (default: true)
8 search_limit: 20 # max notes to return in search results (default: 10)
9
10# AppleScript patterns used internally by OpenClaw:
11# Create note:
12# tell application "Notes"
13# tell account "iCloud"
14# make new note at folder "OpenClaw" with properties {name: "Title", body: "Content"}
15# end tell
16# end tell
17#
18# Search notes:
19# tell application "Notes"
20# tell account "iCloud"
21# notes whose name contains "keyword" or body contains "keyword"
22# end tell
23# end tell

Pro tip: Set `content_format: 'html'` if you want OpenClaw to create notes with rich formatting (bold, lists, checkboxes). For simple text-only notes, `plaintext` is faster and avoids HTML encoding issues.

Expected result: `clawhub reload` runs without errors and the apple-notes integration is registered in OpenClaw's config.

3

Test Creating and Reading Notes

Test the integration by creating a note and then reading it back. The create test verifies that OpenClaw can run AppleScript to create a note in the configured account and folder. The read test confirms that search and retrieval work correctly. Apple Notes stores note content as HTML. When you pass plain text to the create operation, OpenClaw wraps it in basic HTML tags before sending to AppleScript. When you read a note, the body will be returned as HTML — you may see `<div>`, `<br>`, and `<p>` tags in the raw output. OpenClaw's integration layer strips basic HTML tags for plain-text output modes. For formatted notes with checklists, you need to use the specific HTML structure Apple Notes expects for checklist items. The code sample below shows the correct format for creating notes with checklists, which is useful for task tracking workflows.

terminal
1# Test creating a note via AppleScript (run in Terminal to test before OpenClaw):
2osascript <<'EOF'
3tell application "Notes"
4 tell account "iCloud"
5 -- Create folder if it doesn't exist
6 if not (exists folder "OpenClaw") then
7 make new folder with properties {name: "OpenClaw"}
8 end if
9 -- Create the test note
10 make new note at folder "OpenClaw" with properties {¬
11 name: "OpenClaw Test Note", ¬
12 body: "<div><b>Test note</b> created by OpenClaw.</div><div><br></div><div>Integration is working correctly.</div>"}
13 end tell
14end tell
15EOF
16
17# Test searching notes:
18osascript <<'EOF'
19tell application "Notes"
20 tell account "iCloud"
21 set matchingNotes to notes whose name contains "OpenClaw"
22 set noteNames to {}
23 repeat with n in matchingNotes
24 set end of noteNames to name of n
25 end repeat
26 return noteNames
27 end tell
28end tell
29EOF

Pro tip: Apple Notes uses HTML `<br>` tags for line breaks inside `<div>` elements. If your note body looks like one long line in Notes, add `<br>` or wrap paragraphs in `<div>` tags — plain `\n` newlines are not rendered as line breaks in Apple Notes HTML.

Expected result: A new note titled 'OpenClaw Test Note' appears in the OpenClaw folder in Apple Notes. The search command returns the note name. The note syncs to your iPhone/iPad within a few seconds if using iCloud.

4

Build Note Automation Workflows

With the connection verified, configure OpenClaw workflows that automate Apple Notes creation. The workflow patterns are similar to Obsidian workflows but use AppleScript operations instead of filesystem writes. For meeting notes, the workflow triggers on a keyword command (e.g., 'meeting:') and creates a structured HTML note with sections for date, attendees, decisions, and action items. The HTML formatting ensures the note looks good in Apple Notes with proper heading styles and bullet lists. For the daily summary workflow, OpenClaw checks whether today's note already exists (using a date-prefixed search) and either creates a new one or appends a new section. Apple Notes' AppleScript API supports modifying the `body` property of an existing note, which replaces the entire body — so 'append' operations read the existing body, add the new content, and write the combined result back. RapidDev's team has found that for high-frequency append workflows (10+ writes per day), batching the appends and writing once at session end is more reliable than writing on every event — this reduces the chance of AppleScript race conditions if multiple OpenClaw workflows run simultaneously.

~/.openclaw/config.yaml
1# ~/.openclaw/config.yaml Apple Notes automation workflows
2workflows:
3 meeting-notes:
4 trigger:
5 type: chat-message
6 pattern: "^meeting: (.+)"
7 actions:
8 - type: apple-notes-create
9 integration: apple-notes
10 folder: "Meetings"
11 title: "Meeting — {{date:YYYY-MM-DD}} — {{trigger.match.1}}"
12 body_html: |
13 <div><b>Date:</b> {{date:MMMM D, YYYY}}</div>
14 <div><b>Topic:</b> {{trigger.match.1}}</div>
15 <div><br></div>
16 <div><b>Attendees:</b></div>
17 <div><br></div>
18 <div><b>Decisions:</b></div>
19 <div><br></div>
20 <div><b>Action Items:</b></div>
21 <div><br></div>
22 <div><i>Created by OpenClaw</i></div>
23
24 daily-summary:
25 trigger:
26 type: session-end
27 actions:
28 - type: apple-notes-append-or-create
29 integration: apple-notes
30 folder: "OpenClaw Logs"
31 title: "OpenClaw Log — {{date:YYYY-MM-DD}}"
32 append_html: |
33 <div><br></div>
34 <div><b>Session at {{time:HH:mm}}</b></div>
35 <div>Tasks: {{session.task_count}}</div>
36 <div>{{session.summary}}</div>

Pro tip: To avoid duplicate daily log notes, OpenClaw's `apple-notes-append-or-create` action searches for an existing note with today's date in the title before creating a new one. If found, it appends to the existing note's body.

Expected result: OpenClaw creates structured Apple Notes entries based on workflow triggers. Notes appear in the correct folders, sync to iPhone/iPad via iCloud, and have proper HTML formatting in Apple Notes.

Common use cases

Create Structured Meeting Notes Automatically

After a voice or text meeting summary is given to OpenClaw, automatically create a new Apple Notes entry in a designated 'Meetings' folder with structured sections for agenda, decisions, and action items. The note syncs to iPhone and iPad instantly via iCloud, making it accessible everywhere.

OpenClaw Prompt

Build an OpenClaw workflow that creates a new Apple Notes note in the 'Meetings' folder when triggered with meeting content, formatted with sections for Date, Attendees, Decisions, and Next Steps

Copy this prompt to try it in OpenClaw

Search Notes for Context Before Responding

Before OpenClaw responds to a question, search Apple Notes for relevant existing context — prior research, saved articles, or personal notes on the topic. This allows OpenClaw to incorporate your personal knowledge base when forming responses, not just general AI knowledge.

OpenClaw Prompt

Configure OpenClaw to search my Apple Notes for notes containing a given keyword before answering questions on that topic, and include any relevant findings in the response context

Copy this prompt to try it in OpenClaw

Daily Summary Note to Apple Notes

At the end of each OpenClaw session, automatically create or update a daily note in Apple Notes summarizing the session's tasks, searches, and outputs. The note is created in an 'OpenClaw Logs' folder and syncs to all Apple devices immediately via iCloud.

OpenClaw Prompt

Set up OpenClaw to create a daily Apple Notes entry in the 'OpenClaw Logs' folder after each session, listing all completed tasks with timestamps and any important outputs

Copy this prompt to try it in OpenClaw

Troubleshooting

osascript returns 'Not authorized to send Apple events to Notes' or permission error

Cause: macOS Automation permissions have not been granted, or the permission was revoked after a macOS update or system preferences reset.

Solution: Open System Settings > Privacy & Security > Automation. Find Terminal (or the OpenClaw app entry if it runs standalone) and ensure 'Notes' is checked. If the entry is not there, run `osascript -e 'tell application "Notes" to count notes'` from Terminal to trigger the permission dialog, then approve it.

typescript
1# Reset and re-grant Automation permissions if needed:
2# 1. System Settings > Privacy & Security > Automation
3# 2. Remove the Terminal entry (click the minus button)
4# 3. Run this command to re-trigger the permission dialog:
5osascript -e 'tell application "Notes" to get name of every account'

Notes are created in the wrong account or folder

Cause: The `account` field in OpenClaw's config does not match an existing account name in Apple Notes, or the `default_folder` path is wrong.

Solution: List your Notes accounts by running `osascript -e 'tell application "Notes" to get name of every account'` in Terminal. The output shows the exact account names to use (e.g., `iCloud`, `On My Mac`). Use the exact name, including capitalization, in your OpenClaw config.

typescript
1# List all Notes accounts:
2osascript -e 'tell application "Notes" to get name of every account'
3# Output: {"iCloud", "On My Mac"}
4
5# List folders in an account:
6osascript -e 'tell application "Notes" to tell account "iCloud" to get name of every folder'

OpenClaw errors with 'apple-notes integration not available on this platform'

Cause: OpenClaw's Apple Notes integration requires macOS — it uses osascript, which is not available on Windows or Linux.

Solution: Apple Notes integration only works on macOS. If you need cross-platform notes integration, use the Notion, Obsidian (local vault), or Google Sheets integration instead. On macOS, verify OpenClaw is running as a native process (not inside a Docker container or WSL environment where osascript is unavailable).

Note body contains visible HTML tags when viewed in Apple Notes

Cause: The `content_format` is set to `html` but the note body contains improperly escaped HTML, or plaintext content with HTML special characters was passed without proper escaping.

Solution: For plaintext content, set `content_format: plaintext` in the config. For HTML content, ensure angle brackets in the note body content (not structure tags) are escaped as `&lt;` and `&gt;`. Verify that OpenClaw's HTML template uses proper `<div>` and `<br>` tags rather than raw newlines.

typescript
1# Use plaintext format to avoid HTML issues:
2# In ~/.openclaw/config.yaml:
3integrations:
4 apple-notes:
5 content_format: "plaintext" # no HTML encoding issues
6
7# Or escape special chars in HTML body:
8# < becomes &lt; > becomes &gt; & becomes &amp;

Best practices

  • Pre-grant Automation permissions by running a test AppleScript from Terminal before deploying OpenClaw workflows — this ensures permissions are in place before automated workflows attempt to write notes and fail silently.
  • Use HTML body format for notes with structured sections (headings, lists, checkboxes) and plaintext format for simple log entries — Apple Notes renders HTML correctly and plaintext notes look cleaner for simple content.
  • Target the iCloud account for notes that need to sync to iPhone/iPad, and 'On My Mac' for local-only notes that should never leave the Mac — be intentional about which account you use for sensitive notes.
  • Keep note titles concise and include the date for any time-sensitive logs — Apple Notes does not sort by creation date in older macOS versions, so date-prefixed titles (e.g., '2026-03-30 Meeting Notes') keep your folder organized chronologically.
  • Avoid running multiple simultaneous OpenClaw workflows that write to the same note — AppleScript operations are not atomic and concurrent writes can corrupt the note body. Use a queue or batch writes at session end.
  • Create a dedicated 'OpenClaw' or 'AI Logs' folder in Apple Notes for all automatically generated notes — this keeps them separate from your manually written notes and makes it easy to review or delete them in bulk.
  • Test note creation with the Notes app open in Obsidian — watch the file tree to confirm notes appear in the correct folder in real time. This is faster than checking iCloud sync on a second device.

Alternatives

Frequently asked questions

How do I set up Apple Notes integration in OpenClaw?

Configure `integrations.apple-notes` in `~/.openclaw/config.yaml` with the Notes account name (`iCloud` or `On My Mac`) and a default folder. Grant macOS Automation permissions by running a test AppleScript from Terminal first. No API key is needed — OpenClaw uses osascript to control the Notes app directly.

Does the OpenClaw Apple Notes integration work on iPhone or iPad?

No — the integration uses macOS AppleScript (osascript), which only runs on Mac. However, notes created by OpenClaw via the iCloud account will automatically sync to your iPhone and iPad through iCloud. You create notes on Mac via OpenClaw and access them on iOS devices through normal iCloud sync.

Why is Apple Notes automation macOS-only?

Apple Notes has no public REST API. The only programmatic access to Apple Notes is through macOS's AppleScript and JXA automation frameworks, which are built into macOS but are not available on Windows, Linux, or iOS. For cross-platform notes integration, use Notion or Obsidian instead.

Can OpenClaw read and search existing Apple Notes?

Yes — OpenClaw's Apple Notes integration supports searching notes by title or body keyword, reading the full content of specific notes, and listing all notes in a folder. Note content is returned as HTML (Apple Notes' native format), which OpenClaw can process or strip to plain text depending on your workflow.

What happens to Apple Notes integration after a macOS update?

macOS updates occasionally reset Automation permissions. If OpenClaw's Notes integration stops working after a system update, check System Settings > Privacy & Security > Automation and re-grant permission for Terminal or the OpenClaw app to control Notes. Running the test osascript command from Terminal again will prompt for re-approval if permissions were revoked.

Can RapidDev help set up Apple Notes workflows in OpenClaw?

Yes — RapidDev can help configure OpenClaw workflows for Apple Notes including meeting note templates, daily journal automation, and note search integrations. Contact RapidDev if you need AppleScript-based workflows that go beyond basic note creation, such as nested folder management or note sharing workflows.

RapidDev

Talk to an Expert

Our team has built 600+ apps. Get personalized help with your project.

Book a free consultation

Need help with your project?

Our experts have built 600+ apps and can accelerate your development. Book a free consultation — no strings attached.

Book a free consultation

We put the rapid in RapidDev

Need a dedicated strategic tech and growth partner? Discover what RapidDev can do for your business! Book a call with our team to schedule a free, no-obligation consultation. We'll discuss your project and provide a custom quote at no cost.