things-reminders-manager

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Things Reminders Manager

Things提醒管理器

Use an update-first workflow for Things reminder requests.
针对Things提醒请求采用“更新优先”的工作流。

Inputs

输入项

  • Reminder intent:
    • create
    • reschedule
    • correct an existing task
  • Scheduling phrase or absolute date/time
  • Optional timezone override
  • Effective settings may come from:
    • explicit user override
    • config/customization.yaml
    • config/customization.template.yaml
    • workflow defaults
  • Workflow settings:
    • timezone
    • defaultReminderTime
    • duplicatePolicy
    • onUpdateWithoutToken
    • requireAbsoluteDateInConfirmation
  • 提醒意图:
    • 创建
    • 重新安排
    • 修正现有任务
  • 时间安排表述或绝对日期/时间
  • 可选时区覆盖设置
  • 有效设置来源:
    • 用户显式覆盖设置
    • config/customization.yaml
    • config/customization.template.yaml
    • 工作流默认值
  • 工作流设置:
    • timezone
    • defaultReminderTime
    • duplicatePolicy
    • onUpdateWithoutToken
    • requireAbsoluteDateInConfirmation

Workflow

工作流

  1. Resolve the current local date/time.
    • Run
      date '+%Y-%m-%d %H:%M:%S %Z %z'
      .
  2. Load effective settings from override, config, then defaults.
    • Use
      timezone
      for schedule normalization.
    • Use
      defaultReminderTime
      when the user gives a date without a time and the workflow needs a default time.
  3. Check Things MCP readiness and auth.
    • things_capabilities
    • things_auth_get_status
    • things_validate_token_config
      before any likely update path
  4. Normalize the requested schedule into an absolute date/time using the effective
    timezone
    .
  5. Search candidate open tasks before creating anything new.
    • Prefer
      things_find_todos
    • Fall back to
      things_read_todos
      when needed
  6. Apply
    duplicatePolicy
    .
    • update-first
      : update on a single clear correction/reschedule match, otherwise create or disambiguate
    • ask-first
      : stop when a plausible duplicate exists and ask the user to choose
    • always-create
      : skip update matching and create a new task unless the user explicitly asked to modify an existing one
  7. Apply
    onUpdateWithoutToken
    if the chosen path requires an update and token access is unavailable.
    • block-and-report
      : stop with
      action=blocked
    • ask-to-create-duplicate
      : ask whether to create a new task instead
  8. Execute the selected create or update path.
    • create:
      things_add_todo
    • update:
      things_update_todo
  9. Confirm the result using
    requireAbsoluteDateInConfirmation
    .
    • When
      true
      , confirm in absolute form with timezone.
  1. 解析当前本地日期/时间。
    • 执行命令
      date '+%Y-%m-%d %H:%M:%S %Z %z'
  2. 从用户覆盖设置、配置文件到默认值依次加载有效设置。
    • 使用
      timezone
      进行时间安排标准化。
    • 当用户仅提供日期未指定时间时,使用
      defaultReminderTime
      作为默认时间。
  3. 检查Things MCP的就绪状态和授权情况。
    • things_capabilities
    • things_auth_get_status
    • 在任何可能的更新路径前执行
      things_validate_token_config
  4. 使用有效时区
    timezone
    将请求的时间安排转换为绝对日期/时间。
  5. 在创建新任务前搜索候选的未完成任务。
    • 优先使用
      things_find_todos
    • 必要时回退到
      things_read_todos
  6. 应用
    duplicatePolicy
    (重复项处理策略)。
    • update-first
      (更新优先):当找到唯一明确的修正/重排匹配项时进行更新,否则创建新任务或请求用户明确
    • ask-first
      (询问优先):当存在可能的重复项时停止执行,询问用户选择
    • always-create
      (始终创建):跳过更新匹配,直接创建新任务,除非用户明确要求修改现有任务
  7. 如果选择的路径需要更新但无令牌访问权限,应用
    onUpdateWithoutToken
    设置。
    • block-and-report
      (阻止并报告):停止执行,返回
      action=blocked
    • ask-to-create-duplicate
      (询问是否创建重复项):询问用户是否创建新任务替代
  8. 执行选定的创建或更新操作。
    • 创建:
      things_add_todo
    • 更新:
      things_update_todo
  9. 根据
    requireAbsoluteDateInConfirmation
    设置确认结果。
    • 当设置为
      true
      时,以带时区的绝对时间格式进行确认。

Output Contract

输出约定

  • Return:
    • action
      :
      created
      ,
      updated
      , or
      blocked
    • task title
    • normalized absolute schedule
    • blockers, when present
  • Confirm dates in absolute form with timezone in user-visible output.
  • 返回内容:
    • action
      created
      updated
      blocked
    • 任务标题
    • 标准化后的绝对时间安排
    • (若有)阻塞原因
  • 在用户可见的输出中,以带时区的绝对日期格式确认时间。

Guardrails

约束规则

  • Never assume relative dates without resolving the current local date.
  • Never silently create a duplicate when update intent is clear.
  • Never claim mutation success without tool confirmation.
  • If an update requires token access and token access is missing, block and report the exact blocker.
  • 未解析当前本地日期前,绝不假设相对日期。
  • 当明确存在更新意图时,绝不静默创建重复任务。
  • 未经工具确认,绝不声称修改操作成功。
  • 如果更新需要令牌访问但令牌不可用,需阻止操作并报告具体阻塞原因。

References

参考文档

  • references/customization.md
  • references/mcp-sequence.md
  • references/config-schema.md
  • references/automation-prompts.md
  • references/customization.md
  • references/mcp-sequence.md
  • references/config-schema.md
  • references/automation-prompts.md