dshbase

插件目录 / Developer / dsh-novel-reader

dsh-novel-reader

已验证 · 实测可装 ZhuSheng-0807

✓ 持续维护 基于 1 个官方 DSH 包

查看 GitHub ↗ ← 返回插件目录

2Stars
0Forks
0未关闭 issue
—语言
2026-08-17最近推送
跨平台平台

功能简介

Developer 类别的 DeepSeek Harness 插件。

✅
我们的评价
可用 — 实测通过,早期项目

Developer 类别的 DeepSeek Harness 插件。 实测能干净安装、正常启动。早期项目,但功能可用。

「已验证」表示我们的自动化 CI 在干净 profile 里实际执行了 dsh plugin add 并启动成功——仅此而已。功能描述与版本兼容性均为作者声明。这不是安全审计,也不代表对第三方代码的背书。

README

📖 dsh-novel-reader

DSH Web 摸鱼小说阅读器 · 在 DeepSeek Harness Web 里悬浮一个轻量小说阅读面板,随时摸鱼。

npm version
License: MIT
DSH Plugin

一个为 DeepSeek Harness (DSH) Web 打造的悬浮小说阅读器插件:点击右下角半透明白色 📖 按钮即可展开阅读面板,看小说不用切窗口,摸鱼利器。

✨ 功能特性

  • 📌 悬浮按钮:半透明白色图标按钮,可随意拖动位置;点击展开,Esc 一键收起
  • 🪟 自由缩放面板:拖动面板边缘/角落即可调整窗口大小,拖拽标题栏移动位置(位置与大小自动记忆)
  • 📑 分页目录:每页 20 章,自动定位到当前阅读章节所在页,支持页码直接跳转
  • 🔖 书架:收藏多本小说,随时继续阅读;「最近阅读」历史一键回到上次位置
  • 💾 阅读进度:章节 + 行内滚动位置双重保存,重启 DSH 后自动续读
  • ⚡ 章节预缓存:自动预取上一章/下一章,翻页秒开
  • 🔍 搜索换书:按书名搜索小说,一键加入书架开始阅读
  • 🎨 原生风格:UI 使用 DSH 设计 token(--dsw-alias-*),随 DSH 明暗主题自动适配
  • 🏗️ 纯 JS 无构建:无需 TypeScript/打包步骤,改完即用

🚀 安装

方式一:npm

dsh plugin --profile web add dsh-novel-reader

方式二:GitHub 直装

dsh plugin --profile web add github:ZhuSheng-0807/dsh-novel-reader

方式三:本地开发调试

cd <dsh-home>\profiles\web
pnpm add file:D:\dsh-novel-reader
# 把 dsh-novel-reader 追加到 package.json 的 dsh.profile.bundles
# 重启 DSH-Web(client 半由 HMR 自动热更)

安装后重启 DSH(或刷新页面),右下角会出现半透明白色 📖 按钮。

📸 界面预览

(待补充截图)

🧱 架构

插件采用 DSH 标准的 Dual-half 结构,参照 dshmarket / dsh-better-sidebar 的写法:

dsh-novel-reader/
├── lib/index.js          # Host 半:/novel/* 同源 JSON API(抓取 + 解析)
├── lib/types/index.d.ts  # 类型声明
├── client/client.js      # Client 半:window.__ModuleLoader__ bundle(纯 JS)
├── cordis.patch.yml      # bundle 挂载补丁
├── package.json          # dsh 元数据(bundle/client 声明)
└── README.md

Host 半(lib/index.js)

在 DSH webserver 注册 /novel/* 路由,以桌面 UA 抓取目标站并解析 HTML
(浏览器跨域 fetch 会被目标站 CORS 拦截,所以抓取放在 Host 侧):

路由 说明
GET /novel/toc?book=<id>&page=<n> 分页目录 { book, author, page, pages, pageRanges, chapters[] }
GET /novel/chapter?url=... 章节正文 { title, content, prev, next }(自动合并多页章节)
GET /novel/search?q=... 按书名搜索 { results: [{ id, title, author, category }] }

Client 半(client/client.js)

  • 纯 JS window.__ModuleLoader__.load({ id, factory }) bundle,无需编译
  • 注册进 shell.overlay 槽位,用 createPortal 渲染到 document.body
    (脱离 overlay 容器 z-index 限制,不被其他插件盖住)
  • 样式全部使用 DSH 设计 token,明暗主题自适应
  • 阅读进度 / 书架 / 历史 / 面板位置大小存于 localStorage

🛠️ 开发与发布

开发:本插件是纯 JavaScript,改完 lib/ 或 client/ 后同步到
<dsh-home>\profiles\web\node_modules\dsh-novel-reader\ 即可
(client 半由 DSH 的 client-hmr 自动热更新,host 半需重启后端)。

发布到 npm:

npm login
npm publish

发布到插件市场:在 awesome-dsh-plugin
提交 PR,将本插件加入 plugins.json 即可被插件市场搜索到。

⚠️ 免责声明

  • /novel/* 代理仅允许 www.hongmengxsw.com 及其子域(防 SSRF)
  • 仅抓取免费公开小说网站的章节文本用于个人阅读,请尊重原作者版权,勿用于商业用途
  • 阅读进度/书架数据仅存本机 localStorage,不上传任何服务器

📄 License

MIT

安装

🧩 让 Agent 自动装(推荐)

装一次目录插件,之后本站所有插件都能让 DeepSeek Harness 自动找、自动装:

dsh plugin add dshbase-catalog

然后对 agent 说「帮我装 dsh-novel-reader」,它会在目录里找到并自动安装。文档:dshbase-catalog · 已验证场景包。

该插件是 GitHub 源码(未发 npm)——直接从仓库装:

Web profile:

dsh plugin --profile web add github:ZhuSheng-0807/dsh-novel-reader

Headless(CLI)profile:

dsh plugin --profile headless add github:ZhuSheng-0807/dsh-novel-reader

实测报告

验证通过:从 GitHub 源码完成 L1 安装 + L2 加载 + L3 运行(dsh 0.1.0-rc.6)。

安全:尚未扫描——我们的每日静态扫描将很快覆盖它。

分享徽章

Developer 里更多

浏览全部 7819 个插件 →