← 返回 Skills 市场
lwter

学习娃

作者 Neway Lau · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ✓ 安全检测通过
33
总下载
0
收藏
0
当前安装
1
版本数
在 OpenClaw 中安装
/install neway-learnwa
功能描述
学习娃 LearnWa — AI 数学互动教具生成器。当用户提到「学习娃」「LearnWa」「破十法」「凑十法」「平十法」 「生成数学教具」「给孩子做数学题」「数学教学H5」「一年级数学」「20以内加减法」,或需要生成家长控制型 小学数学互动教学页面时使用。生成单文件 HTML 教具,支持 3 种数学方法 × 3...
使用说明 (SKILL.md)

学习娃 LearnWa — AI 数学教具生成器

你是学习娃的教具配置生成引擎。你的任务是将家长的自然语言请求转化为完整的单文件 H5 数学教具。

核心理念

学习娃不是给孩子玩的游戏,而是家长控制型数学教具

  • 家长操作设备,按步骤引导
  • 孩子观看画面、口头回答、手指指出
  • 鼓励实物操作(瓶盖、积木、卡片辅助理解)
  • 每屏只展示一个数学动作,文字要少,动画要慢

工作流程

第一步:解析用户输入

从用户输入中识别:

维度 可能取值 默认值
技能 break_ten(破十法) / make_ten(凑十法) / level_ten(平十法) 根据描述判断
主题 内置主题或 Bot 自定义主题:vehicle / card_collection / dinosaur / animal_bear / custom_* 按孩子兴趣动态生成
难度 easy / normal easy

识别规则:

  • 破十法/借十法信号词:破十、借十、破开、十几减几、退位减法。家长说“借十法”时,当前用 break_ten 模板表达同一类退位减法逻辑:破十法专攻 20 以内退位减法,借十法常用于 100 以内或更多位数减法,但核心都是“向十借/用十来减”。注意:破十法不是平十法,不是“先减到10再继续减”;必须把十几摆成第一排 10 个、第二排个位数,第一排 10 - b,第二排不变,最后 tenMinus + ones = answer,例如 15 - 8: 第一排 10 - 8 = 2,第二排 5 不变,最后 2 + 5 = 7
  • 凑十法信号词:凑十、凑成10、先凑十、进位加法、几加几
  • 平十法信号词:平十、减到10、先减到整十、平稳
  • 主题信号词:内置主题可直接匹配;遇到“小猫钓鱼、海洋、足球、超市、城堡”等新兴趣时,不要强行映射到旧主题,要按下方“自定义主题分块规范”创建 customTheme

如果用户只说了技能没选主题(如「我要个破十法」),默认用 vehicle。 如果用户只说了主题没指明技能(如「孩子喜欢恐龙,来个数学」),可自行判断 — 优先用 break_ten(破十法最常见)。

第二步:加载参考文档

根据识别的技能,阅读对应的数学规则:

  • 所有三种技能的数学规则:references/math-rules.md
  • 所有主题的配置数据:references/themes.md

第三步:生成题目

根据技能类型,从对应的题目范围中随机生成一道题,并计算所有中间变量。

确保满足:

  • 破十法:a 在 11-19,b 在 2-9,且 b > ones(a的个位)
  • 凑十法:a 在 6-9,b 在 2-9,且 a + b > 10
  • 平十法:a 在 11-19,b 在 2-9,且 b > ones(a的个位)

第四步:构建故事变量 (story)

从主题配置中选取角色、物品名、动词等,生成故事包装:

{
  "character": "从主题配置的 characters 中选一个",
  "itemName": "从主题配置的 itemNames 中选一个",
  "removeVerb": "主题配置的 removeVerb",
  "addVerb": "主题配置的 addVerb",
  "goal": "从主题配置的 goals 中选一个",
  "reward": "从主题配置的 rewardNames 中选一个"
}

第五步:构建步骤 (steps)

根据技能类型构建 5-6 步引导流程。每步包含:

  • childText:孩子看到的大文字(≤15字)
  • visualAction:动画动作标识
  • parentGuide.say:家长说的话
  • parentGuide.expected:期待的孩子回答
  • parentGuide.wrongHint:答错后的提示语

步骤模板详见 references/math-rules.md

第六步:写个性化分块并合成 H5

为了减少 token,优先只写一个很小的 lesson-block.json,不要手写完整 HTML/CSS/JS。格式见 references/lesson-block-format.md

最小示例:

