apple-bridges

Use this skill whenever the user asks about Apple apps — Reminders, Calendar, Contacts, Notes, Mail, or tmux sessions. This includes creating/completing reminders, checking/adding calendar events, looking up contacts, reading/writing notes, sending/reading email, and capturing tmux session content. Also use this skill when the user mentions tasks, todos, scheduling, birthdays, free time slots, or end-of-day summaries. The bridges are CLI tools installed at ~/.claude/ that give Claude Code native access to these Apple apps on macOS.

install
source · Clone the upstream repo
git clone https://github.com/more-io/claude-apple-bridges
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/more-io/claude-apple-bridges "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/apple-bridges" ~/.claude/skills/more-io-claude-apple-bridges-apple-bridges && rm -rf "$T"
manifest: skills/apple-bridges/SKILL.md
source content

Apple Bridges

Swift CLI tools at

~/.claude/
that give Claude Code native access to Apple apps on macOS.

Quick Reference

BridgeBinaryPurpose
reminders-bridge
~/.claude/reminders-bridge
Manage Apple Reminders — lists, items, due dates, search
calendar-bridge
~/.claude/calendar-bridge
Read/write Apple Calendar — events, free slots, scheduling
contacts-bridge
~/.claude/contacts-bridge
Search/manage Apple Contacts — lookup, birthdays
notes-bridge
~/.claude/notes-bridge
Read/write Apple Notes — create, search, append
mail-bridge
~/.claude/mail-bridge
Read/send Apple Mail — inbox, unread, compose
tmux-bridge
~/.claude/tmux-bridge
Read/write tmux sessions — panes, snapshots, send keystrokes

Read the detail file for the bridge you need — each contains full command syntax, all parameters, and usage examples.

General Patterns

CLI Syntax

All bridges follow the same pattern:

~/.claude/<bridge-name> <command> [arguments...]

Quoting

Arguments with spaces must be quoted:

~/.claude/reminders-bridge add "Shopping List" "Buy milk" "From the organic store"
~/.claude/calendar-bridge add "Work" "Team Meeting" "2026-03-01 10:00" "2026-03-01 11:00"

Destructive Operations

Delete commands use a dry-run by default pattern — they show what would be deleted without the

--force
flag:

# Dry run (safe preview)
~/.claude/reminders-bridge delete "Work" "Old task"

# Actually delete
~/.claude/reminders-bridge delete "Work" "Old task" --force

This applies to:

reminders-bridge delete
,
calendar-bridge delete
,
contacts-bridge delete
,
notes-bridge delete
,
mail-bridge delete
.

Permissions

Each bridge requires macOS permission on first use:

BridgePermissionSettings Path
reminders-bridgeRemindersPrivacy & Security > Reminders
calendar-bridgeCalendarsPrivacy & Security > Calendars
contacts-bridgeContactsPrivacy & Security > Contacts
notes-bridgeAutomation (Notes.app)Privacy & Security > Automation
mail-bridgeAutomation (Mail.app)Privacy & Security > Automation
tmux-bridgeNone (uses tmux CLI)

Allowed Tools Configuration

Add to

.claude/settings.local.json
:

{
  "permissions": {
    "allow": [
      "Bash(~/.claude/reminders-bridge:*)",
      "Bash(~/.claude/calendar-bridge:*)",
      "Bash(~/.claude/contacts-bridge:*)",
      "Bash(~/.claude/notes-bridge:*)",
      "Bash(~/.claude/mail-bridge:*)",
      "Bash(~/.claude/tmux-bridge:*)"
    ]
  }
}