DSH Plugin Store
Back to home

LKRCharon

dsh-research-library

Native literature search, bibliographic verification, BibTeX, and session snapshots for DeepSeek Harness — powered by Field Current.

Stars
0
Language
TypeScript
Created
Aug 14, 2026
Updated
Aug 14, 2026
MCP
GitHub repoHomepage

Introduction

dsh-research-library

面向 DeepSeek Harness 的原生研究文献库工作台,由 Field Current 提供事实源。它不是一层提示词或单个 skill:宿主侧注册原生研究工具并保存会话关联快照,浏览器侧把工具结果渲染成文献卡片与常驻面板。

当前代码面向:

  • Field Current 0.3.0+
  • @deepseek-ai/dsh 0.1.0-rc.6
  • Node.js ^22.19.0 || >=24.0.0
  • pnpm 已在 PATH 中(dsh plugin 安装流程需要)

能做什么

DSH 工具用途
field_current_search从策展文献库按标题、作者、key 或 collection label 检索论文。
field_current_lookup用标题向 DBLP / arXiv 做外部书目信息核验。
field_current_bib按 keys 或 collection label 获取规范 BibTeX。
field_current_snapshot把选中的条目与 BibTeX 保存成不可变的 DSH 本地研究快照,并关联当前 session。
field_current_snapshots列出当前 session 最近的研究快照。

插件只允许调用 Field Current /mcp 暴露的 lookupentriesbib 三个工具;不会把任意 MCP 工具透传给模型,也不调用通用 /api/* 路由。返回值在进入 DSH 前会按本地 schema 校验,额外工具被忽略,缺少所需工具或协议漂移时会失败关闭。

Web 端为五个原生工具提供紧凑的 tool card,并在输入区上方维护当前 session 的 Field Current 面板。面板只消费经过守卫的持久化 presentation metadata;论文标题、摘要、作者、机构与 BibTeX 都按不可信数据处理,不执行 HTML。

边界

对策展论文库而言,这条 MCP 能力面是只读的:没有导入、修改、删除、账户管理或任意 HTTP 写入工具。不过“只读”不等于运行过程零写入:

  • lookup 可能更新 Field Current 的一次性外部来源缓存;
  • 使用个人读取令牌时,Field Current 可能更新该令牌的 last_used_at
  • field_current_snapshot 会写入 DSH 自己的本地 storage domain,但不会修改 Field Current 的论文记录。

Field Current 的 key 是单实例主键,不应被当作跨实例永久标识;DOI / arXiv ID 更适合作为跨实例线索。collection label 也不是租户或权限边界。

准备 Field Current

启动一个 Field Current 0.3.0+ 实例,并确认 MCP 地址是 /mcp。本地默认地址为:

http://127.0.0.1:8788/mcp

推荐在 Field Current 的账户面板创建仅含 library:read 权限的 fcpat_... 个人令牌。兼容部署也可使用独立的 MCP_READ_TOKEN。不要使用能够访问写路由的 AUTH_TOKEN 代替 MCP 读取令牌;Field Current 的 /mcp 不把它视为 MCP 凭据。

把读取令牌只放进进程环境,不要写进 DSH profile、cordis.patch.yml、命令行参数、日志或 Git:

read -rs FIELD_CURRENT_MCP_TOKEN
export FIELD_CURRENT_MCP_TOKEN

插件配置保存的是环境变量名 FIELD_CURRENT_MCP_TOKEN,启动时才读取其值。dsh --dump-config 因而不会因为插件默认配置而打印令牌。

安装

先检查前置:

node --version
pnpm --version

从 npm 包安装(先用 npm view dsh-research-library@0.1.0 version 核实该版本在当前 registry 可见):

npx --yes @deepseek-ai/dsh@0.1.0-rc.6 \
  plugin --profile web add dsh-research-library@0.1.0

从已构建的本地 checkout 安装:

cd /absolute/path/to/dsh-research-library
pnpm install --frozen-lockfile
pnpm run check
npx --yes @deepseek-ai/dsh@0.1.0-rc.6 \
  plugin --profile web add "file:$PWD"

不要把一个尚未安装依赖、尚未构建的 checkout 当作发布包使用。安装后重启 web profile,并新开一个会话验证工具卡和 Field Current 面板。

本仓库不会仅凭 README 宣称 npm registry 已发布;请以 npm view 的实时结果为准。

配置

随包提供的 cordis.patch.yml 使用以下安全默认值:

配置默认值说明
endpointhttp://127.0.0.1:8788/mcpField Current Streamable HTTP MCP 地址。
tokenEnvFIELD_CURRENT_MCP_TOKEN保存环境变量名,不保存令牌。
timeoutMs15000单次 MCP 请求超时。
maxResponseBytes2359296单次 MCP structured result 的本地 UTF-8 上限;超限拒绝进入工具结果和会话日志。
maxSnapshots500DSH 本地保留的快照上限。
maxSnapshotBytes1048576单个持久化快照的字节上限。
failOnStartupErrortrue缺令牌、缺工具或连接失败时阻止误启动。
allowInsecureRemotefalse默认只允许 loopback 使用明文 HTTP;远端应使用 HTTPS。

如需连接远端 Field Current,在 web profile 中覆盖该服务的 endpoint;不要在 URL 中嵌入用户名、密码、令牌、query 或 fragment。仅在可信的隔离网络中才考虑开启 allowInsecureRemote。 各项同时在插件 schema 中设有同值默认值,因此 DSH 后置 patch 即使只覆盖一个字段,也不会丢失其余必需配置。

使用示例

可以直接让 DSH:

在 Field Current 里找最近的 LLM watermark 论文,给我 5 篇并保留摘要。
用 Field Current 核验 “Attention Is All You Need”,然后导出对应 BibTeX。
把刚才选中的 key 保存成名为 related-work-baseline 的研究快照。

搜索分页中的 count 是本页返回数量,不是全库总数。作者机构是论文发表时的元数据证据,不应被解释为当前任职。书目信息来源证据也不等于论文主张已经得到事实核验。

开发与验证

pnpm install --frozen-lockfile
pnpm run check

pnpm run check 应覆盖类型检查、单元测试、宿主/客户端构建与发布包检查。CI 在 Node 22.19.0 和 Node 24 上分别用锁文件安装并执行同一检查。

发布前至少还应在干净的临时 DSH profile 中安装生成的 tarball,并连接临时 Field Current 实例验证:启动、三项 MCP 能力协商、五个 DSH 工具、session 快照重放以及浏览器 tool card / panel。

许可证

AGPL-3.0-only。详见 LICENSE