Kaiji-Z/dsh-plugin-lookatstudy ↗★ 0
dsh-plugin-lookatstudy
Turn any markdown, local folder, or GitHub learning repo into a guided course inside DeepSeek Harness: gated skill-tree progression, BKT mastery tracking, SM-2 spaced repetition.
安装
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:Kaiji-Z/dsh-plugin-lookatstudy说明文档
阅读完整 README ↗dsh-plugin-lookatstudy
Turn any markdown document, local folder, or GitHub learning repository into a guided course inside DeepSeek Harness (dsh) — your dsh agent becomes a full AI tutor with the interaction design of LookatStudy: per-concept knowledge tracking, mastery-driven progression, spaced repetition, mastery proposals, friction awareness, learner memory, a Cornell notebook, and an in-chat proposal card. Learning engine modules are vendored from LookatStudy (MIT).
Install
dsh plugin add dsh-plugin-lookatstudy # from npm
# or from a tarball:
dsh plugin add ./dsh-plugin-lookatstudy-0.2.1.tgz
Works with any profile. In the web profile the plugin additionally serves the study tab's HTTP API and loads its browser half; headless profiles get the plain tool surface.
The two surfaces
1. The tutor (chat). Talk to the agent: "import https://github.com/microsoft/AI-For-Beginners and teach me lesson 1", "what reviews are due today?". The tutor persona (stable core + one of three souls — guide 引导 / direct 精讲 / practice 实战) drives the full LookatStudy loop:
- Knowledge components (KC) — on first teaching a lesson the tutor derives 2–7 concepts (
study_define_concepts); every graded answer is attributed (study_record_answerwithconcept); per-concept BKT runs and lesson mastery is the weakest concept — quizzes target ⚡weak ones first. - Mastery-driven progression — ≥50% unlocks the next lesson early; ≥90% graduates and schedules the first SM-2 review; answers also nudge the review schedule.
- Mastery proposals (propose → apply) — at ≥85% plus a convincing Feynman-style explanation the tutor proposes early graduation and waits for the learner's yes/no; only the explicit decision applies it.
- Friction awareness — confusion/blocks/frustration are silently logged (
study_report_friction) and surface as ⚡😣 weak spots. - Learner memory — three slots (global style / per-course pattern / per-lesson gap), read-merge-write (
study_remember). - A dynamic learner snapshot (focus, strategy band, weak concepts, friction, memory, due count, pending proposal) is injected as runtime context every turn.