mcpField
P
pacsomatic

pacsomatic

github.com/k-dense-ai数据与数据库55.1k1.5k 次安装2 天前更新
代码仓库

关于 pacsomatic

pacsomatic 是用于准备匹配的 PacBio HiFi 肿瘤/正常样本对并启动 nf-core/pacsomatic Nextflow 流程的辅助工具。它生成可复现的启动文件,支持本地运行或提交至调度器;该流程并非临床验证检测。

主要功能

  1. 01准备肿瘤/正常样本表
  2. 02生成启动文件与参数
  3. 03试运行文件检查
  4. 04本地启动流程
  5. 05向调度器提交 Nextflow 驱动程序

适用场景

  1. 01准备匹配的 PacBio HiFi 样本对
  2. 02执行前检查生成的流程输入
  3. 03在本地启动分析
  4. 04向 HPC 调度器提交流程驱动程序

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/k-dense-ai/scientific-agent-skills --skill pacsomatic

安装后在 Claude Code 中输入/pacsomatic确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

config.yaml
LICENSE
references/
agent-playbook.md
config-and-output.md
pacsomatic_guide.md
scripts/
run_pacsomatic.py

详细介绍

pacsomatic

何时使用

使用 scripts/run_pacsomatic.py 准备一对匹配的 PacBio HiFi 肿瘤/正常样本,生成 samplesheet 和可复现的启动产物,并在本地启动,或将 Nextflow driver 提交到调度器。 该流程会重新比对输入 BAM;此辅助脚本面向未比对的 HiFi BAM 以及可选的 PacBio .pbi 索引。不要用短读长替代,也不要把 BAM 文件名当作平台、匹配身份或甲基化信息的证据。

经过审查的上游 dev 提交为 24c84cb371b0339c1d65a4de9451671945e19772。尽管内部清单写着 1.0.0,GitHub 在 2026-10-01 时没有任何 release 或 tag。该辅助脚本默认将 nf-core/pacsomatic 固定到该 提交;它不会凭空捏造一个 release tag。 这是一个经过源代码审查的开发工作流,不是经过临床验证的检测方法。 来源和科学检查请参见 references/pacsomatic_guide.md。

工作流

  1. 获取不同的肿瘤和正常 BAM 路径、患者 ID、不同的样本 ID、 输出目录,以及恰好一种参考模式:--fasta 或 --genome。 ID 和 BAM/PBI/FASTA 路径不得包含空白字符。本地输入必须是非空的常规文件。远程 BAM/PBI/FASTA URI 会直接传递,不会下载或认证;请使用托管文件系统/云凭据, 切勿在生成的文件中嵌入密钥或签名 URL。
  2. 根据采集元数据确认 PacBio HiFi 读段组和样本身份; 确认甲基化所需的 MM/ML 修饰标签已被保留。 验证每个注释资源的参考序列/contig 兼容性。
  3. 使用 --dry-run 生成产物。这会执行辅助检查并写入 文件,但不会调用流程、验证 BAM 内容、检查远程 可用性、解析每个流程参数或验证生物学适用性。 此处缺少运行时工具只是警告。--dry-run 不能与 --run/--submit、克隆或环境创建同时使用。
  4. 检查 samplesheet、生成的 params YAML、脚本、流程版本、profiles, 以及分支特定的资源/skips。已存在的产物需要显式 --overwrite;输入文件永远不能作为产物目标。config.yaml 是 操作者参考,不是自动加载的配置文件。
  5. 执行时,使用 --use-current-path 或已有的 --conda-env 选择实际运行时。在调用辅助脚本之前加载集群模块; --module-load 只会在生成的脚本中重复这些命令。没有捆绑任何 Conda YAML;创建环境需要显式指定 --conda-env-file。
  6. 仅在请求执行时使用 --run。对于 HPC,区分外层 启动器调度器(--executor)与 Nextflow 的每任务 process.executor, 后者由站点 profile 或 --nextflow-config 配置。Driver CPU/内存请求 不会约束任务资源。请阅读 references/config-and-output.md。
  7. 报告产物路径、版本、检查/警告、运行类型、提交 ID(如果 存在),以及具体的下一步 QC 或故障排查步骤。调度器接受 并不等于流程完成。保持输出目录和 work/cache 状态 稳定,以便 --resume;脚本以输出目录作为其 cwd 运行。

示例

请从仓库根目录运行这些命令。路径和站点设置仅为示例; 本地测试仅使用合成的占位符,而非人类基因组数据。

python skills/pacsomatic/scripts/run_pacsomatic.py \
  --tumor-bam /data/P001_T.bam --normal-bam /data/P001_N.bam \
  --patient-id P001 --tumor-sample-id P001_T --normal-sample-id P001_N \
  --outdir /results/P001 --fasta /refs/GRCh38.fa \
  --profile apptainer --use-current-path --dry-run

查看产物后,Slurm 启动可以使用相同的输入,再加上 以下选项(将 --dry-run 替换为 --run):

--executor slurm --queue compute --project my_account
--cpus 2 --memory-gb 8 --walltime 48:00
--nextflow-config /configs/slurm.config --overwrite --run

这些资源是给驱动程序的,前提是已审查的基础设施配置 设置了 process.executor = 'slurm' 以及合适的任务队列/资源。该辅助脚本 会将 48:00 规范化为 Slurm 的 48:00:00(48 小时)。除非确实在使用该机构的 LSF 基础设施, 否则不要添加 sanger profile。

自定义流水线参数放在 --params-file 中;基础设施配置放在 --nextflow-config(-c)中。辅助脚本显式的 input/outdir/reference 选项 优先于 params-file 中的值。--extra-args 会进行分词并进行 shell 引号处理,但 不能覆盖这些受管理的输入/配置选项。请确保外部 params/config 文件中的路径为绝对路径, 因为启动器的工作目录是 outdir。

验证与参考

uv run skills-ref validate skills/pacsomatic
python tests/run_all.py --isolated pacsomatic

标准库测试套件检查本地产物行为、路径保护、 CLI 模式、运行时故障以及模拟的调度器提交。原生 Nextflow 检查使用一个极小的本地工作流;它们并不能证明 pacsomatic 完整的 容器化科学流水线在给定数据集或集群上能够成功。

评论

支持 Markdown