Reminders
The Reminders feature lets you set timed reminders that fire as toast notifications in your browser. Schedule a reminder and the platform will notify you when the time arrives.
Creating a Reminder
Use the /remind command in any chat:
/remind 30m check the build status
The platform parses the time and message, schedules the reminder, and confirms it in the chat:
Reminder set for 30m: check the build status
Command Syntax
/remind [time] [message]
The word "me" and "in" are optional and will be ignored:
/remind me in 30 minutes to check the build
/remind 2h review the PR
/remind 1d deploy to production
Time Formats
| Format | Unit | Example |
|---|---|---|
30s, 30sec, 30seconds | Seconds | /remind 30s check the timer |
5m, 5min, 5minutes | Minutes | /remind 5m take a break |
2h, 2hrs, 2hours | Hours | /remind 2h review PR |
1d, 1day, 1days | Days | /remind 1d follow up on email |
The time value must be a number followed by a unit. Only relative times ("in X minutes/hours") are supported.
You can use the word "to" between the time and message for natural phrasing:
/remind 1h to check the deployment
How Reminders Work
- When you create a reminder, it is stored in IndexedDB under the
ais-reminderskey - A JavaScript
setTimeoutis scheduled for the specified duration - When the timer fires, a toast notification appears with your message
- The reminder is automatically removed from storage after firing
Page Visibility Check
Reminders also check for overdue items whenever your browser tab becomes visible (using the Page Visibility API). This handles the case where your computer was asleep or the tab was in the background when the reminder was due.
Reminders require the browser tab to be open. They are not server-side push notifications. If you close the tab or the browser, reminders will fire the next time you open the app (if they are past due), but they will not wake your device.
Viewing Active Reminders
Active (not yet fired) reminders are stored in IndexedDB. Currently, you can see them via the confirmation message in chat. A dedicated reminder management UI is planned for a future release.
Canceling Reminders
Reminders fire once and are automatically removed. There is currently no command to cancel a pending reminder before it fires. To avoid an unwanted reminder, you can clear the chat or reload the page (reminders are re-scheduled from storage on load, so this alone will not cancel them).
Persistence
Reminders survive page reloads. When the app initializes:
- All saved reminders are loaded from IndexedDB
- Each reminder's timeout is re-scheduled based on its stored due time
- If a reminder is already past due, it fires immediately
Limitations
| Limitation | Detail |
|---|---|
| Browser tab required | Reminders are client-side only -- they need the tab to be open |
| Relative time only | No "at 3pm" or "tomorrow at 9am" -- only "in X minutes/hours/days" |
| No recurring reminders | Each reminder fires once |
| Single device | Reminders are stored in the browser and do not sync across devices |
| Maximum timeout | JavaScript setTimeout has a max of ~24.8 days (2^31 ms). Reminders beyond this may not fire accurately |
Reminders are associated with a specific bot. The reminder is stored with the bot's ID, so it is linked to the conversation where you created it.