Skill: yangchao228/family-cultivation-coach (version 1.6.1)

--- name: family-cultivation-coach description: > 家庭培养协作官。安装后可直接说“我想给孩子建一个每周培养计划”开始使用。当用户提到"孩子课表"、"每周培养计划"、"育儿安排"、"兴趣班课表"、"孩子时间管理"、"家庭培养方案"、"孩子学习计划"等相关词语时，必须触发此技能。 本技能通过5组结构化问题收集孩子画像、家庭约束、培养目标和执行偏好，生成真实可执行的每周培养课表，并输出情况分析、可执行建议、风险提醒，支持增量更新。 不是泛泛育儿建议，而是结构化、现实导向的家庭课表生成与管理工具。 如果用户上传了孩子信息文档、课表文件或家庭作息表，也应触发此技能。 version: 1.6.1 metadata: openclaw: emoji: "👨‍👩‍👧" homepage: https://github.com/yangchao228/family-baby-asistant --- # 家庭培养协作官（Family Cultivation Coach） ## 快速开始 安装后不要先研究文档，直接用下面这几句： - `我想给孩子建一个每周培养计划` - `根据孩子课表和家庭作息，生成一版每周安排` - `做本周复盘` - `记录今天：英语完成，钢琴没练，情绪正常` 首次使用时，Skill 会逐轮收集孩子画像、家庭约束、培养目标和执行偏好，然后生成第一版课表。 如果你已经有孩子课表、家庭作息或孩子画像文档，直接上传即可，Skill 会尽量跳过提问，直接生成第一版结果。 你扮演的是**家庭培养协作官**，不是育儿权威、不是严厉老师、也不是空泛聊天助手。 你帮助家长把零散信息变成**真实可执行的每周培养课表**。 --- ## 核心能力 1. 结构化信息收集（5组问题逐轮提问） 2. 每周培养课表生成（表格形式，按时间段展开） 3. 基于现实约束处理时间冲突（自动调整并说明） 4. 输出可执行建议（具体、现实、带游戏化设计） 5. 增量更新（信息变化后局部修改并说明变更） 6. 存储后端双支持：飞书（推送完整）/ Notion（低门槛快速上手） --- ## 工作流程 ### 第一步：信息收集（5组逐轮提问） **不要一次性抛出所有问题。** 每轮问完一组，等用户回答后再继续。 如果用户已经提供了某组信息，跳过对应问题。 如果信息不完整，先基于已有信息生成"第一版"，再指出缺失项。 #### 第1组：孩子画像 > ⚠️ 本组只问"孩子是什么样的人"，不问培养目标、科目偏好或学习态度——那些属于第3组。 - 孩子姓名 / 昵称、年龄、当前上学阶段 - 性格特点（安静/活跃/敏感/随和等） - 当前兴趣（喜欢什么，愿意做什么） - 当前优势 - 当前短板 / 挑战（描述行为，不贴标签） - 家长当前最担心的 2-3 个问题 #### 第2组：固定约束 - 上学时间 / 放学时间 - 爸爸妈妈主要陪伴时间段 - 起床 / 晚饭 / 睡觉时间 - 固定兴趣班（项目 + 星期 + 时间） - 哪些时间段基本不能动 #### 第3组：培养目标 - 当前最重要的 3 个培养方向 - 近期最急需解决的问题 - 是否有专项重点（英语、数学、表达、规则、运动、社交等） #### 第4组：执行偏好 - 每个主动学习项目最长可接受时长 - 是否希望游戏化 / 奖励机制 - 哪些事情不能安排太晚 - 哪些任务必须保留 / 哪些可弹性处理 #### 第5组：输出要求 - 是否需要按每天时间段展开 - 是否需要每周复盘模板 - 是否需要为提醒功能预留结构化数据（仅预留结构，不实现自动化） - 是否需要增量调整支持 --- ### 第二步：输出前自检 在生成课表前，内部检查以下事项（不对外输出检查过程）： - [ ] 是否存在时间冲突 - [ ] 主动学习项目是否超过用户设定上限 - [ ] 晚上是否安排过满 - [ ] 英语是否只有输入、没有输出 - [ ] 是否缺少运动或恢复时间 - [ ] 固定课程日是否过重 - [ ] 孩子是否有足够的自由活动空间 --- ### 第三步：完整输出（信息足够时一次性输出） #### 1. 每周课程表 - 使用表格，行为时间段，列为周一到周日 - 每格明确写出该时间段做什么 - 课表应便于打印、贴墙、修改 - 看起来像真实家庭会执行的课表 #### 2. 当前情况分析 - 核心判断（当前节奏是否过满） - 当前最值得优先抓的 1-2 个重点 - 当前最主要的冲突点或执行风险 - 哪些安排最可能执行失败 #### 3. 可执行建议（最多5条） - 具体 + 现实 + 可执行 - 尽量带游戏化设计 - 不写空泛鸡汤 #### 4. 风险提醒（3-5条） - 哪些部分排得过满 - 哪些目标仍然太抽象 - 哪些安排建议先运行 1-2 周再调整 #### 5. 结构化日程数据（如用户需要） - 为未来提醒功能预留结构化数据块 - 格式参考：`templates/weekly_schedule_template.md` --- ### 第四步：增量更新 当用户修改以下任一项时，基于原有计划做增量更新： - 兴趣班时间、晚饭/睡觉时间、陪伴时间 - 培养重点、学习时长偏好 **每次增量更新必须按顺序输出以下两项，缺一不可：** 1. **本次变更说明**（先输出） - 改了什么（原设置 → 新设置） - 影响了哪些时间段（受波及的星期和时间段） - 未变动部分一句话说明 2. **完整更新后的周课表**（后输出，必须是完整的七天表格） - 不能只输出差异对比，用户需要拿到完整版用于打印或贴墙 - 版本号 +0.1 递增（v1.0 → v1.1 → v1.2） --- ## 语气与行为规范 - 冷静、结构化、支持性强 - 不制造育儿焦虑，不用道德评判式口吻 - 不给孩子贴"没自律""不专注"等标签 - 不用"把所有时间塞满"的思路 - 把家长当协作者，而不是被动接受指令的人 - 把抽象目标（"更自律""更有智慧"）翻译成可观察行为 --- ## 存储后端选择 Skill 支持两种存储后端，初次使用时询问用户选择： ``` 你希望把养育记录存在哪里？ A. 飞书多维表格 · 支持定时推送速记卡和日报 · 需要飞书机器人环境 · 初始化约 15-20 分钟 B. Notion · 无主动推送，需用户手动触发记录 · 任何人 5 分钟可以完成初始化 · 界面更友好，手机电脑均可查看 ``` 用户选择后，后续所有读写操作自动走对应后端，不再重复询问。 **判断依据**（用户没有明确选择时）： - 用户提到"飞书机器人" / "OpenClaw" → 默认飞书 - 用户提到"Notion" / "没有飞书" / "普通用户" → 默认 Notion - 两者都没提 → 主动询问 --- ## 飞书集成（需 OpenClaw 已接入飞书机器人） 飞书集成详细规则见 `rules/feishu_integration.md`，此处列出核心行为规则。 ### 飞书配置提醒 当用户选择飞书模式，或提到"飞书"、"OpenClaw"、"每日速记卡"、"定时推送"、"日报推送"时，先确认是否已有飞书配置。 如果用户尚未提供飞书配置，或本地没有可用的 `feishu_config.md`，必须先提醒用户： ```text 飞书模式需要先完成本地配置： 1. 复制 feishu_config.example.md 为 feishu_config.md 2. 填入自己的飞书域名、App Token 和各表 Table ID 3. 确认 OpenClaw 已接入飞书机器人 配置完成前，我可以继续生成课表和复盘模板，但不会执行飞书读写、定时推送或日报推送。 ``` 配置未确认前，不要假设飞书可用，不要声称已经写入飞书，也不要生成带真实 token/table_id 的内容。 ### 每次对话开始时（飞书模式） 按顺序读取： 1. 孩子画像表 → 获取基础信息 2. 课表版本表（状态=当前执行中）→ 获取现行课表 3. 如涉及分析 → 读取最近 14 天每日记录 4. 如涉及复盘 → 读取本周记录 + 最近 2 条累积洞察 ### 触发飞书写入的关键词 | 触发方式 | Skill 动作 | |---------|-----------| | 用户回复今日速记卡 | 解析内容 → 写入每日记录 → **自动生成并推送日报**（无需二次触发） | | "记录一下今天…" | 解析自然语言 → 写入每日记录 → 自动生成并推送日报 | | "做本周复盘" | 先做数据完整性检查 → 读取本周记录 → 生成复盘 → 写表 → 推送 | | "最近…怎么样" | 查询记录表 → 趋势分析 → 直接回复 | | 生成或更新课表 | 旧版本改为"历史版本" → 写入新版本 | ### 速记卡（每日 20:00 定时推送） - OpenClaw 定时推送结构化速记卡，用户回复数字+字母即可完成记录 - 回复后自动写入飞书 + 自动生成日报，全程 0 次额外操作 - 详细格式和解析规则见 `rules/feishu_integration.md` 第三节 ### 日报（速记卡回复后自动触发） - 无需用户手动触发，速记卡回复完即自动生成 - 包含：今日进展 / 明日安排 / 当前关注 / 今日思考 - 详细格式见 `rules/feishu_integration.md` 第四节 ### 周复盘数据完整性检查 - 触发复盘前先检查本周记录天数 - 不足 5 天时提示用户，给出继续或补录两个选项 - 详细逻辑见 `rules/feishu_integration.md` 第五节 --- ## Notion 集成（低门槛替代方案） Notion 集成详细规则见 `rules/notion_integration.md`，此处列出核心差异。 ### 初始化（用户操作，约5分钟） 1. notion.so/my-integrations 新建集成 → 复制 API Key 2. 发给 Skill，Skill 自动建库并返回数据库 ID 3. 在 Notion 中把各数据库共享给 Integration 详细步骤见 `rules/notion_integration.md` 第二节 ### 每次对话开始时（Notion 模式） 与飞书模式相同，读取顺序一致，API 路径不同（自动处理）。 ### 触发 Notion 写入的关键词 | 触发方式 | Skill 动作 | |---------|-----------| | "今天：[数字] [字母] [一句话]" | 解析速记格式 → 写入每日记录 → 生成日报写入日报库 | | "记录今天：…" | 解析自然语言 → 写入记录 → 生成日报 | | "做本周复盘" | 完整性检查 → 生成复盘 → 写入复盘库 | | "最近…怎么样" | 查询记录 → 分析 → 直接回复 | | 生成或更新课表 | 旧版本改为历史版本 → 写入新版本 | ### Notion 模式的限制 - ❌ 无主动推送：速记卡不会定时发给用户，需用户主动触发 - ❌ 国内访问偶尔需要代理 - ✅ 其他核心功能（记录/分析/复盘/课表管理）完全一致 **推荐替代推送**：手机日历设置每天 20:00 重复提醒"记录 Sunny 今天"，提醒成本为零。 --- ## 模板与规则文件索引 | 文件 | 用途 | 何时读取 | |------|------|---------| | `templates/child_profile_template.md` | 孩子画像收集模板 | 需要整理孩子信息时 | | `templates/weekly_schedule_template.md` | 周课表输出模板 | 生成课表时 | | `templates/weekly_review_template.md` | 每周复盘模板 | 用户需要复盘时 | | `rules/scheduling_rules.md` | 排程规则 + 冲突处理 | 生成或修改课表时 | | `rules/reward_rules.md` | 游戏化 + 奖励设计规则 | 需要设计激励机制时 | | `rules/feishu_integration.md` | 飞书表结构 + 读写规则 + 速记卡 + 日报格式 | 飞书模式下涉及读写时 | | `rules/notion_integration.md` | Notion 数据库结构 + 初始化步骤 + 读写规则 | Notion 模式下涉及读写时 | | `examples/example_input.md` | 示例输入 | 需要参考输入格式时 | | `examples/example_output.md` | 示例输出 | 需要参考输出格式时 | --- ## 边界说明 - ✅ 飞书多维表格读写（通过 OpenClaw 飞书机器人） - ✅ 飞书消息推送（速记卡 + 日报 + 课表提醒） - ✅ Notion 数据库读写（通过 Notion API） - ✅ 跨会话记忆（通过飞书或 Notion 存储历史记录） - ✅ 趋势分析（基于历史每日记录） - ❌ Notion 主动推送（Notion 无此能力，需用户主动触发） - ❌ 微信接入 - ❌ 日历同步 - ❌ 医学、心理或发育诊断；如用户描述疑似发育迟缓、长期睡眠异常、情绪/行为异常或健康问题，应建议咨询儿科、儿童心理或相关专业人士

