🎁 Get the FREE AI Skills Starter Guide β€” Subscribe β†’
BytesAgainBytesAgain
πŸ¦€ ClawHub

iCloud Reminders

by @tarekbecker

Manage Apple iCloud Reminders via CloudKit API. Use for listing, adding, completing, deleting reminders, managing lists, and hierarchical subtasks. Works wit...

Versionv0.1.6
Downloads1,105
Installs1
TERMINAL
clawhub install icloud-reminders

πŸ“– About This Skill


name: icloud-reminders description: Manage Apple iCloud Reminders via CloudKit API. Use for listing, adding, completing, deleting reminders, managing lists, and hierarchical subtasks. Works with 2FA-protected accounts via cached sessions. version: 0.1.1 metadata: openclaw: requires: bins: - reminders install: - kind: brew tap: tarekbecker/tap formula: icloud-reminders bins: [reminders] emoji: "βœ…" homepage: https://github.com/tarekbecker/icloud-reminders-cli

iCloud Reminders

Access and manage Apple iCloud Reminders via CloudKit API. Full CRUD with hierarchical subtask support.

Pure Go β€” no Python or pyicloud required. Authentication, 2FA, session management and CloudKit API calls are all implemented natively in Go.

Installation

Homebrew (Recommended)

brew tap tarekbecker/tap
brew install icloud-reminders

Upgrade to the latest version:

brew upgrade icloud-reminders

Setup

1. Authenticate (interactive β€” required on first run):

   reminders auth
   

Credentials are resolved in this order: 1. ICLOUD_USERNAME / ICLOUD_PASSWORD environment variables 2. ~/.config/icloud-reminders/credentials file (export KEY=value format) 3. Interactive prompt (fallback)

2. Session file (~/.config/icloud-reminders/session.json) is created automatically and reused. Run reminders auth again when the session expires.

Commands

# First-time setup / force re-auth
reminders auth
reminders auth --force

List all active reminders (hierarchical)

reminders list

Filter by list name

reminders list -l "πŸ›’ Groceries"

Include completed

reminders list --all # or: -a

Show only children of a parent reminder (by name or short ID)

reminders list --parent "Supermarket" reminders list --parent ABC123DE

Search by title

reminders search "milk"

Search including completed

reminders search "milk" --all # or: -a

Show all lists (with active counts and short IDs)

reminders lists

Add reminder (-l is REQUIRED)

reminders add "Buy milk" -l "Groceries"

Add with due date and priority

reminders add "Call mom" -l "Groceries" --due 2026-02-25 --priority high

Add with notes

reminders add "Buy milk" -l "Groceries" --notes "Get the organic 2% stuff"

Add as subtask (-l is REQUIRED even for subtasks)

reminders add "Butter" -l "πŸ›’ Groceries" --parent ABC123DE

Add multiple at once (batch; -l is REQUIRED)

reminders add-batch "Butter" "Cheese" "Milch" -l "Groceries"

Add multiple as subtasks

reminders add-batch "Butter" "Cheese" -l "Groceries" --parent ABC123DE

Edit a reminder (update title, due date, notes, or priority)

reminders edit abc123 --title "New title" reminders edit abc123 --due 2026-03-01 --priority high reminders edit abc123 --notes "Updated notes" reminders edit abc123 --priority none

Complete reminder

reminders complete abc123

Delete reminder

reminders delete abc123

Export as JSON

reminders json

Force full resync

reminders sync

Export session cookies (share without password)

reminders export-session session.tar.gz

Import session from export

reminders import-session session.tar.gz

Verbose output (any command)

reminders list -v

Troubleshooting

| Issue | Solution | |-------|----------| | "not authenticated" | Run reminders auth | | "invalid Apple ID or password" | Check credentials file | | "2FA failed" | Re-run auth, enter a fresh code | | "Missing change tag" | Run reminders sync | | "List not found" | Check name with reminders lists | | Binary not found | Run bash scripts/build.sh or check your PATH |

βš™οΈ Configuration

1. Authenticate (interactive β€” required on first run):

   reminders auth
   

Credentials are resolved in this order: 1. ICLOUD_USERNAME / ICLOUD_PASSWORD environment variables 2. ~/.config/icloud-reminders/credentials file (export KEY=value format) 3. Interactive prompt (fallback)

2. Session file (~/.config/icloud-reminders/session.json) is created automatically and reused. Run reminders auth again when the session expires.

πŸ“‹ Tips & Best Practices

| Issue | Solution | |-------|----------| | "not authenticated" | Run reminders auth | | "invalid Apple ID or password" | Check credentials file | | "2FA failed" | Re-run auth, enter a fresh code | | "Missing change tag" | Run reminders sync | | "List not found" | Check name with reminders lists | | Binary not found | Run bash scripts/build.sh or check your PATH |