“给我一份今天怎么过的参考方案。”
用户不想先读完睡眠、HRV、负荷和趋势,再自行完成判断与规划。他需要先有一个可参考、可修改的起点。
Kriki Agent 把身体状态、今日意愿和现实约束,转化为一份可执行的今日计划;在用户看见的每个结果背后,它持续完成感知、组装 Context、决策、执行、回读与学习。
用户不是把生活交给 Kriki 管理,而是向 Kriki 索要一份有专业依据的行动底稿。计划服务于用户,决定权始终属于用户。
用户不想先读完睡眠、HRV、负荷和趋势,再自行完成判断与规划。他需要先有一个可参考、可修改的起点。
Kriki 给出专业默认值;用户可以接受、协商、忽略。任何偏离都只会触发重新规划,不会被定义为失败。
用同一场景的前台与后台双视角,理解 Kriki 如何从触发开始,经过算法、Context、决策和 Runtime,最终改变真实计划。
用户只花十秒确认意愿和现实。Kriki 随后直接给出一份可以采用或调整的今日方案。
event: morning_readyrecovery 78 · confidence .8612 facts selected / 3 sourcesgoal: perform_without_overreachplan v1 · next_check 17:45render + schedule + observe用户不需要回到计划编辑器,也不会收到责备。Kriki 从用户现在的位置重新规划今天剩余部分。
constraint.add(work_overtime)conflict: workout@18:10route: cancel_and_recovercommit plan:v4cancel · update · scheduleawait: end_of_day用户看到的不是一份数据日报,而是昨天的选择与今天结果之间谨慎、可理解的连接。
actual_load 42 · recovery +9prediction_error: lowclaim: possible_contributionpattern_count 4 / threshold 3strategy_weight +0.12next: morning_plan用户只需要在早晨交代意愿,在现实发生变化时说一句话;读取、判断、生成、更新和跟踪尽量由 Kriki 完成。
读取昨夜睡眠、恢复信号、近期负荷和个人基线,形成“今天能承受什么”的初步边界。
今天要不要训练?是否有特殊安排?主观感觉如何?也可以直接说:“下午三个会,晚上想跑步。”
给出今日策略、行动时间、强度边界、避免事项和备选方案。用户接受或修改后,形成 Running Plan。
训练前、负荷超预期、疲劳上升或恢复窗口临近时,Kriki 只给当下最相关的判断与动作。
“今晚要加班”“比早上更累”“训练取消了”。这句话会更新计划、提醒和后续动作,而不是只得到聊天回复。
自动读取已完成事项,只询问数据无法知道的感受与现实事件,再给一个简短的恢复收尾动作。
判断昨天的计划是否适合、预测是否接近结果,以及类似情形下下次应怎样做得更好。
不是四个功能模块,而是同一份计划在不同情境下的四种工作方式。切换下面的模式查看。
Agent 读取身体状态,并通过少量问题补足今日意愿和特殊安排,生成一份可以直接参考的计划。
“今天可以正常训练。我建议 18:10 做 35 分钟中等强度,结束后不再追加负荷。”
用户可以:接受 · 改一下 · 为什么 · 告诉你变化
Agent 不持续刷存在感。它比较计划与真实状态,只在一个动作会改变结果时介入。
“今天的负荷已经够了。原定训练改为 20 分钟轻松步行,我会在晚间再看恢复情况。”
Watch 上只显示当下动作;完整依据留在 iPhone。
一句现实变化不是聊天素材,而是结构化状态更新。Agent 随即修改计划、提醒和后续策略。
“今晚要加班,训练取消。今天改为恢复日;22:50 后不再安排额外任务,明早重新判断。”
不评判、不劝返,基于用户当前位置继续规划。
Agent 比较判断、建议、执行和结果,区分一次性事件与稳定规律,决定哪些内容值得学习。
“过去 4 次类似高压工作日,取消高强度训练后,你第二天的恢复通常更稳。”
多次验证后再形成模式,不把单次相关性说成因果。
真正的 Agent 不能只在聊天里口头答应。用户输入必须改变 Running Plan、提醒和下一次判断所使用的 Context。
“今晚要加班,跑不了了。”
训练不可执行;工作负荷上升;睡眠窗口可能后移。
取消训练,替换恢复动作,重新计算晚间边界。
撤销训练提醒,更新 Watch 下一步,新增睡前提醒。
工作结束时间、实际负荷、睡眠与次日恢复。
介入由“触发条件 + 价值判断 + 合适触点 + 用户偏好”共同决定。没有明确行动价值,就保持安静。
| 关键时刻 | 触发条件 | 优先触点 | 用户看到什么 | Agent 后台动作 | 可执行动作 | 边界 |
|---|---|---|---|---|---|---|
| 晨间计划 | 新睡眠基本完整 + 用户醒来 | APP | 状态判断 + 今日意愿确认 | 状态算法 → Context 组装 → 创建 Plan v1 | 接受、调整、查看依据 | 数据不完整时标记初步判断 |
| 训练前 | 训练临近,当前状态与晨间不同 | WATCHAPP | 是否练、练什么、做到什么程度 | 回读当前负荷 → 边界规则 → 必要时重排 | 开始、降级、改时间、取消 | 异常症状优先停止并提示就医 |
| 负荷超预期 | 实际活动明显超过计划边界 | WATCHNOTICE | 剩余负荷建议 | 阈值触发 → 计算剩余容量 → 更新后续动作 | 取消后续动作、切换恢复 | 不以惩罚或焦虑驱动 |
| 计划失效 | 错过动作或用户告知现实变化 | CHATAPP | 新的可执行路线 | 解析约束 → 冲突检查 → Plan 原子化换版 | 确认新计划 | 不要求用户回到原路线 |
| 恢复窗口 | 临近建议上床时间且当天负荷偏高 | WATCHNOTICE | 一个明确收尾动作 | 检查提醒策略、静默偏好与今天实际结束时间 | 开始、延后、今晚忽略 | 遵守提醒频率与静默偏好 |
| 异常风险 | 多源指标显著偏离或用户报告不适 | APP | 不确定性、风险和下一步 | 安全规则优先 → 限制模型输出 → 医疗升级路径 | 停止训练、观察、寻求医疗帮助 | 不诊断,不用确定性口吻 |
所有触点都从同一份计划状态读取,避免 App 说训练取消了、Watch 却还在提醒的系统割裂。
基于恢复 78%、今日训练意愿和下午连续会议。
用一句话定义今天身体资源应该怎样分配。
Now / Next / Later / Tonight,而不是一串无优先级建议。
区分不可改变的现实、可移动的动作和可以放弃的动作。
明确什么变化会触发降级、取消或再次询问用户。
记录为什么修改、由谁确认,所有触点读取同一版本。
决策包把输入证据、目标、约束、方案、动作、置信度和下一观察点结构化,语言只是它面向用户的一种渲染结果。
morning_readyrecovery: 0.78 · sleep: 89 · confidence: 0.86maintain_performance_without_fatigue_debtmeetings 15:00–18:00 · wants_training: truework_focus → walk_15m → workout_35m → sleep_23:10meeting_overrun → cancel_workout → recovery_modewarmup_hr_high → reduce_to_20mplan.write · watch.update · reminder.schedule17:45 workout_precheck处理 HealthKit 原始样本、数据质量、个人基线、恢复与负荷特征。
DETERMINISTIC处理安全边界、强约束、医疗升级、计划冲突和停止条件。
POLICY理解用户表达、权衡多目标、生成候选方案、解释依据和参与协商。
REASONING维护 Context 与 State,校验决策包,调用工具、写入计划并回读真实结果。
EXECUTION保存事实、阶段、工作上下文和干预账本,并通过门控决定何时形成长期模式。
LEARNINGKriki 的可信不是来自强势语气,而是判断有依据、边界可见、操作可撤回、长期分寸一致。
先给结论,用户需要时一层展开关键依据与数据质量。
区分确认事实、模型推断和仍需验证的假设。
接受、调整、忽略都不会失去服务,拒绝不是失败。
现实变化后重新规划,不制造羞耻、焦虑或控制感。
异常信号只做风险提示和升级建议,不替代诊断。
大模型负责理解与推理;Runtime 负责状态、工具、权限、执行、回读和停止条件。每一层都必须能映射到用户价值。
健康数据、用户表达、计划执行和环境变化。
为当前决策提取必要状态、目标、现实与历史。
主方案、替代方案、风险边界、置信度和介入时机。
结构化 Running Plan、版本、依赖、触发和下一判断点。
更新计划、提醒和 Watch 触点,必要时向用户确认。
检查用户行为、工具结果和真实身体状态是否变化。
更新个人模式、有效策略与协作偏好。
先把计划的具体性、低输入成本、现实重排和结果反馈做成闭环,再扩展更多设备、连接器与长期目标。