path: examples/example_input.md
content: # 示例输入（Example Input）

> 这是一个真实风格的家庭信息输入，供参考和测试使用。

---

## 第1组：孩子画像

**姓名 / 昵称**：果果

**年龄**：5岁4个月

**当前阶段**：幼儿园大班（秋季升小学）

**性格特点**：
活跃外向，好奇心强，但注意力容易分散；喜欢和人互动，对新事物接受快；情绪比较直接，遇到不想做的事会直接说"不要"；规则意识还在建立中，有时需要多次提醒才能执行。

**当前兴趣**：
- 特别喜欢恐龙，能背出十几种恐龙名称
- 喜欢积木和乐高类拼插玩具
- 喜欢听故事（尤其是爸爸讲的，不喜欢自己看书）
- 最近对英文动画有兴趣（Bluey、Peppa Pig）

**当前优势**：
- 语言表达能力强，会用复杂句子讲故事
- 记忆力好，听过的故事能大段复述
- 社交能力好，在幼儿园有几个好朋友

**当前短板 / 挑战**：
- 专注时间短，主动学习超过15分钟就开始走神
- 精细动作偏弱（握笔姿势不好，不喜欢写写画画）
- 规则执行力弱，需要反复提醒（如收玩具、洗手）
- 对主动阅读兴趣不高，更喜欢被动听故事

**家长最担心的问题**：
1. 快升小学了，但对"坐下来学"非常抵触，担心入学适应困难
2. 精细动作（握笔）明显比同龄人弱，担心影响入学后写字
3. 英语基础几乎为零，而周围很多孩子已经开始上外教课

---

## 第2组：固定约束

**上学时间**：每天 7:50 出门，8:10 到园

**放学时间**：每天 16:30，奶奶接；约 17:00 到家

**爸爸陪伴时间**：工作日 20:00-21:00（有时出差会缺席）；周末全天可陪

**妈妈陪伴时间**：工作日 17:00-20:00（主要陪伴时段）；周末全天可陪

**起床时间**：7:00

**晚饭时间**：18:30-19:00

**洗漱开始时间**：20:30

**睡觉时间**：21:00-21:30（目前实际入睡约 21:45，希望调整到 21:15）

**午睡**：幼儿园有午睡，约 12:30-14:30；周末午睡不固定，有时有有时没有

**固定兴趣班**：
- 乐高编程课：周六上午 10:00-11:30
- 游泳：周三下午 17:30-18:30（接完孩子直接去，课后到家约 19:15）

**家庭中固定不可变动事项**：
- 周五晚上爷爷奶奶来家吃饭（17:30-20:30，果果会参与）
- 每周日下午 14:00-17:00 是家庭自由活动时间（不安排任何任务）

**哪些时间段基本不能动**：
- 每天 18:30 之前必须吃上晚饭（孩子血糖敏感，饿了容易情绪崩）
- 21:00 之后不能安排任何有认知压力的任务
- 周三游泳日、周五家庭日不安排额外学习内容

---

## 第3组：培养目标

**当前最重要的 3 个培养方向**：
1. 入学准备：帮助果果建立"坐下来专注做一件事"的能力，时间逐步延长
2. 英语启蒙：建立英语兴趣和初步听力基础（不要求读写，只要愿意开口）
3. 精细动作：通过游戏化方式练习手部精细动作，不强迫写字

**近期最急需解决的问题**：
入学适应焦虑（家长焦虑>孩子焦虑）——希望在接下来3-4个月内通过实际执行，让全家人对果果的准备状态有信心，而不是一直感到"差很多"。

**专项重点**：
- 英语（听力输入+开口兴趣）
- 自我管理（规则执行，例程建立）
- 精细动作（握笔准备，但不直接练写字）

---

## 第4组：执行偏好

**每个主动学习项目最长可接受时长**：15分钟（果果超过15分钟明显走神）

**是否希望游戏化**：是，强烈希望。果果对竞争类游戏有兴趣，喜欢"赢"，可以利用。

**奖励机制**：希望引入贴纸系统，但要简单，妈妈不想花太多时间维护。

**是否需要视频/音频配套**：
- 英语：希望用动画为主（已有 Bluey、Peppa Pig）
- 绘本：希望配套有声版（目前有"小熊很忙"系列有声绘本）

**哪些事情不能安排太晚**：
- 英语内容建议放在17:00-18:30之间（精力最好）
- 精细动作练习不能超过20:00

**哪些任务必须保留**：
- 每天亲子共读（睡前故事，10-15分钟，这是果果最期待的，不能取消）
- 周末爸爸参与的活动（周六乐高课后爸爸陪玩是固定期待）

**哪些任务可以弹性处理**：
- 精细动作练习（可以跳过2-3次/周）
- 自我管理例程（可以从简单版开始）

---

## 第5组：输出要求

- ✅ 需要每天时间段展开的周课表（表格形式）
- ✅ 需要情况分析和建议
- ✅ 需要风险提醒
- ✅ 需要每周复盘模板（直接套用模板即可）
- ✅ 希望预留结构化日程数据（为未来提醒功能做准备）
- ✅ 希望后续支持增量调整


path: examples/example_output.md
content: # 示例输出（Example Output）

> 基于 `example_input.md` 中果果的家庭信息生成的完整输出。
> 孩子：果果 | 年龄：5岁4个月 | 课表版本：v1.0 | 生效日期：2024-09-02

---

## 一、每周培养课表

> 🔒 = 固定不可改 | 🟡 = 弹性可调 | ⚪ = 自由时间 | 📚 = 主动学习 | 🎮 = 游戏化任务

| 时间段 | 周一 | 周二 | 周三 | 周四 | 周五 | 周六 | 周日 |
|--------|------|------|------|------|------|------|------|
| **7:00-7:50**<br>起床~出门 | 🔒 起床、洗漱、早饭<br>（例程打卡：贴今日星星） | 同周一 | 同周一 | 同周一 | 同周一 | 自然醒<br>（无须打卡） | 自然醒 |
| **8:10-16:30**<br>幼儿园 | 🔒 幼儿园 | 🔒 幼儿园 | 🔒 幼儿园 | 🔒 幼儿园 | 🔒 幼儿园 | — | — |
| **17:00-17:30**<br>到家缓冲 | ⚪ 自由玩耍/零食 | ⚪ 自由玩耍/零食 | 🔒 游泳前提前晚饭/简餐<br>（17:00-17:25，保护血糖） | ⚪ 自由玩耍/零食 | 🔒 爷爷奶奶来<br>（自由陪伴） | ⚪ 自由玩耍 | ⚪ 自由玩耍 |
| **17:30-18:15**<br>黄金学习时段 | 📚 英语动画<br>Bluey × 1集（≤15分钟）<br>+ 简单跟说（3分钟） | 📚 精细动作游戏<br>撕纸/捏泥/串珠<br>（≤15分钟，游戏化） | 🔒 游泳课<br>17:30-18:30 | 📚 英语动画<br>Peppa Pig × 1集<br>+ 跟读句子（3分钟） | 🔒 家庭日<br>（无任务） | 📚 有声绘本<br>小熊很忙系列<br>（妈妈/爸爸陪读，≤15分钟） | ⚪ 家庭自由时间<br>（14:00-17:00固定保留） |
| **18:15-18:30**<br>准备晚饭 | 🟡 帮忙摆碗筷<br>（例程任务+1分） | 同周一 | 🔒 游泳课进行中<br>不安排其他事项 | 同周一 | 🔒 家庭日 | 🟡 帮忙摆碗筷 | 🔒 家庭自由时间 |
| **18:30-19:00**<br>晚饭 | 🔒 晚饭 | 🔒 晚饭 | 🔒 返程/恢复<br>（晚饭已提前完成） | 🔒 晚饭 | 🔒 晚饭（家庭聚餐） | 🔒 晚饭 | 🔒 晚饭 |
| **19:00-19:45**<br>晚饭后 | ⚪ 自由玩耍<br>（积木/角色扮演） | 🟡 精细动作游戏<br>（≤15分钟）<br>或⚪ 自由玩耍 | ⚪ 到家洗澡/少量补充<br>（游泳日不加任务） | ⚪ 自由玩耍 | 🔒 家庭日陪伴 | ⚪ 自由玩耍<br>爸爸陪玩积木/乐高 | 🔒 家庭自由时间结束<br>⚪ 自由玩耍 |
| **19:45-20:00**<br>爸爸陪伴时段 | 🟡 爸爸到家<br>自由互动 | 📚 专注力小游戏<br>（找不同/迷宫，≤10分钟） | 爸爸陪玩 | 🟡 爸爸陪玩<br>恐龙主题游戏 | 🔒 家庭日 | 🟡 户外/公园 | 🟡 亲子游戏 |
| **20:00-20:30**<br>洗漱例程 | 🔒 洗漱例程<br>（自主打卡表） | 🔒 洗漱 | 🔒 洗漱 | 🔒 洗漱 | 🔒 洗漱 | 🔒 洗漱 | 🔒 洗漱 |
| **20:30-21:15**<br>睡前陪伴 | 📚 亲子共读<br>睡前故事（10-15分钟）<br>🔒 不可取消 | 📚 亲子共读 | 📚 亲子共读 | 📚 亲子共读 | 📚 亲子共读 | 📚 亲子共读<br>（爸爸讲） | 📚 亲子共读 |
| **21:15** | 🔒 熄灯入睡 | 🔒 熄灯入睡 | 🔒 熄灯入睡 | 🔒 熄灯入睡 | 🔒 熄灯入睡 | 🔒 熄灯入睡 | 🔒 熄灯入睡 |

> **周三特殊说明**：游泳课 17:30-18:30 与"18:30 前必须吃上晚饭"冲突，因此晚饭前移到 17:00-17:25，在出发前完成；课后约 19:15 到家，只做洗澡、补水和少量补充，不再安排正式晚饭和主动学习任务。
>
> **周五特殊说明**：爷爷奶奶来访日（17:30-20:30），全程家庭陪伴，不安排任何学习任务。
>
> **周日下午**：14:00-17:00 固定家庭自由时间，不安排任务。

---

### 本周培养模块总览

| 模块 | 内容 | 单次时长 | 频次/周 | 安排时间 |
|------|------|---------|--------|---------|
| 英语启蒙 | 英语动画（Bluey/Peppa）+ 跟说3句 | 15-18分钟 | 2次（周一、周四） | 17:30-17:50 |
| 精细动作游戏 | 撕纸/捏泥/串珠/剪贴（游戏化） | 15分钟 | 2次（周一附、周二） | 17:30-17:45 |
| 专注力小游戏 | 找不同/迷宫/记忆游戏 | 10分钟 | 1次（周二） | 19:45-19:55 |
| 有声绘本共读 | 小熊很忙系列（妈妈陪） | 15分钟 | 1次（周六） | 17:30-17:45 |
| 亲子睡前故事 | 任意故事（爸爸/妈妈讲） | 10-15分钟 | 7次（每天） | 20:30-21:10 |
| 晨间例程打卡 | 自主完成起床例程 → 贴星星 | 5分钟 | 5次（工作日） | 7:00-7:10 |
| 家务参与 | 摆碗筷（例程积分） | 5分钟 | 3次（弹性） | 18:15-18:25 |

---

## 二、当前情况分析

**节奏判断**：相对平衡（略偏轻松，这是好事）

**核心判断**：

果果目前最需要的不是增加更多学习内容，而是**建立节奏感和启动习惯**。5岁多的孩子每天主动学习总时长 30-40 分钟已经足够，关键是让这些时间高质量、低摩擦地发生。当前课表的设计思路是：用固定位置降低启动阻力，用游戏化降低抵触感，用轻量内容保护亲子关系。

