🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

arXiv 论文检索 jwilson411/dsh-arxiv

DeepSeek Harness
jwilson41164 天前有提交已提供中文文档扫描:未发现敏感能力

按关键词搜 arXiv 论文并取回摘要元数据

28.4/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/9/16 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add jwilson411/dsh-arxiv
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么[目录]—
dsh 原生插件 · search
暂无时间戳·判据 →
装得上吗[实装验证]✓
本站已真实安装成功
非静态推断
L4 · 真实安装等级说明 →
数据截至 2026/09/26·判据 →
安全吗[自动扫描]—
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
数据截至 2026/11/03·判据 →
还在维护吗[仓库]—
更新放缓:最近一次提交在 64 天前
暂无时间戳·判据 →
图例:✓ 通过! 需注意— 未判定 / 无数据· 「未判定」= 本站尚无数据,不代表插件有问题
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →

可信度证据

安全扫描自动 · 静态分析源码
v2.7.0
🟢 扫描:未发现敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。

扫描于 2026/11/3(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

社区实装还没有人打卡 · 装过的第一个就是你
依赖的 DSH / Cordis 模块
@deepseek-ai/dsh-tools@deepseek-ai/cordis
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 按关键词检索论文
  • 抓取摘要元数据
  • 只读不解析PDF

DeepSeek Harness 插件:极简只读 arXiv 搜索 + 摘要抓取(Atom API,不解析 PDF)

README

由 DeepSeek 最新模型翻译生成
dsh-arxiv 一个用于在 arXiv 上查找论文的小型 DeepSeek Harness 函数插件。它通过 arXiv 的公共 Atom API 恰好注册两个面向模型的工具——arxiv_search 和 arxiv_get——除此之外不拥有任何其他东西。 它刻意不是一个科学平台。没有 PDF 摄取,没有全文提取,没有嵌入存储,没有引用图,没有参考文献管理器。它回答两个问题——关于这个已经写了些什么? 和 这篇论文是什么?——并返回元数据和摘要。如果你想要 PDF,工具会告诉你它在哪里;获取它是别人的工作。 只读,无 API 密钥,无凭据,无状态。 安装 dsh plugin --profile web add github:jwilson411/dsh-arxiv dsh plugin 会转发到 $DSH_HOME/profiles/web 内的 pnpm,然后根据已安装状态协调 profile:由于此包的清单声明了 dsh.bundle.patch,它会被追加到 profile 清单中有序的 dsh.profile.bundles 列表,其补丁成为一个层。 移除它的方式相同,只需将 add 替换为 remove。
展开完整文档(README 剩余 1 节)
dsh-arxiv

一个用于在 arXiv 上查找论文的小型 DeepSeek Harness 函数插件。它通过 arXiv 的公共 Atom API 恰好注册两个面向模型的工具——arxiv_search 和 arxiv_get——除此之外不拥有任何其他东西。

它刻意不是一个科学平台。没有 PDF 摄取,没有全文提取,没有嵌入存储,没有引用图,没有参考文献管理器。它回答两个问题——关于这个已经写了些什么? 和 这篇论文是什么?——并返回元数据和摘要。如果你想要 PDF,工具会告诉你它在哪里;获取它是别人的工作。

只读,无 API 密钥,无凭据,无状态。

安装

dsh plugin --profile web add github:jwilson411/dsh-arxiv

dsh plugin 会转发到 $DSH_HOME/profiles/web 内的 pnpm,然后根据已安装状态协调 profile:由于此包的清单声明了 dsh.bundle.patch,它会被追加到 profile 清单中有序的 dsh.profile.bundles 列表,其补丁成为一个层。

移除它的方式相同,只需将 add 替换为 remove。

固定的 DSH 候选发布版本

此包是针对固定的候选发布版本 0.1.1-rc.2 编写和测试的——即当前的 @deepseek-ai/dsh 版本以及匹配的 @deepseek-ai/dsh-tools@0.1.1-rc.2,后者被精确固定在 devDependencies 中,以便测试针对一个已知的 API 运行。peer 范围是 ^0.1.1-rc.2,与 harness 自己的工具包声明方式一致。

请注意,@deepseek-ai/dsh-tools 的 npm latest 标签仍指向较旧的 0.0.1-rc.1;0.1.1-rc.2 系列发布在 next 下。请显式固定版本,而不要依赖标签。

它注册了什么

| Cordis 插件 id | arxiv(cordis.patch.yml 中的行 id) |
| 注入 | tools——一个硬依赖;插件会等待而不是降级 |

| 工具 | 参数 | 返回 |
| arxiv_search | query(字符串,必填)、max_results(整数,可选,1–25,默认 5) | { query, search_query, max_results, returned, papers[], plugin } |
| arxiv_get | id(字符串,必填) | { requested_id, paper, plugin } |

两个工具中的每篇论文都是同一个对象:

{
"id": "1706.03762v7",
"title": "Attention Is All You Need",
"authors": ["Ashish Vaswani", "Noam Shazeer", "..."],
"published": "2017-06-12T17:57:34Z",
"abstract": "The dominant sequence transduction models are based on …", "pdf_url": "https://arxiv.org/pdf/1706.03762v7", "abs_url": "https://arxiv.org/abs/1706.03762v7" }

pdf_url 会被报告出来,以便调用者可以打开它。此插件从不获取它。

arxiv_search 在所有字段中发送一个普通短语。以 arXiv 的字段前缀之一(ti:、au:、abs:、cat:、all: 等)开头的查询会按原样传递,因此 au:Hinton AND cat:cs.LG 可以正常工作。max_results 会被限制在 1–25 范围内,而不是被拒绝——这是一个查找工具,不是采集器。
arxiv_get 接受 1706.03762、1706.03762v7、arxiv:1706.03762、 /abs/ 或 /pdf/ URL,以及 2007 年之前的 hep-th/9901001 形式;所有这些都会规范化为裸标识符。版本后缀会保留,因为丢弃它会在不知不觉中回答与所请求的不同修订版本。arXiv 对未知 id 会返回 HTTP 200 和一个错误条目,因此 arxiv_get 会检查并抛出 ARXIV_NOT_FOUND,而不是静默地报告什么都没有。

与 arXiv 通信

一个端点,通过 HTTPS,无需密钥:https://export.arxiv.org/api/query。
没有任何地方会抓取 HTML 页面。

每个请求都受到双重限制,并且在任一限制下都会失败关闭——一个 AbortSignal 截止时间(15 秒)和一个在正文流式传输时强制执行的响应字节上限(2 MiB),因此超大响应会被放弃而不是被缓冲。两者都可以从插件的 patch 行进行配置:

- insert:
- id: arxiv
name: dsh-arxiv
config:
timeoutMs: 15000
maxBytes: 2097152

失败会携带一个稳定的 code——ARXIV_TIMEOUT、ARXIV_HTTP_ERROR、 ARXIV_RESPONSE_TOO_LARGE、ARXIV_NOT_FOUND、ARXIV_BAD_ID、 ARXIV_BAD_QUERY、ARXIV_PARSE_ERROR、ARXIV_UNREACHABLE——因此调用方可以区分超时和论文缺失,而无需匹配文字描述。

请求会通过一个 User-Agent 表明自身身份,其中包含插件名称及其仓库,正如 arXiv 的使用条款所要求的那样。

无头使用

工具工厂会接收要使用的 fetch,因此你可以在不启动 profile 的情况下,从普通 Node 脚本中驱动任一工具:

// titles.mjs — node titles.mjs
import { createArxivSearchTool } from 'dsh-arxiv'

// Omit fetch to use the global one and hit the real API. Doing so sends live
// requests to export.arxiv.org: be polite, and read the terms linked below.
const search = createArxivSearchTool({ fetch: globalThis.fetch })

const exec = { signal: AbortSignal.timeout(20_000) }
const result = await search.execute({ query: 'au:Hinton AND cat:cs.LG', max_results: 5 }, exec)

console.log(${result.returned} paper(s) for ${result.search_query})
for (const paper of result.papers) {
console.log( ${paper.id} ${paper.title})
}

换入一个 stub fetch,同一个脚本就可以完全离线运行——这正是测试套件驱动它的方式:

const canned = async () =>
new Response(await readFile('feed.xml', 'utf8'), {
status: 200,
headers: { 'content-type': 'application/atom+xml' },
})

const search = createArxivSearchTool({ fetch: canned })

execute 会在主体运行之前验证其参数,因此错误调用会以 ToolArgsError 拒绝,并且永远不会到达网络。

arXiv 的条款,以及这是谁的文本

这个插件是一个 API 客户端。它与 arXiv 无关联,也未得到 arXiv 的认可。

API 的使用受 arXiv API Terms of Use 约束。简而言之:标明你的客户端,不要频繁冲击服务,并尊重元数据的许可。
这些工具返回的摘要和元数据属于 arXiv 及其作者,而非本插件。 除合并 arXiv 用于包裹正文的换行符外,它们均原样传递。请将其归属于 arXiv 和论文作者,并引用论文——每个结果上的 abs_url 就是应指向的位置。感谢 arXiv 公开提供 API 及其数据。

布局

package.json 清单 + dsh.bundle.patch —— 使其成为 bundle 的关键 cordis.patch.yml bundle 的补丁层:一次插入,一行插件 src/index.js 插件:name、inject、apply(ctx)、两个工具 src/arxiv.js HTTP 客户端:端点、边界、id 和查询处理 src/atom.js 针对 arXiv Atom feed 的小型专用解析器 src/errors.js ArxivError 及其错误码 test/ 离线测试,附带已检入的 feed 测试夹具

Atom 解析器是针对 arXiv 唯一有文档记载的响应结构手写的,而非引入通用 XML 库,因此本包完全没有运行时依赖。

测试

npm install
npm test

从构造上即为离线。 每个测试都注入一个 fetch 替身,从已检入的测试夹具返回响应,并且每个测试文件都会用一个会抛错的守卫替换全局 fetch——因此,忘记使用注入的 fetch 的代码路径会以测试失败的形式暴露,而不是向 export.arxiv.org 发起真实请求。npm test 不会打开任何套接字,也不会读取任何凭据。

测试套件覆盖注册、针对捕获的真实 feed 的 Atom 解析器、钳制、id 规范化、两种渲染投影、输出模式验证、超时、超大、非 2xx、未知 id 和错误参数时的显式失败,以及清单/补丁接线。

CI(.github/workflows/ci.yml)在 Node 22 和 24 上运行相同的两条命令,使用 contents: read 且无任何机密。

许可证

MIT —— 见 LICENSE。仅涵盖本插件的代码,不涵盖其检索的 arXiv 内容。
预览分享卡片长什么样 ↓jwilson411/dsh-arxiv
分享 · DeepSeek Harness Hub
jwilson411/dsh-arxiv

按关键词搜 arXiv 论文并取回摘要元数据

这个插件是你维护的吗?
作者本人可认领并核对本条目;认领通过后,详情页会显示「作者已认领」标记。
认领条目 →
回到顶部