Cindy Zhu.
Free guides
Life & self Claude

Build an automatic safety check-in with Claude

Hey, it's Cindy ๐ŸŒฑ I had Claude help me build a little safety check-in: a quiet automation that texts a person I choose if I haven't tapped "I'm okay" by a set time.
btw the waitlist for AI System Club is now open! If you're keen on using AI to automate your content, video editing, job search, business or build AI agents, feel free to sign up (only if you want to hehe). Ps. the waitlist gets first dibs:)
the setup

What you're actually building

The pattern has a name: a dead man's switch. It stays silent while you keep checking in, and only fires if you go quiet past a deadline. That is the opposite of a normal reminder, which is why it feels a bit magic.

One honest thing up front: Claude does not send texts by itself. Claude designs the logic and writes the build, then a tool you already have (your phone's Shortcuts app, or a texting service like Twilio) is what actually sends the message. Any guide that says "Claude will text your mum" is skipping this part. We are not going to.

Every version below has the same three pieces:

  • โฐ A deadline: the time by which you need to have checked in (say 9pm).
  • โœ… A check-in: a simple "I'm okay" tap that resets the clock.
  • ๐Ÿ“ค A fallback message: the calm text that goes to your person if the deadline passes with no check-in.

no code

Path A: fully no-code, phone only (Apple Shortcuts)

Best if you want zero setup files and you are on an iPhone. This lives entirely in the free Shortcuts app that comes with iOS.

The simplest honest version: a daily time automation that texts your person, which you cancel on days you are fine.

  1. Open Shortcuts, tap Automation, tap +, choose Time of Day, set it to your deadline (e.g. 9:00pm).
  2. Turn on Run Immediately and turn OFF Notify When Run so it can send on its own. On iOS 17 and later, the native Messages "Send Message" action is allowed to send with no confirmation this way.
  3. Add the action Send Message, write your calm message, pick your contact.
  4. Each night you are home safe, you open Shortcuts and toggle tomorrow's run off, or delay it. It is manual, but it is real and it works today.

The smarter "only if I forget" version: use a shared flag so it skips the text when you HAVE checked in.

  1. Make a second shortcut called "I'm okay" that writes the current time into a note or a Data Jar / Reminders entry. You tap it whenever you get home.
  2. Your 9pm automation first READS that flag: if the last "I'm okay" was today, it does nothing. If not, it sends the text.
  3. This "read the flag, decide, then send" logic is the exact part to hand to Claude (prompt below). It is fiddly to wire by hand, and that is where Claude earns its keep.
Heads up: iOS Message-trigger automations (the kind that fire when a specific text arrives) always ask for confirmation and cannot be silenced, per Apple. That is why we use a Time of Day trigger instead, which can run unattended. Source: Apple Support, personal automations.

The prompt to give Claude for Path A:

๐Ÿ“ฑ Wires both shortcuts, action by action
I want to build a safety check-in on my iPhone using the Shortcuts app, no coding. I want a shortcut called "I'm okay" that I tap when I get home safe, which records the time. And I want a daily automation at 9pm that checks: if I have not tapped "I'm okay" since this morning, send a calm text to my mum saying I have not checked in, otherwise do nothing. Walk me through building both step by step, tell me exactly which Shortcuts actions to add and in what order, and where to store the check-in time so both shortcuts can read it. Assume I am on the latest iOS.

always on

Path B: Claude actually writes the build (Twilio + a scheduled task)

Best if you want it to run even when your phone is off or dead, and you are okay pasting a short script Claude writes. This is the version where Claude does the real work.

How it works: a tiny script keeps a flag file with your last check-in time. A scheduled task (cron on a Mac, or a Claude Code routine) runs at your deadline, reads the flag, and if it is stale, sends the SMS through Twilio.

  • ๐Ÿงพ Twilio is a service that sends real text messages from code. US SMS is $0.0083 per message sent from a long code or toll-free number, plus small carrier fees, and scheduling itself is free. Source: Twilio US SMS pricing and message scheduling. At one text a day worst case, that is well under a dollar a month.
  • โฑ๏ธ The scheduler can be plain cron on your Mac, or a Claude Code scheduled task / routine, which runs a prompt on a set cadence. Note the built-in Claude Code schedule fires only while the app is open, and session tasks auto-expire after 7 days, so for always-on use a real cron job or cloud routine is safer. Source: Claude Code scheduled tasks.
  • โœ… Your check-in can be the same "I'm okay" iPhone shortcut from Path A, pointed at a tiny endpoint, or literally editing one line in a file. Claude sets this up with you.

The prompt to give Claude for Path B (paste into Claude Code):

โš™๏ธ The full script, cron line and a safe dry run
Build me a personal safety check-in as a small Python project I can run on my Mac. Requirements: a flag file that stores my last "I'm okay" timestamp. A check-in command I can run to update that timestamp. A checker script that, when run, sees if my last check-in is older than a window I set (default: nothing since 6am today), and if so sends one calm SMS to a phone number I configure, using Twilio. Keep my Twilio credentials in a .env file, never hardcoded. Write the calm message in a friendly human tone, not robotic, and make the deadline, recipient, and message text easy to edit at the top. Then show me the exact cron line to schedule the checker at 9pm daily, and explain how to test it safely without actually texting anyone the first time.
Safety note to keep in the build: ask Claude to include a test mode that prints the message instead of sending it, so you can dry-run before a real text ever goes out. It is in the prompt above on purpose.

Path C: no build at all (a ready-made app)

If you want the outcome without building anything, dedicated check-in apps already do exactly this pattern: you check in on a schedule, and if you miss the deadline they text or email your emergency contacts for you. Snug is a well-known one that sends your contacts an alert with your location if you miss a daily check-in. Source: Snug Safety. Use this if you would rather not touch Shortcuts or a script at all, and save the build for when you want to customise it.


go further

3 bonus prompts to run next

๐Ÿ—ฃ๏ธ Make it sound like you, not a robot.

๐Ÿ—ฃ๏ธ Three warmer versions to choose from
Here are three versions of my safety text. Rewrite each so it sounds like how I actually talk to my mum: warm, a little casual, reassuring rather than alarming. Give me three options I can choose from.

๐Ÿ“ Add a last-known location.

๐Ÿ“ The private way to share where you were
Update my check-in build so the fallback message also includes a Google Maps link to my last known location. Tell me the most private way to do this, what it can and cannot see, and how to turn it off.

๐Ÿชœ Add an escalation step.

๐Ÿชœ Loops in a second person if you stay quiet
Change the logic so that if I still have not checked in 30 minutes after the first message, a second contact gets notified too. Keep it simple and show me where to set the second person and the delay.

How to get the most out of it

๐ŸŒฑ If you are new: start with Path A's simple version tonight, just the 9pm text you toggle off when you are home. It is a real safety net in five minutes, and you can graduate to the smarter versions later.
๐Ÿš€ If you are comfortable with a terminal: go straight to Path B and have Claude build the Twilio version with a test mode, then wrap the check-in in your iPhone shortcut so tapping "I'm okay" hits it automatically. That is the version that survives a dead phone.

before you rely on it

When to be careful

  • ๐Ÿ”‹ A phone-only build (Path A) will not fire if your phone is dead or off, which is sometimes the exact moment you would want it to. Path B or Path C are sturdier for real safety-critical use.
  • ๐Ÿงช Always dry-run before you rely on it. Send the fallback to yourself first and confirm it actually arrives before you point it at family.
  • ๐Ÿ†˜ This is peace-of-mind automation, not an emergency service. For genuine danger, always use real emergency numbers first.
the waitlist is now open

AI System Club is launching soon

Build AI systems with me through recorded lessons you can follow at your own pace. Join the waitlist for first access and the founding price.

btw this list gets first dibs
the moment doors open :)