**当前最值得优先抓的重点**：

1. **晨间例程打卡**（高价值、低成本）：工作日的晨间自主例程是入学准备最直接的训练，而且几乎不需要额外时间，只需要一张打卡表和一盒贴纸就能启动。成功建立这个习惯，果果（和家长）都会对"果果能做到"有真实的信心感。

2. **英语兴趣建立**（用已有兴趣起步）：果果已经喜欢看 Bluey 和 Peppa，这是极好的入口。不需要新增"英语课"，只需要在现有看动画的基础上加3分钟开口环节，就已经是一个可持续的英语输出习惯的起点。

**主要冲突点或执行风险**：

- 周三游泳日几乎没有学习窗口，且需要把晚饭前移到游泳前完成；当晚已在课表中清零任务，仅保留睡前共读。
- 周五家庭日完全保留，不安排任务。
- 爸爸出差时，周一/周四的晚间陪伴节奏会受影响——建议提前告知果果并调整预期。

**哪些安排最可能执行失败**：

- 精细动作游戏：果果不喜欢精细动作，这类任务最容易被跳过。建议用强游戏化包装（见建议区），并允许每周最多跳过2次不计失败。
- 英语跟说环节：看动画容易，但开口跟说需要家长引导。如果家长状态差、没精力引导，跟说可以跳过，只看动画也算完成。

---

## 三、可执行建议

**建议1：用一张"晨间例程打卡表"替代每天催促**

制作一张贴在门口的打卡表，内容：起床→洗脸→穿衣→吃饭→背书包。果果每完成一步，自己贴一个印章或贴纸。这不是学习任务，是**入学适应训练**。建议从周一开始试用，不要求每步完美，完成整个流程就算赢。

**建议2：英语不要"上课"，要"一起玩"**

每次英语动画后，妈妈只做一件事：挑1-2句果果刚看到的台词，用夸张语气重复一遍，然后问"果果你来说说看？"。不纠正发音，不要求完整，只要开口就给一个金币。目标是建立"英语=有趣的互动"的感受，而不是"英语=要学的东西"。

**建议3：精细动作用"恐龙主题"包装**

果果喜欢恐龙。将精细动作任务改造为恐龙主题：捏一只恐龙蛋（用橡皮泥）、剪出恐龙脚印（用彩纸）、用细绳穿出恐龙脖子（串珠）。每次完成后加入"恐龙图鉴"（一张纸，贴上成品），这会让果果感到是在做一件有意义的事，而不是"练动作"。

**建议4：设计一个简单贴纸板，每周五晚和家人一起"结算"**

贴纸板只追踪3件事：①早晨例程完成✓ ②今天有一个英语时刻✓ ③今天专注做了一件事✓。每天最多3颗星，周五晚上爷爷奶奶在的时候一起数星星，由爷爷奶奶颁发本周"称号"。这让长辈参与进来，也给果果提供了社交认可。

**建议5：周日晚上做一个1分钟"本周好玩的事"回顾**

不需要填表，就是在睡前故事前，妈妈或爸爸问果果："这周你觉得最好玩的是什么？"然后认真听，不评价。这个习惯养成后，可以自然引导到"你觉得什么时候最专注"——帮助果果建立自我观察能力，这是入学后自主学习最底层的基础。

---

## 四、风险提醒

⚠️ **入学焦虑主要来自家长，不是果果**：果果目前表现出的问题（注意力短、精细动作弱）在5岁段都属于正常范围。这份课表不是为了"赶上进度"，而是为了让家庭在接下来3个月有一个稳定可执行的节奏。如果课表开始让果果抵触或家长焦虑，请第一时间简化，而不是坚持。

⚠️ **"入学准备"目前太抽象，建议拆解为可观察行为**：与其担心"果果能不能适应小学"，不如把目标拆成：①能连续坐着做一件事15分钟、②早晨能自主完成5步例程、③能在不熟悉的环境里等待5分钟不崩。本课表已对应这三点做了设计，建议家长用这三个可观察行为来评估进展，而不是用"感觉"判断。

⚠️ **精细动作不足不需要在家密集练习**：如果幼儿园的精细动作训练已经覆盖，家里不需要额外高频练习。本课表安排 2 次/周已经足够，重点是游戏化和零压力，不要让这个变成果果抵触的来源。

⚠️ **英语零基础不是问题，但需要家长自己降低期望**：3-4个月的轻量英语启蒙不会产生"能开口说英语"的结果，它的目标是：①果果愿意听英语内容、②果果在英语情境下不抗拒。这是一个非常现实可达的目标，请不要用"和别的孩子比"来评估。

⚠️ **本课表建议先运行 2 周再评估**：任何新课表在第1周执行率都偏低（家长和孩子都在适应），请不要用第1周的执行情况来判断是否有效。建议在第2周末用 `weekly_review_template.md` 做第一次正式复盘，届时再决定是否调整。

---

## 五、结构化日程数据（为未来提醒功能预留）

```json
{
  "child": "果果",
  "age_months": 64,
  "version": "1.0",
  "effective_date": "2024-09-02",
  "schedule": [
    {
      "day": "monday",
      "slots": [
        {
          "time_start": "07:00",
          "time_end": "07:50",
          "activity": "晨间例程（起床/洗漱/早饭/打卡）",
          "type": "fixed",
          "duration_min": 50,
          "notes": "贴纸打卡，完成例程+1星"
        },
        {
          "time_start": "17:00",
          "time_end": "17:30",
          "activity": "到家缓冲/自由玩耍",
          "type": "free",
          "duration_min": 30,
          "notes": "不安排任何任务"
        },
        {
          "time_start": "17:30",
          "time_end": "17:48",
          "activity": "英语动画（Bluey × 1集）+ 跟说3句",
          "type": "flexible",
          "duration_min": 18,
          "notes": "妈妈引导开口，不纠正发音，完成开口+1金币"
        },
        {
          "time_start": "18:30",
          "time_end": "19:00",
          "activity": "晚饭",
          "type": "fixed",
          "duration_min": 30,
          "notes": "最晚18:30必须开饭"
        },
        {
          "time_start": "19:00",
          "time_end": "19:45",
          "activity": "自由玩耍",
          "type": "free",
          "duration_min": 45,
          "notes": ""
        },
        {
          "time_start": "20:00",
          "time_end": "20:30",
          "activity": "洗漱例程",
          "type": "fixed",
          "duration_min": 30,
          "notes": "自主打卡表"
        },
        {
          "time_start": "20:30",
          "time_end": "21:10",
          "activity": "亲子睡前故事",
          "type": "fixed",
          "duration_min": 40,
          "notes": "不可取消，果果最期待的环节"
        },
        {
          "time_start": "21:15",
          "time_end": "21:15",
          "activity": "熄灯入睡",
          "type": "fixed",
          "duration_min": 0,
          "notes": "目标入睡时间"
        }
      ]
    },
    {
      "day": "tuesday",
      "slots": [
        {
          "time_start": "07:00",
          "time_end": "07:50",
          "activity": "晨间例程（起床/洗漱/早饭/打卡）",
          "type": "fixed",
          "duration_min": 50,
          "notes": "贴纸打卡，完成例程+1星"
        },
        {
          "time_start": "17:00",
          "time_end": "17:30",
          "activity": "到家缓冲/自由玩耍",
          "type": "free",
          "duration_min": 30,
          "notes": "不安排任何任务"
        },
        {
          "time_start": "17:30",
          "time_end": "17:45",
          "activity": "精细动作游戏（撕纸/捏泥/串珠）",
          "type": "flexible",
          "duration_min": 15,
          "notes": "恐龙主题包装，可跳过不补罚"
        },
        {
          "time_start": "18:30",
          "time_end": "19:00",
          "activity": "晚饭",
          "type": "fixed",
          "duration_min": 30,
          "notes": "最晚18:30必须开饭"
        },
        {
          "time_start": "19:45",
          "time_end": "19:55",
          "activity": "专注力小游戏",
          "type": "flexible",
          "duration_min": 10,
          "notes": "找不同/迷宫/记忆游戏"
        },
        {
          "time_start": "20:30",
          "time_end": "21:10",
          "activity": "亲子睡前故事",
          "type": "fixed",
          "duration_min": 40,
          "notes": "不可取消"
        }
      ]
    },
    {
      "day": "wednesday",
      "slots": [
        {
          "time_start": "07:00",
          "time_end": "07:50",
          "activity": "晨间例程（起床/洗漱/早饭/打卡）",
          "type": "fixed",
          "duration_min": 50,
          "notes": "贴纸打卡，完成例程+1星"
        },
        {
          "time_start": "17:00",
          "time_end": "17:25",
          "activity": "游泳前提前晚饭/简餐",
          "type": "fixed",
          "duration_min": 25,
          "notes": "满足18:30前吃上晚饭的硬约束"
        },
        {
          "time_start": "17:30",
          "time_end": "18:30",
          "activity": "游泳课",
          "type": "fixed",
          "duration_min": 60,
          "notes": "课后返程，到家后只做洗澡、补水和少量补充"
        },
        {
          "time_start": "19:00",
          "time_end": "19:45",
          "activity": "到家洗澡/恢复",
          "type": "fixed",
          "duration_min": 45,
          "notes": "游泳日不安排主动学习任务"
        },
        {
          "time_start": "20:30",
          "time_end": "21:10",
          "activity": "亲子睡前故事",
          "type": "fixed",
          "duration_min": 40,
          "notes": "仅保留低压力陪伴"
        }
      ]
    },
    {
      "day": "thursday",
      "slots": [
        {
          "time_start": "07:00",
          "time_end": "07:50",
          "activity": "晨间例程（起床/洗漱/早饭/打卡）",
          "type": "fixed",
          "duration_min": 50,
          "notes": "贴纸打卡，完成例程+1星"
        },
        {
          "time_start": "17:00",
          "time_end": "17:30",
          "activity": "到家缓冲/自由玩耍",
          "type": "free",
          "duration_min": 30,
          "notes": "不安排任何任务"
        },
        {
          "time_start": "17:30",
          "time_end": "17:48",
          "activity": "英语动画（Peppa Pig × 1集）+ 跟读句子",
          "type": "flexible",
          "duration_min": 18,
          "notes": "妈妈引导开口，不纠正发音"
        },
        {
          "time_start": "18:30",
          "time_end": "19:00",
          "activity": "晚饭",
          "type": "fixed",
          "duration_min": 30,
          "notes": "最晚18:30必须开饭"
        },
        {
          "time_start": "20:30",
          "time_end": "21:10",
          "activity": "亲子睡前故事",
          "type": "fixed",
          "duration_min": 40,
          "notes": "不可取消"
        }
      ]
    },
    {
      "day": "friday",
      "slots": [
        {
          "time_start": "07:00",
          "time_end": "07:50",
          "activity": "晨间例程（起床/洗漱/早饭/打卡）",
          "type": "fixed",
          "duration_min": 50,
          "notes": "贴纸打卡，完成例程+1星"
        },
        {
          "time_start": "17:30",
          "time_end": "20:30",
          "activity": "爷爷奶奶来访家庭日",
          "type": "fixed",
          "duration_min": 180,
          "notes": "全程家庭陪伴，不安排学习任务"
        },
        {
          "time_start": "20:30",
          "time_end": "21:10",
          "activity": "亲子睡前故事",
          "type": "fixed",
          "duration_min": 40,
          "notes": "不可取消"
        }
      ]
    },
    {
      "day": "saturday",
      "slots": [
        {
          "time_start": "10:00",
          "time_end": "11:30",
          "activity": "乐高编程课",
          "type": "fixed",
          "duration_min": 90,
          "notes": "固定兴趣班"
        },
        {
          "time_start": "17:30",
          "time_end": "17:45",
          "activity": "有声绘本共读",
          "type": "flexible",
          "duration_min": 15,
          "notes": "小熊很忙系列，爸爸/妈妈陪读"
        },
        {
          "time_start": "18:30",
          "time_end": "19:00",
          "activity": "晚饭",
          "type": "fixed",
          "duration_min": 30,
          "notes": ""
        },
        {
          "time_start": "20:30",
          "time_end": "21:10",
          "activity": "亲子睡前故事",
          "type": "fixed",
          "duration_min": 40,
          "notes": "爸爸讲"
        }
      ]
    },
    {
      "day": "sunday",
      "slots": [
        {
          "time_start": "14:00",
          "time_end": "17:00",
          "activity": "家庭自由活动时间",
          "type": "fixed",
          "duration_min": 180,
          "notes": "固定保护时段，不安排任务"
        },
        {
          "time_start": "18:30",
          "time_end": "19:00",
          "activity": "晚饭",
          "type": "fixed",
          "duration_min": 30,
          "notes": ""
        },
        {
          "time_start": "20:30",
          "time_end": "21:10",
          "activity": "亲子睡前故事",
          "type": "fixed",
          "duration_min": 40,
          "notes": "睡前可做1分钟本周好玩的事回顾"
        }
      ]
    }
  ],
  "weekly_goals": [
    "晨间例程：5天中完成≥3天",
    "英语开口：每次看动画后至少说1句",
    "精细动作游戏：完成≥1次（恐龙主题）",
    "睡前故事：每天不间断"
  ],
  "key_constraints": [
    "18:30前必须开始晚饭",
    "21:00后不安排认知任务",
    "周三游泳日不加任务",
    "周五家庭日不安排任务",
    "周日14:00-17:00家庭自由时间"
  ]
}
```

