DeepSeek Harness Hub
← 返回列表

gsh150801/dsh-bioinf-routed

DeepSeek Harnessspec-screened在 GitHub 查看 ↗
未验证

面向 DeepSeek Harness 的生信技能路由插件。

尚未跑自动兼容性验证,可查看页面内的依赖与入口分析。 · 最近上游提交 2026/9/1 · 已提供中文文档

DeepSeek Harness (dsh) 的生物信息学插件

综合分
28
GitHub 分
28
用户评分
★ Stars
0
周下载量
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add gsh150801/dsh-bioinf-routed
该插件未发布到 npm,走 GitHub 源安装(pnpm 若拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑)
数据截至 2026/9/20(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-skill@deepseek-ai/dsh-tools@deepseek-ai/dsh-web@deepseek-ai/schemastery
用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动

README

dsh-bioinf

面向 DeepSeek Harness 的生信技能路由插件。

它解决一个核心问题:一个整理好的 986 个生信技能的库,无法以扁平目录的形式发布到每个会话
(否则每个会话会多出约 230 KB / 60–80k tokens 的提示词开销)。本插件用基于检索的路由
取代全量目录:

| 组件 | 作用 |
|---|---|
| skill_search 工具 | BM25 式打分(idf 加权字段:名称 ×6、分类 ×2、whenToUse ×1.5、描述 ×1),支持 CJK 双字切分——中英文查询都能用。返回按精确名称 + 分类的 top-k 匹配。全库单次查询 <10 ms。 |
| skill_categories 工具 | 分类树(15 个顶级分类、计数、子分类),用于领域浏览。 |
| bioinf-library 技能提供者 | 把全部 986 个技能注册进 ctx.skills,让原生 skill 工具按需加载正文(名称已规范为 kebab-case;剥离 HTML 版权注释;保证字段有描述)。 |
| dsh-bioinf-anysearch(独立插件行) | 把 [anysearch] 的 WebSearchProvider 注册进 ctx.web,驱动原生 web_search 工具。单独成行是因为 headless 配置不挂载 web seam。 |
| remote_exec 工具(可选启用) | 在配置好的 GPU/训练服务器上执行 SSH 命令:nvidia-smi、nohup 训练、日志轮询、预测。仅在设置了 remote.host/remote.user 时注册。 |
| 指引提示词段 | 路由规则("绝不猜测技能名")+ 三个场景剧本:(A) 文献深度综述并产出可证伪假说、(B) 生信数据检索/分析、(C) 远程训练/预测。 |

用法

与 @deepseek-ai/dsh-tool-skill 的 catalog: off 配置搭配使用(参见 ~/.dsh/profiles/bioinf/cordis.patch.yml)。

- insert:
- id: bioinf
name: 'file:///D:/projs/bioinf_agent/deepseek-harness/packages/examples/dsh-bioinf/lib/index.js'
config:
skillsIndexFile: 'D:/projs/bioinf_agent/skills_meta/_dsh_index.json'
- id: bioinf-anysearch
name: 'file:///D:/projs/bioinf_agent/deepseek-harness/packages/examples/dsh-bioinf/lib/anysearch-plugin.js'
config:
apiKey: '...'
- id: tool-skill
name: '@deepseek-ai/dsh-tool-skill'
config:
catalog: off

索引格式

skillsIndexFile 指向一个 JSON 数组(构建脚本:D:/projs/bioinf_agent/tools_scan/build_index.py,
清单生成:validate_skills.py):

[{"name":"scanpy","dir":"scanpy","cat1":"细胞组学与组学整合场景","cat2":"单细胞与转录组分析",
"cat3":"scanpy","description":"...","whenToUse":"...","requirements":["pip install scanpy"],
"hasScripts":false,"nScripts":0,"bodyChars":1234,"path":"D:/.../scanpy/SKILL.md"}]

开发

pnpm run build:lib:host   # 重建 lib/(tsc 项目图谱 + tsdown)
pnpm exec vitest run packages/examples/dsh-bioinf/tests/

单元测试套件(36 个用例,无需启动 harness 上下文):bioinf.spec.ts(索引/分词/正文提取/anysearch)、
scenarios.spec.ts(场景 A 文献→假说路由 + skill 加载链路;场景 B 数据源路由 + 分类树 + ssh 参数构建)、
perf.spec.ts(基于测量的护栏:每步模型可见负载、冷/缓存索引加载)。

本包遵循仓库约定:tsconfig.json 位于 tsc -b 图谱中(被根目录 tsconfig.host.json 引用),
并提供本地 tsdown.config.ts,入口为 index、anysearch-plugin、search、anysearch。

二期新增:一手数据 / 证据核验 / 假说锦标赛 / 报告站点

- 专用查询组(配置 queryTools:true):pubmed_search · europepmc_search ·
arxiv_search · trial_search · patent_search · gds_geo_search · opentargets_query。
全部经 src/biohttp.ts 统一限速/重试/缓存(按 host 令牌桶,arXiv 自动保持 ≥3s 间隔,
NCBI 读取 PUBMED_API_KEY/CONTACT_EMAIL 环境)。
- 证据核验组(evidenceTools:true,源码 src/evidence.ts):doi_verify /
pmid_verify(带撤稿与 Expression-of-Concern 过滤)/ clinical_trial_status /
uniprot_verify / geo_accession_verify / sra_accession_verify /
claim_audit 批量审计并输出 markdown 判定矩阵——终端交付前的强制闸门。
- 假说锦标赛(debateTools:true,src/debate.ts):tournament_start →
tournament_step×N → tournament_report;红方审查 + 配对辩论 + Elo 排名,
状态持久化到 ~/.dsh/science-tournaments/。LLM 由 llmRouter 提供。
- 报告站点(独立插件行 report-plugin,需 webServer seam):在 dsh 同端口挂载
/reports/;report_publish(title, markdown, notebookPath?) 将 GFM 渲染成
自包含 HTML(本地渲染,无 CDN),.ipynb 转为内嵌图片的浏览页并入画廊。

测试:vitest run packages/examples/dsh-bioinf-routed/tests/。

上游仓库有新提交时邮件通知你(每天最多一封,无更新不打扰),随时一键退订。

同作者(gsh150801)的其他插件

💬 加入 DPharness 群聊

插件用法、部署报错、新插件第一时间同步——群里问,比一个人翻文档快。

点击加入 QQ 群
DPharness 群聊二维码,手机 QQ 扫码进群
扫码进群