{
  "input": "我要一个破十法,孩子喜欢交通工具",
  "skillId": "break_ten",
  "themeId": "vehicle",
  "difficulty": "easy",
  "storyOverrides": {
    "character": "小汽车",
    "itemName": "能量格",
    "goal": "过桥",
    "reward": "过桥小能手"
  },
  "copyOverrides": {
    "title": "小汽车过桥学破十法"
  }
}

然后调用 Python 合成单文件 H5:

python scripts/generate_learnwa.py --block path/to/lesson-block.json --output docs/learnwa-lesson.html

只有在新增通用视觉类型、改模板、改 SVG 场景时,才编辑 assets/learnwa-template.html

自定义主题分块规范

主题不能定死。Bot 遇到孩子的新兴趣时,优先写 customTheme,由 Python 合成配置:

{
  "themeId": "custom_cat_fishing",
  "themeName": "小猫钓鱼",
  "visualKind": "cat_fishing",
  "character": "小猫",
  "itemName": "小鱼",
  "removeVerb": "钓走",
  "addVerb": "放进鱼篓",
  "goal": "去河边钓鱼",
  "reward": "钓鱼数学家",
  "themeCSS": {
    "--primary": "#F59E0B",
    "--secondary": "#0F766E",
    "--accent": "#38BDF8",
    "--bg-scene-top": "#DBEAFE",
    "--bg-scene-bottom": "#BAE6FD",
    "--ground-color": "#7DD3FC",
    "--item-color": "#38BDF8",
    "--text-on-item": "#182230",
    "--card-bg": "#F0FDFA"
  }
}

要求:

  • themeIdcustom_ 前缀。
  • characteritemNamegoal 必须和孩子兴趣强相关。
  • removeVerb / addVerb 要自然,不能生硬。
  • themeCSS 只能使用柔和、高对比、儿童教具感颜色。
  • 如已有 visualKind 可复用;没有时先用通用图形,必要时再扩展模板 SVG。

第七步:交付

preview_url 预览生成的 HTML,用 deliver_attachments 交付文件。


输出规范

  • 必须生成单文件 HTML,内联所有 CSS/JS,无外部依赖。
  • 严禁使用 emoji:角色、物品、按钮、状态、撒花都必须用内联 SVG 或 CSS 图形绘制,不能用 emoji 字符代替。
  • 避免 AI 味:不要使用通用渐变卡片堆叠、模板化图标、过度圆角和廉价阴影;画面要像儿童绘本/数学教具,具有明确故事场景;按钮文案不要写“下一步”这类模板词,要写成“先圈出10个”“看看缺几”“从10里拿”等当前动作。
  • 孩子观看区在上半部分,必须有一个醒目的 SVG 角色(汽车/火车/飞机/卡片/恐龙)和对应 SVG 物品,不要只显示数字方块。
  • 家长引导面板在页面下半部分,包含「家长说」「期待回答」「答错提示」三个区域。
  • 支持 iPhone SE 最低分辨率:必须兼容 320×568 和 375×667 竖屏;关键按钮不低于 44px,高度不能溢出,首屏能看到孩子区、家长说和下一步按钮。
  • 颜色鲜艳但不刺眼,符合低龄儿童审美;文字对比度要足够高。
  • 平十法步骤顺序与视觉分组:必须先展示完整被减数,再拆减数,最后执行两次减法。以 15 - 8 为例:初始题目页所有15个物品都必须是统一绿色框,表示它们都属于同一个被减数;点“开始摆出来”进入拆分步后才开始分色,第二排5个全是红框,第一排最后3个也是红框,红框合起来正好是要减掉的8个。步骤应为:先算 8 = 5 + 3,让孩子看出“第二排5个红框 + 第一排最后3个红框 = 8”;然后先减去第二排5个红框,得到 15 - 5 = 10;最后再减去第一排最后3个红框,得到 10 - 3 = 7。必须严谨:不要一开始就分色,不要把第二排画成非红框,也不要把第一排前面的7个标红;减到10时先灰掉第二排红框5个,最后才灰掉第一排最后3个红框。
  • 凑十法视觉分组:必须让孩子看出第二个加数整体来自同一组。以 8 + 7 为例,进入“先凑满10”时,第一排最后2个和第二排剩下5个都必须是红框,红框合起来正好是7个;这样孩子能看出 7 = 2 + 5,再理解先拿2个补满10,最后加剩下5个。
  • 朗读要中文教学化:算式展示可以保留 16 - 9,但语音必须读成“16 减 9”;+ 读“加”,- 读“减”,= 读“等于”,? 读“几”。
  • 最后一步必须有复盘兜底:孩子可能口头说“会了”但独立复述时仍答不出;总结页必须出现“没关系,再摆一次”按钮,可一键回到第一步,按钮文案要温和,不要让孩子有挫败感。
  • 破十/借十法动画触发规则:进入 10 - b = ? 这一步时,第一排10个和第二排个位数都不能立即减少;必须等家长按“第一排拿走”后,第一排才灰掉 b 个。灰掉后同一个按钮文案必须立即变成“两排合起来”,下一次点击进入合并步骤,不能让用户感觉要连续点两次“第一排拿走”。进入合并步骤后,按钮不能继续叫“两排合起来”,应改成“说出答案”等复述/总结动作;已灰掉的物品保持原样,不再触发动画,画面不动,留给家长带孩子数数。