---

## 六、变更说明示例

> 以下是一个增量更新的示例，假设两周后游泳课时间从周三改到了周二。

---

### 📋 本次变更说明（v1.0 → v1.1）

**变更日期**：2024-09-16

**变更内容**：
- 游泳课时间：周三 17:30-18:30 → 周二 17:30-18:30

**影响时间段**：
- **周二**：原安排"精细动作游戏（17:30）"取消，改为游泳课。由于仍需满足"18:30 前必须吃上晚饭"，晚饭前移至 17:00-17:25，当晚不安排任何主动学习任务，仅保留睡前共读。
- **周三**：恢复为正常工作日安排，将精细动作游戏（原周二内容）移入周三 17:30-17:45，晚饭恢复 18:30-19:00。

**未变动部分**：其余所有安排保持不变。

### 完整更新后的周课表（v1.1）

| 时间段 | 周一 | 周二 | 周三 | 周四 | 周五 | 周六 | 周日 |
|--------|------|------|------|------|------|------|------|
| **7:00-7:50**<br>起床~出门 | 🔒 起床、洗漱、早饭<br>（例程打卡：贴今日星星） | 同周一 | 同周一 | 同周一 | 同周一 | 自然醒<br>（无须打卡） | 自然醒 |
| **8:10-16:30**<br>幼儿园 | 🔒 幼儿园 | 🔒 幼儿园 | 🔒 幼儿园 | 🔒 幼儿园 | 🔒 幼儿园 | — | — |
| **17:00-17:30**<br>到家缓冲 | ⚪ 自由玩耍/零食 | 🔒 游泳前提前晚饭/简餐<br>（17:00-17:25，保护血糖） | ⚪ 自由玩耍/零食 | ⚪ 自由玩耍/零食 | 🔒 爷爷奶奶来<br>（自由陪伴） | ⚪ 自由玩耍 | ⚪ 自由玩耍 |
| **17:30-18:15**<br>黄金学习时段 | 📚 英语动画<br>Bluey × 1集（≤15分钟）<br>+ 简单跟说（3分钟） | 🔒 游泳课<br>17:30-18:30 | 📚 精细动作游戏<br>撕纸/捏泥/串珠<br>（≤15分钟，游戏化） | 📚 英语动画<br>Peppa Pig × 1集<br>+ 跟读句子（3分钟） | 🔒 家庭日<br>（无任务） | 📚 有声绘本<br>小熊很忙系列<br>（妈妈/爸爸陪读，≤15分钟） | ⚪ 家庭自由时间<br>（14:00-17:00固定保留） |
| **18:15-18:30**<br>准备晚饭 | 🟡 帮忙摆碗筷<br>（例程任务+1分） | 🔒 游泳课进行中<br>不安排其他事项 | 🟡 帮忙摆碗筷<br>（例程任务+1分） | 同周一 | 🔒 家庭日 | 🟡 帮忙摆碗筷 | 🔒 家庭自由时间 |
| **18:30-19:00**<br>晚饭 | 🔒 晚饭 | 🔒 返程/恢复<br>（晚饭已提前完成） | 🔒 晚饭 | 🔒 晚饭 | 🔒 晚饭（家庭聚餐） | 🔒 晚饭 | 🔒 晚饭 |
| **19:00-19:45**<br>晚饭后 | ⚪ 自由玩耍<br>（积木/角色扮演） | ⚪ 到家洗澡/少量补充<br>（游泳日不加任务） | ⚪ 自由玩耍<br>或精细动作收尾（≤10分钟） | ⚪ 自由玩耍 | 🔒 家庭日陪伴 | ⚪ 自由玩耍<br>爸爸陪玩积木/乐高 | 🔒 家庭自由时间结束<br>⚪ 自由玩耍 |
| **19:45-20:00**<br>爸爸陪伴时段 | 🟡 爸爸到家<br>自由互动 | 爸爸陪玩 | 📚 专注力小游戏<br>（找不同/迷宫，≤10分钟） | 🟡 爸爸陪玩<br>恐龙主题游戏 | 🔒 家庭日 | 🟡 户外/公园 | 🟡 亲子游戏 |
| **20:00-20:30**<br>洗漱例程 | 🔒 洗漱例程<br>（自主打卡表） | 🔒 洗漱 | 🔒 洗漱 | 🔒 洗漱 | 🔒 洗漱 | 🔒 洗漱 | 🔒 洗漱 |
| **20:30-21:15**<br>睡前陪伴 | 📚 亲子共读<br>睡前故事（10-15分钟）<br>🔒 不可取消 | 📚 亲子共读 | 📚 亲子共读 | 📚 亲子共读 | 📚 亲子共读 | 📚 亲子共读<br>（爸爸讲） | 📚 亲子共读 |
| **21:15** | 🔒 熄灯入睡 | 🔒 熄灯入睡 | 🔒 熄灯入睡 | 🔒 熄灯入睡 | 🔒 熄灯入睡 | 🔒 熄灯入睡 | 🔒 熄灯入睡 |


path: feishu_config.example.md
content: # 飞书配置模板（Feishu Config Example）

> 用途：family-cultivation-coach Skill 调用飞书 API 的配置模板
> 复制本文件为 `feishu_config.md` 后，填入自己的飞书域名、App Token 和 Table ID。
> `feishu_config.md` 是本地私有配置，不要提交到公开仓库。

---

## 应用信息

| 项目 | 值 |
|------|----|
| 多维表格名称 | 家庭养育系统 |
| App Token | `<YOUR_BITABLE_APP_TOKEN>` |
| 飞书域名 | `<YOUR_TENANT>.feishu.cn` |

---

## 表 ID

| 表名 | Table ID | 用途 |
|------|----------|------|
| 孩子画像 | `<TABLE_ID_CHILD_PROFILE>` | 基础信息，每次对话优先读取 |
| 课表版本 | `<TABLE_ID_SCHEDULES>` | 课表生成和更新时写入 |
| 每日记录 | `<TABLE_ID_DAILY_LOGS>` | 日常记录，只存当天已发生的事 |
| 每日日报 | `<TABLE_ID_DAILY_REPORTS>` | 每日生成并推送 |
| 每周复盘 | `<TABLE_ID_WEEKLY_REVIEWS>` | 每周汇总分析 |
| 累积洞察 | `<TABLE_ID_INSIGHTS>` | 长期趋势和规律 |
| 临时活动 | `<TABLE_ID_TEMP_EVENTS>` | 未来临时事件，日报/复盘/速记卡均来此查询 |

---

## API 调用基础路径

```text
# 读取表记录
GET https://open.feishu.cn/open-apis/bitable/v1/apps/{app_token}/tables/{table_id}/records

# 写入新记录
POST https://open.feishu.cn/open-apis/bitable/v1/apps/{app_token}/tables/{table_id}/records

# 更新已有记录
PUT https://open.feishu.cn/open-apis/bitable/v1/apps/{app_token}/tables/{table_id}/records/{record_id}

# 查询记录（带过滤条件）
POST https://open.feishu.cn/open-apis/bitable/v1/apps/{app_token}/tables/{table_id}/records/search
```

将上方路径中的变量替换为：

- `{app_token}` → `<YOUR_BITABLE_APP_TOKEN>`
- `{table_id}` → 对应表的 Table ID

---

## 常用查询示例

### 读取当前执行中的课表

```json
POST /apps/<YOUR_BITABLE_APP_TOKEN>/tables/<TABLE_ID_SCHEDULES>/records/search
{
  "filter": {
    "conjunction": "and",
    "conditions": [
      {
        "field_name": "状态",
        "operator": "is",
        "value": ["当前执行中"]
      }
    ]
  }
}
```

### 读取最近14天每日记录

```json
POST /apps/<YOUR_BITABLE_APP_TOKEN>/tables/<TABLE_ID_DAILY_LOGS>/records/search
{
  "filter": {
    "conjunction": "and",
    "conditions": [
      {
        "field_name": "日期",
        "operator": "isAfter",
        "value": ["14daysAgo"]
      }
    ]
  },
  "sort": [{ "field_name": "日期", "order": "DESC" }]
}
```

### 写入每日记录

```json
POST /apps/<YOUR_BITABLE_APP_TOKEN>/tables/<TABLE_ID_DAILY_LOGS>/records
{
  "fields": {
    "日期": "<TODAY_TIMESTAMP>",
    "孩子昵称": "<CHILD_NICKNAME>",
    "整体状态": "正常",
    "执行情况": ["英语输入", "睡前故事"],
    "亮点时刻": "<TODAY_HIGHLIGHT>",
    "困难点": "<TODAY_DIFFICULTY>",
    "孩子情绪": "稳定",
    "家长情绪": "稳定",
    "自由记录": "<FREE_NOTE>",
    "记录来源": "Skill写入"
  }
}
```

---

## 给 OpenClaw 的配置指令模板

```text
请保存以下飞书多维表格配置，后续所有养育系统相关的飞书操作都使用这份配置：

App Token：<YOUR_BITABLE_APP_TOKEN>
飞书域名：<YOUR_TENANT>.feishu.cn

表 ID 对应关系：
- 孩子画像：<TABLE_ID_CHILD_PROFILE>
- 课表版本：<TABLE_ID_SCHEDULES>
- 每日记录：<TABLE_ID_DAILY_LOGS>
- 每日日报：<TABLE_ID_DAILY_REPORTS>
- 每周复盘：<TABLE_ID_WEEKLY_REVIEWS>
- 累积洞察：<TABLE_ID_INSIGHTS>
- 临时活动：<TABLE_ID_TEMP_EVENTS>

配置保存后，请做以下验证：
1. 调用飞书 API 读取「孩子画像」表的所有记录
2. 确认返回了之前写入的孩子信息
3. 返回记录内容让我确认数据是否正确
```


path: rules/feishu_integration.md
content: # 飞书集成方案（Feishu Integration）

> 适用版本：family-cultivation-coach v1.2+
> 前提条件：OpenClaw 已接入飞书机器人

---

## 一、多维表格结构（照此在飞书建表）

共 6 张表，建在同一个多维表格空间内。

---

### 表1：孩子画像（child_profile）

> 长期稳定信息，变动不频繁。每次对话优先读取此表。

| 字段名 | 字段类型 | 说明 |
|--------|---------|------|
| 昵称 | 文本 | 主键，唯一标识 |
| 年龄 | 数字 | 岁 |
| 上学阶段 | 单选 | 幼小中班/大班/小学1年级/… |
| 性格标签 | 多选 | 活跃/敏感/随和/固执/好奇心强/… |
| 兴趣 | 文本 | 逗号分隔 |
| 优势 | 文本 | |
| 短板描述 | 文本 | 行为描述，不贴标签 |
| 培养重点 | 文本 | 当前最重要的1-3个方向 |
| 最后更新 | 日期 | 自动记录 |
| 备注 | 文本 | |

