科研、数据与金融开源项目

LSF Bio

集群生信分析 Agent

面向 LSF 调度集群,包含 14 个生信 Skills 与持久集群沙箱的分析预设。

项目 README(英文原文)

在 GitHub 中查看

DSH LSF 集群生信分析预设(lsf-bio)

一个面向 LSF 作业调度集群 + 生物信息分析DeepSeek Harness Agent 预设:理解 LSF 作业调度(bjobs/bsub/bqueues 等),并擅长生信分析(变异/VCF、生存分析、文献检索、绘图、论文)。

配套一个 集群虚拟沙箱 插件(plugins/dsh-cluster-sandbox):在集群登录节点上维护一个持久 PTY 会话,Agent 的 cluster_sandbox_exec 工具在其中执行集群命令,右侧面板实时查看。

内容

dsh-lsf-bio-preset/
├── preset.yml                          # 预设元数据
├── agent.cordis.yml                    # Cordis 组合(persona + 技能 + MCP 行)
├── skills/                             # 14 个技能
│   ├── ncpgr-lsf/                      # LSF 作业调度(集群官方蒸馏技能)
│   ├── ncpgr-software/                 # 软件/数据库使用与优化
│   ├── ncpgr-data-manage/              # 数据管理
│   ├── ncpgr-bio-router/               # 生信分析路由协调
│   ├── ncpgr-hpc/                      # 平台环境须知(登录节点/存储/软件)
│   └── ...(bio-research 的 9 个生信技能)
└── plugins/
    └── dsh-cluster-sandbox/            # 集群虚拟沙箱(host + client)

依赖

安装

  1. 把本仓库复制到 ${DSH_HOME}/.agent-presets/lsf-bio/(Windows 默认 %USERPROFILE%\.dsh\.agent-presets\lsf-bio\
  2. MCP 依赖:本预设的 agent.cordis.yml 里 biotools/ncbi/zotero 的 MCP 行通过 tools/ 目录解析——推荐把 dsh-bio-research-presettools/ 目录以 junction/软链接的方式挂到 lsf-bio/tools/(避免重复安装 node_modules):
    # Windows junction 示例
    cmd /c mklink /J "%USERPROFILE%\.dsh\.agent-presets\lsf-bio\tools\biotools" "..\..\bio-research\tools\biotools"
    
    或直接拷贝 tools/ 并在对应目录 npm install --ignore-scripts
  3. 安装 cluster-sandbox 插件(进入 web profile 的 node_modules):
    npm install --save "file:path\to\plugins\dsh-cluster-sandbox" --prefix "%USERPROFILE%\.dsh\profiles\web"
    
    ssh2 依赖(宿主端 PTY)需在插件目录建链接,或由 dsh-ssh 提供:
    cmd /c mklink /J "path\to\plugins\dsh-cluster-sandbox\node_modules\ssh2" "..\..\..\dsh-ssh\node_modules\ssh2"
    
  4. 挂载:在 %USERPROFILE%\.dsh\profiles\web\cordis.patch.yml 增加:
    - insert:
        - id: cluster-sandbox
          name: dsh-cluster-sandbox
    
  5. 连接集群:在 dsh-ssh 的「添加工作区」里创建 SSH 连接(主机/端口/用户名/密码,见平台邮件)
  6. 重启 dsh web,新建会话选择「LSF集群生信分析」

集群认证(键盘交互 TOTP)

本预设面向「动态口令(TOTP) + 密码、keyboard-interactive」登录的 LSF 集群(如 hpc.ncpgr.cn)。自动生成动态口令需要把集群的 TOTP 密钥写入 ${DSH_HOME}/dsh-ssh-totp.json

{ "<用户名>@<主机>:<端口>": "<base32 密钥>" }

密钥来自集群上 ~/.google_authenticator 文件第一行(或账号创建邮件)。该文件仅存本机、切勿提交到仓库。

许可

MIT。ncpgr-* 技能源自 NCPGR 计算平台官方文档(hpc.ncpgr.cn),版权归平台所有。