---
name: store-schedule
description: 门店提醒唯一入口：九块经营摘要、提醒计划/注册、daily-plan 预约提醒、cron 配置。触发：今天要处理什么/今日提醒/设置提醒/每日推送。
---

# 日程与提醒

门店提醒的**唯一入口**：读（摘要/查询）与写（plan/schedule/cron 注册）均在本 skill。

## 用法

```bash
uv run {baseDir}/scripts/cli.py <子命令> ...
```

## 输出格式

stdout 单行 JSON；`daily-summary` 含固定九块 `blocks` 与 `markdown` 字段。错误码见 [references/errors.md](references/errors.md)。

## 主要子命令

| 子命令 | 用途 |
|--------|------|
| daily-summary | 九块提醒摘要（可选 `--mark-sent`） |
| reminder-query --type | 单类提醒查询 |
| reminder plan | 预览提醒计划（只读） |
| reminder schedule | 注册 cron（需 `--yes`；支持 `--dry-run`） |
| daily-plan | 扫描 DB 并注册预约 at 提醒 |
| cron-init | 初始化工作区 `store_cron.json` |
| cron-setup | 一键注册固定 cron 任务（需 `--yes`） |
| reminder list / remove | 查看/删除 store-* cron 任务 |
| change-check | 检测经营数据是否变化 |

## 自然语言 → 命令

| 用户说 | 命令 |
|--------|------|
| 今日提醒 | `uv run {baseDir}/scripts/cli.py daily-summary --md` |
| 今天有哪些预约 | `uv run {baseDir}/scripts/cli.py reminder-query --type appt_today` |
| 设置生日提醒 | `uv run {baseDir}/scripts/cli.py reminder plan --json '{"kinds":["birthday"]}'` → `uv run {baseDir}/scripts/cli.py reminder schedule --json '{"kinds":["birthday"]}' --yes` |
| 开启每日推送 | `uv run {baseDir}/scripts/cli.py cron-setup --yes` |

## 提醒类型（封闭枚举）

`appt_today` · `birthday_today` · `low_stock` · `staff_off_tomorrow` · `followup_due` · `card_expiring` · `balance_low` · `appt_30m` · `member_due`

`reminder schedule` 支持的 kinds：`birthday` · `member_due` · `card_expiring` · `follow_up` · `appt`

非法 `--type` 返回 `invalid_reminder_type`。

## 注意事项

- 数据库：`STORE_DB_PATH`（默认 `%USERPROFILE%\.config\store-suite\store.sqlite3`）。
- 本 skill 只读 DB 并注册提醒；不创建会员、不创建或修改预约。
- `reminder schedule` 默认 **daily-plan 模式**：注册固定 `store-daily-plan` cron，不逐会员创建年 cron。
- 预约提醒使用精确 `at` 时间（默认提前 30 分钟，见 `config/reminder_rules.yaml`）。
- `--mark-sent` 写入 `sent_reminders` 防重复推送；bucket 语义见 [references/sent_reminders.md](references/sent_reminders.md)。
- `dynamic_due` 提醒类型已废弃。

## 示例

```bash
uv run {baseDir}/scripts/cli.py daily-summary --md
uv run {baseDir}/scripts/cli.py reminder plan --json '{"kinds":["birthday","card_expiring"]}'
uv run {baseDir}/scripts/cli.py reminder schedule --json '{"kinds":["birthday"]}' --yes
uv run {baseDir}/scripts/cli.py daily-plan --dry-run
uv run {baseDir}/scripts/cli.py cron-setup --yes
uv run {baseDir}/scripts/cli.py reminder-query --type member_due
```