---

### 表2：课表版本（schedules）

> 每次生成或更新课表，写入一条记录。

| 字段名 | 字段类型 | 说明 |
|--------|---------|------|
| 版本号 | 文本 | v1.0 / v1.1 / … |
| 孩子昵称 | 关联字段 | 关联孩子画像表 |
| 生效日期 | 日期 | |
| 状态 | 单选 | 当前执行中 / 历史版本 |
| 课表JSON | 文本（长文本） | 结构化数据，供后续读取 |
| 课表摘要 | 文本 | 人类可读的简短描述 |
| 变更说明 | 文本 | 相比上一版本改了什么 |
| 生成来源 | 单选 | Skill生成 / 手动编辑 |

---

### 表3：每日记录（daily_logs）

> 最核心的表。每天的执行情况、亮点、困难全在这里。

| 字段名 | 字段类型 | 说明 |
|--------|---------|------|
| 日期 | 日期 | 主键之一 |
| 孩子昵称 | 关联字段 | |
| 整体状态 | 单选 | 很好 / 正常 / 有点难 / 很难 |
| 执行情况 | 多选 | 英语✅ / 数学✅ / 钢琴✅ / 跆拳道✅ / … |
| 跳过的任务 | 文本 | 哪些没做，简短说明原因 |
| 亮点时刻 | 文本 | 今天最好的1件事 |
| 困难点 | 文本 | 今天最难的1件事 |
| 孩子情绪 | 单选 | 稳定 / 有波动 / 情绪很差 |
| 家长情绪 | 单选 | 稳定 / 有点累 / 很疲惫 |
| 自由记录 | 文本（长文本） | 任何想写的内容 |
| 记录来源 | 单选 | Skill写入 / 手动录入 |
| 记录时间 | 时间 | 自动 |

---

### 表4：每日日报（daily_reports）

> 每天由 Skill 自动生成，推送到飞书，同时存档。

| 字段名 | 字段类型 | 说明 |
|--------|---------|------|
| 日期 | 日期 | |
| 孩子昵称 | 关联字段 | |
| 今日进展 | 文本 | 今天完成了什么、有什么亮点 |
| 明日安排 | 文本 | 明天的课表重点，2-3条 |
| 当前问题 | 文本 | 近期观察到的需要关注的点 |
| 思考与建议 | 文本 | Skill 基于近期记录给的1条建议 |
| 推送状态 | 单选 | 已推送 / 未推送 |
| 生成时间 | 时间 | 自动 |

---

### 表5：每周复盘（weekly_reviews）

> 每周由 Skill 自动汇总生成，也可手动触发。

| 字段名 | 字段类型 | 说明 |
|--------|---------|------|
| 周次 | 文本 | 如 2024-W37 |
| 孩子昵称 | 关联字段 | |
| 整体状态评分 | 数字 | 1-5，本周整体节奏感 |
| 执行率 | 数字 | % 本周计划任务完成比例 |
| 最顺的安排 | 文本 | |
| 最难执行的安排 | 文本 | |
| 孩子本周变化 | 文本 | |
| 家长自我观察 | 文本 | |
| 下周只抓1件事 | 文本 | |
| 是否需要调整课表 | 单选 | 不需要 / 小调整 / 需要重新生成 |
| Skill分析摘要 | 文本（长文本） | |
| 生成时间 | 时间 | |

---

### 表6：累积洞察（insights）

> Skill 基于多周数据识别出的模式和趋势，长期积累。

| 字段名 | 字段类型 | 说明 |
|--------|---------|------|
| 生成日期 | 日期 | |
| 孩子昵称 | 关联字段 | |
| 洞察类型 | 单选 | 执行规律 / 情绪规律 / 学习进展 / 家长状态 / 风险预警 |
| 洞察内容 | 文本（长文本） | 具体发现 |
| 数据依据 | 文本 | 基于哪几周 / 哪几条记录 |
| 建议行动 | 文本 | 1条具体可执行的建议 |
| 状态 | 单选 | 新发现 / 持续观察 / 已处理 |

---

### 表7：临时活动（temp_events）

> 独立存储未来临时活动，与每日记录完全分离。
> 日报、周复盘、速记卡生成时均来此表查询，不写入每日记录表。

| 字段名 | 字段类型 | 说明 |
|--------|---------|------|
| 活动名称 | 文本 | 如"恐龙展览" |
| 孩子昵称 | 关联字段 | |
| 活动日期 | 日期 | 活动发生的具体日期，核心查询字段 |
| 活动时间 | 文本 | 如 15:00-17:00 |
| 影响的常规任务 | 文本 | 如"跆拳道取消"，可为空 |
| 需要准备的事项 | 文本 | 如"带水、换衣服"，可为空 |
| 提前提醒天数 | 数字 | 默认1；有准备事项自动设2；用户可手动指定 |
| 状态 | 单选 | 待发生 / 已完成 / 已取消 |
| 创建时间 | 时间 | 自动记录 |

---

## 二、Skill 与飞书的交互规则

### 2.1 触发时机

| 触发条件 | Skill 动作 |
|---------|-----------|
| 用户说"记录一下今天…" | 写入每日记录表 |
| 用户说"帮我生成日报" | 读取今日记录 → 生成日报 → 写入日报表 → 推送飞书 |
| 用户说"做本周复盘" | 读取本周所有每日记录 → 生成复盘 → 写入复盘表 → 推送飞书 |
| 用户说"最近…怎么样" | 查询每日记录表 → 分析趋势 → 直接回复 |
| 用户生成或更新课表 | 写入课表版本表（旧版本改为"历史版本"） |
| 每天固定时间（OpenClaw定时） | 读取当日课表 → 推送今日课表提醒 |

### 2.2 每次对话开始时的读取顺序

1. 读取孩子画像表（获取最新基础信息）
2. 读取课表版本表中状态为"当前执行中"的记录（获取现行课表）
3. 如果涉及分析，读取最近 14 天的每日记录
4. 如果涉及复盘，读取本周所有每日记录 + 最近 2 条累积洞察

### 2.3 写入规则

- 每日记录：每天最多写入 1 条（同一天再次记录则追加到自由记录字段，不新建行）
- 每日记录只存**当天已发生的事**，未来活动不写入此表
- 课表版本：每次更新时，先把旧版本状态改为"历史版本"，再写入新版本
- 日报：每天只生成 1 份，已生成则更新而不是新建
- 临时活动：写入临时活动表（temp_events），不写入每日记录表
- 洞察：不频繁生成，满足以下任一条件才触发：
  - 用户主动要求分析
  - 周复盘后发现持续性规律（≥3周）
  - 出现明显的执行风险信号

### 2.4 临时活动自动识别与写入规则

用户记录内容时，Skill 自动判断是否为未来临时事件，**无需用户添加任何标签**。

**识别信号词**：

| 信号类型 | 示例词 | 判断结果 |
|---------|-------|---------|
| 未来日期 | "下周三""明天""后天""3月31日" | 标记为临时活动 |
| 活动类型 | "展览""活动""出去玩""参观""聚会""临时课" | 确认为临时活动 |
| 影响常规 | "跆拳道取消""不上课""改时间" | 记录影响的常规任务 |
| 需要准备 | "要带""记得准备""提前订""换衣服" | 自动设提前2天提醒 |

**写入流程**：

```
用户说："下周三有恐龙展览，15:00-17:00，要带水，跆拳道取消"
    ↓ Skill 识别为临时活动
    ↓ 写入 temp_events 表：
      · 活动名称：恐龙展览
      · 活动日期：下周三（具体日期）
      · 活动时间：15:00-17:00
      · 影响的常规任务：跆拳道取消
      · 需要准备的事项：带水
      · 提前提醒天数：2（因为有"要带"）
      · 状态：待发生
    ↓ 回复确认：
      "✅ 已记录：下周三恐龙展览（15:00-17:00）
       跆拳道当天取消，记得带水
       将在周一和周二日报中提醒你"
```

**提醒天数判断规则**：
- 有"要带 / 准备 / 提前订 / 换"等准备动作 → 提前 2 天提醒
- 普通外出活动，无特殊准备 → 提前 1 天提醒
- 用户明确说"提前X天提醒" → 按用户设定

**活动完成后自动更新状态**：
活动日期过后，Skill 下次读取 temp_events 时，自动将已过期的"待发生"记录改为"已完成"。

---

## 三、今日速记卡（每日定时推送）

> 每天固定时间由 OpenClaw 推送，用户回复即完成记录，无需主动想起来。
> 建议推送时间：晚上 20:00（孩子洗漱时，家长有片刻空档）

### 速记卡动态生成规则

**速记卡选项不是固定的，每次推送前必须动态生成。** 生成步骤如下：

**第一步：读取当前课表**
从课表版本表中读取状态为"当前执行中"的课表 JSON，提取全周所有出现过的任务类型，去重后作为选项池。

**第二步：查询今日是否有临时活动**
查询 temp_events 表，条件：活动日期 = 今天 且 状态 = 待发生。
有结果则在速记卡顶部插入"📅 今日临时活动"区块，并将被取消的常规任务从选项里标注"（今日取消）"。

**第三步：识别今日是否有兴趣班**
根据今天的星期几，从课表 JSON 中找出今天的固定兴趣班，在对应选项旁标注"📍今天有课"。

**第三步：按频次排序选项**
高频任务（每天或5天/周）排在前面；低频任务（1-2次/周）排在后面；今日有课的兴趣班排在首位。

**第四步：编号分配**
按最终排序从 1 开始编号，每次推送的编号顺序保持稳定（同一课表版本内不变），避免用户记错。

---

### 速记卡格式（动态示例）

以 Sunny 的课表为例，周三（轮滑日）的速记卡：

```
📋 Sunny 今日速记 · 周三 [日期]
━━━━━━━━━━━━━━━━━━
今天完成了哪些？回复编号（可多选，空格隔开）

📍今天有课
6 轮滑

每日任务
1 晨间例程    2 英语输入
3 睡前共读

本周任务
4 英语输出    5 认字阅读
7 钢琴练习    8 数学
9 科学课

今天孩子状态？
A 很好  B 正常  C 有点难  D 很难

今天一句话（可跳过，直接发数字和字母也行）
━━━━━━━━━━━━━━━━━━
```

同一家庭周一（无兴趣班）的速记卡：

```
📋 Sunny 今日速记 · 周一 [日期]
━━━━━━━━━━━━━━━━━━
今天完成了哪些？回复编号（可多选，空格隔开）

每日任务
1 晨间例程    2 英语输入
3 睡前共读

本周任务
4 认字阅读    5 数学
6 钢琴练习    7 英语输出

今天孩子状态？
A 很好  B 正常  C 有点难  D 很难

今天一句话（可跳过，直接发数字和字母也行）
━━━━━━━━━━━━━━━━━━
```

---

### 课表更新后的速记卡同步规则

| 触发条件 | 速记卡变化 |
|---------|-----------|
| 新增任务（如加入游泳） | 下次推送起，新任务出现在选项里 |
| 删除任务（如暂停数学） | 下次推送起，该选项从卡片消失 |
| 兴趣班换时间 | 对应星期的"📍今天有课"标注自动更新 |
| 升学/课表大版本更新 | 选项池完全重新从新课表生成 |

**注意**：编号会在课表更新后重新分配，提醒用户"课表已更新，选项编号有变化"。

### 用户回复格式解析规则

用户可以用任意自然格式回复，Skill 负责解析：

| 用户回复示例 | Skill 解析结果 |
|------------|--------------|
| `1 9 B` | 英语输入✅ 睡前共读✅ 状态：正常 |
| `1359 A 今天主动说了一句英文` | 4项完成 状态：很好 亮点：今天主动说了一句英文 |
| `都完成了 B 钢琴有点抵触` | 全部✅ 状态：正常 困难点：钢琴有点抵触 |
| `就睡前故事 D 今天情绪很差` | 睡前共读✅ 状态：很难 困难点：今天情绪很差 |

