阅读后请从 iPhone 主屏幕图标返回自我管理。这里是配置说明,不会读取或发送你的记录。
iPhone「自我管理提醒」一次配置说明
对应 DEC-014、FUN-ACC-INT-004 至 006。此说明用于在你自己的 iPhone 上手动搭建快捷指令,不是已经安装好的快捷指令。本项目没有可提供的、经过真机验证的 iCloud 安装链接。
当前证据:Windows 上可验证交接格式与本地状态;用户 iPhone 的 iOS 版本、动作字段、创建、去重、通知和取消均为 NOT RUN。下面列出的中文动作名是查找提示;若你的 iOS 名称不同,以动作的实际功能为准。缺少校验、备注查询或时间通知字段时,请停止配置并提供该动作页截图,不要跳过这些步骤。
1. 先准备专用列表
在苹果「提醒事项」中手动新建普通列表,命名为「自我管理」。不要用共享列表或混有其他用途的列表;后续查找和创建都固定选中这个列表,而非「每次询问」或默认列表。
提醒事项的数据存放及同步由你所选账户决定。若列表属于 iCloud,交出去的标题和正文可能按你现有 iCloud 设置同步;本 PWA 不会替你开启、关闭或变更同步。Apple:提醒事项与账户同步
2. 新建同名快捷指令
打开「快捷指令」,新建一个快捷指令,名称必须是:
自我管理提醒
这是普通快捷指令,不需要新建自动化、后台任务或时间触发器。PWA 只打开已存在的同名快捷指令,并通过 input=clipboard 提供输入;不把标题、正文、日期或回调放进 URL。Apple:通过 URL 运行快捷指令
3. 按以下顺序搭建动作
先完成整个流程再开启 App 内的「已配置」选项。每个错误分支都必须“显示说明并停止快捷指令”,不能继续到添加动作。
A. 取得文字并验证版本和字段
- 读取「快捷指令输入」。由 App 启动时它就是本次剪贴板内容;如需从快捷指令 App 手动测试,可在“没有输入”分支加入「获取剪贴板」。仅由你手动运行时读取一次,不建立自动读取剪贴板的自动化。
- 用「从输入中获取词典 / Get Dictionary from Input」把文字解析为一个词典,保存为变量
payload。解析失败、输入为空或不是单个词典时停止。Apple 确认此动作可以把 JSON 文本转成词典;这个过程无需获取网页内容。Apple:在快捷指令中使用词典 - 逐个使用词典取值与“如果”动作检查以下字段。类型必须为单个文本,不能把嵌套词典或列表当作标题/正文;缺失、空白、版本不符时停止。不运行正文中的 HTML、脚本或链接。
| 键 | 检查条件 | 用途 |
|---|---|---|
format |
完全等于 self-management.reminder.v1 |
拒绝其他剪贴板格式 |
id |
合法 UUID,正则见下方 | 本次交接的稳定标识 |
marker |
完全等于文本 SMR: 拼接 id |
查重键,不用标题查重 |
title |
非空文本 | 提醒标题 |
body |
非空文本 | 完整正文,不截短 |
triggerAt |
符合下方 ISO 格式,且能解析为日期 | 通知的绝对时刻 |
timeZoneID |
非空时区名称,例如 Asia/Shanghai |
核对来源时区,不替代绝对时刻 |
UUID 可用「匹配文本」动作检查,要求整个值匹配:
^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
triggerAt 的格式检查:
^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\.\d{3}Z$
不要将任何不符合格式的输入当作普通提醒直接添加。未知的附加字段忽略,不传给其他 App。
B. 解析时间并核对
- 使用日期转换动作,将
triggerAt转成日期变量提醒时刻,保留末尾Z所表示的 UTC 时刻。不要去掉Z,不要只取年月日,也不要先转换成模糊的“明天上午”。解析错误或不是单个有效日期时停止。Shortcuts 支持带时间和时区的 ISO 8601 格式;具体转换动作和输出需按当前 iOS 确认。Apple:快捷指令支持的时间标准 - 把
提醒时刻与「当前日期」比较,必须严格晚于现在。已经过去则提示“时间已过,请回 App 重新准备”,停止且不创建。之后展示时用设备当前的日期、时间与时区,让你核对。若出行改变时区,同一绝对时刻的当地显示时间可能不同;必须以实际提醒详情为准。
C. 在专用列表查重
- 添加「查找提醒事项 / Find Reminders」,限定列表为固定的「自我管理」,并查询备注包含
marker的项目。条件是“全部满足”。必须包含已完成和未完成的项目,不要设置“仅未完成”,也不要在检索前只取最近几条。Apple 确认 Find Reminders 是设备内容查找动作,并支持给查找动作添加组合条件;备注及完成状态的实际筛选字段仍需在你的 iOS 动作页核对。Apple:查找动作、Apple:添加筛选条件 - 若查到一条或多条,显示“这次交接已存在,请在提醒事项查看”;展示已找到的项目供核对,然后停止。不要再次创建,不更新标题、时间、正文或完成状态。若查找报错、权限被拒绝或无法确认结果,停止;不能把查找失败当作“零条”。如果没有可用的备注筛选,需先取得专用列表全部项目,再逐项取备注检查相同标记;如果设备也无法完成这一检查,则不要启用本接法。
D. 用户确认后添加带通知时间的提醒
- 仅在查找成功且结果为零时,使用「显示提醒 / Show Alert」展示完整标题、正文、设备当地提醒时间、来源
timeZoneID与目标列表。打开取消按钮;取消直接停止。Apple 的 Show Alert 支持通过取消按钮停止本次运行。Apple:显示提醒动作 - 确认后再次检查
提醒时刻仍在未来,再执行同样的查重。若确认弹窗期间已经出现同标记项目,停止,不覆盖。然后加入「添加新提醒事项 / Add New Reminder」动作,并固定设置:- 标题:
title。 - 列表:
自我管理。 - 备注:第一行放
marker,空一行后放完整body;标记不拼进正文 URL,也不写入日志文件。 - 提醒/通知方式:选择“在指定时间 / At Time”等等效选项,时间变量使用
提醒时刻。展开动作详情确认日期与时间都存在。只写日期文字或备注不等于安排了时间通知;若设备将截止日期和通知时间分成不同字段,两者都需正确映射。具体字段名须在当前 iOS 核对,不要把“无提醒”当作成功。
- 标题:
- 添加动作成功后,展示新建项目,提示去「提醒事项」核对标题、完整备注、日期、具体时间和通知设置。不要向网页发送“成功”回调,不加入 URL 请求、上传文件、运行网页脚本或第三方服务动作。苹果提醒事项允许日期和时间通知;实际通知仍受设备设置影响,需测试。Apple:设置提醒日期和时间
4. 以后每次使用
在 PWA 保存记录 → 打开这条记录 → 设置未来时间 → 核对将交出的内容 → 明确确认覆盖剪贴板 → 启动「自我管理提醒」 → 在快捷指令中确认 → 到「提醒事项」核对。
从 PWA 返回只代表你回到了页面。App 的“待核对”不是“系统已安排”;只有你在手机确认后,才能在 App 标注“我已核对”,这也只是用户确认,不是读取系统验证结果。
剪贴板复制会替换原有剪贴板内容;请先保存之前需要的内容。通用剪贴板可能将复制的内容带到你同一 Apple 账户的附近设备,本 PWA 的网页复制无法指定 Shortcuts 的“仅本地”选项;需要时由你在设备设置管理接力。App 不会替你改这些设置。Apple:通用剪贴板
5. 重试、取消、修改和完成的边界
- 若没有创建成功,回 App 重试同一交接,仍使用同一 UUID、标记和时间;不要另建同名新记录来重试。
- 普通连续重试时,只要原项目仍在专用列表且备注标记未被改掉,查到标记就停止,不创建第二条。请一次只运行一次,不同时在多设备运行;这是列表查询去重,不是跨设备原子事务。
- 不要移动已有项目到其他列表、删除备注标记或永久删除后再重试,否则无法可靠查重。系统项目已经存在时,不会自动按新正文或新时间覆盖它。
- “取消准备”只撤销 App 内尚未启动的交接,不会删除苹果提醒事项。已经尝试交给系统后,取消、改时间、修改或完成都在苹果「提醒事项」操作。
- App 中给记录划线完成,不会同步完成苹果提醒事项;苹果提醒事项里的修改也不会自动回写本 App。
- 本功能不申请微信聊天权限、不读取提醒事项清单回传网页,也不提供双向同步。
6. 首次用虚构记录验收
在 iPhone 15 Pro 上记录当前 iOS 版本,按以下项目逐个确认。全部完成前,不要用重要或敏感提醒来替代原有安排。
| 检查 | 通过条件 | 当前证据 |
|---|---|---|
| 未配置启动 | 提示未找到/未配置,不冒称成功 | iPhone NOT RUN |
| 正常创建 | 设未来 5–10 分钟;仅专用列表新增一条,时间和完整备注正确 | iPhone NOT RUN |
| 相同交接重试 | 原项目仍在时重复运行,数量保持一条,不覆盖系统修改 | iPhone NOT RUN |
| 完成后重试 | 在苹果提醒事项完成项目,保留标记,再次运行仍不新增 | iPhone NOT RUN |
| 取消 | 在创建确认处取消,列表数量不增加 | iPhone NOT RUN |
| 拒绝权限/格式错误 | 停止执行,不继续创建;原 PWA 记录不丢失 | iPhone NOT RUN |
| 到点通知 | 锁屏后实际出现时间通知;核对权限、专注模式等设置 | iPhone NOT RUN |
| 时区核对 | App 准备的绝对时刻与系统项目实际时刻一致 | iPhone NOT RUN |
测试出错时保留原记录和原提醒,只提供虚构测试内容与动作配置截图排查。不要清除 Safari 网站数据、删库重建或向聊天发送真实私人记录。