上传 PDF 论文,边读结构化文本边向模型提问
31.4/100
综合分
1
GitHub 星标
98
npm 周下载
—/5
用户评分
数据截至 2026/10/5 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add paper-reviewnpm 源 · paper-review 的发布者账号已校验与本仓库一致
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:已验证
是什么
dsh 原生插件 · chat
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 73 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查✓ 自动检查通过展开查看检查明细 ↓
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✓npm 包paper-review @ 2.1.0
✓Node 引擎要求 >=22 · 基线 Node 22.19 满足
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明
验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/13 04:25:46
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
读写/删除本地文件发起外部网络请求
查看扫描证据(共 51 处,展示前 24 条)
- 写入本地文件lib/index.js:55
mkdirSync(globalDir, { recursive: true }) - 读取本地文件lib/index.js:59
try { links = JSON.parse(readFileSync(linksPath, 'utf8')) } catch (error) { links = {} } - 写入本地文件lib/index.js:63
try { writeFileSync(linksPath, JSON.stringify(links)) } catch (error) {} - 写入本地文件lib/index.js:82
writeFileSync(htmlPath(st), st.html) - 写入本地文件lib/index.js:83
writeFileSync(mdPath(st), st.md) - 写入本地文件lib/index.js:84
writeFileSync(metaPath(st), JSON.stringify({ ...st.meta, pages: result.pages, fallback: result.fallback, convertVersion: CONVERT_VERSION })) - 读取本地文件lib/index.js:96
if (existsSync(pdfPath(st))) { - 读取本地文件lib/index.js:97
st.bytes = readFileSync(pdfPath(st)) - 读取本地文件lib/index.js:98
const saved = existsSync(metaPath(st)) ? JSON.parse(readFileSync(metaPath(st), 'utf8')) : null - 读取本地文件lib/index.js:98
const saved = existsSync(metaPath(st)) ? JSON.parse(readFileSync(metaPath(st), 'utf8')) : null - 读取本地文件lib/index.js:100
if (existsSync(htmlPath(st)) && saved && saved.convertVersion === CONVERT_VERSION) { - 写入本地文件lib/index.js:169
mkdirSync(paperPath, { recursive: true }) - 删除本地文件lib/index.js:399
try { unlinkSync(htmlPath(global)) } catch (error) {} - 删除本地文件lib/index.js:400
try { unlinkSync(mdPath(global)) } catch (error) {} - 删除本地文件lib/index.js:421
try { unlinkSync(pdfPath(global)) } catch (error) {} - 删除本地文件lib/index.js:422
try { unlinkSync(metaPath(global)) } catch (error) {} - 删除本地文件lib/index.js:423
try { unlinkSync(htmlPath(global)) } catch (error) {} - 删除本地文件lib/index.js:424
try { unlinkSync(mdPath(global)) } catch (error) {} - 发起网络请求lib/client.js:505
fetch('/paper-review/document.html?sessionId=' + encodeURIComponent(sidQuery())).then((res) => { - 发起网络请求lib/client.js:522
fetch('/paper-review/state?sessionId=' + encodeURIComponent(sidQuery())).then(parseJson).then((s) => { - 发起网络请求lib/client.js:552
var res = await fetch('/paper-review/upload', { - 发起网络请求lib/client.js:687
fetch('/paper-review/session-title', { - 发起网络请求lib/client.js:702
fetch('/paper-review/project', { method: 'POST' }).then(parseJson).then((result) => { - 发起网络请求lib/client.js:715
fetch('/paper-review/link', {
扫描于 2026/11/2(1 天前) · 范围 入口闭包 + 全包扫描 · 来源 npm 发布包
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
功能亮点
- PDF转可选文本
- 图表与公式呈现
- 向模型提问论文
DeepSeek Harness 的论文评审面板:PDF 转可选文本,带图表、公式和问论文对话框
README
由 DeepSeek 最新模型翻译生成paper-review
给 DeepSeek Harness 用的论文阅读面板:上传 PDF 论文,在对话旁边以结构化、可选择的文本形式阅读,图表和独立公式以图像呈现。
功能
- PDF → 结构化文本(在 Harness 主机上运行,依赖 poppler):
- 双栏排版重建(栏间距检测 + 通栏行重组)
- 标题(字号 + 全大写归一化)与段首标题拆分
- 表格(几何列检测、单元格折行续接)
- 上下标、点线引导的目录
- 扫描版 PDF 回退为页面图像
- 图表和独立公式渲染为图像(pdftoppm 裁剪 + pdfimages 位图提取),公式文本保留为隐藏 span,仍可搜索。
- 右侧阅读面板:空间足够时作为真正的第三栏(harness 的 details 栏),自动折叠侧边栏腾出空间,窄窗口时浮动回退,折叠后收成细标签。
- 提问对话框:选中文本 → 弹出小对话框 → 输入问题(「解释一下这段」「这和……有什么关系」)→ 问题连同选中内容、其上下文以及摘要一起发给模型。
- 项目:Create project 会把论文(paper.pdf、paper.md、paper.html、图表、带标题/摘要的 README)落到一个 Paper 工作区,在那里打开会话,并让智能体加载论文——每个项目保留自己的论文,多篇论文可以共存。
展开完整文档(README 剩余 1 节)
paper-review 给 DeepSeek Harness 用的论文阅读面板:上传 PDF 论文,在对话旁边以结构化、可选择的文本形式阅读,图表和独立公式以图像呈现。 功能 - PDF → 结构化文本(在 Harness 主机上运行,依赖 poppler): - 双栏排版重建(栏间距检测 + 通栏行重组) - 标题(字号 + 全大写归一化)与段首标题拆分 - 表格(几何列检测、单元格折行续接) - 上下标、点线引导的目录 - 扫描版 PDF 回退为页面图像 - 图表和独立公式渲染为图像(pdftoppm 裁剪 + pdfimages 位图提取),公式文本保留为隐藏 span,仍可搜索。 - 右侧阅读面板:空间足够时作为真正的第三栏(harness 的 details 栏),自动折叠侧边栏腾出空间,窄窗口时浮动回退,折叠后收成细标签。 - 提问对话框:选中文本 → 弹出小对话框 → 输入问题(「解释一下这段」「这和……有什么关系」)→ 问题连同选中内容、其上下文以及摘要一起发给模型。 - 项目:Create project 会把论文(paper.pdf、paper.md、paper.html、图表、带标题/摘要的 README)落到一个 Paper 工作区,在那里打开会话,并让智能体加载论文——每个项目保留自己的论文,多篇论文可以共存。 环境要求 - 已安装 DeepSeek Harness(dsh)。 - PATH 中有 poppler 命令行工具:pdftotext、pdftoppm、pdfimages。 - macOS:brew install poppler - Debian/Ubuntu:sudo apt-get install poppler-utils 安装 从 npm 安装(推荐) dsh plugin --profile readPaper add @deepseek-ai/dsh-web-app paper-review then start the harness: dsh --profile readPaper dsh plugin 会安装这些包,然后协调 dsh.profile.bundles——声明了 dsh.bundle 的包会自动加入配置档的层栈。 为什么要把 @deepseek-ai/dsh-web-app 一起加上: 在从未用过它的机器上新建的配置档,只会预置 @deepseek-ai/dsh-base(对于未知的配置档名,web 界面 bundle 不是默认项)。显式加上 @deepseek-ai/dsh-web-app,配置档才有浏览器 GUI,本插件的面板就渲染在里面。如果机器上已存在带 web app 的 readPaper 配置档,那么只跑 dsh plugin --profile readPaper add paper-review 就够了。 前置条件 - PATH 中有 poppler 命令行工具(pdftotext、pdftoppm、pdfimages)——见环境要求。 - dsh plugin 命令需要 pnpm(它会转发给 pnpm)。如果没装 pnpm:corepack enable pnpm 或 npm i -g pnpm。 手动安装(不用 npm) 1. 把这个目录复制到 ~/.dsh/profiles/readPaper/packages/paper-review。 2. 让它可被解析(不需要 pnpm): bash mkdir -p ~/.dsh/profiles/readPaper/node_modules ln -s ../packages/paper-review ~/.dsh/profiles/readPaper/node_modules/paper-review 3. 在 ~/.dsh/profiles/readPaper/package.json 里,把 "paper-review" 加进 dsh.profile.bundles。 4. dsh --profile readPaper 用法 - 右侧边缘的 Paper 标签页,点开就是阅读栏。 - Load PDF… 用来上传(把 PDF 拖到阅读栏里也行)。 - 选中文字 → 弹出 ask dialog → 输入问题,按 Enter。 - Create project 会把论文写进 Paper 工作区,并打开一个会话,论文已作为上下文加载。 - 转换后的文档存放在 ~/.dsh/paper-review/ 下,重启后依然在。 工作原理 - lib/index.js(宿主侧):提供 HTTP 路由(/paper-review/…),负责上传、转换、文档、插图、项目,以及按会话划分的存储。转换器用 pdftotext -bbox 提取文字的位置信息,重建分栏与行,对区块分类(标题、表格、目录、公式),再用 pdftoppm 把插图与公式区域栅格化。 - lib/client.js(客户端侧):面板、标签页、ask dialog,以及项目流程。以手写的 __ModuleLoader__ CJS bundle 形式发布,无需构建步骤。 - cordis.patch.yml:bundle 补丁,用来插入插件那一行。 开发 - npm run check —— 语法检查。 - npm run eval —— 下载 10 篇近期的 astro-ph 论文及其 arXiv HTML 版本,做转换,再对照参考文本给文字覆盖率打分(想快速跑一遍就用 PAPERS=2 npm run eval)。语料落在 eval/run/(已加入 gitignore)。 限制 - 转换效果取决于 PDF 的文字层(扫描版论文只能渲染成页面图片)。 - 展示公式是图片(公式文字以隐藏 span 的形式保留);行内公式会重建为上下标文字。 - 只存在于 PDF 注释里的内容(比如某些期刊那种超长作者名单)无法提取。 - 插件的 HTTP 路由遵循 harness 的 localhost 信任模型。
预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
louwenbo580/read-paper
上传 PDF 论文,边读结构化文本边向模型提问
相关插件 · 对话 / 记忆
上下文中枢oceanbase/powercontext
上下文跟着工作走 —— 跨会话、跨智能体、跨人。
★ 1,487已汉化DSH
73
智能体记忆库plastic-labs/honcho
Honcho 是记忆基础设施,用来构建有状态的智能体。这些智能体能理解不断变化的人、智能体、群组、项目和想法。
★ 7,894已汉化DSH
71.7
长程智能体控制面loopx-project/loopx
给 Agent 一个目标,让工作持续向前。
★ 6,358已汉化DSH
71.3
智能体上下文数据库volcengine/OpenViking
给 AI 智能体用的上下文数据库
★ 41,379已汉化DSH
71.3
长效机器人团队Fei2411/DS-Bot
DS Bot 是一个基于 DeepSeek Harness简称 dsh的 bot 插件,插件将 dsh 改造为 bot…
★ 5,084已汉化DSH
71.1
可携带记忆层EverMind-AI/EverOS
为什么选择 EverOS
★ 13,778已汉化DSH
71.1
这是你的仓库?认领条目