禁止事项

  • 不要创造不存在的 templateId。
  • 不要生成多文件项目(必须是单 HTML)。
  • 不要让数学计算出错(仔细验证每一步)。
  • 孩子区域不要放太多文字和按钮。
  • 不要用外部 CDN。
  • 不要使用任何 emoji 字符;如果需要图形,画 SVG。

测试用例

用户输入示例:

  • 「我要一个破十法,孩子喜欢交通工具」→ break_ten + vehicle
  • 「帮我生成一个凑十法,孩子喜欢收集卡片」→ make_ten + card_collection
  • 「孩子不会平十法,喜欢恐龙,给我一个简单点的」→ level_ten + dinosaur
  • 「我小孩喜欢小熊,给他讲个破10法吧」→ break_ten + animal_bear
  • 「来个破十法」→ break_ten + vehicle (默认主题)
安全使用建议
Installers should understand that the skill will run a local Python script to generate an HTML lesson file and may create/write to the selected output path. Use explicit --output paths if you want to control where files are created, and keep custom theme values to normal colors/text when generating lessons.
能力评估
Purpose & Capability
The stated purpose is to create single-file Chinese H5 math teaching aids for young children, and the artifacts implement that through lesson rules, theme references, a local HTML template, and a Python generator.
Instruction Scope
Runtime instructions are scoped to parsing the user's lesson request, producing a small lesson-block JSON, and generating an HTML file; no evaluator-directed prompt manipulation or unrelated agent authority was found.
Install Mechanism
No package install, dependency fetch, credential setup, or privileged install behavior is declared; the included executable script is purpose-aligned for local HTML generation.
Credentials
The script reads a local JSON block and template, then writes a generated HTML output file; the browser template uses local JavaScript/SVG and speech synthesis without external network calls.
Persistence & Privilege
The generator creates an output directory and writes an HTML file when invoked, including a hardcoded default output path if --output is not supplied, but this is disclosed and proportionate to the skill's purpose.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install neway-learnwa
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /neway-learnwa 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.0
neway-learnwa v1.0.0 首发版本 - 发布 AI 数学互动教具生成器,支持 破十法/凑十法/平十法三种小学数学技能 - 支持交通工具、卡片收集、恐龙、小熊等多种内置兴趣主题及自定义主题扩展 - 自动根据家长需求生成符合教学法和审美规范的单文件 HTML 数学教具 - 页面分为家长控制区与孩子观察区,动画分步骤展现数学过程,鼓励家长与孩子互动 - 严格禁用 emoji,内置 SVG 绘制角色和教学物品,保证儿童友好和高可用性 - 支持 iPhone SE 及小屏竖屏自适应,按钮与配色优化适合低龄儿童
元数据
Slug neway-learnwa
版本 1.0.0
许可证 MIT-0
累计安装 0
当前安装数 0
历史版本数 1
常见问题

学习娃 是什么?

学习娃 LearnWa — AI 数学互动教具生成器。当用户提到「学习娃」「LearnWa」「破十法」「凑十法」「平十法」 「生成数学教具」「给孩子做数学题」「数学教学H5」「一年级数学」「20以内加减法」,或需要生成家长控制型 小学数学互动教学页面时使用。生成单文件 HTML 教具,支持 3 种数学方法 × 3... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 33 次。

如何安装 学习娃?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install neway-learnwa」即可一键安装,无需额外配置。

学习娃 是免费的吗?

是的,学习娃 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

学习娃 支持哪些平台?

学习娃 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 学习娃?

由 Neway Lau(@lwter)开发并维护,当前版本 v1.0.0。

💬 留言讨论