[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-minimax-renewal-tracker":3,"mdc--zf6zpp-key":37,"related-org-minimax-renewal-tracker":1407,"related-repo-minimax-renewal-tracker":1610},{"slug":4,"name":4,"fn":5,"description":6,"org":7,"tags":12,"stars":26,"repoUrl":27,"updatedAt":28,"license":29,"forks":30,"topics":31,"repo":32,"sourceUrl":35,"mdContent":36},"renewal-tracker","track contract renewal dates","续期登记簿维护技能（库技能，由审查技能在收尾步骤调用，不直接面向用户）。 合同审查发现自动续期、期限、提前通知解除等时间敏感条款时，把关键日期写入 contracts\u002Frenewal-register.yaml 登记簿：先读后写、不覆盖历史条目、id 自增， 保证 renewal-watcher 监控 agent 有唯一、干净的数据源。同义场景词：续期登记、 到期登记、自动续期跟踪、合同期限管理、续约提醒登记、renewal register。",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},"minimax","MiniMax","https:\u002F\u002Fpexgzepcugksgbtrxkhf.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Forg-logos\u002Fminimax.jpg","MiniMax-AI",[13,17,20,23],{"name":14,"slug":15,"type":16},"Operations","operations","tag",{"name":18,"slug":19,"type":16},"Contracts","contracts",{"name":21,"slug":22,"type":16},"Management","management",{"name":24,"slug":25,"type":16},"Legal","legal",5,"https:\u002F\u002Fgithub.com\u002FMiniMax-AI\u002FMiniMax-Code-Plugins","2026-08-27T13:32:05.555351",null,2,[],{"repoUrl":27,"stars":26,"forks":30,"topics":33,"description":34},[],"Community registry and contribution toolkit for MiniMax Code plugins.","https:\u002F\u002Fgithub.com\u002FMiniMax-AI\u002FMiniMax-Code-Plugins\u002Ftree\u002FHEAD\u002Fplugins\u002FHylouis233\u002Fmcodeforlegal\u002Fskills\u002Frenewal-tracker","---\nname: renewal-tracker\ndescription: >-\n  续期登记簿维护技能（库技能，由审查技能在收尾步骤调用，不直接面向用户）。\n  合同审查发现自动续期、期限、提前通知解除等时间敏感条款时，把关键日期写入\n  contracts\u002Frenewal-register.yaml 登记簿：先读后写、不覆盖历史条目、id 自增，\n  保证 renewal-watcher 监控 agent 有唯一、干净的数据源。同义场景词：续期登记、\n  到期登记、自动续期跟踪、合同期限管理、续约提醒登记、renewal register。\nuser-invocable: false\nmetadata:\n  legal_frame: cn-mainland\n  last_reviewed: '2026-08-18'\n---\n\n# 续期登记簿维护（renewal-tracker）\n\n## 目的\n\n合同里最贵的一条往往不是写出来的条款，而是**没人记得的日期**：自动续期前\n不通知就被续一年、提前解除窗口错过就要再等一年。本技能把审查过程中发现的\n时间敏感条款统一登记到 `contracts\u002Frenewal-register.yaml`，供\n`renewal-watcher` agent 定期扫描、分级提醒。\n\n登记纪律三条（与 legal-core `matter-workspace` 的台账纪律同源）：\n\n1. **先读后写**：写入前必须完整读取现有登记簿，确认不重复、不冲突；\n2. **不覆盖历史条目**：已登记条目只可追加 `status` 变化（如 active →\n   renewed \u002F closed）或补充 notes，不删除、不改写原始字段——历史留痕；\n3. **id 自增不复用**：新条目 id = 现有最大 id + 1，已注销条目的 id 也不\n   回收。\n\n## 前置检查\n\n- 调用方（nda-review \u002F sales-contract-review \u002F contract-review 通用规程）已完成审查，\n  且确认合同中**确实存在**自动续期、期限或提前通知解除条款；不登记没有\n  日期抓手（到期日、通知期、期限）的合同。\n- 用户已被告知并同意登记（一句提示即可：「这份合同有自动续期条款，我把\n  关键日期登记一下？」）；用户不同意的，在 memo FYI 区记录「未登记，用户\n  决定」，不擅自登记。\n- 关键日期能从文本中明确读出；读不出具体日期的（如「续期前合理时间内\n  通知」），登记时在 notes 写明「日期不确定，条款原文：……」，不得编造\n  日期（G2：不静默补充）。\n\n## 操作规程\n\n### 第 1 步：读取现有登记簿\n\n- 打开 `contracts\u002Frenewal-register.yaml`；文件不存在的，新建并写入文件头\n  注释与 `entries: []`。\n- 检查同一合同（按 counterparty + contract 名称判断）是否已有 active 条目：\n  - 已有且本次是复审\u002F修订：不新增条目，更新原条目的 cancel_by 等日期字段，\n    并在 notes 追加一行「YYYY-MM-DD 修订更新」；\n  - 已有且原合同已终止\u002F重签：原条目 status 改为 `superseded`，另起新条目。\n\n### 第 2 步：构造新条目\n\n按 schema（见下）逐字段填：\n\n- `counterparty`、`contract`：用合同原文名称，不简写、不意译；\n- `cancel_by`：**最迟行动日**。自动续期场景 = 到期日 − notice_period_days，\n  再按合同约定的通知方式留缓冲；文本没给依据的缓冲不编造，直接写\n  「到期日 − 通知期」并在 notes 说明计算方式；\n- `notice_period_days`：合同约定的提前通知天数；约定不明的填 null 并在\n  notes 写明；\n- `annual_value`：年度金额（元）；合同无明确金额的填 null，不估算；\n- `status`：新登记一律 `active`；\n- `notes`：条款位置（第 X 条）、通知方式要求（书面\u002FEMS\u002F邮件）、日期不\n  确定之处；\n- `source`：指向本次审查 memo 或 matter 路径；\n- `registered_at`：登记日期（YYYY-MM-DD，以 `date` 命令取真实日期，不凭\n  记忆猜）。\n\n### 第 3 步：写入并回执\n\n- 追加到 `entries:` 末尾，保持 YAML 格式与既有条目一致（两个空格缩进、\n  日期加引号）；\n- 写完后向调用方回执一行：「已登记 #id：\u003Ccounterparty>，cancel_by\n  \u003C日期>」；调用方把这一行写进 memo 的「下一步」区。\n\n### 第 4 步：状态维护（被 watcher 提示后或后续审查调用时）\n\n- 合同已发出不续约通知：status → `notice_sent`，notes 注明发送日期与方式；\n- 已续约：status → `renewed`，notes 注明新期限；\n- 已解除\u002F到期不再续：status → `closed`；\n- 任何状态变化只追加、不改历史（纪律 2）。\n\n### 第 5 步：写入后自检\n\n- 重新读取登记簿，确认：YAML 可解析；新条目 id 唯一且为最大值；日期字段\n  格式为带引号的 YYYY-MM-DD；status 为枚举值之一。\n- 自检不通过的，立即修复并重新自检；不得把带格式错误的登记簿交给\n  watcher——格式错误会让监控静默失效，比不登记更危险。\n\n## Schema 与示例\n\n```yaml\n# contracts\u002Frenewal-register.yaml\n# 合同续期\u002F期限登记簿。由 renewal-tracker 维护，renewal-watcher 定期扫描。\n# 维护纪律：先读后写；不覆盖历史条目（仅追加状态变化）；id 自增不复用。\nentries:\n  - id: 1\n    counterparty: 某科技有限公司\n    contract: 软件服务框架协议\n    cancel_by: '2026-12-02'        # 最迟行动日：到期日 2027-01-31 减 60 天通知期\n    notice_period_days: 60\n    annual_value: 480000           # 年度金额（元），无明确金额填 null\n    status: active                 # active \u002F notice_sent \u002F renewed \u002F closed \u002F superseded\n    notes: 第 9.2 条自动续期条款；不续约须书面通知，EMS 留痕；cancel_by 按\"到期日-通知期\"计算\n    source: matters\u002Fruanjian-fuwu\u002Fdrafts\u002Freview-memo-v1.md\n    registered_at: '2026-08-18'\n  - id: 2\n    counterparty: 某供应链管理有限公司\n    contract: 仓储服务合同\n    cancel_by: '2026-11-15'\n    notice_period_days: 45\n    annual_value: null             # 按实际结算，无固定年费\n    status: active\n    notes: 第 7 条；通知方式约定不明，已在 memo 标记项 #3 建议修订\n    source: matters\u002Fcangchu-fuwu\u002Fdrafts\u002Freview-memo-v1.md\n    registered_at: '2026-08-18'\n```\n\n字段说明：\n\n| 字段 | 类型 | 说明 |\n| --- | --- | --- |\n| id | 整数 | 自增，不复用 |\n| counterparty | 字符串 | 相对方全称（合同原文） |\n| contract | 字符串 | 合同名称（合同原文） |\n| cancel_by | 日期 | 最迟行动日（YYYY-MM-DD，加引号） |\n| notice_period_days | 整数或 null | 约定提前通知天数 |\n| annual_value | 数字或 null | 年度金额（元），不确定填 null |\n| status | 枚举 | active \u002F notice_sent \u002F renewed \u002F closed \u002F superseded |\n| notes | 字符串 | 条款位置、通知方式、不确定事项 |\n| source | 字符串 | 来源 memo 或 matter 路径 |\n| registered_at | 日期 | 登记日期 |\n\n## 边界情形处理\n\n1. **同一合同多个时间抓手**：既有质保期、又有合作期限、还有自动续期的，\n   按「最早需要行动的日期」只登记一条，notes 列明其余日期，避免 watcher\n   对同一合同重复报警；后续日期成为「最近行动日」时，经状态维护更新\n   cancel_by 并在 notes 追加说明。\n2. **多年期合同无自动续期**：只有固定到期日、无提前通知要求的，仍可登记\n   （cancel_by = 到期日，notice_period_days 填 0 并在 notes 写明「到期即\n   终止，无通知期」），以便 watcher 提醒到期重签。\n3. **解除窗口类条款**（如「每年 X 月前可书面提出终止」）：cancel_by 取\n   最近一个窗口关闭日，notes 写明窗口的周期性；本条状态维护频率高于普通\n   条目。\n4. **日期依赖第三方行为的**（如「以甲方验收合格日为起算」）：cancel_by\n   填 null——watcher 会列入「数据异常」节提醒人工跟进；notes 写明触发\n   条件与条款原文。这比编造一个日期安全（G2）。\n5. **框架合同 + 订单**：框架合同登记一条；单个订单的交付\u002F账期日期不进本\n   登记簿（那是履约管理，量大且短周期），需要跟踪的订单级日期建议记入\n   matters\u002F\u003Cslug>\u002Fintake.md 的时效提醒节。\n6. **相对方更名\u002F主体变更**：不新建条目；在 notes 追加「YYYY-MM-DD 相对方\n   更名为 XX」，保持历史可追溯（纪律 2）。\n\n## 状态流转\n\n```text\nactive ──(发出不续约通知)──→ notice_sent ──(到期终止确认)──→ closed\n   │                           │\n   │                           └──(对方回应后续约)──→ renewed\n   ├──(协商续约)──────────────→ renewed\n   ├──(到期自然终止)──────────→ closed\n   └──(合同被新合同替代)──────→ superseded\n```\n\n- 只有 `active` 进入 watcher 的倒计时分级；`notice_sent` 列入 watcher 的\n  「已闭环」简表，提示用户在到期后确认终止生效并改为 `closed`。\n- `renewed` \u002F `closed` \u002F `superseded` 不再报警，仅留痕。\n\n## 输出模板\n\n本技能不产出面向用户的文件；向调用方的回执格式：\n\n```text\n[renewal-tracker] 已登记 #\u003Cid>：\u003Ccounterparty>《\u003Ccontract>》，\ncancel_by \u003CYYYY-MM-DD>（通知期 \u003CN> 天）。\n```\n\n## 本技能不做什么\n\n- 不做续期决策（续不续是业务与法务的决定，本技能只记日期）。\n- 不估算缺失的金额或日期（填 null + notes 说明，不编造）。\n- 不删除或改写历史条目（状态变化只追加）。\n- 不直接提醒用户到期（那是 renewal-watcher 的职责；本技能只维护数据）。\n- 不登记没有时间敏感条款的合同。\n- 不修改 watcher 已出具的报告（报告是 watcher 的产物；发现报告与登记簿\n  不一致时，修正登记簿或提示重跑 watcher，不改报告文件）。\n\n## 收尾与下一步\n\n1. 登记回执交给调用方写入 memo 的「下一步」区。\n2. 提示用户：`renewal-watcher` 会按登记簿定期扫描并出分级提醒报告\n   （reports\u002Frenewal\u002F 目录）。\n3. 合同后续修订、解除、续约时，由新的审查流程再次调用本技能做状态维护；\n   事项层面的日期同时建议在 `matters\u002F\u003Cslug>\u002Fintake.md` 的时效提醒节登记。\n4. 登记簿文件建议纳入工作区的版本管理（如 git）：变更历史即审计线索。\n",{"data":38,"body":43},{"name":4,"description":6,"user-invocable":39,"metadata":40},false,{"legal_frame":41,"last_reviewed":42},"cn-mainland","2026-08-18",{"type":44,"children":45},"root",[46,55,61,92,105,148,153,179,184,191,240,246,251,372,378,404,410,456,462,475,481,956,961,1161,1166,1235,1240,1250,1301,1306,1311,1320,1325,1358,1363,1401],{"type":47,"tag":48,"props":49,"children":51},"element","h1",{"id":50},"续期登记簿维护renewal-tracker",[52],{"type":53,"value":54},"text","续期登记簿维护（renewal-tracker）",{"type":47,"tag":56,"props":57,"children":59},"h2",{"id":58},"目的",[60],{"type":53,"value":58},{"type":47,"tag":62,"props":63,"children":64},"p",{},[65,67,73,75,82,84,90],{"type":53,"value":66},"合同里最贵的一条往往不是写出来的条款，而是",{"type":47,"tag":68,"props":69,"children":70},"strong",{},[71],{"type":53,"value":72},"没人记得的日期",{"type":53,"value":74},"：自动续期前\n不通知就被续一年、提前解除窗口错过就要再等一年。本技能把审查过程中发现的\n时间敏感条款统一登记到 ",{"type":47,"tag":76,"props":77,"children":79},"code",{"className":78},[],[80],{"type":53,"value":81},"contracts\u002Frenewal-register.yaml",{"type":53,"value":83},"，供\n",{"type":47,"tag":76,"props":85,"children":87},{"className":86},[],[88],{"type":53,"value":89},"renewal-watcher",{"type":53,"value":91}," agent 定期扫描、分级提醒。",{"type":47,"tag":62,"props":93,"children":94},{},[95,97,103],{"type":53,"value":96},"登记纪律三条（与 legal-core ",{"type":47,"tag":76,"props":98,"children":100},{"className":99},[],[101],{"type":53,"value":102},"matter-workspace",{"type":53,"value":104}," 的台账纪律同源）：",{"type":47,"tag":106,"props":107,"children":108},"ol",{},[109,120,138],{"type":47,"tag":110,"props":111,"children":112},"li",{},[113,118],{"type":47,"tag":68,"props":114,"children":115},{},[116],{"type":53,"value":117},"先读后写",{"type":53,"value":119},"：写入前必须完整读取现有登记簿，确认不重复、不冲突；",{"type":47,"tag":110,"props":121,"children":122},{},[123,128,130,136],{"type":47,"tag":68,"props":124,"children":125},{},[126],{"type":53,"value":127},"不覆盖历史条目",{"type":53,"value":129},"：已登记条目只可追加 ",{"type":47,"tag":76,"props":131,"children":133},{"className":132},[],[134],{"type":53,"value":135},"status",{"type":53,"value":137}," 变化（如 active →\nrenewed \u002F closed）或补充 notes，不删除、不改写原始字段——历史留痕；",{"type":47,"tag":110,"props":139,"children":140},{},[141,146],{"type":47,"tag":68,"props":142,"children":143},{},[144],{"type":53,"value":145},"id 自增不复用",{"type":53,"value":147},"：新条目 id = 现有最大 id + 1，已注销条目的 id 也不\n回收。",{"type":47,"tag":56,"props":149,"children":151},{"id":150},"前置检查",[152],{"type":53,"value":150},{"type":47,"tag":154,"props":155,"children":156},"ul",{},[157,169,174],{"type":47,"tag":110,"props":158,"children":159},{},[160,162,167],{"type":53,"value":161},"调用方（nda-review \u002F sales-contract-review \u002F contract-review 通用规程）已完成审查，\n且确认合同中",{"type":47,"tag":68,"props":163,"children":164},{},[165],{"type":53,"value":166},"确实存在",{"type":53,"value":168},"自动续期、期限或提前通知解除条款；不登记没有\n日期抓手（到期日、通知期、期限）的合同。",{"type":47,"tag":110,"props":170,"children":171},{},[172],{"type":53,"value":173},"用户已被告知并同意登记（一句提示即可：「这份合同有自动续期条款，我把\n关键日期登记一下？」）；用户不同意的，在 memo FYI 区记录「未登记，用户\n决定」，不擅自登记。",{"type":47,"tag":110,"props":175,"children":176},{},[177],{"type":53,"value":178},"关键日期能从文本中明确读出；读不出具体日期的（如「续期前合理时间内\n通知」），登记时在 notes 写明「日期不确定，条款原文：……」，不得编造\n日期（G2：不静默补充）。",{"type":47,"tag":56,"props":180,"children":182},{"id":181},"操作规程",[183],{"type":53,"value":181},{"type":47,"tag":185,"props":186,"children":188},"h3",{"id":187},"第-1-步读取现有登记簿",[189],{"type":53,"value":190},"第 1 步：读取现有登记簿",{"type":47,"tag":154,"props":192,"children":193},{},[194,214],{"type":47,"tag":110,"props":195,"children":196},{},[197,199,204,206,212],{"type":53,"value":198},"打开 ",{"type":47,"tag":76,"props":200,"children":202},{"className":201},[],[203],{"type":53,"value":81},{"type":53,"value":205},"；文件不存在的，新建并写入文件头\n注释与 ",{"type":47,"tag":76,"props":207,"children":209},{"className":208},[],[210],{"type":53,"value":211},"entries: []",{"type":53,"value":213},"。",{"type":47,"tag":110,"props":215,"children":216},{},[217,219],{"type":53,"value":218},"检查同一合同（按 counterparty + contract 名称判断）是否已有 active 条目：\n",{"type":47,"tag":154,"props":220,"children":221},{},[222,227],{"type":47,"tag":110,"props":223,"children":224},{},[225],{"type":53,"value":226},"已有且本次是复审\u002F修订：不新增条目，更新原条目的 cancel_by 等日期字段，\n并在 notes 追加一行「YYYY-MM-DD 修订更新」；",{"type":47,"tag":110,"props":228,"children":229},{},[230,232,238],{"type":53,"value":231},"已有且原合同已终止\u002F重签：原条目 status 改为 ",{"type":47,"tag":76,"props":233,"children":235},{"className":234},[],[236],{"type":53,"value":237},"superseded",{"type":53,"value":239},"，另起新条目。",{"type":47,"tag":185,"props":241,"children":243},{"id":242},"第-2-步构造新条目",[244],{"type":53,"value":245},"第 2 步：构造新条目",{"type":47,"tag":62,"props":247,"children":248},{},[249],{"type":53,"value":250},"按 schema（见下）逐字段填：",{"type":47,"tag":154,"props":252,"children":253},{},[254,273,291,302,313,331,342,353],{"type":47,"tag":110,"props":255,"children":256},{},[257,263,265,271],{"type":47,"tag":76,"props":258,"children":260},{"className":259},[],[261],{"type":53,"value":262},"counterparty",{"type":53,"value":264},"、",{"type":47,"tag":76,"props":266,"children":268},{"className":267},[],[269],{"type":53,"value":270},"contract",{"type":53,"value":272},"：用合同原文名称，不简写、不意译；",{"type":47,"tag":110,"props":274,"children":275},{},[276,282,284,289],{"type":47,"tag":76,"props":277,"children":279},{"className":278},[],[280],{"type":53,"value":281},"cancel_by",{"type":53,"value":283},"：",{"type":47,"tag":68,"props":285,"children":286},{},[287],{"type":53,"value":288},"最迟行动日",{"type":53,"value":290},"。自动续期场景 = 到期日 − notice_period_days，\n再按合同约定的通知方式留缓冲；文本没给依据的缓冲不编造，直接写\n「到期日 − 通知期」并在 notes 说明计算方式；",{"type":47,"tag":110,"props":292,"children":293},{},[294,300],{"type":47,"tag":76,"props":295,"children":297},{"className":296},[],[298],{"type":53,"value":299},"notice_period_days",{"type":53,"value":301},"：合同约定的提前通知天数；约定不明的填 null 并在\nnotes 写明；",{"type":47,"tag":110,"props":303,"children":304},{},[305,311],{"type":47,"tag":76,"props":306,"children":308},{"className":307},[],[309],{"type":53,"value":310},"annual_value",{"type":53,"value":312},"：年度金额（元）；合同无明确金额的填 null，不估算；",{"type":47,"tag":110,"props":314,"children":315},{},[316,321,323,329],{"type":47,"tag":76,"props":317,"children":319},{"className":318},[],[320],{"type":53,"value":135},{"type":53,"value":322},"：新登记一律 ",{"type":47,"tag":76,"props":324,"children":326},{"className":325},[],[327],{"type":53,"value":328},"active",{"type":53,"value":330},"；",{"type":47,"tag":110,"props":332,"children":333},{},[334,340],{"type":47,"tag":76,"props":335,"children":337},{"className":336},[],[338],{"type":53,"value":339},"notes",{"type":53,"value":341},"：条款位置（第 X 条）、通知方式要求（书面\u002FEMS\u002F邮件）、日期不\n确定之处；",{"type":47,"tag":110,"props":343,"children":344},{},[345,351],{"type":47,"tag":76,"props":346,"children":348},{"className":347},[],[349],{"type":53,"value":350},"source",{"type":53,"value":352},"：指向本次审查 memo 或 matter 路径；",{"type":47,"tag":110,"props":354,"children":355},{},[356,362,364,370],{"type":47,"tag":76,"props":357,"children":359},{"className":358},[],[360],{"type":53,"value":361},"registered_at",{"type":53,"value":363},"：登记日期（YYYY-MM-DD，以 ",{"type":47,"tag":76,"props":365,"children":367},{"className":366},[],[368],{"type":53,"value":369},"date",{"type":53,"value":371}," 命令取真实日期，不凭\n记忆猜）。",{"type":47,"tag":185,"props":373,"children":375},{"id":374},"第-3-步写入并回执",[376],{"type":53,"value":377},"第 3 步：写入并回执",{"type":47,"tag":154,"props":379,"children":380},{},[381,394],{"type":47,"tag":110,"props":382,"children":383},{},[384,386,392],{"type":53,"value":385},"追加到 ",{"type":47,"tag":76,"props":387,"children":389},{"className":388},[],[390],{"type":53,"value":391},"entries:",{"type":53,"value":393}," 末尾，保持 YAML 格式与既有条目一致（两个空格缩进、\n日期加引号）；",{"type":47,"tag":110,"props":395,"children":396},{},[397,399],{"type":53,"value":398},"写完后向调用方回执一行：「已登记 #id：",{"type":47,"tag":262,"props":400,"children":401},{},[402],{"type":53,"value":403},"，cancel_by\n\u003C日期>」；调用方把这一行写进 memo 的「下一步」区。",{"type":47,"tag":185,"props":405,"children":407},{"id":406},"第-4-步状态维护被-watcher-提示后或后续审查调用时",[408],{"type":53,"value":409},"第 4 步：状态维护（被 watcher 提示后或后续审查调用时）",{"type":47,"tag":154,"props":411,"children":412},{},[413,426,439,451],{"type":47,"tag":110,"props":414,"children":415},{},[416,418,424],{"type":53,"value":417},"合同已发出不续约通知：status → ",{"type":47,"tag":76,"props":419,"children":421},{"className":420},[],[422],{"type":53,"value":423},"notice_sent",{"type":53,"value":425},"，notes 注明发送日期与方式；",{"type":47,"tag":110,"props":427,"children":428},{},[429,431,437],{"type":53,"value":430},"已续约：status → ",{"type":47,"tag":76,"props":432,"children":434},{"className":433},[],[435],{"type":53,"value":436},"renewed",{"type":53,"value":438},"，notes 注明新期限；",{"type":47,"tag":110,"props":440,"children":441},{},[442,444,450],{"type":53,"value":443},"已解除\u002F到期不再续：status → ",{"type":47,"tag":76,"props":445,"children":447},{"className":446},[],[448],{"type":53,"value":449},"closed",{"type":53,"value":330},{"type":47,"tag":110,"props":452,"children":453},{},[454],{"type":53,"value":455},"任何状态变化只追加、不改历史（纪律 2）。",{"type":47,"tag":185,"props":457,"children":459},{"id":458},"第-5-步写入后自检",[460],{"type":53,"value":461},"第 5 步：写入后自检",{"type":47,"tag":154,"props":463,"children":464},{},[465,470],{"type":47,"tag":110,"props":466,"children":467},{},[468],{"type":53,"value":469},"重新读取登记簿，确认：YAML 可解析；新条目 id 唯一且为最大值；日期字段\n格式为带引号的 YYYY-MM-DD；status 为枚举值之一。",{"type":47,"tag":110,"props":471,"children":472},{},[473],{"type":53,"value":474},"自检不通过的，立即修复并重新自检；不得把带格式错误的登记簿交给\nwatcher——格式错误会让监控静默失效，比不登记更危险。",{"type":47,"tag":56,"props":476,"children":478},{"id":477},"schema-与示例",[479],{"type":53,"value":480},"Schema 与示例",{"type":47,"tag":482,"props":483,"children":488},"pre",{"className":484,"code":485,"language":486,"meta":487,"style":487},"language-yaml shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","# contracts\u002Frenewal-register.yaml\n# 合同续期\u002F期限登记簿。由 renewal-tracker 维护，renewal-watcher 定期扫描。\n# 维护纪律：先读后写；不覆盖历史条目（仅追加状态变化）；id 自增不复用。\nentries:\n  - id: 1\n    counterparty: 某科技有限公司\n    contract: 软件服务框架协议\n    cancel_by: '2026-12-02'        # 最迟行动日：到期日 2027-01-31 减 60 天通知期\n    notice_period_days: 60\n    annual_value: 480000           # 年度金额（元），无明确金额填 null\n    status: active                 # active \u002F notice_sent \u002F renewed \u002F closed \u002F superseded\n    notes: 第 9.2 条自动续期条款；不续约须书面通知，EMS 留痕；cancel_by 按\"到期日-通知期\"计算\n    source: matters\u002Fruanjian-fuwu\u002Fdrafts\u002Freview-memo-v1.md\n    registered_at: '2026-08-18'\n  - id: 2\n    counterparty: 某供应链管理有限公司\n    contract: 仓储服务合同\n    cancel_by: '2026-11-15'\n    notice_period_days: 45\n    annual_value: null             # 按实际结算，无固定年费\n    status: active\n    notes: 第 7 条；通知方式约定不明，已在 memo 标记项 #3 建议修订\n    source: matters\u002Fcangchu-fuwu\u002Fdrafts\u002Freview-memo-v1.md\n    registered_at: '2026-08-18'\n","yaml","",[489],{"type":47,"tag":76,"props":490,"children":491},{"__ignoreMap":487},[492,504,512,521,537,561,580,598,631,649,672,695,713,731,757,778,795,812,837,854,876,893,915,932],{"type":47,"tag":493,"props":494,"children":497},"span",{"class":495,"line":496},"line",1,[498],{"type":47,"tag":493,"props":499,"children":501},{"style":500},"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic",[502],{"type":53,"value":503},"# contracts\u002Frenewal-register.yaml\n",{"type":47,"tag":493,"props":505,"children":506},{"class":495,"line":30},[507],{"type":47,"tag":493,"props":508,"children":509},{"style":500},[510],{"type":53,"value":511},"# 合同续期\u002F期限登记簿。由 renewal-tracker 维护，renewal-watcher 定期扫描。\n",{"type":47,"tag":493,"props":513,"children":515},{"class":495,"line":514},3,[516],{"type":47,"tag":493,"props":517,"children":518},{"style":500},[519],{"type":53,"value":520},"# 维护纪律：先读后写；不覆盖历史条目（仅追加状态变化）；id 自增不复用。\n",{"type":47,"tag":493,"props":522,"children":524},{"class":495,"line":523},4,[525,531],{"type":47,"tag":493,"props":526,"children":528},{"style":527},"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178",[529],{"type":53,"value":530},"entries",{"type":47,"tag":493,"props":532,"children":534},{"style":533},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[535],{"type":53,"value":536},":\n",{"type":47,"tag":493,"props":538,"children":539},{"class":495,"line":26},[540,545,550,555],{"type":47,"tag":493,"props":541,"children":542},{"style":533},[543],{"type":53,"value":544},"  -",{"type":47,"tag":493,"props":546,"children":547},{"style":527},[548],{"type":53,"value":549}," id",{"type":47,"tag":493,"props":551,"children":552},{"style":533},[553],{"type":53,"value":554},":",{"type":47,"tag":493,"props":556,"children":558},{"style":557},"--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C",[559],{"type":53,"value":560}," 1\n",{"type":47,"tag":493,"props":562,"children":564},{"class":495,"line":563},6,[565,570,574],{"type":47,"tag":493,"props":566,"children":567},{"style":527},[568],{"type":53,"value":569},"    counterparty",{"type":47,"tag":493,"props":571,"children":572},{"style":533},[573],{"type":53,"value":554},{"type":47,"tag":493,"props":575,"children":577},{"style":576},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[578],{"type":53,"value":579}," 某科技有限公司\n",{"type":47,"tag":493,"props":581,"children":583},{"class":495,"line":582},7,[584,589,593],{"type":47,"tag":493,"props":585,"children":586},{"style":527},[587],{"type":53,"value":588},"    contract",{"type":47,"tag":493,"props":590,"children":591},{"style":533},[592],{"type":53,"value":554},{"type":47,"tag":493,"props":594,"children":595},{"style":576},[596],{"type":53,"value":597}," 软件服务框架协议\n",{"type":47,"tag":493,"props":599,"children":601},{"class":495,"line":600},8,[602,607,611,616,621,626],{"type":47,"tag":493,"props":603,"children":604},{"style":527},[605],{"type":53,"value":606},"    cancel_by",{"type":47,"tag":493,"props":608,"children":609},{"style":533},[610],{"type":53,"value":554},{"type":47,"tag":493,"props":612,"children":613},{"style":533},[614],{"type":53,"value":615}," '",{"type":47,"tag":493,"props":617,"children":618},{"style":576},[619],{"type":53,"value":620},"2026-12-02",{"type":47,"tag":493,"props":622,"children":623},{"style":533},[624],{"type":53,"value":625},"'",{"type":47,"tag":493,"props":627,"children":628},{"style":500},[629],{"type":53,"value":630},"        # 最迟行动日：到期日 2027-01-31 减 60 天通知期\n",{"type":47,"tag":493,"props":632,"children":634},{"class":495,"line":633},9,[635,640,644],{"type":47,"tag":493,"props":636,"children":637},{"style":527},[638],{"type":53,"value":639},"    notice_period_days",{"type":47,"tag":493,"props":641,"children":642},{"style":533},[643],{"type":53,"value":554},{"type":47,"tag":493,"props":645,"children":646},{"style":557},[647],{"type":53,"value":648}," 60\n",{"type":47,"tag":493,"props":650,"children":652},{"class":495,"line":651},10,[653,658,662,667],{"type":47,"tag":493,"props":654,"children":655},{"style":527},[656],{"type":53,"value":657},"    annual_value",{"type":47,"tag":493,"props":659,"children":660},{"style":533},[661],{"type":53,"value":554},{"type":47,"tag":493,"props":663,"children":664},{"style":557},[665],{"type":53,"value":666}," 480000",{"type":47,"tag":493,"props":668,"children":669},{"style":500},[670],{"type":53,"value":671},"           # 年度金额（元），无明确金额填 null\n",{"type":47,"tag":493,"props":673,"children":675},{"class":495,"line":674},11,[676,681,685,690],{"type":47,"tag":493,"props":677,"children":678},{"style":527},[679],{"type":53,"value":680},"    status",{"type":47,"tag":493,"props":682,"children":683},{"style":533},[684],{"type":53,"value":554},{"type":47,"tag":493,"props":686,"children":687},{"style":576},[688],{"type":53,"value":689}," active",{"type":47,"tag":493,"props":691,"children":692},{"style":500},[693],{"type":53,"value":694},"                 # active \u002F notice_sent \u002F renewed \u002F closed \u002F superseded\n",{"type":47,"tag":493,"props":696,"children":698},{"class":495,"line":697},12,[699,704,708],{"type":47,"tag":493,"props":700,"children":701},{"style":527},[702],{"type":53,"value":703},"    notes",{"type":47,"tag":493,"props":705,"children":706},{"style":533},[707],{"type":53,"value":554},{"type":47,"tag":493,"props":709,"children":710},{"style":576},[711],{"type":53,"value":712}," 第 9.2 条自动续期条款；不续约须书面通知，EMS 留痕；cancel_by 按\"到期日-通知期\"计算\n",{"type":47,"tag":493,"props":714,"children":716},{"class":495,"line":715},13,[717,722,726],{"type":47,"tag":493,"props":718,"children":719},{"style":527},[720],{"type":53,"value":721},"    source",{"type":47,"tag":493,"props":723,"children":724},{"style":533},[725],{"type":53,"value":554},{"type":47,"tag":493,"props":727,"children":728},{"style":576},[729],{"type":53,"value":730}," matters\u002Fruanjian-fuwu\u002Fdrafts\u002Freview-memo-v1.md\n",{"type":47,"tag":493,"props":732,"children":734},{"class":495,"line":733},14,[735,740,744,748,752],{"type":47,"tag":493,"props":736,"children":737},{"style":527},[738],{"type":53,"value":739},"    registered_at",{"type":47,"tag":493,"props":741,"children":742},{"style":533},[743],{"type":53,"value":554},{"type":47,"tag":493,"props":745,"children":746},{"style":533},[747],{"type":53,"value":615},{"type":47,"tag":493,"props":749,"children":750},{"style":576},[751],{"type":53,"value":42},{"type":47,"tag":493,"props":753,"children":754},{"style":533},[755],{"type":53,"value":756},"'\n",{"type":47,"tag":493,"props":758,"children":760},{"class":495,"line":759},15,[761,765,769,773],{"type":47,"tag":493,"props":762,"children":763},{"style":533},[764],{"type":53,"value":544},{"type":47,"tag":493,"props":766,"children":767},{"style":527},[768],{"type":53,"value":549},{"type":47,"tag":493,"props":770,"children":771},{"style":533},[772],{"type":53,"value":554},{"type":47,"tag":493,"props":774,"children":775},{"style":557},[776],{"type":53,"value":777}," 2\n",{"type":47,"tag":493,"props":779,"children":781},{"class":495,"line":780},16,[782,786,790],{"type":47,"tag":493,"props":783,"children":784},{"style":527},[785],{"type":53,"value":569},{"type":47,"tag":493,"props":787,"children":788},{"style":533},[789],{"type":53,"value":554},{"type":47,"tag":493,"props":791,"children":792},{"style":576},[793],{"type":53,"value":794}," 某供应链管理有限公司\n",{"type":47,"tag":493,"props":796,"children":798},{"class":495,"line":797},17,[799,803,807],{"type":47,"tag":493,"props":800,"children":801},{"style":527},[802],{"type":53,"value":588},{"type":47,"tag":493,"props":804,"children":805},{"style":533},[806],{"type":53,"value":554},{"type":47,"tag":493,"props":808,"children":809},{"style":576},[810],{"type":53,"value":811}," 仓储服务合同\n",{"type":47,"tag":493,"props":813,"children":815},{"class":495,"line":814},18,[816,820,824,828,833],{"type":47,"tag":493,"props":817,"children":818},{"style":527},[819],{"type":53,"value":606},{"type":47,"tag":493,"props":821,"children":822},{"style":533},[823],{"type":53,"value":554},{"type":47,"tag":493,"props":825,"children":826},{"style":533},[827],{"type":53,"value":615},{"type":47,"tag":493,"props":829,"children":830},{"style":576},[831],{"type":53,"value":832},"2026-11-15",{"type":47,"tag":493,"props":834,"children":835},{"style":533},[836],{"type":53,"value":756},{"type":47,"tag":493,"props":838,"children":840},{"class":495,"line":839},19,[841,845,849],{"type":47,"tag":493,"props":842,"children":843},{"style":527},[844],{"type":53,"value":639},{"type":47,"tag":493,"props":846,"children":847},{"style":533},[848],{"type":53,"value":554},{"type":47,"tag":493,"props":850,"children":851},{"style":557},[852],{"type":53,"value":853}," 45\n",{"type":47,"tag":493,"props":855,"children":857},{"class":495,"line":856},20,[858,862,866,871],{"type":47,"tag":493,"props":859,"children":860},{"style":527},[861],{"type":53,"value":657},{"type":47,"tag":493,"props":863,"children":864},{"style":533},[865],{"type":53,"value":554},{"type":47,"tag":493,"props":867,"children":868},{"style":533},[869],{"type":53,"value":870}," null",{"type":47,"tag":493,"props":872,"children":873},{"style":500},[874],{"type":53,"value":875},"             # 按实际结算，无固定年费\n",{"type":47,"tag":493,"props":877,"children":879},{"class":495,"line":878},21,[880,884,888],{"type":47,"tag":493,"props":881,"children":882},{"style":527},[883],{"type":53,"value":680},{"type":47,"tag":493,"props":885,"children":886},{"style":533},[887],{"type":53,"value":554},{"type":47,"tag":493,"props":889,"children":890},{"style":576},[891],{"type":53,"value":892}," active\n",{"type":47,"tag":493,"props":894,"children":896},{"class":495,"line":895},22,[897,901,905,910],{"type":47,"tag":493,"props":898,"children":899},{"style":527},[900],{"type":53,"value":703},{"type":47,"tag":493,"props":902,"children":903},{"style":533},[904],{"type":53,"value":554},{"type":47,"tag":493,"props":906,"children":907},{"style":576},[908],{"type":53,"value":909}," 第 7 条；通知方式约定不明，已在 memo 标记项",{"type":47,"tag":493,"props":911,"children":912},{"style":500},[913],{"type":53,"value":914}," #3 建议修订\n",{"type":47,"tag":493,"props":916,"children":918},{"class":495,"line":917},23,[919,923,927],{"type":47,"tag":493,"props":920,"children":921},{"style":527},[922],{"type":53,"value":721},{"type":47,"tag":493,"props":924,"children":925},{"style":533},[926],{"type":53,"value":554},{"type":47,"tag":493,"props":928,"children":929},{"style":576},[930],{"type":53,"value":931}," matters\u002Fcangchu-fuwu\u002Fdrafts\u002Freview-memo-v1.md\n",{"type":47,"tag":493,"props":933,"children":935},{"class":495,"line":934},24,[936,940,944,948,952],{"type":47,"tag":493,"props":937,"children":938},{"style":527},[939],{"type":53,"value":739},{"type":47,"tag":493,"props":941,"children":942},{"style":533},[943],{"type":53,"value":554},{"type":47,"tag":493,"props":945,"children":946},{"style":533},[947],{"type":53,"value":615},{"type":47,"tag":493,"props":949,"children":950},{"style":576},[951],{"type":53,"value":42},{"type":47,"tag":493,"props":953,"children":954},{"style":533},[955],{"type":53,"value":756},{"type":47,"tag":62,"props":957,"children":958},{},[959],{"type":53,"value":960},"字段说明：",{"type":47,"tag":962,"props":963,"children":964},"table",{},[965,989],{"type":47,"tag":966,"props":967,"children":968},"thead",{},[969],{"type":47,"tag":970,"props":971,"children":972},"tr",{},[973,979,984],{"type":47,"tag":974,"props":975,"children":976},"th",{},[977],{"type":53,"value":978},"字段",{"type":47,"tag":974,"props":980,"children":981},{},[982],{"type":53,"value":983},"类型",{"type":47,"tag":974,"props":985,"children":986},{},[987],{"type":53,"value":988},"说明",{"type":47,"tag":990,"props":991,"children":992},"tbody",{},[993,1012,1029,1045,1062,1079,1096,1113,1129,1145],{"type":47,"tag":970,"props":994,"children":995},{},[996,1002,1007],{"type":47,"tag":997,"props":998,"children":999},"td",{},[1000],{"type":53,"value":1001},"id",{"type":47,"tag":997,"props":1003,"children":1004},{},[1005],{"type":53,"value":1006},"整数",{"type":47,"tag":997,"props":1008,"children":1009},{},[1010],{"type":53,"value":1011},"自增，不复用",{"type":47,"tag":970,"props":1013,"children":1014},{},[1015,1019,1024],{"type":47,"tag":997,"props":1016,"children":1017},{},[1018],{"type":53,"value":262},{"type":47,"tag":997,"props":1020,"children":1021},{},[1022],{"type":53,"value":1023},"字符串",{"type":47,"tag":997,"props":1025,"children":1026},{},[1027],{"type":53,"value":1028},"相对方全称（合同原文）",{"type":47,"tag":970,"props":1030,"children":1031},{},[1032,1036,1040],{"type":47,"tag":997,"props":1033,"children":1034},{},[1035],{"type":53,"value":270},{"type":47,"tag":997,"props":1037,"children":1038},{},[1039],{"type":53,"value":1023},{"type":47,"tag":997,"props":1041,"children":1042},{},[1043],{"type":53,"value":1044},"合同名称（合同原文）",{"type":47,"tag":970,"props":1046,"children":1047},{},[1048,1052,1057],{"type":47,"tag":997,"props":1049,"children":1050},{},[1051],{"type":53,"value":281},{"type":47,"tag":997,"props":1053,"children":1054},{},[1055],{"type":53,"value":1056},"日期",{"type":47,"tag":997,"props":1058,"children":1059},{},[1060],{"type":53,"value":1061},"最迟行动日（YYYY-MM-DD，加引号）",{"type":47,"tag":970,"props":1063,"children":1064},{},[1065,1069,1074],{"type":47,"tag":997,"props":1066,"children":1067},{},[1068],{"type":53,"value":299},{"type":47,"tag":997,"props":1070,"children":1071},{},[1072],{"type":53,"value":1073},"整数或 null",{"type":47,"tag":997,"props":1075,"children":1076},{},[1077],{"type":53,"value":1078},"约定提前通知天数",{"type":47,"tag":970,"props":1080,"children":1081},{},[1082,1086,1091],{"type":47,"tag":997,"props":1083,"children":1084},{},[1085],{"type":53,"value":310},{"type":47,"tag":997,"props":1087,"children":1088},{},[1089],{"type":53,"value":1090},"数字或 null",{"type":47,"tag":997,"props":1092,"children":1093},{},[1094],{"type":53,"value":1095},"年度金额（元），不确定填 null",{"type":47,"tag":970,"props":1097,"children":1098},{},[1099,1103,1108],{"type":47,"tag":997,"props":1100,"children":1101},{},[1102],{"type":53,"value":135},{"type":47,"tag":997,"props":1104,"children":1105},{},[1106],{"type":53,"value":1107},"枚举",{"type":47,"tag":997,"props":1109,"children":1110},{},[1111],{"type":53,"value":1112},"active \u002F notice_sent \u002F renewed \u002F closed \u002F superseded",{"type":47,"tag":970,"props":1114,"children":1115},{},[1116,1120,1124],{"type":47,"tag":997,"props":1117,"children":1118},{},[1119],{"type":53,"value":339},{"type":47,"tag":997,"props":1121,"children":1122},{},[1123],{"type":53,"value":1023},{"type":47,"tag":997,"props":1125,"children":1126},{},[1127],{"type":53,"value":1128},"条款位置、通知方式、不确定事项",{"type":47,"tag":970,"props":1130,"children":1131},{},[1132,1136,1140],{"type":47,"tag":997,"props":1133,"children":1134},{},[1135],{"type":53,"value":350},{"type":47,"tag":997,"props":1137,"children":1138},{},[1139],{"type":53,"value":1023},{"type":47,"tag":997,"props":1141,"children":1142},{},[1143],{"type":53,"value":1144},"来源 memo 或 matter 路径",{"type":47,"tag":970,"props":1146,"children":1147},{},[1148,1152,1156],{"type":47,"tag":997,"props":1149,"children":1150},{},[1151],{"type":53,"value":361},{"type":47,"tag":997,"props":1153,"children":1154},{},[1155],{"type":53,"value":1056},{"type":47,"tag":997,"props":1157,"children":1158},{},[1159],{"type":53,"value":1160},"登记日期",{"type":47,"tag":56,"props":1162,"children":1164},{"id":1163},"边界情形处理",[1165],{"type":53,"value":1163},{"type":47,"tag":106,"props":1167,"children":1168},{},[1169,1179,1189,1199,1209,1225],{"type":47,"tag":110,"props":1170,"children":1171},{},[1172,1177],{"type":47,"tag":68,"props":1173,"children":1174},{},[1175],{"type":53,"value":1176},"同一合同多个时间抓手",{"type":53,"value":1178},"：既有质保期、又有合作期限、还有自动续期的，\n按「最早需要行动的日期」只登记一条，notes 列明其余日期，避免 watcher\n对同一合同重复报警；后续日期成为「最近行动日」时，经状态维护更新\ncancel_by 并在 notes 追加说明。",{"type":47,"tag":110,"props":1180,"children":1181},{},[1182,1187],{"type":47,"tag":68,"props":1183,"children":1184},{},[1185],{"type":53,"value":1186},"多年期合同无自动续期",{"type":53,"value":1188},"：只有固定到期日、无提前通知要求的，仍可登记\n（cancel_by = 到期日，notice_period_days 填 0 并在 notes 写明「到期即\n终止，无通知期」），以便 watcher 提醒到期重签。",{"type":47,"tag":110,"props":1190,"children":1191},{},[1192,1197],{"type":47,"tag":68,"props":1193,"children":1194},{},[1195],{"type":53,"value":1196},"解除窗口类条款",{"type":53,"value":1198},"（如「每年 X 月前可书面提出终止」）：cancel_by 取\n最近一个窗口关闭日，notes 写明窗口的周期性；本条状态维护频率高于普通\n条目。",{"type":47,"tag":110,"props":1200,"children":1201},{},[1202,1207],{"type":47,"tag":68,"props":1203,"children":1204},{},[1205],{"type":53,"value":1206},"日期依赖第三方行为的",{"type":53,"value":1208},"（如「以甲方验收合格日为起算」）：cancel_by\n填 null——watcher 会列入「数据异常」节提醒人工跟进；notes 写明触发\n条件与条款原文。这比编造一个日期安全（G2）。",{"type":47,"tag":110,"props":1210,"children":1211},{},[1212,1217,1219],{"type":47,"tag":68,"props":1213,"children":1214},{},[1215],{"type":53,"value":1216},"框架合同 + 订单",{"type":53,"value":1218},"：框架合同登记一条；单个订单的交付\u002F账期日期不进本\n登记簿（那是履约管理，量大且短周期），需要跟踪的订单级日期建议记入\nmatters\u002F",{"type":47,"tag":1220,"props":1221,"children":1222},"slug",{},[1223],{"type":53,"value":1224},"\u002Fintake.md 的时效提醒节。",{"type":47,"tag":110,"props":1226,"children":1227},{},[1228,1233],{"type":47,"tag":68,"props":1229,"children":1230},{},[1231],{"type":53,"value":1232},"相对方更名\u002F主体变更",{"type":53,"value":1234},"：不新建条目；在 notes 追加「YYYY-MM-DD 相对方\n更名为 XX」，保持历史可追溯（纪律 2）。",{"type":47,"tag":56,"props":1236,"children":1238},{"id":1237},"状态流转",[1239],{"type":53,"value":1237},{"type":47,"tag":482,"props":1241,"children":1245},{"className":1242,"code":1244,"language":53,"meta":487},[1243],"language-text","active ──(发出不续约通知)──→ notice_sent ──(到期终止确认)──→ closed\n   │                           │\n   │                           └──(对方回应后续约)──→ renewed\n   ├──(协商续约)──────────────→ renewed\n   ├──(到期自然终止)──────────→ closed\n   └──(合同被新合同替代)──────→ superseded\n",[1246],{"type":47,"tag":76,"props":1247,"children":1248},{"__ignoreMap":487},[1249],{"type":53,"value":1244},{"type":47,"tag":154,"props":1251,"children":1252},{},[1253,1278],{"type":47,"tag":110,"props":1254,"children":1255},{},[1256,1258,1263,1265,1270,1272,1277],{"type":53,"value":1257},"只有 ",{"type":47,"tag":76,"props":1259,"children":1261},{"className":1260},[],[1262],{"type":53,"value":328},{"type":53,"value":1264}," 进入 watcher 的倒计时分级；",{"type":47,"tag":76,"props":1266,"children":1268},{"className":1267},[],[1269],{"type":53,"value":423},{"type":53,"value":1271}," 列入 watcher 的\n「已闭环」简表，提示用户在到期后确认终止生效并改为 ",{"type":47,"tag":76,"props":1273,"children":1275},{"className":1274},[],[1276],{"type":53,"value":449},{"type":53,"value":213},{"type":47,"tag":110,"props":1279,"children":1280},{},[1281,1286,1288,1293,1294,1299],{"type":47,"tag":76,"props":1282,"children":1284},{"className":1283},[],[1285],{"type":53,"value":436},{"type":53,"value":1287}," \u002F ",{"type":47,"tag":76,"props":1289,"children":1291},{"className":1290},[],[1292],{"type":53,"value":449},{"type":53,"value":1287},{"type":47,"tag":76,"props":1295,"children":1297},{"className":1296},[],[1298],{"type":53,"value":237},{"type":53,"value":1300}," 不再报警，仅留痕。",{"type":47,"tag":56,"props":1302,"children":1304},{"id":1303},"输出模板",[1305],{"type":53,"value":1303},{"type":47,"tag":62,"props":1307,"children":1308},{},[1309],{"type":53,"value":1310},"本技能不产出面向用户的文件；向调用方的回执格式：",{"type":47,"tag":482,"props":1312,"children":1315},{"className":1313,"code":1314,"language":53,"meta":487},[1243],"[renewal-tracker] 已登记 #\u003Cid>：\u003Ccounterparty>《\u003Ccontract>》，\ncancel_by \u003CYYYY-MM-DD>（通知期 \u003CN> 天）。\n",[1316],{"type":47,"tag":76,"props":1317,"children":1318},{"__ignoreMap":487},[1319],{"type":53,"value":1314},{"type":47,"tag":56,"props":1321,"children":1323},{"id":1322},"本技能不做什么",[1324],{"type":53,"value":1322},{"type":47,"tag":154,"props":1326,"children":1327},{},[1328,1333,1338,1343,1348,1353],{"type":47,"tag":110,"props":1329,"children":1330},{},[1331],{"type":53,"value":1332},"不做续期决策（续不续是业务与法务的决定，本技能只记日期）。",{"type":47,"tag":110,"props":1334,"children":1335},{},[1336],{"type":53,"value":1337},"不估算缺失的金额或日期（填 null + notes 说明，不编造）。",{"type":47,"tag":110,"props":1339,"children":1340},{},[1341],{"type":53,"value":1342},"不删除或改写历史条目（状态变化只追加）。",{"type":47,"tag":110,"props":1344,"children":1345},{},[1346],{"type":53,"value":1347},"不直接提醒用户到期（那是 renewal-watcher 的职责；本技能只维护数据）。",{"type":47,"tag":110,"props":1349,"children":1350},{},[1351],{"type":53,"value":1352},"不登记没有时间敏感条款的合同。",{"type":47,"tag":110,"props":1354,"children":1355},{},[1356],{"type":53,"value":1357},"不修改 watcher 已出具的报告（报告是 watcher 的产物；发现报告与登记簿\n不一致时，修正登记簿或提示重跑 watcher，不改报告文件）。",{"type":47,"tag":56,"props":1359,"children":1361},{"id":1360},"收尾与下一步",[1362],{"type":53,"value":1360},{"type":47,"tag":106,"props":1364,"children":1365},{},[1366,1371,1383,1396],{"type":47,"tag":110,"props":1367,"children":1368},{},[1369],{"type":53,"value":1370},"登记回执交给调用方写入 memo 的「下一步」区。",{"type":47,"tag":110,"props":1372,"children":1373},{},[1374,1376,1381],{"type":53,"value":1375},"提示用户：",{"type":47,"tag":76,"props":1377,"children":1379},{"className":1378},[],[1380],{"type":53,"value":89},{"type":53,"value":1382}," 会按登记簿定期扫描并出分级提醒报告\n（reports\u002Frenewal\u002F 目录）。",{"type":47,"tag":110,"props":1384,"children":1385},{},[1386,1388,1394],{"type":53,"value":1387},"合同后续修订、解除、续约时，由新的审查流程再次调用本技能做状态维护；\n事项层面的日期同时建议在 ",{"type":47,"tag":76,"props":1389,"children":1391},{"className":1390},[],[1392],{"type":53,"value":1393},"matters\u002F\u003Cslug>\u002Fintake.md",{"type":53,"value":1395}," 的时效提醒节登记。",{"type":47,"tag":110,"props":1397,"children":1398},{},[1399],{"type":53,"value":1400},"登记簿文件建议纳入工作区的版本管理（如 git）：变更历史即审计线索。",{"type":47,"tag":1402,"props":1403,"children":1404},"style",{},[1405],{"type":53,"value":1406},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"items":1408,"total":1609},[1409,1433,1449,1468,1483,1503,1521,1539,1554,1570,1589,1599],{"slug":1410,"name":1410,"fn":1411,"description":1412,"org":1413,"tags":1414,"stars":1430,"repoUrl":1431,"updatedAt":1432},"android-native-dev","develop Android native applications","Android native application development and UI design guide. Covers Material Design 3, Kotlin\u002FCompose development, project configuration, accessibility, and build troubleshooting. Read this before Android native application development.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1415,1418,1421,1424,1427],{"name":1416,"slug":1417,"type":16},"Accessibility","accessibility",{"name":1419,"slug":1420,"type":16},"Android","android",{"name":1422,"slug":1423,"type":16},"Kotlin","kotlin",{"name":1425,"slug":1426,"type":16},"Mobile","mobile",{"name":1428,"slug":1429,"type":16},"UI Components","ui-components",13030,"https:\u002F\u002Fgithub.com\u002FMiniMax-AI\u002Fskills","2026-07-13T06:16:54.247834",{"slug":1434,"name":1434,"fn":1435,"description":1436,"org":1437,"tags":1438,"stars":1430,"repoUrl":1431,"updatedAt":1448},"buddy-sings","generate singing performances for AI companions","Use when user wants their Claude Code pet (\u002Fbuddy) to sing a song. Triggers on any request that combines the concept of their Claude Code buddy, pet, or companion with singing or music. Supports multilingual triggers — match equivalent phrases in any language.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1439,1442,1445],{"name":1440,"slug":1441,"type":16},"Agents","agents",{"name":1443,"slug":1444,"type":16},"Audio","audio",{"name":1446,"slug":1447,"type":16},"Creative","creative","2026-07-13T06:16:35.130644",{"slug":1450,"name":1450,"fn":1451,"description":1452,"org":1453,"tags":1454,"stars":1430,"repoUrl":1431,"updatedAt":1467},"color-font-skill","select color palettes and font pairings","Choose presentation-ready color palettes and font pairings for PPT\u002Fdesign tasks. Use when users ask for visual theme choices, brand-safe palettes, or font recommendations. Triggers include: 配色, 色板, 字体, color palette, font, PPT配色, 字体搭配.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1455,1458,1461,1464],{"name":1456,"slug":1457,"type":16},"Design","design",{"name":1459,"slug":1460,"type":16},"Presentations","presentations",{"name":1462,"slug":1463,"type":16},"Themes","themes",{"name":1465,"slug":1466,"type":16},"Typography","typography","2026-07-13T06:17:02.785587",{"slug":1469,"name":1469,"fn":1470,"description":1471,"org":1472,"tags":1473,"stars":1430,"repoUrl":1431,"updatedAt":1482},"design-style-skill","select visual design systems for presentations","Select a consistent visual design system for PPT slides using radius\u002Fspacing style recipes. Use when users ask for overall style direction or component styling consistency. Includes Sharp\u002FSoft\u002FRounded\u002FPill recipes, component mappings, typography\u002Fspacing rules, and mixing guidance. Triggers: 风格, style, radius, spacing, 圆角, 间距, PPT风格, 视觉风格, design style, component style.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1474,1475,1478,1481],{"name":1456,"slug":1457,"type":16},{"name":1476,"slug":1477,"type":16},"Design System","design-system",{"name":1479,"slug":1480,"type":16},"PowerPoint","powerpoint",{"name":1459,"slug":1460,"type":16},"2026-07-13T06:17:10.398389",{"slug":1484,"name":1484,"fn":1485,"description":1486,"org":1487,"tags":1488,"stars":1430,"repoUrl":1431,"updatedAt":1502},"flutter-dev","build cross-platform apps with Flutter","Flutter cross-platform development guide covering widget patterns, Riverpod\u002FBloc state management, GoRouter navigation, performance optimization, and platform-specific implementations. Includes const optimization, responsive layouts, testing strategies, and DevTools profiling.\nUse when: building Flutter apps, implementing state management (Riverpod\u002FBloc), setting up GoRouter navigation, creating custom widgets, optimizing performance, writing widget tests, cross-platform development.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1489,1492,1495,1496,1499],{"name":1490,"slug":1491,"type":16},"Dart","dart",{"name":1493,"slug":1494,"type":16},"Flutter","flutter",{"name":1425,"slug":1426,"type":16},{"name":1497,"slug":1498,"type":16},"Performance","performance",{"name":1500,"slug":1501,"type":16},"State Management","state-management","2026-07-13T06:16:36.626679",{"slug":1504,"name":1504,"fn":1505,"description":1506,"org":1507,"tags":1508,"stars":1430,"repoUrl":1431,"updatedAt":1520},"frontend-dev","build visually striking frontend web pages","Full-stack frontend development combining premium UI design, cinematic animations,\nAI-generated media assets, persuasive copywriting, and visual art. Builds complete,\nvisually striking web pages with real media, advanced motion, and compelling copy.\nUse when: building landing pages, marketing sites, product pages, dashboards,\ngenerating media assets (image\u002Fvideo\u002Faudio\u002Fmusic), writing conversion copy,\ncreating generative art, or implementing cinematic scroll animations.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1509,1512,1513,1514,1517],{"name":1510,"slug":1511,"type":16},"Animation","animation",{"name":1446,"slug":1447,"type":16},{"name":1456,"slug":1457,"type":16},{"name":1515,"slug":1516,"type":16},"Frontend","frontend",{"name":1518,"slug":1519,"type":16},"Web Development","web-development","2026-07-13T06:16:39.108827",{"slug":1522,"name":1522,"fn":1523,"description":1524,"org":1525,"tags":1526,"stars":1430,"repoUrl":1431,"updatedAt":1538},"fullstack-dev","build full-stack web applications","Full-stack backend architecture and frontend-backend integration guide.\nTRIGGER when: building a full-stack app, creating REST API with frontend, scaffolding backend service,\nbuilding todo app, building CRUD app, building real-time app, building chat app,\nExpress + React, Next.js API, Node.js backend, Python backend, Go backend,\ndesigning service layers, implementing error handling, managing config\u002Fauth,\nsetting up API clients, implementing auth flows, handling file uploads,\nadding real-time features (SSE\u002FWebSocket), hardening for production.\nDO NOT TRIGGER when: pure frontend UI work, pure CSS\u002Fstyling, database schema only.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1527,1530,1531,1534,1537],{"name":1528,"slug":1529,"type":16},"Backend","backend",{"name":1515,"slug":1516,"type":16},{"name":1532,"slug":1533,"type":16},"Full-stack","full-stack",{"name":1535,"slug":1536,"type":16},"REST API","rest-api",{"name":1518,"slug":1519,"type":16},"2026-07-13T06:16:43.219005",{"slug":1540,"name":1540,"fn":1541,"description":1542,"org":1543,"tags":1544,"stars":1430,"repoUrl":1431,"updatedAt":1553},"gif-sticker-maker","create animated GIF stickers from photos","Convert photos (people, pets, objects, logos) into 4 animated GIF stickers with captions.\nUse when: user wants to create cartoon stickers, GIF expressions, emoji packs, animated avatars,\nor convert photos to Funko Pop \u002F Pop Mart blind box style animations.\nTriggers: sticker, GIF, cartoon, emoji, expression pack, avatar animation.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1545,1546,1547,1550],{"name":1510,"slug":1511,"type":16},{"name":1446,"slug":1447,"type":16},{"name":1548,"slug":1549,"type":16},"Images","images",{"name":1551,"slug":1552,"type":16},"Media","media","2026-07-13T06:16:51.74461",{"slug":1555,"name":1555,"fn":1556,"description":1557,"org":1558,"tags":1559,"stars":1430,"repoUrl":1431,"updatedAt":1569},"ios-application-dev","develop iOS applications with SwiftUI and UIKit","iOS application development guide covering UIKit, SnapKit, and SwiftUI. Includes touch targets, safe areas, navigation patterns, Dynamic Type, Dark Mode, accessibility, collection views, common UI components, and SwiftUI design guidelines. For detailed references on specific topics, see the reference files.\nUse when: developing iOS apps, implementing UI, reviewing iOS code, working with UIKit\u002FSnapKit\u002FSwiftUI layouts, building iPhone interfaces, Swift mobile development, Apple HIG compliance, iOS accessibility implementation.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1560,1561,1564,1565,1568],{"name":1416,"slug":1417,"type":16},{"name":1562,"slug":1563,"type":16},"iOS","ios",{"name":1425,"slug":1426,"type":16},{"name":1566,"slug":1567,"type":16},"SwiftUI","swiftui",{"name":1428,"slug":1429,"type":16},"2026-07-13T06:16:55.686092",{"slug":1571,"name":1571,"fn":1572,"description":1573,"org":1574,"tags":1575,"stars":1430,"repoUrl":1431,"updatedAt":1588},"minimax-docx","create and edit DOCX documents","Professional DOCX document creation, editing, and formatting using OpenXML SDK (.NET). Three pipelines: (A) create new documents from scratch, (B) fill\u002Fedit content in existing documents, (C) apply template formatting with XSD validation gate-check. MUST use this skill whenever the user wants to produce, modify, or format a Word document — including when they say \"write a report\", \"draft a proposal\", \"make a contract\", \"fill in this form\", \"reformat to match this template\", or any task whose final output is a .docx file. Even if the user doesn't mention \"docx\" explicitly, if the task implies a printable\u002Fformal document, use this skill.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1576,1579,1582,1585],{"name":1577,"slug":1578,"type":16},"Documents","documents",{"name":1580,"slug":1581,"type":16},"DOCX","docx",{"name":1583,"slug":1584,"type":16},"Office","office",{"name":1586,"slug":1587,"type":16},"Templates","templates","2026-07-13T06:16:40.461868",{"slug":1590,"name":1590,"fn":1591,"description":1592,"org":1593,"tags":1594,"stars":1430,"repoUrl":1431,"updatedAt":1598},"minimax-music-gen","generate music and audio tracks","Use when user wants to generate music, songs, or audio tracks. Triggers on any request involving music creation, song writing, lyrics generation, audio production, or covers. Also triggers when user provides lyrics and wants them turned into a song, or describes a mood\u002Fscene and wants background music. Supports multilingual triggers — match equivalent phrases in any language. Do NOT use for music playback of existing files, music theory questions, or music recommendation without generation.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1595,1596,1597],{"name":1443,"slug":1444,"type":16},{"name":1446,"slug":1447,"type":16},{"name":1551,"slug":1552,"type":16},"2026-07-13T06:16:50.381758",{"slug":1600,"name":1600,"fn":1601,"description":1602,"org":1603,"tags":1604,"stars":1430,"repoUrl":1431,"updatedAt":1608},"minimax-music-playlist","generate personalized music playlists","Generate personalized music playlists by analyzing the user's music taste and generation feedback history. Triggers on any request involving playlist generation, music taste profiling, or personalized music recommendations. Supports multilingual triggers — match equivalent phrases in any language.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1605,1606,1607],{"name":1443,"slug":1444,"type":16},{"name":1446,"slug":1447,"type":16},{"name":1551,"slug":1552,"type":16},"2026-07-13T06:16:57.002997",141,{"items":1611,"total":1707},[1612,1628,1645,1658,1668,1681,1690],{"slug":1613,"name":1613,"fn":1614,"description":1615,"org":1616,"tags":1617,"stars":26,"repoUrl":27,"updatedAt":1627},"article2tasks","convert articles into Dida365 tasks","将技术周报（批量）或单篇文章整理为滴答清单待办事项，自动分类到已有清单并打标签，全程通过 MCP 写入，跨平台无需任何本地脚本。当用户提供周报内容、文章链接，或提及「周报」「文章汇总」「添加到滴答」时，使用此技能。",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1618,1621,1624],{"name":1619,"slug":1620,"type":16},"Content Creation","content-creation",{"name":1622,"slug":1623,"type":16},"MCP","mcp",{"name":1625,"slug":1626,"type":16},"Task Management","task-management","2026-08-18T03:49:38.751656",{"slug":1629,"name":1629,"fn":1630,"description":1631,"org":1632,"tags":1633,"stars":26,"repoUrl":27,"updatedAt":1644},"binder-agent-eval","evaluate LLM agent decision quality","当需要在相同的阶段输入上评测 LLM agent 的结构化决策、或对比多个 provider 的决策质量时使用；对应 openbinder evaluate-agent（--provider\u002F--compare\u002F--case）与 openbinder provider doctor。典型触发语：\"用 mock provider 跑一遍 decision case 评测\"\"对比一下几个 provider 在同一批 case 上的表现\"\"先 doctor 一下 minimax 配置通不通\"。同义场景：agent 评测、decision evaluation、visible\u002Fhidden 分层、泄露检查、provider 对比、冻结决策。",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1634,1635,1638,1641],{"name":1440,"slug":1441,"type":16},{"name":1636,"slug":1637,"type":16},"Benchmarking","benchmarking",{"name":1639,"slug":1640,"type":16},"Evals","evals",{"name":1642,"slug":1643,"type":16},"LLM","llm","2026-08-27T13:32:30.156635",{"slug":1646,"name":1646,"fn":1647,"description":1648,"org":1649,"tags":1650,"stars":26,"repoUrl":27,"updatedAt":1657},"binder-handoff","export and validate binder task packages","当需要把 binder 设计算力任务打包交给外部平台（Claude Science 或自有服务器）、或校验\u002F导入外部返回的结果包时使用；对应 openbinder handoff export\u002Fvalidate\u002Fimport。典型触发语：\"把这个 target 打包成 handoff 任务包\"\"校验一下对方返回的 result package\"\"把外部算回来的结果导入进来\"。同义场景：external handoff、任务包导出、结果包校验、回传包导入、RUNBOOK。",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1651,1654],{"name":1652,"slug":1653,"type":16},"Automation","automation",{"name":1655,"slug":1656,"type":16},"Data Engineering","data-engineering","2026-08-27T13:32:32.957864",{"slug":1659,"name":1659,"fn":1660,"description":1661,"org":1662,"tags":1663,"stars":26,"repoUrl":27,"updatedAt":1667},"binder-protocol","compile and validate binder design protocols","当需要把 binder 设计协议草稿编译成结构化 protocol.yaml、校验协议、或按阶段切出 stage slice 时使用；对应 openbinder protocol validate\u002Fcompile\u002Fshow 三个子命令。典型触发语：\"把这份 protocol 草稿编译一下\"\"校验这个 protocol.yaml\"\"把 cofold_scoring 阶段的切片拿出来\"。同义场景：协议编译、protocol compiler、十阶段、stage slice、阶段上下文、protocol validate。",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1664,1665],{"name":1652,"slug":1653,"type":16},{"name":1666,"slug":486,"type":16},"YAML","2026-08-27T13:32:33.760978",{"slug":1669,"name":1669,"fn":1670,"description":1671,"org":1672,"tags":1673,"stars":26,"repoUrl":27,"updatedAt":1680},"binder-ranking-audit","audit binder campaign ranking results","当需要重算并审计 binder campaign 的候选排序、核对 recorded 与 recomputed 是否一致时使用；对应 openbinder audit-ranking（--fixture\u002F--source）。典型触发语：\"审计一下这个 campaign 的排序\"\"recorded 和 recomputed 对得上吗\"\"重算 top-N 命中率和 Spearman\"。同义场景：ranking audit、排序审计、ensemble 重算、hit rate、缺失数据处理、missing data 报告。",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1674,1677],{"name":1675,"slug":1676,"type":16},"Data Analysis","data-analysis",{"name":1678,"slug":1679,"type":16},"QA","qa","2026-08-27T13:32:34.155444",{"slug":1682,"name":1682,"fn":1683,"description":1684,"org":1685,"tags":1686,"stars":26,"repoUrl":27,"updatedAt":1689},"binder-replay","replay binder design campaigns","当需要回放已记录的 binder 设计 campaign、重现每一步\"当时知道什么、决定了什么\"时使用；对应 openbinder replay（--fixture\u002F--events\u002F--source）。典型触发语：\"帮我回放一下 IL-7Ra 的 binder campaign\"\"回放那个失败的 campaign\"\"看看当时每一步都知道了什么\"。同义场景：campaign replay、事件流回放、replay report、gap 分析、时间线重建。",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1687,1688],{"name":1652,"slug":1653,"type":16},{"name":1675,"slug":1676,"type":16},"2026-08-27T13:32:33.346398",{"slug":1691,"name":1691,"fn":1692,"description":1693,"org":1694,"tags":1695,"stars":26,"repoUrl":27,"updatedAt":1706},"binder-report","generate final reports from agent artifacts","当需要把 output\u002F 下已产生的 replay、agent 评测、ranking 审计产物汇总成最终报告束时使用；收集既有 artifact、按六类证据分级标注、生成 limitations 并提交 stage-gate 审批。典型触发语：\"把这些产物汇总成最终报告\"\"出一份 binder 最终报告和 limitations\"\"把 replay\u002F评测\u002F审计结果打包成报告束\"。同义场景：最终报告、报告束、evidence grading、limitations、claim check、收尾报告。",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1696,1699,1700,1703],{"name":1697,"slug":1698,"type":16},"Documentation","documentation",{"name":14,"slug":15,"type":16},{"name":1701,"slug":1702,"type":16},"Reporting","reporting",{"name":1704,"slug":1705,"type":16},"Summarization","summarization","2026-08-27T13:32:26.101404",93]