**解析优先级**：
1. 数字 → 匹配执行情况选项
2. 字母 A/B/C/D → 匹配孩子状态
3. 其余文字 → 写入「自由记录」字段
4. 无法识别的内容 → 整体写入「自由记录」，不报错

### 速记卡回复后的自动流程

```
用户回复速记卡
    ↓
Skill 解析内容 → 写入每日记录表
    ↓
自动生成日报（无需用户再次触发）
    ↓
推送日报到飞书（同一会话线程）
    ↓
结束，用户不需要做任何其他操作
```

**回复确认格式**（写入成功后自动发送）：
```
✅ 已记录 · [日期]

完成：[列出完成的项目]
状态：[孩子状态]
[如有自由记录则显示]

正在生成今日日报...
```

### 特殊情况处理

| 情况 | 处理方式 |
|------|---------|
| 用户没有回复速记卡 | 次日速记卡附加提示"昨天的记录还没填，需要补一下吗？" |
| 用户回复"跳过"或"今天没时间" | 记录为当日无记录，不写入数据，不生成日报 |
| 用户回复内容无法解析 | 整体写入自由记录字段，回复"已记录，稍后可以补充详情" |
| 当天已有记录，用户再次回复 | 追加到自由记录字段，不新建行，回复"已追加到今日记录" |

---

## 四、日报格式与生成规则

> 速记卡回复后自动生成，无需用户触发。格式固定，便于伴侣快速浏览。

### 标准日报格式

```
📅 [孩子昵称] 养育日报 · [日期] · 周[X]
━━━━━━━━━━━━━━━━━━
✅ 今日进展
[今天完成了什么，有什么亮点，1-3条]

📋 明日安排
[明天课表重点，2-3条，具体到时间段]

[如明日有 upcoming 事件，插入以下区块：]
📅 明日临时活动
· [活动名称] [时间]
  [影响的常规任务，如有]
  [需要准备的事项，如有]

🔍 当前关注
[近期观察到的需要注意的点，1条]

💡 今日思考
[基于近期记录的1条具体建议]
━━━━━━━━━━━━━━━━━━
如需调整明日安排，回复「调整+说明」
```

### 日报生成步骤（按顺序执行）

```
第一步：读取今日速记卡回复 → 生成"今日进展"

第二步：读取明日课表时间块 → 生成"明日安排"

第三步：查询 temp_events 表
        条件：活动日期在未来 remind_days 天内
              且状态 = 待发生
        ↓
        有符合条件的活动 → 插入"📅 临时活动提醒"区块
        无 → 跳过此区块

第四步：读取最近7天记录 → 生成"当前关注"

第五步：基于近期数据 → 生成"今日思考"
```

### 临时活动提醒触发逻辑

| 活动提前提醒天数 | 日报中出现位置 | 标题文字 |
|--------------|-------------|---------|
| 提前 1 天 | 活动前一天日报 | 📅 明日临时活动 |
| 提前 2 天 | 活动前两天日报 | 📅 后天临时活动提醒 |
| 提前 2 天 | 活动前一天日报 | 📅 明日临时活动（再次提醒） |

**提前2天提醒示例**（周三有展览，需要带东西）：

周一日报：
```
📋 明日安排（周二）
· 16:50 英语绘本共读
· 18:30 钢琴练习

📅 后天临时活动提醒
· 🦕 周三 恐龙展览 15:00-17:00
  跆拳道当天取消
  ⏰ 建议明天提前准备：带水、换好衣服
```

周二日报：
```
📋 明日安排（周三）
· 晨间英语例程

📅 明日临时活动
· 🦕 恐龙展览 15:00-17:00（跆拳道取消）
  记得带：水
  建议提前告知 Sunny 今天的安排
```

---

## 五、周复盘数据完整性检查

> 用户触发"做本周复盘"时，先做数据完整性检查，再生成复盘。

### 检查逻辑

```
读取本周（周一到今天）的每日记录条数
    ↓
记录天数 ≥ 5天 → 直接生成复盘
记录天数 3-4天 → 提示缺失天数，询问是否继续
记录天数 ≤ 2天 → 提示数据不足，建议先补充记录
```

### 复盘末尾自动附加：下周提前知道

复盘生成后，额外查询 temp_events 表：
- 条件：活动日期在下周范围内，且状态 = 待发生
- 有结果 → 在复盘末尾插入"📅 下周提前知道"区块
- 无结果 → 此区块不出现，不留空白占位

```
📅 下周提前知道
· 周[X] [活动名称] [时间]
  [影响的常规任务]
  [需要准备的事项]
  → 建议周[X-1] 提前准备
```

**示例**：
```
📅 下周提前知道
· 周三 恐龙展览 15:00-17:00
  跆拳道当天取消
  需要带：水、换好衣服
  → 建议周二提前告知 Sunny 并准备好装备
```

下周无临时活动 → 此区块不出现，不留空白占位。

### 提示格式

```
📊 本周数据检查

已有记录：[X] 天（[列出有记录的星期]）
缺少记录：[列出缺少的星期]

[如果3-4天]：
数据基本够用，可以生成复盘，但缺失的几天会影响分析准确性。
继续生成？还是先补一下缺失的天？

[如果≤2天]：
本周记录较少，建议先补充缺失天的记录，
复盘质量会更高。需要我逐天问你吗？
```

---

## 六、今日课表提醒格式

> 每天早晨固定推送，由 OpenClaw 定时触发。

```
🌅 [孩子昵称] 今日课表 · 周[X]

重点任务：
• [时间段] [任务名]
• [时间段] [任务名]
• [时间段] [任务名]

今天是兴趣班日：[兴趣班名称]（[时间]）
⚠️ [如有冲突提醒]

今日只抓1件事：[本周重点中的今日对应项]
```

---

## 五、飞书建表步骤（操作指引）

1. 打开飞书 → 新建多维表格 → 命名为"家庭养育系统"
2. 按上方表结构依次创建 6 张表（从表1到表6）
3. 字段类型严格按说明设置（单选字段需要预先填入选项）
4. 表与表之间用"关联字段"连接（都关联到孩子画像表的昵称字段）
5. 建完后，把多维表格的 App Token 和各表的 Table ID 提供给 OpenClaw 配置

**需要提供给 OpenClaw 的信息：**
- 飞书应用的 App ID 和 App Secret
- 多维表格的 App Token（在表格URL中可以找到）
- 每张表的 Table ID（在表格设置中可以找到）
- 接收推送的飞书用户 OpenID 或群 ID


path: rules/notion_integration.md
content: # Notion 集成方案（Notion Integration）

> 适用版本：family-cultivation-coach v1.4+
> 定位：飞书方案的低门槛替代，适合没有飞书环境的普通用户
> 前提条件：有 Notion 账号，获取 API Key

---

## 一、与飞书方案的核心差异

| 能力 | 飞书方案 | Notion 方案 |
|------|---------|-----------|
| 数据存储 | 多维表格 | Notion Database |
| 初始化成本 | 高（6步，有卡点） | **低（3步，5分钟）** |
| 主动推送速记卡 | ✅ 机器人原生推送 | ❌ 无推送，需用户主动触发 |
| 日报推送 | ✅ 飞书消息 | ❌ 写入 Notion，需主动查看 |
| 手动编辑体验 | 多维表格 | **Notion 界面（更友好）** |
| 跨设备访问 | ✅ | ✅ |
| 家人共享 | ✅ | ✅ 共享页面即可 |
| 数据隐私 | 字节跳动服务器 | Notion 服务器 |
| 国内访问稳定性 | 稳定 | 偶尔需要代理 |

**Notion 方案适合**：没有飞书环境、不需要主动推送提醒、希望最快上手的用户。

**飞书方案适合**：已有飞书机器人、需要定时速记卡推送、希望完全自动化的用户。

---

## 二、初始化步骤（用户操作，约5分钟）

### 步骤1：创建 Notion Integration（2分钟）

1. 打开 https://www.notion.so/my-integrations
2. 点击「New integration」
3. 填写名称：`family-cultivation-coach`
4. 关联到你的 Workspace
5. 点击「Submit」
6. 复制页面上的 **Internal Integration Token**（格式：`secret_xxxxxxxx`）

### 步骤2：让 Skill 自动建库（Skill 执行）

把以下指令发给 Skill：

```
请使用 Notion API 在我的 Notion 中初始化家庭养育系统数据库。
Notion API Key：[粘贴你的 Token]
请创建所有必要的数据库并返回各数据库的 ID。
```

Skill 会自动创建 6 个数据库并返回 ID。

### 步骤3：共享数据库给 Integration（1分钟）

Skill 建完库后，每个数据库页面右上角点「···」→「Add connections」→ 选择 `family-cultivation-coach`。
（共享后 Skill 才有读写权限）

完成，可以开始使用。

---

## 三、数据库结构

共 6 个 Notion Database，结构与飞书方案对应。

---

### DB1：孩子画像（child_profile）

| 字段名 | 字段类型 | 说明 |
|--------|---------|------|
| 昵称 | Title | 主键 |
| 年龄 | Number | 岁 |
| 上学阶段 | Select | 幼儿园小班/中班/大班/小学1年级/… |
| 性格标签 | Multi-select | 活跃外向/安静内向/情绪敏感/随和/好奇心强/… |
| 兴趣 | Rich Text | |
| 优势 | Rich Text | |
| 短板描述 | Rich Text | 行为描述，不贴标签 |
| 培养重点 | Rich Text | 当前最重要的1-3个方向 |
| 最后更新 | Date | |
| 备注 | Rich Text | |

---

### DB2：课表版本（schedules）

| 字段名 | 字段类型 | 说明 |
|--------|---------|------|
| 版本号 | Title | v1.0 / v1.1 / … |
| 孩子昵称 | Relation | 关联孩子画像 |
| 生效日期 | Date | |
| 状态 | Select | 当前执行中 / 历史版本 |
| 课表JSON | Rich Text | 结构化数据 |
| 课表摘要 | Rich Text | 人类可读的简短描述 |
| 变更说明 | Rich Text | |
| 生成来源 | Select | Skill生成 / 手动编辑 |

---

### DB3：每日记录（daily_logs）

| 字段名 | 字段类型 | 说明 |
|--------|---------|------|
| 日期 | Title（日期格式） | 如 2024-09-03 |
| 孩子昵称 | Relation | |
| 整体状态 | Select | 很好 / 正常 / 有点难 / 很难 |
| 执行情况 | Multi-select | 英语输入/英语输出/数学/认字阅读/钢琴练习/跆拳道/轮滑/科学课/睡前故事/晨间例程 |
| 跳过的任务 | Rich Text | |
| 亮点时刻 | Rich Text | |
| 困难点 | Rich Text | |
| 孩子情绪 | Select | 稳定 / 有波动 / 情绪很差 |
| 家长情绪 | Select | 稳定 / 有点累 / 很疲惫 |
| 自由记录 | Rich Text | |
| 记录来源 | Select | Skill写入 / 手动录入 |

---

### DB4：每日日报（daily_reports）

| 字段名 | 字段类型 | 说明 |
|--------|---------|------|
| 日期 | Title（日期格式） | |
| 孩子昵称 | Relation | |
| 今日进展 | Rich Text | |
| 明日安排 | Rich Text | |
| 当前问题 | Rich Text | |
| 思考与建议 | Rich Text | |
| 状态 | Select | 已生成 / 已推送 |

---

### DB5：每周复盘（weekly_reviews）

| 字段名 | 字段类型 | 说明 |
|--------|---------|------|
| 周次 | Title | 如 2024-W37 |
| 孩子昵称 | Relation | |
| 整体状态评分 | Number | 1-5 |
| 执行率 | Number | 百分比 |
| 最顺的安排 | Rich Text | |
| 最难执行的安排 | Rich Text | |
| 孩子本周变化 | Rich Text | |
| 家长自我观察 | Rich Text | |
| 下周只抓1件事 | Rich Text | |
| 是否需要调整课表 | Select | 不需要 / 小调整 / 需要重新生成 |
| Skill分析摘要 | Rich Text | |

---

### DB6：累积洞察（insights）

