生成图文并茂的分析报告/实验报告/质检报告(固定模版)。当用户要求"生成报告/总结报告/实验报告/质检报告/QC报告",或分析流程收尾需要交付报告时使用。报告必须基于真实分析输出,包含固定章节结构、关键指标表格和真实结果图。
日本語の概要は準備中です。原文の説明を表示しています。
WheatOmics 平台(wheatomics.sdau.edu.cn)数据查询技能。当用户需要查询小麦/麦族基因信息、表达谱、共表达、蛋白互作、同源与共线性、序列获取、BLAST、GO/KEGG 富集、变异数据、文献检索或引物设计时使用。
インストールする前に、エージェントに与えられる指示の中身を確認できます。
WheatOmics(https://wheatomics.sdau.edu.cn)是小麦多组学数据平台,提供 REST API(前缀 /api,交互式文档 https://wheatomics.sdau.edu.cn/api/docs)。本技能提供:
scripts/wheatomics.py(仅 Python 标准库,3.8+),覆盖各模块主要端点。统一约定:
{"success": true, "data": ...};CLI 默认把 data 部分 pretty-print 到 stdout,success=false 时打印错误并以非零码退出。--base 参数或环境变量 WHEATOMICS_BASE。--timeout 覆盖;网络错误给出中文报错。凡回答涉及具体基因 ID(如 TraesCS...)、通路 ID(GO:... / KEGG map...)、引用文献(PMID / DOI)时,必须实际调用本技能提供的接口实时核实,严禁凭模型记忆、训练数据印象或"大概是这样"作答。
records: []、genes_not_found 非空)或报错时,如实告知"查询无结果 / 接口异常",绝不允许编造补全基因名、通路名、PMID 或 DOI;TraesCS5A02G391700)来自官方 API 文档,但用于正式回答前仍须实时调用验证其当前有效性。凡产生可供用户后续引用或复现的查询结果(基因详情、表达谱、共表达、BLAST、富集分析、变异、文献条目等),必须默认使用 -o 参数写入本地文件,不得只停留在对话上下文中:
python scripts/wheatomics.py gene TraesCS5A02G391700 -o wheatomics_results/gene_TraesCS5A02G391700.json
已保存: <绝对路径>);如需 Markdown 报告,可在 JSON 落地后另行整理生成;wheatomics_results/;在 HPClaw 流程运行目录(RUN 目录)内执行 → 该 RUN 目录下的 results/;python scripts/wheatomics.py <子命令> [参数] [-o 输出文件] [--timeout 秒] [--base 平台地址]
--param KEY=VALUE 附加任意 query 参数(可重复);--genes、--padj)或 --json '<JSON>' / --json @文件 构造 JSON body;submit → status → result 三个动作;submit --wait 自动轮询直到完成(上限 --wait-timeout 秒,默认 600);python scripts/wheatomics.py --help。已知功能克隆基因数据库的搜索与详情。
| 方法 | 路径 | 用途 |
|---|---|---|
| GET | /api/genes/known/search | 按关键词模糊搜索克隆基因 |
| GET | /api/genes/known/all | 获取全部已知功能基因列表(约 850 条) |
| GET | /api/genes/known/by-chromosome/{chromosome} | 列出指定染色体上的克隆基因 |
| GET | /api/genes/known/{gene_id} | 单个克隆基因完整信息 |
关键参数:
searchid(query,必填):搜索关键词,在 gene_id / gene_name / chrom_pos / gene_phenotype / gene_species / paper_doi 多字段中部分匹配;chromosome(path,必填):支持 5A、chr5A、Chr5A 等常见格式;gene_id(path,必填):如 TraesCS5A02G391700。返回结构:
{query, total, records: [{gene_id, gene_name, chrom_pos, phenotype, species, dois: [...]}]}{gene_id, gene_name, chrom_pos, phenotype, species, paper_title: [...], references: [{doi, title}], key_result: [...], author, submission_date}示例:
python scripts/wheatomics.py known-search VRN1
python scripts/wheatomics.py known-gene TraesCS5A02G391700 -o wheatomics_results/known_VRN-A1.json
curl "https://wheatomics.sdau.edu.cn/api/genes/known/search?searchid=VRN1"
| 方法 | 路径 | 用途 |
|---|---|---|
| GET | /api/genes/detail/{gene_id} | 基因标准化详细信息 |
关键参数:gene_id(path,必填),支持 IWGSC v1/v2/v3 三种版本格式,如 TraesCS5A02G391700、TraesCS5A02G391700.1、TraesCS5A03G1158600。
返回结构:{query_gene, gene_ids: [v1/v2/v3 对应ID], description, genome, chromosome, start, end, strand, protein_length, molecular_weight, isoelectric_point, functions, jbrowse_links, external_links}(含 JBrowse 基因组浏览器链接与 Ensembl 外链)。
示例:
python scripts/wheatomics.py gene TraesCS5A02G391700 -o wheatomics_results/gene_detail.json
| 方法 | 路径 | 用途 |
|---|---|---|
| GET | /api/genes/functions/pfam | 按 PFAM 结构域搜索基因(gene family) |
关键参数:
ID(query,必填):PFAM 结构域 ID,以 PF 开头,如 PF00319;table(query,可选,默认 Genefunc_table):查询表,可选 Genefunc_IWGSC03G_table。返回结构:{table, domain, count, records: [{chromosome, start_mb, end_mb, gene_primary, ...}]}。
示例:
python scripts/wheatomics.py pfam PF00319 -o wheatomics_results/pfam_PF00319.json
curl "https://wheatomics.sdau.edu.cn/api/genes/functions/pfam?ID=PF00319"
注意:
Genefunc_table 在当前线上服务已不存在(报 Unknown gene function table)。使用前先用 genefunc-tables / genefunc-registry 查看当前可用表名(中国春如 Genefunc_CS_IWGSCv1.0_table、Genefunc_CS_IWGSC03G_table),再用 --table 显式指定。| 方法 | 路径 | 用途 |
|---|---|---|
| GET | /api/genes/functions/interval | 按染色体区间搜索基因 |
| GET | /api/genes/functions/tables | Genefuncdb 全部表名、行数与字段列表 |
| GET | /api/genes/functions/examples | 各基因组的示例 Region/Gene ID/Pfam ID |
| GET | /api/genes/functions/registry | 已注册基因功能表的元数据 |
关键参数(interval):
ID(query,必填):染色体区间,格式 chr5A:587000000..587200000;table(query,可选,默认 Genefunc_table)。返回结构(interval):{table, region, count, records: [{chromosome, start_mb, end_mb, gene_primary, ...}]};registry 返回 {count, records: [{table_name, display_name, Subgenome, Polyploidy, chromosome_level, Doi, title, Abstract, example_chr, example_id, ...}]}。
示例:
python scripts/wheatomics.py interval "chr5A:587000000..587200000" --table Genefunc_CS_IWGSCv1.0_table
python scripts/wheatomics.py genefunc-registry
注意:
lower_case_table_names=0),查询表名须与 registry 中的 table_name 完全一致;Genefunc_table 在当前线上服务已不存在(报 Unknown gene function table)。使用前先用 genefunc-tables / genefunc-registry 查看当前可用表名(中国春如 Genefunc_CS_IWGSCv1.0_table、Genefunc_CS_IWGSC03G_table),再用 --table 显式指定。| 方法 | 路径 | 用途 |
|---|---|---|
| GET | /api/expression/projects | 获取可用表达谱项目列表 |
| GET | /api/expression/query | 查询基因在指定项目中的表达量 |
关键参数(query):
gene_ids(query,必填):逗号分隔的基因 ID 列表;project(query,可选,默认 PRJEB5314_paired_tbl):表达项目表名,如 PRJEB25639_tbl、ABA_JA_6BA_DMSO3h_mean_tbl。返回结构:{project, genes_found, genes_not_found, genes_converted, results: [{gene_id, project, points: [{label, value, std, error_bar}]}]}(points 为各实验条件下的表达量点数据,含误差棒)。
⚠️ 基因 ID 版本说明(重要):
02G 格式);01G)或 v3(03G)格式的 ID 时,API 自动转换为 v2 后再查询,转换结果记录在响应的 genes_converted 字段;genes_not_found)。示例:
python scripts/wheatomics.py expr-projects -o wheatomics_results/expr_projects.json
python scripts/wheatomics.py expr-query --genes TraesCS5A02G391700 --project PRJEB5314_paired_tbl
curl "https://wheatomics.sdau.edu.cn/api/expression/query?gene_ids=TraesCS5A02G391700&project=PRJEB5314_paired_tbl"
| 方法 | 路径 | 用途 |
|---|---|---|
| GET | /api/coexpression/databases | 可用共表达数据库列表 |
| GET | /api/coexpression/query | 查询基因的共表达关系对 |
| GET | /api/coexpression/projects | bioproject 元数据列表 |
| GET | /api/coexpression/projects/{accession} | 单个 bioproject 元数据(不存在则 404) |
关键参数(query):
gene_ids(query,必填):逗号分隔的基因 ID 列表;database(query,可选,默认 CO_PRJEB25639):共表达数据库 ID,来自 databases 端点(如 CO_result2、CO_PRJEB25639);filter_value(query,可选,默认 300):两种筛选模式——小数(如 0.8)按 PCC 筛选,返回 |PCC| >= filter_value;整数(如 5)按 MR(Mutual Rank)筛选,返回 MR <= filter_value。projects 参数:source(可选,NCBI/ENA/CNGB 过滤)、q(可选,标题/描述/物种子串模糊搜索)。
示例:
python scripts/wheatomics.py coexpr-databases
python scripts/wheatomics.py coexpr-query --genes TraesCS5A02G391700 --database CO_PRJEB25639 --filter 0.9 # PCC 模式
python scripts/wheatomics.py coexpr-query --genes TraesCS5A02G391700 --filter 5 # MR 模式
python scripts/wheatomics.py coexpr-project PRJNA976214
| 方法 | 路径 | 用途 |
|---|---|---|
| GET | /api/ppi/query | 查询蛋白质互作关系(wheatPPI) |
关键参数:
gene_ids(query,必填):逗号分隔的转录本 ID(基因 ID 加 .1 后缀),如 TraesCS6D02G084800.1;table(query,可选,默认 PPI_result);min_score(query,可选,默认 0.5):CF-MS 互作得分阈值,0.5 中等置信度、0.2 低置信度、0 不筛选返回全部。返回结构:互作对记录,含互作双方基因 ID、eggNOG ID、功能注释和互作得分 Score。
⚠️ 注意:本模块基于中国春 IWGSC v2.1 注释;输入不带 .1 后缀的基因 ID 将匹配不到结果。
示例:
python scripts/wheatomics.py ppi --genes TraesCS6D02G084800.1 --min-score 0.5
curl "https://wheatomics.sdau.edu.cn/api/ppi/query?gene_ids=TraesCS6D02G084800.1&table=PPI_result&min_score=0.5"
| 方法 | 路径 | 用途 |
|---|---|---|
| GET | /api/homologs/wheat-rice-arabidopsis | 小麦基因在水稻和拟南芥中的同源基因 |
| GET | /api/synteny/search | 小麦与其他麦族物种的共线性信息 |
| GET | /api/id-conversion | 旧版本基因 ID 转换为 IWGSC v1.1(02G) |
| GET | /api/blastp | 小麦族蛋白预计算 blastp 结果 |
关键参数:
gene_id(必填,小麦或其他物种基因 ID);max_targets(可选,默认 3,范围 1-100,每个物种返回上限)。返回 {query_gene, count, hits: [{target_gene, description, Qcovs, Identity, E-value, Score, ...}]};ID(必填,两种模式:基因组区间 chr5A:100000-200000 或单个基因 ID 精确查找);table(可选,默认 CSsymaptbl)。结果为每个基因在 Chinese Spring、Durum wheat、Wild emmer、Triticum urartu、Aegilops tauschii 中的共线性对应关系;ID(必填,转录本 ID 带 .1 后缀,多基因用 URL 编码换行 %0D%0A 分隔,CLI 用 --ids 逗号分隔自动处理);gene_version(必填,三选一):MIPS_result(MIPS v2.2,如 Traes_1AS_E6058767A.1)/ TGACv1_result(如 TRIAE_CS42_6BL_TGACv1_501926_AA1621570.1)/ IWGSCv1_result(IWGSC v1.0,如 TraesCS6B01G342500.1)。返回每个基因的映射结果(reference_gene 为 02G 格式、code、length),未找到的列在 not_found;gene(必填);limit(可选,默认 5000);offset(可选,默认 0)。在 all_protein_blastp 表中同时匹配 query_id 和 subject_id,自动处理带 .1、transcript: 前缀、.cds 后缀等多种 ID 格式,结果按 bit_score 降序、evalue 升序排列。可用于同源基因搜索或不同基因组版本/材料间的基因 ID 转换。示例:
python scripts/wheatomics.py homologs TraesCS5A02G391700 --max-targets 3
python scripts/wheatomics.py synteny TraesCS5A02G391700
python scripts/wheatomics.py id-conversion --ids TraesCS6B01G342500.1 --version IWGSCv1_result
python scripts/wheatomics.py blastp TraesCS5A02G391700 --limit 100
| 方法 | 路径 | 用途 |
|---|---|---|
| GET | /api/orthofinder/search | 按蛋白 ID / orthogroup ID 搜索,物种目录,OG 成员 |
| GET | /api/orthofinder/download | 下载基因树(Newick)或多序列比对(FASTA) |
| GET | /api/orthofinder/neighborhood | 基因上下游邻居及同源簇信息 |
关键参数:
action(可选,默认 search):search / species_catalog / members;q(action=search 时的蛋白/基因/OG ID);og(action=members 必填的 Orthogroup ID);sub(可选,亚基因组过滤 A/B/D,配合 members);species(可选,物种过滤);og(必填,如 OG0001897);type(可选,默认 tree,可选 alignment);cluster(可选,1-7,0=完整 OG);type_tree(可选,type1/type2,仅 cluster 下载)。返回文件内容(非 JSON);q(必填,基因 ID,如 TraesCS1A02G219700.1)。返回查询基因 + 上下游各 5 个邻居(共 11 个基因)在 OrthoFinder 分析所有基因组中的 cluster 归属。示例:
python scripts/wheatomics.py orthofinder --q TraesCS5A02G391700
python scripts/wheatomics.py orthofinder --action members --og OG0001897 --sub A
python scripts/wheatomics.py orthofinder-download --og OG0001897 --type tree -o wheatomics_results/OG0001897.nwk
python scripts/wheatomics.py orthofinder-neighborhood TraesCS1A02G219700.1
| 方法 | 路径 | 用途 |
|---|---|---|
| GET | /api/syntenyview/genomes | 可用基因组列表 |
| GET | /api/syntenyview/gene-search | 基因搜索 |
| GET | /api/syntenyview/status | 服务状态 |
| GET | /api/syntenyview/triticeae | 麦族数据 |
| GET | /api/syntenyview/neighborhood | 基因邻域共线性 |
关键参数:
q(必填);limit(可选,默认 20);q(必填,基因 ID);upstream(可选,默认 5);downstream(可选,默认 5);targets(可选,逗号分隔的目标基因组标签);window(可选,默认 5)。示例:
python scripts/wheatomics.py syntenyview-genomes
python scripts/wheatomics.py syntenyview-gene-search TraesCS5A02G391700
python scripts/wheatomics.py syntenyview-neighborhood TraesCS5A02G391700 --upstream 5 --downstream 5
| 方法 | 路径 | 用途 |
|---|---|---|
| GET | /api/sequence/by-gene | 按基因 ID 取基因(CDS)和蛋白序列(FASTA) |
| GET | /api/sequence/by-interval | 按染色体区间取基因组 FASTA |
| GET | /api/sequence/batch | 批量取多个基因/区间的 FASTA |
关键参数:
gene_id(必填,如 TraesCS5A02G391700;不以 .1 结尾时自动追加 .1 查找);gene_db(可选,默认 all_gene);protein_db(可选,默认 all_protein)。返回 {gene_id, gene_sequence: ">...\nATG...", protein_sequence: ">...\nMAG..."};region(必填,如 chr1A:200-500);database(必填,区间查询推荐聚合库 all_genomes;另可选 all_gene / all_protein)。⚠️ 染色体命名随基因组而异:Chr1A_Abo:200-500(Abbondanza)、chr1A:200-500(Chinese Spring)、chr1H_Barley3:200-500(大麦 v3)、chr1D_Aegilops_tauschii_TA1675:200-500、chr1A_Wild_emmer:200-500(野生二粒小麦),完整列表见 https://wheatomics.sdau.edu.cn/doc/getsequence_search.txt ;全部库名见 blast-databases;ID(必填,空格分隔多个基因 ID 或区间,URL 中可用 %20 或 +;CLI 用 --ids 逗号/空格分隔自动处理);database(必填)。基因 ID 自动补 .1,区间格式 chr:start-end。返回 {database, records: [{sequence_id, fasta}]}。示例:
python scripts/wheatomics.py seq-gene TraesCS5A02G391700 -o wheatomics_results/seq_VRN-A1.json
python scripts/wheatomics.py seq-interval --region chr1A:200-500 --database all_genomes
python scripts/wheatomics.py seq-batch --ids "TraesCS5A02G391700,TraesCS5A02G391701" --database all_gene
| 方法 | 路径 | 用途 |
|---|---|---|
| POST | /api/blast/search | 提交 BLAST 搜索(表单),结果生成下载链接 |
| GET | /api/blast/status/{job_id} | 轮询作业状态(wait=false 提交的 job) |
| GET | /api/blast/databases | 可用数据库列表(按蛋白/核酸分组) |
| GET | /api/blast/status | 检查 BLAST 环境 |
⚠️ 异步作业说明:所有 job 由独立的 blast daemon 执行,不受 API worker 回收/重启影响。表单字段 wait=true(服务端默认)时提交后由服务端轮询到完成直接返回 download_url;wait=false 立即返回 job_id,再轮询 status。CLI 固定以 wait=false 提交并自行轮询(blast submit ... --wait),避免长任务撑爆单次 HTTP 超时。
提交表单字段(application/x-www-form-urlencoded):
database(必填):数据库名,多个用逗号分隔,如 Fielder_protein,AK58_protein.fasta;query(必填):FASTA 格式查询序列(CLI 支持 --query @文件);program(可选,默认 blastp):blastp / blastn / blastx / tblastn / tblastx;evalue(可选,默认 10,范围 0-1000);max_target_seqs(可选,默认 1000,范围 1-50000);word_size、matrix(可选);outfmt(可选,默认 tabular,另有 traditional / both)。状态返回:{success, job_id, status: pending|running|done|error|stale, message, download_urls};done 时 download_urls 填充,error/stale 看 message。⚠️ job_id 必须为 uuid4 格式,否则 404。
示例:
python scripts/wheatomics.py blast-databases --program blastp
python scripts/wheatomics.py blast submit --database Fielder_protein --query @seq.fa --wait -o wheatomics_results/blast_job.json
python scripts/wheatomics.py blast status <job_id>
python scripts/wheatomics.py blast result <job_id>
curl -X POST "https://wheatomics.sdau.edu.cn/api/blast/search" -d "program=blastp" -d "database=Fielder_protein" --data-urlencode "query=>test
MSSSTG..."
| 方法 | 路径 | 用途 |
|---|---|---|
| POST | /api/go-kegg/go | GO 富集分析 |
| POST | /api/go-kegg/kegg | KEGG 通路富集分析 |
| GET | /api/go-kegg/go-genes | 查询列表中匹配某 GO term 的基因 |
| GET | /api/go-kegg/kegg-genes | 查询列表中匹配某 KEGG 通路的基因 |
请求体(JSON):{"genes": ["TraesCS1A02G045300.1", ...], "padj_threshold": 0.05},genes 必填,padj_threshold 默认 0.05。
统计方法与背景:
wheat_function.gene_go 中所有有 GO 注释的基因;KEGG 背景集:wheat_function.gene_kegg,映射链 gene_id → KO → pathway;TraesCS1A02G045300.1,带 .1 转录本后缀)。返回结构:{N, n, gene_count, results: [{id, term, ontology, k, K, ratio, pvalue, padj}]}(N=背景基因数,n=输入有效基因数,K=背景中该 term 基因数,k=输入中命中数)。
go-genes / kegg-genes 参数:go_id / pathway(必填),genes(可选,逗号分隔的查询列表)。
示例:
python scripts/wheatomics.py enrich-go --genes TraesCS1A02G045300.1,TraesCS1A02G104700.1,TraesCS1A02G118400.1 -o wheatomics_results/go_enrich.json
python scripts/wheatomics.py enrich-kegg --json '{"genes": ["TraesCS1A02G045300.1"], "padj_threshold": 0.05}'
python scripts/wheatomics.py go-genes GO:0043425 --genes TraesCS1A02G045300.1
| 方法 | 路径 | 用途 |
|---|---|---|
| GET | /api/VariantHub/datasets | VCF 数据集列表(按参考基因组分组) |
| GET | /api/VariantHub/dataset_info | 数据集的 VCF 头(## meta 行)与样本 ID |
| GET | /api/VariantHub/samples | 数据集样本元数据(可按字段过滤) |
| GET | /api/VariantHub/query | 按基因组区间或变异 ID 查询变异 |
关键参数:
dataset(数据集 key,来自 datasets 端点);&country=Turkey&status=Landrace 或 &group=LR(CLI 用 --param country=Turkey);region(如 chr1A:1000-50000)与 variant_id(ID 列精确匹配)二选一必填;samples(可选,逗号分隔样本 ID,缺省全部);limit(默认 200)、offset(默认 0)。⚠️ 注意:region 查询走 tabix 索引(快);variant_id 查询是全文件扫描,大群体 VCF 上可能很慢;samples 显式指定与元数据过滤两种方式互斥。
示例:
python scripts/wheatomics.py variant-datasets
python scripts/wheatomics.py variant-dataset-info <dataset_key>
python scripts/wheatomics.py variant-samples <dataset_key> --param country=Turkey
python scripts/wheatomics.py variant-query <dataset_key> --region chr1A:1000-50000 --limit 200
| 方法 | 路径 | 用途 |
|---|---|---|
| GET | /api/papers | 搜索麦族论文元数据 |
| GET | /api/papers/{pubmedid} | 按 PMID 取单篇论文元数据 |
| GET | /api/papers/{pmid}/annotation | 按 PMID 取 LLM 细粒度标注 |
| GET | /api/papers/stats | 数据集聚合统计 |
关键参数(/api/papers,均为可选):
q 全文关键词(title/abstract/journal/authors/pubmed_keywords/ai_tags/function_gene_tags);title / abstract / journal / authors / pubmed_keywords / ai_tags / function_gene_tags / gene_name 字段级模糊匹配;pmid 精确匹配;functional_gene_flag / functional_gene_source / function_gene_flag 论文级功能基因标记过滤;pub_date_start / pub_date_end 发布年份范围;since_days 按入库时间(papers.created_at)过滤最近 N 天(用于"本周新增论文");limit(默认 20)、offset(默认 0);默认排序 paper_created_at DESC(最近入库优先);<参数>_exclude 形式(如 q_exclude、title_exclude),CLI 用 --param q_exclude=xxx 传递。annotation 返回:标注层全部字段(is_functional_gene, confidence, gene_name, gene_type, trait_label, function_summary, evidence_type, new_tags, llm_reason, source_method, review_status 等);无论文标注时返回 has_annotation: false。stats 返回年份分布、期刊 top-20、AI 标签 top-30、功能基因比例、审核状态分布。
示例:
python scripts/wheatomics.py papers --q "vernalization" --limit 20 -o wheatomics_results/papers_vrn.json
python scripts/wheatomics.py papers --gene-name VRN1 --pub-date-start 2020
python scripts/wheatomics.py paper 42105133
python scripts/wheatomics.py paper-annotation 42105133
python scripts/wheatomics.py papers-stats
| 方法 | 路径 | 用途 |
|---|---|---|
| GET | /api/PrimerServer2/config | 公共配置(输入限制、系统标志) |
| GET | /api/PrimerServer2/databases | 可用特异性检查数据库(分组、文件名与别名) |
| GET | /api/PrimerServer2/server-info | 服务器时间与外部工具版本(samtools/blastn/primer3) |
| POST | /api/PrimerServer2/jobs | 提交引物设计+特异性检查作业,返回 jobId |
| POST | /api/PrimerServer2/jobs/check | 提交仅特异性检查作业,返回 jobId |
| GET | /api/PrimerServer2/jobs/{job_id} | 作业状态与元数据 |
| DELETE | /api/PrimerServer2/jobs/{job_id} | 终止并删除作业 |
| GET | /api/PrimerServer2/jobs/{job_id}/progress | 完成百分比与当前阶段 |
| GET | /api/PrimerServer2/jobs/{job_id}/result | 最终结果(job_type=design 或 check) |
| POST | /api/PrimerServer2/jobs/cleanup | 手动清理过期作业目录 |
| GET | /api/PrimerServer2/jobs/{job_id}/result-html | 原始 HTML 结果页 |
| GET | /api/PrimerServer2/jobs/{job_id}/specificity/{filename} | 下载特异性结果文件(如比对图) |
⚠️ 异步作业流程:提交返回 jobId(UUID)→ 轮询 jobs/{job_id}(status: pending/running/done/error/stopped)或 progress({total, finished, percent, stage})→ result 取结果。CLI primer submit --wait 自动完成全流程。各端点支持可选请求头 x-api-key(CLI --api-key)。
设计作业请求体(DesignJobRequest,JSON)关键字段:
app-type: "design"、selectTemplate(模板数据库名,如 primer_Chinese_Spring2.1.genome,或 custom 配合 custom-template-sequences);template-regions(selectTemplate 非 custom 时必填):每行一个区域 TemplateID TargetPos TargetLength [ProductSizeMin] [ProductSizeMax];selected-databases:特异性检查库文件名列表(来自 databases 端点),默认 ["primer_Chinese_Spring2.1.genome"];可含 custom 配合 custom-db-sequences;product_size_min(默认 100)/ product_size_max(默认 1000)、region_type(默认 SEQUENCE_TARGET,另有 SEQUENCE_INCLUDED_REGION / FORCE_END);PRIMER_MIN_SIZE=18 / PRIMER_OPT_SIZE=20 / PRIMER_MAX_SIZE=23、PRIMER_MIN_TM=57 / PRIMER_OPT_TM=60 / PRIMER_MAX_TM=63、PRIMER_PAIR_MAX_DIFF_TM=3、PRIMER_MIN_GC=35 / PRIMER_OPT_GC_PERCENT=50 / PRIMER_MAX_GC=65、PRIMER_NUM_RETURN=30 等;size_start=50、size_stop=5000、min_Tm_diff=20、retain=10、blast_e_value=30000、blast_word_size=7、blast_identity=60。检查作业请求体(CheckJobRequest):必填 app-type: "check"、check-primers(每行一组 PrimerID LeftSeq RightSeq [AdditionalSeq ...]),其余特异性参数同上。
示例(提交 JSON 可用 --json @文件 从文件读取):
python scripts/wheatomics.py primer-config
python scripts/wheatomics.py primer-databases
python scripts/wheatomics.py primer submit --json '{
"app-type": "design",
"selectTemplate": "primer_Chinese_Spring2.1.genome",
"template-regions": "chr1A 100000 200\nchr1B 200000 300 150 800",
"selected-databases": ["primer_Chinese_Spring2.1.genome"],
"product_size_min": 150,
"product_size_max": 800
}' --wait -o wheatomics_results/primer_design.json
python scripts/wheatomics.py primer submit-check --json '{"app-type": "check", "check-primers": "Primer1 TTCGATGCTGAGGAAGGCTG AGGAGAGAACGGAGACGAAG"}' --wait
python scripts/wheatomics.py primer status <jobId>
python scripts/wheatomics.py primer result <jobId> --job-type design
| 方法 | 路径 | 用途 |
|---|---|---|
| GET | /api/about | 应用名称、版本、文档地址、API 前缀、服务器时间 |
| GET | /api/health | 服务健康检查(探活/监控) |
| POST | /api/track/visit | 记录一次页面访问(同一 ip+UA 当日幂等),body {"page": "..."} |
| GET | /api/track/stats | 公开访问统计:今日 PV/UV、累计 PV/UV、当前在线 |
示例:
python scripts/wheatomics.py health
python scripts/wheatomics.py about
python scripts/wheatomics.py track-stats
| 子命令 | 对应端点 | 说明 |
|---|---|---|
about | GET /api/about | 应用基本信息 |
health | GET /api/health | 健康检查 |
track-stats | GET /api/track/stats | 访问统计 |
known-search <关键词> | GET /api/genes/known/search | 克隆基因模糊搜索 |
known-all | GET /api/genes/known/all | 全部克隆基因 |
known-chrom <5A> | GET /api/genes/known/by-chromosome/{chr} | 按染色体列出 |
known-gene <gene_id> | GET /api/genes/known/{gene_id} | 克隆基因详情 |
gene <gene_id> | GET /api/genes/detail/{gene_id} | GeneHub 基因详情(v1/v2/v3) |
pfam <PF00319> [--table] | GET /api/genes/functions/pfam | PFAM 结构域搜基因 |
interval <chr:start..end> [--table] | GET /api/genes/functions/interval | 区间搜基因 |
genefunc-tables | GET /api/genes/functions/tables | Genefuncdb 表信息 |
genefunc-examples | GET /api/genes/functions/examples | 各基因组示例 |
genefunc-registry | GET /api/genes/functions/registry | 功能表注册元数据 |
expr-projects | GET /api/expression/projects | 表达项目列表 |
expr-query --genes ... [--project] | GET /api/expression/query | 表达量查询(02G 自动转换) |
coexpr-databases | GET /api/coexpression/databases | 共表达库列表 |
coexpr-query --genes ... [--database] [--filter] | GET /api/coexpression/query | 共表达查询(PCC/MR) |
coexpr-projects [--source] [--q] | GET /api/coexpression/projects | bioproject 列表 |
coexpr-project <accession> | GET /api/coexpression/projects/{acc} | 单个 bioproject |
ppi --genes <.1 ID> [--min-score] | GET /api/ppi/query | 蛋白互作查询 |
homologs <gene_id> [--max-targets] | GET /api/homologs/wheat-rice-arabidopsis | 水稻/拟南芥同源基因 |
synteny <基因ID或区间> [--table] | GET /api/synteny/search | 麦族共线性 |
id-conversion --ids ... --version ... | GET /api/id-conversion | 旧版 ID 转 02G |
blastp <gene_id> [--limit] [--offset] | GET /api/blastp | 预计算 blastp 结果 |
orthofinder [--q] [--action] [--og] [--sub] | GET /api/orthofinder/search | OrthoFinder 搜索 |
orthofinder-download --og ... [--type] | GET /api/orthofinder/download | 下载基因树/比对 |
orthofinder-neighborhood <gene_id> | GET /api/orthofinder/neighborhood | 邻居基因与同源簇 |
syntenyview-genomes | GET /api/syntenyview/genomes | 基因组列表 |
syntenyview-gene-search <q> [--limit] | GET /api/syntenyview/gene-search | 基因搜索 |
syntenyview-status | GET /api/syntenyview/status | 服务状态 |
syntenyview-triticeae | GET /api/syntenyview/triticeae | 麦族数据 |
syntenyview-neighborhood <gene_id> [...] | GET /api/syntenyview/neighborhood | 邻域共线性 |
seq-gene <gene_id> [--gene-db] [--protein-db] | GET /api/sequence/by-gene | 基因+蛋白 FASTA |
seq-interval --region ... --database ... | GET /api/sequence/by-interval | 区间基因组 FASTA |
seq-batch --ids ... --database ... | GET /api/sequence/batch | 批量 FASTA |
blast-databases [--program] | GET /api/blast/databases | BLAST 库列表 |
blast-env | GET /api/blast/status | 检查 BLAST 环境 |
blast submit --database ... --query ... [--wait] | POST /api/blast/search | 提交 BLAST(异步) |
blast status <job_id> | GET /api/blast/status/{job_id} | 轮询 BLAST 状态 |
blast result <job_id> | GET /api/blast/status/{job_id} | 取 BLAST 结果(download_urls) |
enrich-go --genes ... [--padj] | POST /api/go-kegg/go | GO 富集 |
enrich-kegg --genes ... [--padj] | POST /api/go-kegg/kegg | KEGG 富集 |
go-genes <GO:...> [--genes] | GET /api/go-kegg/go-genes | GO term 命中基因 |
kegg-genes <pathway> [--genes] | GET /api/go-kegg/kegg-genes | 通路命中基因 |
variant-datasets | GET /api/VariantHub/datasets | VCF 数据集列表 |
variant-dataset-info <dataset> | GET /api/VariantHub/dataset_info | VCF 头与样本 |
variant-samples <dataset> [--param k=v] | GET /api/VariantHub/samples | 样本元数据 |
| `variant-query <dataset> (--region | --variant-id)` | GET /api/VariantHub/query |
papers [--q] [--limit] [...] | GET /api/papers | 论文搜索 |
paper <pmid> | GET /api/papers/{pmid} | 单篇论文元数据 |
paper-annotation <pmid> | GET /api/papers/{pmid}/annotation | LLM 标注 |
papers-stats | GET /api/papers/stats | 聚合统计 |
primer-config | GET /api/PrimerServer2/config | 服务器配置 |
primer-databases | GET /api/PrimerServer2/databases | 特异性检查库 |
primer-server-info | GET /api/PrimerServer2/server-info | 运行时信息 |
primer submit --json ... [--wait] | POST /api/PrimerServer2/jobs | 提交设计作业 |
primer submit-check --json ... [--wait] | POST /api/PrimerServer2/jobs/check | 提交检查作业 |
primer status <jobId> | GET /api/PrimerServer2/jobs/{id} | 作业状态 |
primer progress <jobId> | GET .../jobs/{id}/progress | 作业进度 |
primer result <jobId> [--job-type] | GET .../jobs/{id}/result | 作业结果 |
primer delete <jobId> | DELETE /api/PrimerServer2/jobs/{id} | 终止并删除 |
primer result-html <jobId> | GET .../jobs/{id}/result-html | HTML 结果页 |
通用选项(所有子命令):-o/--output 文件(完整 JSON 写盘,自动建父目录)、--timeout 秒(默认 30)、--base 地址(或环境变量 WHEATOMICS_BASE)、--api-key(x-api-key 请求头)、--param KEY=VALUE(附加 query 参数,可重复)。
まだレビューはありません。使ってみた感想をお寄せください。
概要と使いどころ
生成图文并茂的分析报告/实验报告/质检报告(固定模版)。当用户要求"生成报告/总结报告/实验报告/质检报告/QC报告",或分析流程收尾需要交付报告时使用。报告必须基于真实分析输出,包含固定章节结构、关键指标表格和真实结果图。
日本語の概要は準備中です。原文の説明を表示しています。
Predicts ADMET properties using ADMETlab 3.0 (119 endpoints with uncertainty), ADMET-AI, DeepChem MolNet, and chemprop D-MPNN with explicit handling of OECD QSAR principles, applicability domain assessment, calibration, hERG/CYP/AMES gold-standard endpoints, and PAINS / Lipinski / Ro5 / Veber / BBB druglikeness filters. Use when filtering compounds for drug-likeness, prioritizing leads by predicted safety, or building an in-house ADMET QSAR model.
日本語の概要は準備中です。原文の説明を表示しています。
Trim PCR primers from aligned reads in amplicon-panel BAMs using samtools ampliconclip. Use when processing SARS-CoV-2 ARTIC, hereditary cancer panels, ctDNA hot-spot panels, or any amplicon assay where primer-derived bases would falsely confirm reference at primer footprints.
日本語の概要は準備中です。原文の説明を表示しています。
Filter alignments by flags, mapping quality, and regions using samtools view and pysam. Use when extracting specific reads, removing low-quality alignments, or subsetting to target regions.
日本語の概要は準備中です。原文の説明を表示しています。
Create and use BAI/CSI indices for BAM/CRAM files using samtools and pysam. Use when enabling random access to alignment files or fetching specific genomic regions.
日本語の概要は準備中です。原文の説明を表示しています。
Read, write, and convert multiple sequence alignment files using Biopython Bio.AlignIO. Supports Clustal, PHYLIP, Stockholm, FASTA, Nexus, and other alignment formats for phylogenetics and conservation analysis. Use when reading, writing, or converting alignment file formats.
日本語の概要は準備中です。原文の説明を表示しています。