Commands

Complete reference for all rem CLI commands — create, list, update, delete, search, 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

Aliases: create, new

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 to attach (stored in body)
-f, --flaggedFlag the reminder
-i, --interactiveStep-by-step interactive creation

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.

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"

Aliases: edit

FlagDescription
--nameNew title
-d, --dueNew due date
-p, --priorityNew priority
-n, --notesNew notes
-u, --urlNew URL
--flaggedSet flag: true or false
-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 a reminder.

rem delete 6ECE
rem delete 6ECE --force    # skip confirmation

Aliases: rm, remove

FlagDescription
--forceSkip 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 overdue

Show all overdue incomplete reminders.

rem overdue

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)

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: List deletion may fail on some macOS versions due to AppleScript limitations.

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.

Date Formats

rem’s built-in parser understands these patterns:

PatternExample
Relativein 2 days, in 3 hours, in 30 minutes
Namedtoday, tomorrow, yesterday
Day of weeknext monday, next friday
Specialeod (5pm today), eow (Friday 5pm), next week, next month
Compoundnext friday at 2pm, tomorrow at 3:30pm
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.