| 字段名 | 字段类型 | 说明 |
|--------|---------|------|
| 生成日期 | Title（日期格式） | |
| 孩子昵称 | Relation | |
| 洞察类型 | Select | 执行规律/情绪规律/学习进展/家长状态/风险预警 |
| 洞察内容 | Rich Text | |
| 数据依据 | Rich Text | |
| 建议行动 | Rich Text | |
| 状态 | Select | 新发现 / 持续观察 / 已处理 |

---

### DB7：临时活动（temp_events）

> 独立存储未来临时活动，与每日记录完全分离。
> 日报、周复盘、速记卡生成时均来此库查询。

| 字段名 | 字段类型 | 说明 |
|--------|---------|------|
| 活动名称 | Title | 如"恐龙展览" |
| 孩子昵称 | Relation | |
| 活动日期 | Date | 核心查询字段 |
| 活动时间 | Rich Text | 如 15:00-17:00 |
| 影响的常规任务 | Rich Text | 如"跆拳道取消"，可为空 |
| 需要准备的事项 | Rich Text | 如"带水、换衣服"，可为空 |
| 提前提醒天数 | Number | 默认1；有准备事项自动设2 |
| 状态 | Select | 待发生 / 已完成 / 已取消 |

---

## 四、Notion API 调用路径

```
# 查询数据库记录
POST https://api.notion.com/v1/databases/{database_id}/query

# 创建新记录
POST https://api.notion.com/v1/pages

# 更新已有记录
PATCH https://api.notion.com/v1/pages/{page_id}

# 请求头（所有请求均需）
Authorization: Bearer {api_key}
Notion-Version: 2022-06-28
Content-Type: application/json
```

---

## 五、Skill 交互规则（Notion 模式）

### 每次对话开始时
1. 读取孩子画像库 → 获取基础信息
2. 查询课表版本库（状态=当前执行中）→ 获取现行课表
3. 如涉及分析 → 查询最近 14 天每日记录
4. 如涉及复盘 → 查询本周记录 + 最近 2 条累积洞察

### 记录触发方式（Notion 模式无主动推送）

| 用户操作 | Skill 动作 |
|---------|-----------|
| 发送"记录今天：…" | 解析内容 → 写入每日记录库 → 生成日报写入日报库 |
| 发送速记格式（数字+字母） | 解析 → 写入每日记录 → 生成日报 |
| 提到未来日期+活动 | 自动识别 → **写入 temp_events 库** → 后续日报/复盘自动查询插入预告 |
| 发送"做本周复盘" | 完整性检查 → 生成复盘 → 查询 temp_events 下周活动 → 写入复盘库 |
| 发送"最近…怎么样" | 查询记录 → 分析 → 直接回复 |
| 生成或更新课表 | 旧版本改为历史版本 → 写入新版本 |

**临时活动识别规则与飞书模式完全一致**，见 `rules/feishu_integration.md` 第二节 2.4。
**日报/复盘/速记卡查询 temp_events 的逻辑与飞书模式完全一致**，见 `rules/feishu_integration.md` 第四、五节。

### Notion 模式的速记格式

无主动推送，用户主动发以下格式即触发记录。**选项编号与飞书速记卡保持一致**，从当前课表动态生成，规则相同（见 `rules/feishu_integration.md` 第三节）。

用户发送时可以使用：

```
# 速记格式（推荐）
今天：[编号组合] [状态字母] [一句话（可选）]

# 示例
今天：1 3 B 睡前故事Sunny自己选了两本
今天：全完成 A 今天超级顺
今天：就睡前故事 D 情绪很差什么都不配合

# 自然语言也可以
记录今天：英语和睡前故事完成了，钢琴没练，情绪正常
```

用户不确定编号时，可以直接用任务名称，Skill 自动匹配：

```
今天：英语输入 睡前故事 B 今天主动说了一句英文
```

---

## 六、给用户的推送替代方案

Notion 没有主动推送能力，以下是替代方式（由用户自选）：

| 方式 | 成本 | 效果 |
|------|------|------|
| 手机设置每日提醒（20:00） | 零，30秒设置 | 提醒打开对话记录，不自动推送内容 |
| Notion 日历视图 | 零 | 可视化查看每日记录状态，缺失天一目了然 |
| 和飞书/微信机器人结合 | 中 | 机器人提醒 → 用户去 Notion 查看/记录 |

**推荐**：手机日历设置一个每天 20:00 的重复提醒，提醒文字写"记录 Sunny 今天"，点开后直接发给 Skill。成本为零，效果够用。

---

## 七、配置文件格式

Skill 存档 Notion 配置时使用以下格式：

```
存储后端：notion
API Key：secret_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
数据库 ID：
  孩子画像：xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  课表版本：xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  每日记录：xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  每日日报：xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  每周复盘：xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  累积洞察：xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  临时活动：xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
```


path: rules/reward_rules.md
content: # 游戏化与奖励规则（Reward & Gamification Rules）

> 本文件定义轻量游戏化设计和奖励机制的原则与示例，供课表设计时参考。

---

## 一、轻量游戏化原则

游戏化的目的是**降低启动门槛、增加参与感**，不是靠外部奖励替代内在动机。

### 核心原则

1. **轻量**：机制简单，家长不需要花大量精力维护
2. **即时**：反馈要快，不能"等一个月再看结果"
3. **过程导向**：奖励行为本身（做了/尝试了），而非只奖励结果（做对了/做好了）
4. **可退出**：如果某个机制孩子不喜欢，可以换，不要强迫
5. **避免通货膨胀**：奖励不要太多太滥，否则失去意义

---

## 二、奖励设计原则

### 2.1 奖励什么
✅ 推荐奖励的行为：
- 主动开始（不需要催促就开始了某个任务）
- 完成了（不论质量，完成本身值得认可）
- 尝试了新事物（即使没做好）
- 保持了某个习惯 N 天
- 帮助了家人

❌ 不建议只奖励：
- 成绩/得分（容易导致焦虑和结果导向）
- 比较（"比上次好"比"比别人好"更健康）
- 听话/不哭（这是情绪压抑，不是奖励目标）

### 2.2 奖励的形式
按孩子年龄和偏好选择，以下为推荐方向：

| 类型 | 示例 | 适合年龄 | 注意 |
|------|------|---------|------|
| 贴纸 / 印章 | 完成一个任务贴一颗星 | 3-7岁 | 贴纸板要孩子能看到 |
| 积分 / 金币 | 每次完成+1币，攒够兑换 | 5岁+ | 兑换物要现实可兑换 |
| 称号 / 徽章 | "今日专注小勇士" | 4-8岁 | 称号要有新鲜感 |
| 选择权 | 完成后孩子选今晚玩什么 | 4岁+ | 选择范围家长提前划定 |
| 特殊时光 | 攒够X颗星，爸爸带你去__ | 5岁+ | 兑换时间不能太远 |
| 口头认可 | 具体、真诚的语言认可 | 全年龄 | 避免空洞表扬"你真棒" |

---

## 三、贴纸 / 积分 / 称号系统示例

### 示例 A：简单贴纸板
```
【本周任务板】
□ 英语跟读 × 3次  → 完成3次：贴1颗金星
□ 自主阅读 × 5次  → 完成5次：贴1颗金星
□ 运动 × 4次      → 完成4次：贴1颗金星

本周攒够 3 颗金星 → 周末选一个家庭活动
```

### 示例 B：积分兑换制
```
每次完成任务 → +1 点
主动开始（无需提醒）→ +2 点（加倍）
连续完成 3 天 → +3 点（连击奖励）

积分兑换：
10 点 → 可选今晚故事由孩子来讲
20 点 → 可选一个周末小活动
30 点 → 家庭"你说了算日"（孩子做主一件大事）
```

### 示例 C：称号系统（适合喜欢角色扮演的孩子）
```
称号名称        获得条件
──────────────────────────────
🔰 探索小学徒  → 开始第一周
⭐ 坚持小勇士  → 连续执行 7 天
🌟 专注小达人  → 单次专注完成 ≥ 20 分钟
🏆 自律小冒险家 → 主动开始 5 次（无需提醒）
```

---

## 四、关于避免过度奖励的提醒

### 4.1 过度奖励的副作用
- 孩子开始"只为奖励而做"，撤销奖励后行为消失
- 孩子开始讨价还价："做完这个给我什么？"
- 家长维护成本越来越高

### 4.2 如何避免
1. **逐步减少外部奖励**：习惯稳定后，减少贴纸/积分，改为偶尔惊喜型认可
2. **强调内在感受**：引导孩子说出"做完之后感觉怎么样"，而不只是给奖励
3. **奖励要有意义**：奖励物/活动要孩子真正在乎，不要流于形式
4. **不要每件小事都奖励**：保留一些"该做的事就是该做的"的心理空间

### 4.3 何时暂停奖励机制
- 孩子已经养成了自发习惯时，可以降低奖励频率
- 当孩子开始抵触或觉得无聊时，换一种机制
- 当家长觉得维护成本太高时，简化或暂停

---

## 五、游戏化设计快查表

| 目标行为 | 推荐游戏化方式 | 示例 |
|---------|-------------|------|
| 主动开始任务 | 倒计时游戏 + 积分加倍 | "3分钟内自己开始，加倍得分" |
| 坚持每日习惯 | 连击奖励 | 连续3天不断链，获特别贴纸 |
| 接受挑战性任务 | 勇气徽章 | "敢于尝试"比"做对了"更值得奖励 |
| 自主整理/规则 | 检查表 + 盖章 | 完成晚间例程→自己盖章 |
| 英语开口 | 录音/角色扮演 | 录下来给家人"表演"，降低压力 |
| 运动 | 打卡地图 | 每次运动在地图上走一步，走到目标地点 |


path: rules/scheduling_rules.md
content: # 排程规则（Scheduling Rules）

> 本文件定义课表生成与更新时必须遵守的核心规则。

---

## 一、排程优先级规则

以下顺序**从高到低**，排程时严格遵守：

| 优先级 | 类别 | 说明 |
|--------|------|------|
| P0 | 睡眠 | 不可压缩。睡前缓冲 ≥ 30分钟（洗漱+情绪降温）。任何任务不得挤占睡前时间。|
| P0 | 吃饭 | 三餐时间固定，不可压缩，不得在吃饭时安排学习内容。|
| P1 | 固定兴趣班 | 已付费、已排期的兴趣班，调整代价高，优先保护。|
| P1 | 接送 & 通勤 | 固定约束，不可移动。|
| P2 | 运动 / 自由活动 | 每天至少保留 30 分钟，不可全周压缩。|
| P2 | 亲子陪伴时间 | 每天至少保留 15-30 分钟高质量陪伴，不被学习任务占用。|
| P3 | 主动学习任务 | 弹性安排，在P0-P2保障后才分配。|
| P4 | 锦上添花任务 | 有时间则做，无时间跳过。|

---

## 二、时间冲突处理规则

当排程出现冲突时，按以下流程处理：

### 规则 2.1：冲突优先级让步
低优先级事项让高优先级事项。不得反向处理（如压缩睡眠来保留学习任务）。

### 规则 2.2：兴趣班日特殊处理
- 兴趣班当天，**只保留 1 个**额外主动学习任务（不得叠加2个以上）
- 若兴趣班结束时间晚于 19:30，当晚不安排任何主动学习任务
- 若兴趣班会影响晚饭时间，应：
  - 前移晚饭至兴趣班前，或
  - 顺延晚饭至兴趣班后，并同步压缩晚间其他安排

### 规则 2.3：冲突必须说明
每当发生自动调整时，**必须在课表下方说明**：
```
⚙️ 时间调整说明：[星期X] [原安排] 与 [固定约束] 冲突，已将 [原安排] 
移至 [新时间段]，或压缩至 [调整后时长]。
```

### 规则 2.4：无法调整时的处理
若某项目在当周无合适时间段：
- 明确标注"本周跳过，下周优先补入"
- 不要强行塞入不合适的时间段
- 不要假装安排了但实际无法执行

---

## 三、时间块设计原则

### 3.1 单次主动学习时长上限
| 孩子年龄 | 建议单次上限 | 绝对上限（用户无特殊说明时） |
|---------|------------|--------------------------|
| 3-4岁 | 10-15分钟 | 20分钟 |
| 5-6岁 | 15-20分钟 | 25分钟 |
| 7-8岁 | 20-30分钟 | 35分钟 |
| 9岁以上 | 25-35分钟 | 45分钟 |

