https://github.com/steipete/remindctl
cli for Apple Reminders app
https://github.com/steipete/remindctl
Last synced: 5 months ago
JSON representation
cli for Apple Reminders app
- Host: GitHub
- URL: https://github.com/steipete/remindctl
- Owner: steipete
- License: mit
- Created: 2026-01-03T06:14:05.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2026-01-11T10:23:21.000Z (5 months ago)
- Last Synced: 2026-01-11T15:28:26.718Z (5 months ago)
- Language: Swift
- Homepage:
- Size: 42 KB
- Stars: 15
- Watchers: 1
- Forks: 6
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
- awesome-llm-cli-apps - remindctl
README
# remindctl
Forget the app, not the task ✅
Fast CLI for Apple Reminders on macOS.
## Install
### Homebrew (Home Pro)
```bash
brew install steipete/tap/remindctl
```
### From source
```bash
pnpm install
pnpm build
# binary at ./bin/remindctl
```
## Development
```bash
make remindctl ARGS="status" # clean build + run
make check # lint + test + coverage gate
```
## Requirements
- macOS 14+ (Sonoma or later)
- Swift 6.2+
- Reminders permission (System Settings → Privacy & Security → Reminders)
## Usage
```bash
remindctl # show today (default)
remindctl today # show today
remindctl tomorrow # show tomorrow
remindctl week # show this week
remindctl overdue # overdue
remindctl upcoming # upcoming
remindctl completed # completed
remindctl all # all reminders
remindctl 2026-01-03 # specific date
remindctl list # lists
remindctl list Work # show list
remindctl list Work --rename Office
remindctl list Work --delete
remindctl list Projects --create
remindctl add "Buy milk"
remindctl add --title "Call mom" --list Personal --due tomorrow
remindctl edit 1 --title "New title" --due 2026-01-04
remindctl complete 1 2 3
remindctl delete 4A83 --force
remindctl status # permission status
remindctl authorize # request permissions
```
## Output formats
- `--json` emits JSON arrays/objects.
- `--plain` emits tab-separated lines.
- `--quiet` emits counts only.
## Date formats
Accepted by `--due` and filters:
- `today`, `tomorrow`, `yesterday`
- `YYYY-MM-DD`
- `YYYY-MM-DD HH:mm`
- ISO 8601 (`2026-01-03T12:34:56Z`)
## Permissions
Run `remindctl authorize` to trigger the system prompt. If access is denied, enable
Terminal (or remindctl) in System Settings → Privacy & Security → Reminders.
If running over SSH, grant access on the Mac that runs the command.