AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified MIT Self-run

Reminder Manager

skill-nanorhino-weight-loss-skill-reminder-manager · by NanoRhino

Manage personal reminders and scheduled tasks for the user. Full CRUD: create, list, edit, and delete cron jobs. Trigger when user wants to: create a reminder ('remind me...', '提醒我...', '帮我定个提醒', 'set a reminder', '两分钟后提醒我'), view their reminders ('我有哪些提醒', '看看我的定时任务', 'show my reminders', 'list my reminders'), change a reminder ('把午餐提醒改到12点', '修改提醒时间', 'change my reminder'), or delete/cancel a r…

No reviews yet
0 installs
17 views
0.0% view→install

Install

$ agentstack add skill-nanorhino-weight-loss-skill-reminder-manager

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-nanorhino-weight-loss-skill-reminder-manager)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
1mo ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Reminder Manager? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Reminder Manager

Manage the user's cron jobs: create, list, edit, delete. All scripts enforce agent-level isolation — a user can only see and modify their own jobs.

> ⚠️ SILENT OPERATION: Do not narrate tool calls or internal steps. Just do it and present the result.

Scripts

All scripts are in {skillDir}/scripts/. Always pass --agent {agentId} (your own agent ID).

Create

bash {skillDir}/scripts/create-reminder.sh \
  --agent {agentId} \
  --name "喝水提醒" \
  --message "提醒用户喝水,简短自然一句话" \
  --at "2m"

Channel is auto-detected from agentId (wechat-dm-* → wechat, wecom-dm-* → wecom). No need to pass --channel.

Time options (pick one):

  • --at "2m" / --at "1h" / --at "30s" — relative, one-shot (auto-deletes after firing)
  • --at "2026-04-11T09:00:00+08:00" — absolute ISO timestamp, one-shot
  • --cron "0 9 * * *" — recurring (add --tz Asia/Shanghai if needed)

Add --keep to preserve one-shot jobs after firing.

The --message is what you (the agent) will receive when the job fires. Write it as an instruction to yourself.

IMPORTANT: Always prepend a pre-send-check call to the message. This ensures the reminder is suppressed when the user enters recall stages (Stage 2+). The check also auto-creates/updates engagement.json, so it works even if the file doesn't exist yet.

先执行 python3 {notification-composer:baseDir}/scripts/pre-send-check.py --workspace-dir {workspaceDir} --meal-type custom --tz-offset {tz_offset}。如果输出 NO_REPLY,直接回复 NO_REPLY,不做任何事。如果输出 SEND,继续执行:[actual reminder instruction]

Examples:

  • --message "先执行 python3 {notification-composer:baseDir}/scripts/pre-send-check.py --workspace-dir {workspaceDir} --meal-type custom --tz-offset {tz_offset}。如果输出 NO_REPLY,直接回复 NO_REPLY,不做任何事。如果输出 SEND,继续执行:提醒用户该喝水了,简短自然"
  • --message "先执行 python3 {notification-composer:baseDir}/scripts/pre-send-check.py --workspace-dir {workspaceDir} --meal-type custom --tz-offset {tz_offset}。如果输出 NO_REPLY,直接回复 NO_REPLY,不做任何事。如果输出 SEND,继续执行:Ask the user if they've had lunch yet"
  • --message "先执行 python3 {notification-composer:baseDir}/scripts/pre-send-check.py --workspace-dir {workspaceDir} --meal-type custom --tz-offset {tz_offset}。如果输出 NO_REPLY,直接回复 NO_REPLY,不做任何事。如果输出 SEND,继续执行:提醒用户去称体重,鼓励一下"

List

bash {skillDir}/scripts/list-reminders.sh --agent {agentId}

Returns JSON:

{
  "ok": true,
  "count": 3,
  "jobs": [
    {
      "id": "abc123...",
      "name": "午餐提醒",
      "enabled": true,
      "schedule_type": "cron",
      "schedule_expr": "0 12 * * *",
      "timezone": "Asia/Shanghai",
      "message": "Run notification-composer for lunch.",
      "session_target": "isolated"
    }
  ]
}

Present to user in friendly format: translate cron expressions to natural language (e.g. "每天中午 12:00"), show name and enabled status. Don't expose job IDs or internal fields unless user asks.

Edit

bash {skillDir}/scripts/edit-reminder.sh \
  --agent {agentId} --job  \
  [--name "新名字"] [--cron "30 11 * * *"] [--at "..."] \
  [--message "新内容"] [--enable] [--tz "Asia/Shanghai"]

To edit, you need the job ID. If you don't have it, run list first.

> 🚫 不支持 --disable(已移除)。 agent 不得 disable 任何 cron。要让用户暂停接收提醒 > → 走 notification-composerleave-manager.pyleave.json(pre-send-check 在请假期 > 自动静默 cron、到期自动恢复,全程不碰 cron)。直接 disable 会导致请假结束提醒恢复不回来。

Delete

bash {skillDir}/scripts/delete-reminder.sh --agent {agentId} --job 

Permanently removes the job. To find the job ID, run list first.

Workflow

  1. User asks to see reminders → run list → format output as friendly Chinese/English
  2. User asks to create → confirm what and when → run create → confirm done
  3. User asks to change → run list to find the job → run edit → confirm change
  4. User asks to delete/cancel → run list to find the job → confirm which one → run delete → confirm done
  5. Ambiguous request → ask user to clarify (which reminder? what time?)

Rules

  • Always use --agent {agentId} (your own ID). Never pass another agent's ID.
  • Scripts enforce ownership server-side — if you accidentally pass a wrong job ID, the script rejects it.
  • Users can manage ALL their reminders (including system meal/weight ones).
  • When creating recurring reminders, suggest sensible defaults if user is vague ("every morning" → --cron "0 8 * * *").
  • For one-shot reminders ("in 5 minutes"), use --at "5m".

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.