MrElysium/dsh-md-quiz

Plugin插件 Native原生 ⭐ 6 MIT Docs & Writing文档与写作UI & Themes界面与主题

DeepSeek Harness 插件:对任意 Markdown 文档进行答题式阅读——五阶段游戏循环,带侧边栏面板和阅读区选项卡。

Project Overview项目介绍

This is a native plugin built exclusively for the DeepSeek Harness (DSH) web profile, adding a quiz-style interactive reading feature for Markdown text files. To install the plugin, you need to have pnpm installed on your system, since DSH handles plugin installation via pnpm. There are two supported install methods: installing directly from a GitHub repository, or linking a local development copy. Both install methods automatically register the plugin to your DSH profile bundle, no manual configuration changes are needed. After installation completes, you just need to restart DSH web and refresh your browser to activate the plugin.

The plugin splits into two parts: a server half running on the DSH backend, and a client half that adds UI elements to the DSH web interface. The server registers the md-quiz-read skill for the LLM, adds the /mdquiz command shortcut, and exposes a route to serve Markdown file content to the client. The client adds a quiz control panel to the bottom of the DSH sidebar and a dedicated "Reading" tab next to the chat and history tabs in the main conversation area. The "Reading" tab automatically displays the original Markdown content of the document you are quizzed on.

The plugin is not bound to any specific project, and works with any Markdown file in your current session working directory. It stores reading progress in a hidden file called .md-quiz-read-progress.md in your document’s directory, tracking XP, combo streaks, and user level following the daily learning agreement. It patches DSH’s directory selector to use the in-app browser by default, which prevents errors with the native system file dialog on Windows. If you prefer to use the native dialog, you can easily remove the patch by editing four lines of the plugin’s configuration file. The plugin is open source under the MIT license, developed and tested on DSH rc.7.

这是一款专为DeepSeek Harness(DSH)Web版开发的原生插件,实现了针对Markdown文档的「答题式阅读」功能。插件分为服务端和客户端两个半区:服务端向DSH注册了md-quiz-read模型侧技能、/mdquiz命令,以及供前端显示原文的文件读取路由,仅支持不超过512KB的特定格式文件。客户端在DSH侧边栏底部添加答题闯关面板,在对话区新增阅读标签页用于展示Markdown原文。

这款插件不绑定特定项目,支持对任意会话工作目录下的Markdown文档启用答题式阅读,只需要在面板中填写文档的相对路径即可解析使用。安装方式分为从GitHub直接安装和本地开发链接安装两种,两种方式都会自动将插件注册到DSH配置中,不需要用户手动修改配置补丁。安装完成后只需要重启DSH Web,刷新浏览器页面即可完成激活。

插件会默认将阅读进度记录在文档目录下的.md-quiz-read-progress.md文件中,记录包括XP、连击和等级信息,规则遵循每日学习协议。插件会自动修改目录选择器配置,将其固定为应用内浏览器模式,避免原生对话框报错,用户如果想保留原生对话框可以手动修改配置文件。插件目前基于DSH rc.7版本开发验证,采用MIT许可开源。

Pre-install check安装前体检Compatibility · Security兼容性 · 安全性 1 warning1 项注意
  • Only 6 stars - very few users, little community feedback星标只有 6,几乎没人在用,遇到问题缺少社区反馈
DSH walks through these 9 checksDSH 会逐条核对这 9 项

Compatibility兼容性

  • DSH, Node, OS and profile requirementsDSH 版本 / Node 版本 / 操作系统 / profile 是否满足要求
  • External dependencies and runtimes (Electron / Python / Docker, ...)外部依赖与运行时(Electron / Python / Docker 等)是否齐备
  • Conflicts with installed plugins: command names, skill / tool names, ports, duplicate MCP registration与已装插件是否冲突:命令名、skill / tool 重名、端口占用、重复 MCP 注册

Security安全性

  • Repo matches the facts registered here; archived or abandoned?仓库是否与页面登记一致,是否归档或长期停更
  • Safety of preinstall / install / postinstall and install.sh / setup.ps1preinstall / install / postinstall 与 install.sh、setup.ps1 是否安全
  • curl|bash, download-then-execute, obfuscation, unrelated domains → stop immediatelycurl|bash、下载即执行、混淆代码、无关域名 → 立刻停止
  • Typosquatting or unmaintained packages among the new dependencies新增依赖里有没有 typosquatting 或无人维护的包
  • Requested permissions vs. what the feature actually needs申请了哪些权限、是否超出功能所需(filesystem / network / shell / clipboard)
  • Any sudo / admin requirement, plus uninstall and rollback是否要求 sudo / 管理员权限,以及卸载与回滚方式

