Back to home@masquerator-coder

dsh-paperlens

No description

Stars
0
Language
JavaScript
Created
Sep 9, 2026
Updated
Sep 9, 2026
GitHub repo

Introduction

dsh-paperlens

文献检索科研副驾驶 —— deepseek-harness (dsh) 的原生 Cordis 插件。

受 PaperLens 的"找 → 筛 → 读 → 懂 → 存 → 引"工作流启发,完全源码级重写为 dsh 插件:多源学术检索 + 引文格式化 + 文献导出 + 本地 sqlite 文献库。AI 分析由 dsh 会话模型原生完成(无需自带 AI 网关)。

功能

工具说明
paper_search跨源检索学术论文(OpenAlex + CrossRef),按相关性排名、自动去重、元数据完整度评分(0-100)
paper_details单篇论文完整元数据(扩展摘要、作者、被引、链接)
paper_cite引文格式化:APA 7th / MLA 9th / GB/T 7714 / Chicago 17th / Vancouver
paper_import_doi批量 DOI 导入并充实元数据,可存入文献库
paper_save存本地文献库(收藏夹 / 标签 / 阅读状态 unread·reading·read)
paper_export库 → RIS / BibTeX / CSV 导出

本地优先:检索数据只经开放学术 API(无明文 key 必需),文献库存于本机 ~/.dsh/paperlens/library.db(node:sqlite + FTS5),数据不出机器。

安装

# 本地开发(file: 路径免 allowBuilds)
dsh plugin --profile web add file:D:/Coding/DSH-Plugin/dsh-paperlens

# 或 git 安装(本包已提交 lib/,无 prepare 脚本 → 零 allowBuilds)
dsh plugin --profile web add https://gitcode.com/foqiang/dsh-paperlens.git

bundle 声明在 dsh.bundle.patch,装完下次启动自动挂载,无需手改 cordis.patch.yml。

配置(cordis.patch.yml 的 insert config)

- insert:
  - id: dsh-paperlens
    name: dsh-paperlens
    config:
      sources:
        openalex: { enabled: true, email: "you@example.com" }   # mailto 提升 OpenAIex polite pool
        crossref: { enabled: true, email: "you@example.com" }
      defaultMaxResults: 20        # paper_search 默认条数
      # libraryDir: 默认为 ~/.dsh/paperlens/

开发

node build.mjs   # 自动定位 deepseek-harness 根目录编译 lib/
node smoke.mjs   # 纯逻辑 smoke(零 @deepseek-ai,离线可跑)
node scripts/net-smoke.mjs  # 真网络检索冒烟(需能访问 api.openalex.org / api.crossref.org)

范围与边界(诚实标注)

  • 数据源:v1 为开放 API 源(OpenAlex / CrossRef)。CNKI / 万方 / Scopus / ScienceDirect 需浏览器 + CARSI 认证,属 GUI 应用域,不在本插件;Semantic Scholar 无 key 即限流(429),留待 v2 接 key 再加。
  • AI 分析:详析 / 对比 / 综述由 dsh 会话本体直接完成 —— 工具只提供结构化数据。
  • 引用图谱:GUI 专属的 D3 交互图不做;paper_graph 预留(v2)返回引用关系数据由模型叙述。
  • 本项目仅借鉴 PaperLens 的功能划分思路,代码全部重写、MIT 许可,无代码复用。

KV Cache effect

本插件默认不注入任何模型可见上下文(无 systemPrompt section、无 pre-step 注入),只在模型调用工具时产生一次性的工具调用与结果 —— 对 KV cache 的稳定前缀无影响,append-only 会话记录。本地文献库的读取发生在工具调用内,不进模型上下文。

许可证

MIT © 2026 fuqiang (foqiang)


Inspired by vanthree31/PaperLens workflow concepts; no code borrowed.