用途:在 NCBI dbSNP 中查询、映射和搜索短遗传变异(SNP、indel),支持 rsID、基因组坐标与 HGVS 之间的转换。
主要能力:get-variant 获取某个 rsID 的 RefSNP 记录(变异类型、基因、临床意义、次要等位基因频率、基因组位置);resolve-variant 由染色体坐标(chrom pos ref alt)得到 rsID;resolve-rsid 由 rsID 得到指定装配上的基因组位置;resolve-hgvs 由 HGVS 表达式得到 rsID;search-region 查找某染色体区间内的全部 rsID。
使用方式:需先安装 uv 并确保在 PATH 中;在用户主目录准备 .env 文件;若工作区根目录不存在 .licenses/dbsnp_database_LICENSE.txt,需提示用户查看 https://www.ncbi.nlm.nih.gov/snp/ 条款并创建记录文件。始终通过包装脚本 scripts/dbsnp_cli.py 查询,不要自行构造 HTTP 或 curl 请求。所有子命令将 JSON 写入磁盘,--output 为必需参数,建议输出到 /tmp/。示例:uv run scripts/dbsnp_cli.py get-variant rs7412 --output /tmp/rs7412.json;uv run scripts/dbsnp_cli.py resolve-variant 8 19962213 C T --output /tmp/resolve.json。HGVS 字符串须用单引号包裹。
限制:默认装配为 GCF_000001405.40(GRCh38),GRCh37 为 GCF_000001405.25;resolve-variant 与 resolve-hgvs 会自动先试 GRCh38 再试 GRCh37。search-region 始终搜索 GRCh38,默认 --retmax 为 500,上限 5000。get-variant 的 --full 会返回 50–500 KB 甚至超过 1 MB 的原始 JSON,非必要不使用。无 NCBI_API_KEY 时速率限制为每秒 3 次请求,有密钥为每秒 10 次。染色体 X、Y 需用 23、24 表示。若需临床致病性分类、按祖源分层的精确频率、新突变功能预测或蛋白三维结构,应改用其他相应技能。使用本技能时需在输出中说明。