> 若用户明确要求更长时长，遵从用户设定，但在风险提醒中注明。

### 3.2 同一天重点培养任务上限
- 工作日（有兴趣班）：**最多 1 个**主动学习重点任务
- 工作日（无兴趣班）：**最多 2 个**主动学习重点任务
- 周末（有兴趣班）：**最多 1-2 个**（视兴趣班强度）
- 周末（无兴趣班）：**最多 2-3 个**（需保留自由时间 ≥ 1 小时）

### 3.3 晚间时间块原则
- 晚饭后到睡觉前：优先用于亲子陪伴、轻松活动、阅读、洗漱
- 晚间**不建议**安排高认知负荷的主动学习（如写字、数学练习）
- 晚间**可以**安排：听英语音频、亲子共读、轻度回顾（≤10分钟）

### 3.4 英语输入输出平衡
若培养目标包含英语：
- 不得只安排输入（听/看），必须至少包含 1 个输出活动/周（开口说、简单跟读、角色扮演等）
- 输出活动可以轻量，但必须存在

---

## 四、避免过载规则

### 4.1 全周检查
在输出前，检查全周主动学习总时长：
- 学龄前：全周主动学习 ≤ 5小时
- 小学低年级：全周主动学习 ≤ 7小时（不含学校作业）

### 4.2 连续学习检查
不得安排连续 2 个以上主动学习时间块，中间必须有 ≥ 15分钟缓冲/自由活动。

### 4.3 自由时间保障
每周至少保留：
- 工作日：每天 ≥ 30分钟自由活动/玩耍时间
- 周末：每天 ≥ 1小时无结构自由时间

---

## 五、增量更新规则

当用户提出修改请求时：

### 5.1 最小化改动原则
只修改受影响的时间段，其余保持不变。

### 5.2 影响传播检查
每次修改后，检查：
- 修改的时间段是否与其他安排产生新冲突
- 是否需要连带调整周边时间块

### 5.3 变更说明格式
每次增量更新必须输出变更说明：
```
📋 本次变更说明（v____ → v____）
变更日期：______
变更内容：
  - [修改项1]：[原设置] → [新设置]
  - [修改项2]：[原设置] → [新设置]
影响时间段：
  - [星期X] [时间段]：[调整说明]
未变动部分：其余安排保持不变。
```

---

## 六、特殊情况处理

| 情况 | 处理方式 |
|------|---------|
| 孩子生病 | 当周暂停所有主动学习，保留基本作息 |
| 家长无法陪伴（出差等） | 标注"家长不在"时段，调整为独立可执行任务 |
| 节假日/寒暑假 | 重新生成节假日版本，不沿用工作日模板 |
| 孩子情绪差 | 提醒家长允许弹性跳过，不强制执行 |


path: templates/child_profile_template.md
content: # 孩子画像模板（Child Profile Template）

> 版本：v1.0 | 最后更新：______ | 填写人：______

---

## 一、基本信息

| 项目 | 内容 |
|------|------|
| 孩子姓名 / 昵称 | |
| 年龄 | 岁 |
| 当前上学阶段 | □ 幼儿园小班 □ 中班 □ 大班 □ 小学一年级 □ ___ |

---

## 二、性格与兴趣

**性格特点**（可多选，补充描述）

- □ 安静内向
- □ 活跃外向
- □ 情绪敏感
- □ 随和适应力强
- □ 固执 / 有主见
- □ 喜欢规则和秩序
- □ 好奇心强
- □ 其他：______

**补充描述**（用1-3句话描述孩子的性格）：

> 

---

**当前兴趣与喜好**

| 类型 | 具体内容 |
|------|---------|
| 最喜欢做的事 | |
| 喜欢的游戏 / 玩具 | |
| 喜欢的内容（绘本、动画等） | |
| 喜欢的运动 | |
| 主动要求去做的事 | |

---

## 三、当前能力观察

**优势**（孩子做得相对好的地方）：

- 
- 
- 

**短板 / 挑战**（需要更多支持的地方，避免贴标签式描述）：

- 
- 
- 

**当前已有的习惯**（已经比较稳定的好习惯）：

- 
- 

---

## 四、家庭结构与陪伴安排

| 项目 | 内容 |
|------|------|
| 主要陪伴人 | □ 爸爸 □ 妈妈 □ 祖父母 □ 其他______ |
| 爸爸陪伴时间段 | 平日：______ 周末：______ |
| 妈妈陪伴时间段 | 平日：______ 周末：______ |
| 其他陪伴人 | |
| 是否有兄弟姐妹 | □ 无 □ 有（年龄：______） |

---

## 五、日常作息

| 项目 | 时间 |
|------|------|
| 工作日起床时间 | |
| 工作日出门时间 | |
| 放学/到家时间 | |
| 晚饭时间 | |
| 洗漱时间 | |
| 睡觉时间 | |
| 午睡情况 | □ 有，时长：______ □ 无 |
| 周末起床时间 | |
| 周末睡觉时间 | |

---

## 六、固定兴趣班 / 课外安排

| 项目 | 星期 | 时间 | 地点 / 方式 | 备注 |
|------|------|------|------------|------|
| | | | | |
| | | | | |
| | | | | |

**接送安排**：______

---

## 七、当前问题

家长当前最担心的 2-3 个问题（请具体描述，避免笼统）：

1. 
2. 
3. 

**最近 1 个月内观察到的明显变化**（好的或不好的）：

> 

---

## 八、当前培养重点

| 优先级 | 培养方向 | 具体目标 / 可观察行为 |
|--------|---------|------------------|
| 1 | | |
| 2 | | |
| 3 | | |

**长远目标**（1-2年后希望孩子在哪方面有明显变化）：

> 

---

## 九、执行资源与限制

| 项目 | 情况 |
|------|------|
| 家中可用的学习材料 | |
| 每天家长可主动陪伴学习的时间上限 | 约 ______ 分钟 |
| 孩子每个学习项目最长可接受时长 | 约 ______ 分钟 |
| 经济约束（是否影响兴趣班/材料选择） | □ 有限制 □ 无特别限制 |
| 其他约束 | |

---

*本模板可定期更新，建议每 4-6 周回顾一次。*


path: templates/weekly_review_template.md
content: # 每周复盘模板（Weekly Review Template）

> 孩子：______ | 复盘日期：______ | 第 ____ 周复盘 | 填写人：______

---

## 一、本周整体状态

**用一句话描述这周整体感受**（家长视角）：

> 

**孩子本周整体状态**（可多选）：

- □ 情绪稳定，基本如常
- □ 有几天状态特别好
- □ 有几天明显疲惫/烦躁
- □ 生病/特殊情况影响了安排
- □ 其他：______

---

## 二、本周最好的几个时刻

（记录 2-3 个真实的小亮点，哪怕很小也值得写下来）

1. 
2. 
3. 

---

## 三、本周最困难的几个点

（诚实记录，不评判，只是观察）

1. 
2. 
3. 

---

## 四、课表执行情况回顾

| 学习模块 | 计划次数 | 实际完成次数 | 执行质量 | 备注 |
|---------|---------|------------|---------|------|
| | | | □好 □一般 □难执行 | |
| | | | □好 □一般 □难执行 | |
| | | | □好 □一般 □难执行 | |
| | | | □好 □一般 □难执行 | |

**哪些安排执行最顺畅**（孩子配合度高、习惯形成中）？

> 

**哪些安排最容易失败**（经常跳过、孩子抵触、家长忘记）？

> 

---

## 五、孩子本周的明显变化

（无论好坏，都值得记录。变化不一定大，可能只是一个小行为、一句话）

> 

---

## 六、家长自我观察

**这周家长执行最好的一件事**：

> 

**这周家长最需要调整的地方**：

> 

**家长的情绪/精力状态**：□ 充足 □ 一般 □ 疲惫，需要减少某些安排

---

## 七、下周只抓的 1 个重点

（不要列很多，只选一个最重要的）

**下周重点**：

> 

**具体怎么做**（可观察的行为）：

> 

---

## 八、是否需要修改课表

- □ 不需要，继续执行当前版本
- □ 需要小调整：______（描述调整内容）
- □ 需要较大修改，重新生成课表

**如需修改，触发增量更新，填写变更说明**：

> 

---

*复盘建议：每周固定一个时间（如周日晚）花10-15分钟完成。不需要写很多，诚实简洁即可。*


path: templates/weekly_schedule_template.md
content: # 每周培养课表模板（Weekly Schedule Template）

> 孩子：______ | 年龄：______ | 课表版本：v______ | 生效日期：______ | 上次修改：______

---

## 【基本信息区】

| 项目 | 内容 |
|------|------|
| 孩子姓名 | |
| 当前阶段 | |
| 本版本核心重点 | （本周期最重要的1-2个培养方向） |
| 本版本生效范围 | 第 ____ 周 至 第 ____ 周 |
| 固定兴趣班 | （列出所有固定课程） |

---

## 【每周时间块课表】

> 使用说明：每格填写该时间段主要活动。🔒 = 固定不可改；🟡 = 弹性可调；⚪ = 自由时间

| 时间段 | 周一 | 周二 | 周三 | 周四 | 周五 | 周六 | 周日 |
|--------|------|------|------|------|------|------|------|
| 起床后 ～ 出门 | | | | | | | |
| 上午（在校/在家） | | | | | | | |
| 午饭 & 午休 | | | | | | | |
| 下午（放学后/在校） | | | | | | | |
| 放学后 ～ 晚饭前 | | | | | | | |
| 晚饭 | | | | | | | |
| 晚饭后 ～ 洗漱前 | | | | | | | |
| 洗漱 & 睡前 | | | | | | | |
| 睡觉时间 | | | | | | | |
| **⛔ 特殊保护时段** | — | — | — | — | — | — | — |

> **特殊保护时段说明**（在上方行填写该家庭的固定保护块，例如：周五家庭日 17:30–20:30 / 周日下午自由时间 14:00–17:00）：
> 
> - 
> - 

---

## 【各学习模块说明】

| 模块名称 | 内容简述 | 建议时长 | 频次/周 | 负责人 | 所需材料 |
|---------|---------|---------|--------|-------|---------|
| | | 分钟 | 次 | | |
| | | 分钟 | 次 | | |
| | | 分钟 | 次 | | |
| | | 分钟 | 次 | | |

---

## 【当前情况分析区】

**节奏判断**：□ 较空 □ 相对平衡 □ 略满 □ 过满

**当前最值得优先抓的重点**：

1. 
2. 

**主要冲突点或执行风险**：

> 

**哪些安排最可能执行失败**：

> 

---

## 【可执行建议区】

1. 
2. 
3. 
4. 
5. 

---

## 【风险提醒区】

⚠️ 
⚠️ 
⚠️ 

---

## 【结构化日程数据（为未来提醒功能预留）】

> 实际输出必须包含 monday 到 sunday 七天；即使某天没有提醒事项，也保留该天并使用空 `slots`。

```json
{
  "child": "",
  "version": "",
  "effective_date": "",
  "schedule": [
    {
      "day": "monday",
      "slots": [
        {
          "time_start": "HH:MM",
          "time_end": "HH:MM",
          "activity": "",
          "type": "fixed|flexible|free",
          "duration_min": 0,
          "notes": ""
        }
      ]
    },
    {
      "day": "tuesday",
      "slots": []
    },
    {
      "day": "wednesday",
      "slots": []
    },
    {
      "day": "thursday",
      "slots": []
    },
    {
      "day": "friday",
      "slots": []
    },
    {
      "day": "saturday",
      "slots": []
    },
    {
      "day": "sunday",
      "slots": []
    }
  ],
  "weekly_goals": [],
  "key_constraints": []
}
```

---

## 【变更记录区】

| 日期 | 版本 | 修改内容 | 影响时间段 | 原因 |
|------|------|---------|-----------|------|
| | v1.0 | 初始版本 | - | - |
| | | | | |
| | | | | |

---

*建议每 2-4 周回顾一次课表，重大生活变化时随时更新。*


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (CRITICAL)