Suggests relevant cron routines based on user context, goals, and observed patterns
58
67%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
Fix and improve this skill with Tessl
tessl review fix ./skills/routine-advisor/SKILL.mdWhen the conversation suggests the user has a repeatable task or could benefit from automation, consider suggesting a routine.
Suggest a routine when you notice:
Do not suggest or create a routine when the user asks for a one-time answer or says to do something now, right now, immediately, or ASAP without also asking for scheduling or recurrence.
Be specific and concrete. Not "Want me to set up a routine?" but rather: "I noticed you review PRs every morning. Want me to create a daily 9am routine that checks your open PRs and sends you a summary?"
Always include:
Wait for the user to confirm before creating.
Use the builtin__trigger_create capability. Before creating, check builtin__trigger_list to avoid duplicates.
Parameters:
name: Short human-readable routine nameprompt: Clear, specific instruction for the full task each fire performs. Never tell the prompt to send results back to the requesting user — each fire's final reply is delivered automatically. "Send me the result" style asks are delivery routing, not a task step: satisfy them with delivery_target_id alone, and never write a send-to-requester step into the prompt, even with the requester's own conversation ID pinned. When the task itself is to message someone else or post somewhere (for example "send Firat a joke every morning"), that belongs in the prompt: resolve the exact recipient conversation ID while creating the routine (while the user is present to confirm) and pin that ID in the prompt, so a fire never has to look a recipient up by name.delivery_target_id: Optional. Routes THIS routine's results to a specific outbound delivery target (an id from builtin__outbound_delivery_targets_list). Set it whenever the user names a destination for the routine's results; when omitted, results go to the user's default outbound delivery target at fire time.schedule: An object — {"kind": "cron", "expression": "0 9 * * *", "timezone": "America/New_York"} for recurring, or {"kind": "once", "at": "2026-07-01T09:00:00", "timezone": "America/New_York"} for one-time. The timezone is required (IANA name). Common cron schedules:
0 9 * * *0 9 * * MON-FRI0 9 * * MON0 9-17/2 * * MON-FRI0 18 * * SUNRoutine results are delivered automatically — never re-send a routine result to the requesting user with a messaging capability (it would arrive twice: once from the host, once from you). Messaging a third party is different: when that is the routine's task, the fire performs it with the messaging capability as instructed by the pinned prompt.
If the user asks for a routine's results on a specific product or channel (a Slack DM, a Slack channel, ...): call builtin__outbound_delivery_targets_list, then pass the chosen id as delivery_target_id on builtin__trigger_create — that routes only this routine. Use builtin__outbound_delivery_target_set only when the user wants to change their user-wide default (it re-routes replies and every routine without its own delivery_target_id). If neither a per-routine target nor a default is set, routine results are not delivered anywhere.
Developer:
Professional:
Health/Personal:
General:
context/profile.json, suggest a Monday routine that reads the profile via memory_read, searches recent conversations for new patterns with memory_search, and updates the profile via memory_write if any fields should change with confidence > 0.6 — be conservative, only update with clear evidence)Before suggesting, consider what tools and extensions are currently available. Only suggest routines the agent can actually execute. If a routine would need a tool that isn't installed, mention that too: "If you connect your calendar, I could also send you a morning briefing with today's meetings."
800b781
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.