dsh-pet
PC2005-cloud/dsh-petDSH Web UI 桌面宠物,Windows / macOS / Linux 三端可用:浏览器浮层或透明置顶桌面窗口,106 个透明动画、带挤压与粒子的甩抛反弹物理、随会话事件实时联动的工作状态气泡、碎碎念与带持久记忆的对话、余额展示、表情包配图、多开同屏,并支持直接放入的自定义动画与宠物种类(pet pack)。
舒服的离线背单词全家桶:1094 个精选单词、间隔重复、6 种题型、拼写游戏和躺着背大字模式;侧边栏面板打开,也可作为单个 HTML 文件独立运行。
English · 中文
語言慣例:README.zh 為簡體、應用界面為繁體、docs/ 以繁體為主——有意為之(香港語境,兩文三語)。
**lazeword(躺着背单词)**是一个以词汇为锚点的双语学习系统——学习即仿真,轨迹即日志 (理论基础见 docs/learning-as-simulation.md)。
它源于一个真实的家庭需求:为来到香港读书的孩子,做一个能躺着用的单词学习工具—— 从词元(token)入门,到与 AI 对话与共创。英语已经变成了编程语言,词汇是它的语法。
dsh,一切皆插件)插件发行,AI 故事/讲解由 DeepSeek 驱动(可选 Cloudflare Worker 托管 key,完全离线可运行)dsh 网页插件,也可独立运行(一个 HTML 文件);五个小游戏 + AI 私教;两文三语;繁/简一键🚀 立即体验(免安装 demo):https://xczhanjun.github.io/lazeword/(GitHub Pages 托管单文件版;进度存浏览器本地)
「躺着背单词」不改名——这个名字本身就是答案:
?user=anna&tab=quiz&scene=math&word=integer&ref=ai-chat&advanced=1lazeword 与 dsh 共享同一套哲学——一切都是插件,一切都有时空确定性:
| dsh 概念 | lazeword 对应 |
|---|---|
| 插件机制 | 学科 packs(数学含题型代码、地理/科学/文化/自动驾驶为词条包),构建时静态组合,零运行时加载 |
| 事件溯源 | 学习轨迹(append-only 事件日志,上限 2 万 + 确定性压缩),状态 = fold(事件),同一事件流可逐位重放 |
| 确定性 | FSRS-5 调度器(Anki 同参数体系):R(t,S) 遗忘概率是确定性预测;种子洗牌、golden 向量测试 |
| 宿主互通 | 启动时 /api/progress/:user 双向同步,与 dsh AI 老师共享同一份学习进度 |
Anki 生态兼容:TSV 一键导出(任意 Anki 版本可导入)→ AnkiConnect 一键同步进指定牌组 → 复习记录导入(Anki 里的复习并入同一条轨迹时间线)→ FSRS 与 Anki 同参数同算法。 孩子无论在 lazeword 还是 Anki 复习,都是一条确定性学习轨迹。
完整理论基础(预测加工、Nation 词汇覆盖、FSRS 论文)与产品决策记录见 docs/learning-as-simulation.md; 行业调研见 docs/research-physics-simulation.md。
DeepSeek Harness Desktop(macOS / Windows,免装 Node)把 dsh 装进原生桌面应用。 安装 lazeword 只需两步:
dshdesktop.cn / deepseekdesktop.com)dsh plugin add dsh-lazeword # 需要 lazeword 已发布到 npm;或本地路径安装:dsh plugin add /path/to/lazeword
安装后重启 DSH Desktop(让新 bundle 进入 Loader 组合),侧边栏出现 🛋️ lazeword 按钮。
桌面端提供 desktopProfiles / desktopPnpm 两个插件服务,lazeword 作为普通 dsh 插件在兼容模式下开箱即用。
dsh plugin --profile web add dsh-lazeword
安装后在侧边栏点击 🛋️ 躺着背单词,面板会在 harness 内以 blob-URL iframe 打开独立 App (无需服务器、无需联网、行为确定)。
直接双击打开 app/lazeword.html(任意浏览器)。
手机同局域网访问可起一个静态服务:
python3 -m http.server 8000
# 打开 http://<你的IP>:8000/app/lazeword.html
仓库自带 Cloudflare Worker 后端(worker/index.js):托管 DeepSeek key、AI 故事接口、词典代理(含限流与输入净化)。
npx wrangler secret put DEEPSEEK_API_KEY # 输入你的 DeepSeek key
npx wrangler deploy # 部署为 workers.dev;绑定自定义域用 wrangler routes
# 静态站点可同域托管:wrangler.toml 里打开 [site] 指向 ./app
部署后把 app/lazeword.html 与 worker 同域(或通过 dsh 宿主)访问,即可获得完整的 AI 故事与词典能力。
npm test(67 测试)+ python3 scripts/check-packs.py(pack 质量门)+ node scripts/build.mjs(可复现构建 diff 为零)dsh --profile web --dump-config | grep lazeword 应显示插件已挂载npm publish(prepublishOnly 自动跑全量质量门);ATTRIBUTIONS.md 与新增数据同步需要 Node ≥ 22.19。零 npm 依赖(测试用内置 node:test)。
npm test # 单元测试(核心函数)
node scripts/build.mjs # 构建独立 App
node scripts/build-client.mjs # 把 App 嵌入 dsh 客户端 bundle
npm run check # 语法检查插件入口
src/core.mjs 确定性纯核心(单一事实源):
SRS 调度、IPA 音节/重音解析、英文音节切分、
拼写判分、种子随机、事件日志(追加式学习轨迹)
app/template.html App 界面外壳(__CORE__ / __WORDS__ 标记)
data/*.json 词库(Vocabineer 947 + 香港学科词)
lib/index.js dsh 宿主入口(插件注册)
lib/client.js dsh 网页客户端 bundle(内嵌 App,由脚本生成)
scripts/ 构建与抽取工具
tests/ node:test 单元测试(20 项断言,零依赖)
设计原则:确定、离线、可审计 —— App 在构建时静态组合(无运行时插件加载), 核心事件日志让整个学习轨迹可精确重现(「时空确定性」)。
DeepSeek Harness 处于开发者预览阶段,可能有破坏性变更。 本插件为社区维护,与 DeepSeek 无关。