scheduling
SKILL.md
Scheduling
Schedule recurring tasks or one-off reminders.
Quick Reference
lettabot-schedule list # List all jobs
lettabot-schedule create [options] # Create job
lettabot-schedule delete ID # Delete job
lettabot-schedule enable ID # Enable job
lettabot-schedule disable ID # Disable job
One-Off Reminders (--at)
For reminders at a specific future time, use --at with an ISO datetime.
Calculate the datetime in JavaScript:
// 5 minutes from now
new Date(Date.now() + 5*60*1000).toISOString()
// → "2026-01-28T20:15:00.000Z"
// 1 hour from now
new Date(Date.now() + 60*60*1000).toISOString()
// Tomorrow at 9am (approximate)
new Date(Date.now() + 24*60*60*1000).toISOString()
Create the reminder:
lettabot-schedule create \
--name "Standup" \
--at "2026-01-28T20:15:00.000Z" \
--message "Time for standup!"
One-off reminders auto-delete after running.
Options:
-n, --name- Job name (required)-a, --at- ISO datetime for one-off reminder (e.g., "2026-01-28T20:15:00Z")-m, --message- Message sent to you when job runs (required)-d, --deliver- Where to send response (format:channel:chatId). Defaults to last messaged chat.
Recurring Schedules (--schedule)
For recurring tasks, use --schedule with a cron expression.
lettabot-schedule create \
--name "Morning Briefing" \
--schedule "0 8 * * *" \
--message "Good morning! What's on today's agenda?"
Options:
-n, --name- Job name (required)-s, --schedule- Cron expression (required for recurring)-m, --message- Message sent to you when job runs (required)-d, --deliver- Where to send response (format:channel:chatId). Defaults to last messaged chat.--disabled- Create disabled
Cron Schedule Syntax
┌───────── minute (0-59)
│ ┌─────── hour (0-23)
│ │ ┌───── day of month (1-31)
│ │ │ ┌─── month (1-12)
│ │ │ │ ┌─ day of week (0-6, Sun=0)
* * * * *
| Pattern | When |
|---|---|
0 8 * * * |
Daily at 8:00 AM |
0 9 * * 1-5 |
Weekdays at 9:00 AM |
0 */2 * * * |
Every 2 hours |
30 17 * * 5 |
Fridays at 5:30 PM |
0 0 1 * * |
First of month at midnight |
Examples
Remind me in 30 minutes:
# First calculate: new Date(Date.now() + 30*60*1000).toISOString()
lettabot-schedule create \
-n "Break reminder" \
--at "2026-01-28T20:45:00.000Z" \
-m "Time for a break!"
Daily morning check-in:
lettabot-schedule create \
-n "Morning" \
-s "0 8 * * *" \
-m "Good morning! What's on today's agenda?"
Weekly review on Fridays:
lettabot-schedule create \
-n "Weekly Review" \
-s "0 17 * * 5" \
-m "Friday wrap-up: What did we accomplish?"
Message Format
When a scheduled job runs, you receive:
[cron:job-123abc Morning] Good morning! What's on today's agenda?
Current time: 1/27/2026, 8:00:00 AM (America/Los_Angeles)
Notes
- Jobs activate immediately when created (no restart needed)
- One-off reminders (
--at) auto-delete after running - Use
lettabot-schedule listto see next run times - Jobs persist in
cron-jobs.json
Weekly Installs
1
Repository
letta-ai/lettabotGitHub Stars
259
First Seen
5 days ago
Security Audits
Installed on
mcpjam1
claude-code1
junie1
windsurf1
zencoder1
crush1