Read Remind (remind.com) — classes, chats, messages, notification settings — from a shell. Captures the signed-in session once through the fpx browser bridge, then queries Remind's GraphQL API with plain curl. Use for Remind data without running the remind-mcp server, in a script, or one-shot.
Coding
Remind
Try itSurfaces your own commitments at the right lead time, in your style, and stops once you've acknowledged them.
What it does
Remind surfaces things you already know — meetings, deadlines, bills, promises, follow-ups — at the moment they become actionable. Each reminder is phrased as the action to take, not the event, and your preferred lead times are learned from reactions like "too early" or "I forgot". One acknowledgment closes the reminder; snoozes, reschedules, and missed-window recovery follow the same loop. Quiet hours, daily digests, and exclusions are user-controlled.
When to use it
- Pinging you 15 minutes before a flight so you can leave
- Nudging you to chase a deliverable a colleague promised
- Tracking recurring bills, taxes, renewals, or checkups month after month
- Surfacing a commitment you mentioned in passing, like "I'll send it Friday"
The skill document
User preferences, learned lead times, and the active reminder list live in ~/Clawic/data/remind/ (see setup.md on first use, memory-template.md for file formats). If you have data at an old location (~/remind/, ~/clawic/remind/, or preferences stored inside this file's sections), move it to ~/Clawic/data/remind/.
When To Use
Remind = "Just a reminder that..." — surfacing something the human already knows, at the moment it becomes actionable.
- Planned events, deadlines, and commitments they set themselves
- Promises they made to other people — and other people's promises they must chase
- Recurring obligations easy to lose track of: taxes, renewals, bills, reviews
- Things they told you they were afraid to forget
- Not for new information (news, outages, price moves — that is alerting) and not for executing tasks on a schedule (that is scheduling)
The litmus test: could they have written it in their own calendar? Then it's a reminder. Did the world just change? That's an alert. If "just a reminder that..." reads unnaturally in front of the message, don't send it as one.
Quick Reference
| Situation | Play |
|---|---|
| "Remind me to X at/in Y" | Create exactly as stated; explicit override beats every learned preference and default |
| "Don't let me forget X" | Create with an extra earlier stage — the phrase signals stakes, not timing (timing.md, Adjustment Factors) |
| Commitment mentioned, no ask ("I'll send it Friday") | First 2 in a category: offer ("Want a nudge Friday morning?"); after 2 acceptances, create silently (triggers.md) |
| Recurring obligation (taxes, renewals, dentist) | recurring.md — cadence defaults, anchor drift, end conditions |
| "Later" / "not now" / no reaction to a reminder | followup.md — snooze, silence, re-ping rules |
| Reaction to a past reminder ("too early", "I forgot") | learning.md maps the phrase to a signal; adjust via the ladder in timing.md |
| They acknowledged the reminder | Done — no repeat unless the entry is under Always (followup.md) |
| Window missed (offline, late detection, quiet hours) | followup.md late delivery — lead with what is still possible |
| Several reminders due at once | Stack up to 3 in one message, hard deadlines first; more → digest (phrasing.md) |
| Default: unsure if remindable | High stakes → create and say so; low stakes → skip and watch what happens |
Depth on demand: triggers.md what qualifies · timing.md lead times, ladder, quiet hours, timezones · phrasing.md writing the message · recurring.md repeating obligations · followup.md after it fires: acks, snooze, escalation, misses · learning.md reactions → preferences · setup.md first use · memory-template.md storage formats.
Core Rules
- Only remind about what they already know. New information is an alert; the litmus test above decides. Misclassifying erodes trust in both channels.
- Explicit beats learned beats default. "Remind me at 3pm" overrides every stored preference; a stored preference overrides
timing.md; the defaults catch the rest. A one-off override never rewrites the category preference (learning.md). - The loop: detect → evaluate → remind → observe → confirm → store. Detect (
triggers.md), evaluate against~/Clawic/data/remind/preferences.md, remind while they can still act, observe the reaction, confirm before storing. - Signal ladder (canonical — every other file points here): explicit instruction → store
(confirmed)immediately · 2 consistent observed reactions → store(pattern), propose the change · accepted proposal, or a 3rd consistent reaction → upgrade to(confirmed)· 1 contradicting reaction on a(confirmed)entry → downgrade to(pattern), re-observe. - Remind while acting is still possible. Lead counts back from when the action must start, not from the event:
remind at = event time − process − transition − prep(worked example intiming.md). - One acknowledgment = done. Repeats read as nagging; Always entries are the only exception, and silence is not an acknowledgment (
followup.md). - Never store without comment. Wrong guesses compound invisibly; propose in one line before writing anything
(confirmed). - A working system sends fewer reminders each month, not more. Correct Skips are wins; let reactions promote categories, never your own eagerness.
Reminder Components
- What — the commitment, phrased as the action, not the event: "Leave by 2:15 for the 5pm flight", never "Flight at 5pm". If the reminder arrives when the action is no longer possible, the timing was wrong regardless of the event time.
- When — lead time before the action must start (
timing.md) - How — tone, length, and stage wording (
phrasing.md); default: one line, what + when + the single next step
Output Gates
Run before every reminder goes out:
- Do they already know this? (No → it's an alert, not a reminder)
- Can they still act on it after this arrives? (No → apply
followup.mdlate delivery; log the missed lead) - Has this exact reminder — this occurrence, for recurring — been acknowledged? (Yes → drop unless in Always)
- Does a Skip entry, a stated exclusion, or
quiet_hourscover it? (timing.md) - Is it phrased as the action, not the event, with wording distinct from the previous stage? (
phrasing.md)
Configuration
User-dependent variables. Defaults apply until the user states a preference; store them in ~/Clawic/data/remind/config.yaml.
| Variable | Type | Default | Effect |
|---|---|---|---|
| quiet_hours | text (HH:MM–HH:MM local) | 22:00–07:00 | Suppresses delivery inside the window unless the action itself must start there (timing.md, Time-of-Day Rules) |
| morning_slot | text (HH:MM–HH:MM local) | 07:00–08:00 | Where morning-of, daily-habit, and "tomorrow morning" reminders land |
| digest_slot | text (HH:MM) | none | When set, low-priority reminders batch into one daily digest at this time instead of arriving one by one (phrasing.md) |
| lead_bias | earlier | standard | later | standard | Shifts the default lead of every unlearned category one ladder step in that direction; learned preferences are untouched |
Preference areas — customizable dimensions; a stated preference gets recorded in config.yaml and applied:
- Delivery & tone — register (casual/formal), length, emoji, language of reminders — affects
phrasing.mddefaults - Proactivity — appetite for unprompted reminders from implicit detection — affects the offer-first rule in
triggers.md - Schedule shape — workday start/end, weekend policy for work items — affects Time-of-Day Rules in
timing.md - Exclusions — topics, projects, or blocks (focus time, meetings) where reminders never fire — feeds Skip and the Output Gates
- Adjacent systems — calendars or task apps already alerting them — categories those cover default to Skip (their alarm plus yours = double nag)
Per-category lead times are learned data, not config: they live in ~/Clawic/data/remind/preferences.md (memory-template.md for the format).
Traps
| Trap | Why it fails | Do instead |
|---|---|---|
| Reminding about everything detected | Fatigue: they tune out, and the one critical reminder dies with the noise | Skip low stakes by default; let reactions promote categories |
| Reminding at event time | Awareness without agency — nothing left to do but feel bad | Lead counts back from when the action starts (timing.md formula) |
| Repeating after an acknowledgment | Reads as nagging; erodes the trust the whole skill runs on | One ack = done; Always is the only exception (followup.md) |
| Treating "thanks" as "send more" | Politeness is not preference | Only timing words and actual misses move the ladder (learning.md) |
| Storing preferences silently | Wrong guesses compound invisibly; they can't correct what they can't see | Propose in one line before writing anything (confirmed) |
| Stretching lead time after one miss | One miss may be a bad day; overcorrection breeds "too early" complaints | Move one ladder step per 2 signals, never multiply |
| Same wording on every stage | Identical repeats read as a stuck bot, and get filtered like one | Each stage carries a different action verb (phrasing.md) |
| "You missed X" with nothing to do | Guilt without agency; the worst message this skill can send | Deliver a miss only when a recovery action exists, and lead with it (followup.md) |
Related Skills
More Clawic skills, get them at https://clawic.com/skills/remind (install if the user confirms):
alerts- New or urgent events they don't know about yetnotify- Delivery mechanics: channels, batching, fatigue controlschedule- Executing recurring tasks, not recalling themmemory- Long-term storage beyond reminder preferences
Feedback
- If useful, star it: https://clawic.com/skills/remind
- Latest version: https://clawic.com/skills/remind
Part of Clawic, the verified skill library. Get this skill: https://clawic.com/skills/remind.
Questions people ask
- How is this different from an alert or a scheduled task?
- Alerts deliver new information you didn't already know; this skill only surfaces items you could have written in your own calendar. Scheduled tasks execute actions on a clock; reminders just bring commitments back to your attention at the right lead time.
- Will it keep firing if I forget to acknowledge?
- No. One acknowledgment closes the reminder for that occurrence — the only exception is entries marked Always. Silence is treated as a missed window, not as consent to continue.
- Can it learn my preferred lead times?
- Yes. Phrases like "too early" or "I forgot" feed a signal ladder that adjusts lead time per category, after proposing the change to you. A contradicting reaction automatically downgrades a stored (confirmed) preference back to (pattern) so it can be re-observed.
Related skills
A personal date radar for birthdays and anniversaries. Use when an agent should greet someone on time, never double-book a celebration, or answer "whose special day is coming up". Requires a BlueColumn API key (bc_live_*).
calendar, schedule, events, appointments, tasks, alerts. Requires Hermes Agent.
Stores durable facts in a categorized, plain-markdown vault on disk, alongside your agent's built-in memory.
Maintain a local address book of who each person is and when to reach out.
Short setup for flexible, gentle sleep reminders