dsh-aha-tutor 1.8.0 → 1.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +37 -0
- package/README.en.md +2 -2
- package/README.md +2 -2
- package/docs/guide.zh-CN.md +9 -5
- package/lib/agent.js +1 -1
- package/lib/client.js +140 -114
- package/lib/index.js +289 -141
- package/lib/{runtime-C3yJfJTT.js → runtime-DkuLvkuv.js} +34 -9
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,43 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this plugin are recorded here. Versions follow [SemVer](https://semver.org/); GitHub Release notes for each version live in `docs/releases/`.
|
|
4
4
|
|
|
5
|
+
## 1.10.0 - 2026-10-29
|
|
6
|
+
|
|
7
|
+
### Added
|
|
8
|
+
|
|
9
|
+
- **Flashcards for each unit**: every unit has **Unit flashcards** beside **Unit quiz**, in the outline and in the practice tab. A unit's deck is written the first time it is opened, from its lessons and concepts and from the course materials' pages on them: two to four cards per concept, at most 60. The deck keeps its review schedule, and the button shows how many of its cards are due. Course packs carry the unit decks.
|
|
10
|
+
- **Flashcard review**: at the top of the practice tab, beside **Start review**, it brings the due cards of every unit together, oldest first.
|
|
11
|
+
- **New set of questions**: the end of a unit quiz offers **New set of questions**, which writes the quiz again; **Retry** still repeats the same questions. A new set's questions get new ids, so answers to the old set are never graded again against them. Leaving while the new set is written and coming back waits for it instead of showing the old one.
|
|
12
|
+
|
|
13
|
+
### Changed
|
|
14
|
+
|
|
15
|
+
- **Unit quizzes as long as the unit**: a unit quiz always had 10 questions. It now has at least one per concept of the unit and more for the central ones, usually 10 to 30, the model choosing inside that range, and it follows the course materials' pages on the unit: their exercises, notation and units. While it is written, the page counts the questions done.
|
|
16
|
+
- **One tab for practice, quizzes and flashcards**: the practice tab is now 「练习、测验与闪卡」 (Practice, quizzes & flashcards), and the Flashcards tab, which only held a button, is gone; links to it open the practice tab. The whole-course deck of earlier versions (30 cards from the outline and 6,000 characters of the materials) is no longer written. A deck already made joins **Flashcard review** with its schedule kept, its unseen cards included.
|
|
17
|
+
- **Uploads up to 200 MB**: the limit was 60 MB, too small for a textbook full of pictures. 200 MB is DSH's own budget for attachments and fits both upload routes; the host no longer keeps a second copy of the file while reading it.
|
|
18
|
+
|
|
19
|
+
### Fixed
|
|
20
|
+
|
|
21
|
+
- **Navigation**: a course's flashcards and cheat sheets highlighted **Study tools** instead of **My courses**.
|
|
22
|
+
- **Narrow pages**: the course title no longer pushes the course page sideways at phone width.
|
|
23
|
+
|
|
24
|
+
## 1.9.0 - 2026-10-27
|
|
25
|
+
|
|
26
|
+
### Added
|
|
27
|
+
|
|
28
|
+
- **Text size**: **Settings → Text size** offers Standard, Large and Extra large, and all of the plugin's text grows at once, in the board tab beside a conversation too. DSH's own font size (Settings → General → Font size) scales it as well. The board and the mind map keep their own zoom, and exports and printouts their own sizes; cards in a conversation keep DSH's text size.
|
|
29
|
+
- **Fold the navigation yourself**: **Collapse** at the foot of the navigation folds it to icons, and **»** opens it again; the choice is kept in the browser. A folded icon names itself beside it on hover or keyboard focus. The names no longer disappear by themselves in a medium window. In a lesson, instant answers and explainer shorts the navigation keeps to its icons to leave the board room, and other pages show it as you left it; so does a page narrower than 640px. There, **»** opens it over the page until a page is picked, the shade is clicked or Escape is pressed.
|
|
30
|
+
|
|
31
|
+
### Changed
|
|
32
|
+
|
|
33
|
+
- **Larger text by default**: body text is 15px (14px before) and hints 13.5px (12.5px). A question's prompt is 16px and its options 15px in the text colour; both were DSH's 13px caption grey. Flashcards are 22px.
|
|
34
|
+
|
|
35
|
+
### Fixed
|
|
36
|
+
|
|
37
|
+
- **Flashcards**: their text was meant to be 18px but showed at 14px, and a long answer spilled out of the card; the card now grows with its longer side.
|
|
38
|
+
- **The board beside a conversation** wore the course page's tab style: all its text was grey and the transcript never wrapped.
|
|
39
|
+
- **Cheat sheets**: their entries ignored the sheet's font size and printed in grey.
|
|
40
|
+
- **Narrow pages**: course cards no longer push the page sideways on a phone-width window.
|
|
41
|
+
|
|
5
42
|
## 1.8.0 - 2026-10-26
|
|
6
43
|
|
|
7
44
|
### Added
|
package/README.en.md
CHANGED
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
| **Handwriting chalkboard lessons** | Narration (voice + captions) while the board fills up in a handwriting font with points, formulas, diagrams, charts and, when it helps, a small animation; each item is written as its sentence is spoken and highlighted while it is discussed; curves given by a formula are computed point by point, with sliders for their parameters; the lesson's pages sit on one canvas you can drag and zoom while the view follows the teacher, and a side panel shows the lesson's goals and a transcript; pause, rewind and change speed any time |
|
|
29
29
|
| **Quick checks that adapt** | At key moments the lesson stops for a question and asks how sure you are. Lucky guesses, hesitation and confident mistakes count differently; a lesson with a calculation asks you to write out your working and corrects it on the board. A revisit lesson is added automatically for concepts that did not stick |
|
|
30
30
|
| **Raise your hand, hear it again** | Ask anything mid-lesson, typed or spoken (recognized on your computer by DSH's Voice input), and the tutor answers on the board, then picks up where it left off; or have a step re-explained with an analogy, a drawing, an example, more simply or in more depth. Think a step is wrong? Ask the teacher to check it: a real mistake is corrected at the board and fixed in the lesson, and a step that is right is explained |
|
|
31
|
-
| **Practice, flashcards, reviews** | Every lesson has practice, with figures where they help, open answers graded by the model and keyboard answering; think a question or its grading is wrong, and the teacher checks it, fixes a wrong question, grades your answers to it again (earlier ones too) and corrects your mastery; a round ends with stars, how your mastery moved and a next step. Flashcards and concepts come back on a spaced-repetition schedule, and the study plan leaves time for them |
|
|
31
|
+
| **Practice, flashcards, reviews** | Every lesson has practice, with figures where they help, open answers graded by the model and keyboard answering; think a question or its grading is wrong, and the teacher checks it, fixes a wrong question, grades your answers to it again (earlier ones too) and corrects your mastery; a round ends with stars, how your mastery moved and a next step. Each unit has a quiz and a flashcard deck, as long as its concepts call for. Flashcards and concepts come back on a spaced-repetition schedule, and the study plan leaves time for them |
|
|
32
32
|
| **Your materials become courses** | PDF, Word, PowerPoint, Markdown, web links and images; a model that can see images reads scanned PDFs, documents made of pictures and photos. Lessons and cheat sheets cite pages; long readings can be digested into structure, claims and a glossary |
|
|
33
33
|
| **Cheat sheets, notes, quizzes** | Printable cheat sheets organized by theme (columns, font size and highlighting adjustable), plus notes, flashcard decks and quizzes |
|
|
34
34
|
| **Explainer shorts and exports** | A two-minute whiteboard explainer from a topic or a link; any lesson exports to a video with the handwriting, captions and a watermark, or its board to a PDF (one board page per page, handwriting and formulas included) or a PNG picture per page |
|
|
@@ -42,7 +42,7 @@ Two sample courses ship with the plugin (harmonic motion and Bayesian thinking,
|
|
|
42
42
|
|
|
43
43
|
You need the **DeepSeek Harness** desktop app (0.2.x, from 0.2.1) with at least one working model. See the [DSH instructions](https://github.com/deepseek-ai/deepseek-harness#run) if you do not have it yet.
|
|
44
44
|
|
|
45
|
-
1. Open **Plugins** in the desktop app, click **Add plugin** and enter `dsh-aha-tutor` as the package, with the official registry as the source. Within 24 hours of a new release DSH's pnpm holds new versions back; enter an exact version such as `dsh-aha-tutor@1.
|
|
45
|
+
1. Open **Plugins** in the desktop app, click **Add plugin** and enter `dsh-aha-tutor` as the package, with the official registry as the source. Within 24 hours of a new release DSH's pnpm holds new versions back; enter an exact version such as `dsh-aha-tutor@1.10.0` then.
|
|
46
46
|
2. **Quit and reopen** the desktop app. Refreshing the page does not load the plugin's host side.
|
|
47
47
|
3. Open **Aha · AI tutor** in the left sidebar (shown as 「开窍 · AI 私人老师」 in Chinese).
|
|
48
48
|
|
package/README.md
CHANGED
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
| **手写黑板课堂** | 老师一边讲(语音 + 字幕),一边用手写体在黑板上逐字写下要点、公式、示意图和图表,讲到哪句写哪句,正在讲的内容用荧光笔划出;由公式画的曲线按公式逐点算出,带参数的还能拖动滑块看它怎么变;整讲的板书排在一张能拖动、缩放的画布上,镜头跟着老师走;侧栏显示课堂要点进度和讲解记录;随时暂停、回放、变速 |
|
|
29
29
|
| **随堂小测与自适应** | 讲到关键处会停下来考你一题,并问你「有多确定」。猜对、犹豫、自信地答错,会被区别对待;有计算的一讲会请你写出过程,写错了老师就在黑板上订正。学完一讲后,薄弱的知识点会自动加一节巩固课 |
|
|
30
30
|
| **举手提问、换个讲法** | 没听懂就举手,老师在黑板上专门回答你,讲完回到原来的进度;问题可以打字,也可以直接说出来(用 DSH 的语音输入在本机识别);也可以让它用打比方、画图、举例、讲简单点或讲深一点的方式重讲这一步。觉得讲错了就点「这一步不对?」:老师先仔细核对,真错了就在黑板上更正,并把这一讲改好;没错就讲清为什么 |
|
|
31
|
-
| **练习、闪卡与复习** | 每讲都有练习,题目可以带示意图,简答题由 AI
|
|
31
|
+
| **练习、闪卡与复习** | 每讲都有练习,题目可以带示意图,简答题由 AI 批改,支持键盘作答;觉得题目或判分有问题就点「这题有问题?」,老师先仔细核对,题错了就改好、重新判分(以前答过的也一起重判)并修正掌握度;做完一组给出星级、掌握程度变化和下一步建议。每个单元有单元测验和单元闪卡,题量和张数按这个单元的知识点来定。闪卡和知识点按间隔重复安排复习,学习计划会自动给复习留出时间 |
|
|
32
32
|
| **资料变课程** | 支持 PDF、Word、PPT、Markdown、网页链接和图片;扫描版 PDF、全是图片的文档和拍的照片,由能看图的模型识别出文字。讲课和速查表会引用原文页码;长文档可以一键「消化」成结构、论点和术语表 |
|
|
33
33
|
| **速查表、笔记、测验** | 按主题整理的可打印速查表(列数、字号、高亮可调),以及笔记、闪卡组和测验 |
|
|
34
34
|
| **讲解短片 + 导出** | 输入一个主题或网址,得到一段约两分钟的白板讲解;任何一讲都能导出成带板书动画、字幕和水印的视频,也能把板书导出成 PDF(一页一张板书,带手写字体和公式)或每页一张的 PNG 图片 |
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
dsh-aha-tutor
|
|
49
49
|
```
|
|
50
50
|
|
|
51
|
-
安装源选择**官方源**,点击**安装**。新版本刚发布的 24 小时内,DSH 的 pnpm 会因为发布冷却期暂缓安装,这时请填入精确版本,例如 `dsh-aha-tutor@1.
|
|
51
|
+
安装源选择**官方源**,点击**安装**。新版本刚发布的 24 小时内,DSH 的 pnpm 会因为发布冷却期暂缓安装,这时请填入精确版本,例如 `dsh-aha-tutor@1.10.0`。
|
|
52
52
|
|
|
53
53
|
2. **完全退出并重新打开** DSH 桌面应用。只刷新页面不会加载 Host 端的新插件。
|
|
54
54
|
|
package/docs/guide.zh-CN.md
CHANGED
|
@@ -24,6 +24,7 @@
|
|
|
24
24
|
1. **模型**:开窍使用你在 DSH 里设置的默认模型。讲课质量主要取决于模型,建议「出课与讲课」用你手头最强的模型。扫描件、照片等图片资料里的字,要靠能看图的模型识别(开窍设置里带 🖼 的模型)。
|
|
25
25
|
2. **语音**:默认用系统自带的音色朗读,不花钱。第一次使用时,到 **设置 → 语音讲解** 点**试听**,确认能听到声音。
|
|
26
26
|
3. **先看示例课**:首页下方的「示例课程」里有「简谐运动」「贝叶斯思维」两门现成的课,点**加入我的课程**就能体验完整的黑板课堂,不消耗模型额度。
|
|
27
|
+
4. **看着舒服**:字太小就到 **设置 → 文字大小** 选**大**或**特大**。左侧导航最下面的**收起**把导航收成一列图标,鼠标放到图标上会显示名称,点 **»** 再展开;开窍会记住你的选择。上课时(课堂、即时答疑、讲解短片)导航自动收成图标,给白板留出地方,离开后恢复你的选择;窗口窄到手机宽度时也只显示图标。这两种情况下点 **»** 会临时展开、盖在页面上,选好页面、点旁边空白处或按 Esc 就收回。
|
|
27
28
|
|
|
28
29
|
## 首页:从一句话开始
|
|
29
30
|
|
|
@@ -134,10 +135,9 @@
|
|
|
134
135
|
|
|
135
136
|
| 标签 | 内容 |
|
|
136
137
|
| --- | --- |
|
|
137
|
-
| **大纲** |
|
|
138
|
-
|
|
|
138
|
+
| **大纲** | 全部单元、章和讲,带学习状态和讲法(直观理解、定义概念等);自动加入的巩固课标有「巩固」。每个单元都有**单元速查表**、**单元测验**和**单元闪卡** |
|
|
139
|
+
| **练习、测验与闪卡** | 每讲的练习,每个单元的**单元测验**和**单元闪卡**;顶部的**开始复习**复习这门课该复习的知识点,**闪卡复习**把各单元到期的闪卡放在一起复习 |
|
|
139
140
|
| **速查表** | 单元速查表,按主题整理公式、定义和要点 |
|
|
140
|
-
| **闪卡** | 这门课的闪卡,按复习计划出现 |
|
|
141
141
|
| **项目** | 实战项目,见[实战项目](#实战项目) |
|
|
142
142
|
| **进度** | 每个知识点的掌握程度(未开始、薄弱、学习中、熟练、掌握五级),以及老师发现的误解(⚠) |
|
|
143
143
|
|
|
@@ -157,7 +157,8 @@
|
|
|
157
157
|
重新判分后,掌握度和复习时间会按新的分数重新算,就像当初判对了一样:这次作答留下的「误解」标记也会去掉,这一轮的星级、正确率和连对也按新结果算。每讲的练习、单元测验、学习工具里的测验和复习里的题都可以这样核对。
|
|
158
158
|
|
|
159
159
|
题目改好后,你以前对同一道题的作答(上一轮练习、复习里,或课上的小测)也会按改好的题重新判,结果框里会说重判了几次。题目确实有错时,按改好的答案判,分数可能升也可能降;题目没说清楚时,只会往上调,因为你当时按另一种理解答的可能也对。简答题和写过程的题由 AI 重新批改最近 3 次。只有最近 50 次作答留有记录,更早的不再重判。
|
|
160
|
-
-
|
|
160
|
+
- **单元测验**:题量按这个单元的知识点来定,每个知识点至少一题,重点多出几题,一般 10–30 题;课程有资料时,题目按资料里这个单元的内容和题型来出。题多时要等一两分钟,等待时会显示已经出了几题。做完可以**重试**同一套题,也可以点**换一套新题**重新出一套。
|
|
161
|
+
- **闪卡**:在课程页的**练习、测验与闪卡**里点某个单元的**单元闪卡**,第一次打开时按这个单元的知识点生成,每个知识点 2–4 张,一个单元最多 60 张。点击翻面,然后按记忆情况选**忘了 / 困难 / 记得 / 简单**。开窍用间隔重复安排下次复习的时间,记得越牢,间隔越长;有到期的卡片时,按钮上会显示张数。顶部的**闪卡复习**把各单元到期的闪卡放在一起复习;1.10.0 之前生成的整门课闪卡也在这里,原来的复习记录照旧保留。
|
|
161
162
|
- **复习**:学过的知识点也会按遗忘曲线回来。学习计划会提醒你**有 N 个知识点该复习了**,点**开始复习**即可。
|
|
162
163
|
|
|
163
164
|
## 资料库
|
|
@@ -172,6 +173,8 @@
|
|
|
172
173
|
| 网页 | 点**添加网页**,填入公开网址,开窍会提取正文 |
|
|
173
174
|
| 图片 | 能看图的模型会识别图里的字,之后和其他资料一样能建课、做速查表和测验;图片本身也会交给能看图的模型 |
|
|
174
175
|
|
|
176
|
+
单个文件最大 200 MB,图片最大 10 MB;更大的文件可以拆成几份上传。
|
|
177
|
+
|
|
175
178
|
每份资料都可以一键**用它建课**,或者生成**速查表、闪卡、笔记、测验**,以及**消化**成概要、结构、核心观点、论点与论据、术语表和值得思考的问题。
|
|
176
179
|
|
|
177
180
|
**找资料**:资料多了,在资料列表上方的搜索框里输入,会按标题和主题即时筛选;按回车(或点**搜正文**)会在所有资料的正文里搜,列出最相关的段落,带资料名、页码和高亮的上下文,点一条就跳到那份资料。搜索在本机进行,不调用模型。
|
|
@@ -211,6 +214,7 @@
|
|
|
211
214
|
|
|
212
215
|
## 设置
|
|
213
216
|
|
|
217
|
+
- **文字大小**:标准 / 大 / 特大,开窍里的文字一起变大,马上生效。板书和思维导图用它们自己的缩放按钮。DSH「设置 → 通用设置 → 字号大小」也会让开窍的文字跟着变。
|
|
214
218
|
- **模型**:分别为**出课与讲课**和**批改与问答**选择模型,或**跟随 DSH 默认模型**。
|
|
215
219
|
- **语音讲解**:
|
|
216
220
|
- **语音来源**:系统语音(免费)/ 云端语音 / 不朗读。
|
|
@@ -224,7 +228,7 @@
|
|
|
224
228
|
|
|
225
229
|
## 关于作者
|
|
226
230
|
|
|
227
|
-
|
|
231
|
+
左侧导航里的**关于作者**有作者信息、GitHub 仓库和**问题反馈**的链接。开窍免费开源,如果它帮到了你,也可以在这里扫码支持作者。
|
|
228
232
|
|
|
229
233
|
## 课程包:分享与备份
|
|
230
234
|
|
package/lib/agent.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Dt as normalizePractice, F as generateJson, K as readProfile, Mt as text, Rt as newId, t as getRuntime, u as detectLanguage, w as quizPrompt } from "./runtime-DkuLvkuv.js";
|
|
2
2
|
import { defineTool } from "@deepseek-ai/dsh-tools";
|
|
3
3
|
//#region src/agent.js
|
|
4
4
|
const name = "aha-tutor-agent";
|