Anything uncertain must be marked unknown with a note on how to confirm it. This site's signal screen is a static snapshot, not a security audit.拿不准的必须标「未知」并说明要我怎么确认。本站的信号筛查是静态快照,不能替代安全审计。

Or use CLI install (for developers)或使用命令行安装(适合开发者)

CLI Install命令行安装

git clone https://github.com/MrElysium/dsh-md-quiz.git

把 MrElysium/dsh-md-quiz 加入你的 DSH 配置(web profile)即可启用。

READMEREADME

dsh-md-quiz — DeepSeek Harness「答题式阅读」插件(真·插件 + Web UI)

把 每日学习协议.md(先诊断后带练)做成一个可安装进 dsh web profile 的双半区插件:

  • 服务端半区(lib/index.js):向 DSH 注册 md-quiz-read 技能(模型侧协议)、/mdquiz 命令(UI 命令面)、GET /mdquiz/read?path=… 文件读取路由(供阅读区显示原文,仅限 .md/.markdown/.txt/.rst,≤512KB)。
  • 客户端半区(lib/client.js):Web 侧边栏底部「🎮 答题式阅读」闯关面板(阶段流程条 / 开始闯关 / 只测我 / 抽查我 / 结算打卡 / 闯关规则),以及对话区 「阅读区」tab(聊天 | 轨迹 | 阅读区,显示 Markdown 原文,自动识别会话里的闯关消息)。

通用性:不绑定任何项目。任何目录里的 .md 都能用——面板里填路径即可,相对路径按会话工作目录解析。

安装

前置:装有 pnpm(dsh plugin 通过 pnpm 安装)。

方式一:从 GitHub 装(推荐,公开分享即用)

dsh plugin --profile web add github:<你的账号>/dsh-md-quiz
# 重启 dsh web,浏览器刷新

方式二:本地开发装

dsh plugin --profile web add link:./path/to/dsh-md-quiz

两种方式都会自动把插件注册进 dsh.profile.bundles(因为本包声明了 dsh.bundle.patch),无需手改补丁。

验证

  • 重启后访问 http://127.0.0.1:3080/plugins/dsh-md-quiz/client.js 返回 200;页面源码 window.__DSH_BOOT__ 里出现 dsh-md-quiz 条目。
  • 侧边栏底部出现「🎮 答题式阅读」;对话区上方出现「阅读区」tab(聊天 | 轨迹 | 阅读区)。
  • 会话里说「答题式阅读 <任意 md 路径>」即触发 5 阶段阅读;输入框 /mdquiz 命令可见。

使用

操作 效果
侧边栏「答题式阅读」→ 填路径 → 「🚀 开始闯关」 向当前会话发送 答题式阅读 <路径>,陪练按 5 阶段带读
「📝 只测我」 发送 只测我 <路径>,只出 3 题诊断不教学
「🎯 抽查我」 发送 抽查我 <路径>,从已学章节随机出题
「💰 结算打卡」 发送 结算,输出结算框并写打卡日志
对话区「阅读区」tab 显示当前文档原文(自动识别会话里的闯关消息,或手动输路径加载)
输入框 /mdquiz <路径> 命令面提示,同样可发起

进度默认记在 <文档目录>/.md-quiz-read-progress.md(XP / 连击 / 等级,规则同 每日学习协议.md)。

卸载

dsh plugin --profile web remove dsh-md-quiz
# 重启 dsh web

结构

dsh-md-quiz/
├── package.json        # dsh.bundle.patch + dsh.client 声明、exports、files
├── cordis.patch.yml    # bundle 补丁:挂载本插件 + 目录选择器固定 browse
├── lib/
│   ├── index.js        # 服务端:技能注册 + /mdquiz 命令 + /mdquiz/read 路由
│   ├── client.js       # 客户端 bundle:侧边栏面板 + 阅读区 tab
│   └── types/index.d.ts
├── README.md           # 本说明
├── PUBLISH.md          # 发布到 DSH 生态的步骤
├── NOTES.md            # 开发经验总结(DSH 客户端插件踩坑记录)
└── LICENSE             # MIT

注意

  • 目录选择器:本插件把全局目录选择器固定为 browse(应用内浏览器),否则 本机(win32 + 回环)会解析成 native 导致面板「浏览目录」报错。若想保留系统 原生目录对话框,删掉 cordis.patch.yml 里目录选择器的 4 行。
  • 服务端改动需重启,客户端改动刷新即可(详见 NOTES.md)。
  • 在 rc.7 上开发与验证
← 上一个 Prev forgeax-dsh-game-plugin 下一个 Next dsh-anchored-flash →