Commands

Complete reference for every rem CLI command: rem add, rem list, rem complete, rem delete, rem update, rem search, rem stats, rem today, rem overdue, rem upcoming, rem export, rem import, rem interactive, rem lists, rem list-mgmt, rem flag, rem skills, and more.

Global flags

These flags work with every command:

FlagDescription
-o, --outputOutput format: table, json, or plain
--no-colorDisable colored output
-h, --helpShow help for any command

Reminders

rem add

Create a new reminder.

rem add "Buy groceries" --due tomorrow --priority high --list Personal
rem add "Review PR" --due "friday at 2pm" --remind-me 30m   # notify 30 min before
rem add "Checklist item" --due tomorrow --silent            # due date, no notification
rem add "Ship demo" --url https://github.com/BRO3886/rem/pull/24

Aliases: create, new

Notifications. When --due is set, rem auto-attaches an alarm at the due time so the system actually fires a notification — matching Apple Reminders.app default behavior. Use --remind-me to override the timing (e.g. 15m for 15 minutes before), or --silent to suppress the auto-alarm entirely.

URLs. --url writes to the real Reminders.app URL field (not the notes body), so URLs show up with Apple’s native link card rendering in the Reminders.app UI.

FlagDescription
-l, --listTarget list (default: system default list)
-d, --dueDue date (natural language or standard format)
-p, --priorityPriority: high, medium, low, none
-n, --notesNotes/body text
-u, --urlURL (shows in Reminders.app URL field)
-f, --flaggedFlag the reminder
--remind-meCustom alarm: duration before due (15m, 1h, 2d) or absolute time
--silentDon’t auto-attach an alarm when --due is set
--repeatSet recurrence: daily, weekly, monthly, yearly, or weekly on mon,wed,fri
-i, --interactiveStep-by-step interactive creation

The interactive form (rem add -i) has no --silent option. Reminders created interactively with a due date always get an auto-alarm. To create a silent reminder via the interactive flow, follow up with rem update <id> --remind-me none to clear the alarm.

rem list

List reminders with optional filters.

rem list --list Work --incomplete --due-before 2026-03-01

Aliases: ls

FlagDescription
-l, --listFilter by list name
--incompleteShow only incomplete reminders
--completedShow only completed reminders
--flaggedShow only flagged reminders
--due-beforeReminders due before this date
--due-afterReminders due after this date
-s, --searchFull-text search in title and notes

rem show

Show full details for a single reminder, including alarms and recurrence rules.

rem show 6ECE

Aliases: get

Pass the full ID, UUID, or any unique prefix. IDs are case-insensitive and prefix-matched.

rem update

Update an existing reminder.

rem update 6ECE --priority medium --due "next friday"
rem update 6ECE --url https://github.com/org/repo/pull/42
rem update 6ECE --url ""   # clear URL

Aliases: edit

--url writes to the native Reminders.app URL field (not the notes body). Pass an empty string (--url "") to clear.

FlagDescription
--nameNew title
-l, --listMove reminder to a different list
-d, --dueNew due date
-p, --priorityNew priority
-n, --notesNew notes
-u, --urlNew URL (empty string to clear)
--flaggedSet flag: true or false
--remind-meSet alarm: duration (15m, 1h, 2d), none to clear
--repeatSet recurrence: daily, weekly, monthly, yearly, none to clear
-i, --interactiveInteractive update

rem complete

Mark a reminder as completed.

rem complete 6ECE

Aliases: done

rem uncomplete

Mark a completed reminder as incomplete.

rem uncomplete 6ECE

rem flag / rem unflag

Toggle the flag on a reminder.

rem flag 6ECE
rem unflag 6ECE

rem delete

Delete one or more reminders. Supports multiple IDs for batch deletion.

rem delete 6ECE
rem delete 6ECE A1B2 --force    # batch delete, skip confirmation

Aliases: rm, remove

FlagDescription
--force / --yes / -ySkip the confirmation prompt

Search & Analytics

Full-text search across title and notes.

rem search "quarterly review" --list Work --incomplete
FlagDescription
-l, --listSearch within a specific list
--incompleteSearch only incomplete reminders

rem stats

Show overall statistics.

rem stats

Displays: total count, completed, incomplete, flagged, overdue, completion rate, and per-list breakdown.

rem today

Show today’s due and overdue reminders.

rem today
rem today --list Work
FlagDescription
-l, --listFilter by list name

rem overdue

Show all overdue incomplete reminders.

rem overdue
rem overdue --list Work
FlagDescription
-l, --listFilter by list name

rem upcoming

Show reminders due in the next N days.

rem upcoming           # next 7 days (default)
rem upcoming --days 14 # next 14 days
FlagDescription
--daysNumber of days to look ahead (default: 7)
-l, --listFilter by list name

Lists

rem lists

View all reminder lists.

rem lists
rem lists --count    # include reminder count per list
FlagDescription
-c, --countShow reminder count per list

rem list-mgmt

Create, rename, or delete lists.

Aliases: lm

rem lm create "Projects"
rem lm rename "Projects" "Active Projects"
rem lm delete "Old List" --force

Note: Immutable system lists (e.g. Siri suggestions) cannot be renamed or deleted.

Import & Export

rem export

Export reminders to JSON or CSV.

rem export --format json --output-file backup.json
rem export --list Work --format csv
rem export --incomplete --format json
FlagDescription
-l, --listExport from a specific list
--formatjson or csv (default: json)
--output-fileFile path (default: stdout)
--incompleteExport only incomplete reminders

rem import

Import reminders from JSON or CSV.

rem import backup.json
rem import data.csv --list "Imported" --dry-run
FlagDescription
-l, --listImport into this list (overrides source list)
--dry-runPreview what would be created without creating

Interactive Mode

rem interactive

Launch a full interactive menu.

rem i

Aliases: i

The menu includes:

  1. Create reminder (guided prompts)
  2. List reminders
  3. Complete a reminder
  4. Delete a reminder
  5. View all lists
  6. Create a new list

You can also use -i with add and update for interactive field entry.

Skills

rem skills install

Install the rem agent skill for AI coding agents.

rem skills install                         # Interactive picker
rem skills install --agent claude          # Claude Code only
rem skills install --agent openclaw        # OpenClaw only
rem skills install --agent all             # All agents
FlagDescription
--agentTarget agent: claude, codex, openclaw, or all (default: interactive picker)

rem skills uninstall

Remove the rem agent skill.

rem skills uninstall --agent claude
FlagDescription
--agentTarget agent: claude, codex, openclaw, or all (default: interactive picker)

rem skills status

Show skill installation status across all supported agents.

rem skills status

Date Formats

Date parsing is powered by go-eventkit/dateparser. Supported patterns:

PatternExample
Relativein 2 days, in 3 hours, in 30 minutes, 5 days ago
Namednow, today, tomorrow, yesterday
Day of weekmonday, next monday, next friday
Specialeod (5pm today), eow (Friday 5pm), this week, next week (next Monday), next month (1st of next month)
Compoundnext friday at 2pm, tomorrow at 3:30pm, today 5pm, monday 2pm
Month-daymar 15, 21 march, december 31 11:59pm
Time only5pm, 17:00, 3:30pm
ISO 86012026-02-15, 2026-02-15T14:30:00
US format02/15/2026, 2/15
Named monthFeb 15, February 15, 2026

When a standalone time is given (like 5pm), it uses today if the time hasn’t passed yet, otherwise tomorrow.