本稿では、広範な真核生物において安定して高品質な結果をもたらすよう設計された、新しいアノテーション・パイプライン「Eukan」を紹介する。第一に、実験的証拠を自動的に活用して予測を精緻化する。具体的には、RNA-Seqのリード・カバレッジ情報を一般化隠れマルコフモデル(GHMM)に基づく遺伝子予測に反映させ、イントロン長情報をタンパク質配列アラインメントに利用する。第二に、複数の情報源から得られた遺伝子予測に対し、経験的に最適化された重み付けを行うことでコンセンサス(合意)を生成する。第三に、コンセンサスには含まれていないものの、強力な転写産物による裏付けがあり、かつタンパク質をコードしていると見なされる遺伝子予測を回復させるための事後処理ルーチンを実行する。本著者らは、系統的に多様な17種類のハプロイドおよびディプロイドの核ゲノムを対象に、Eukanと、広く利用されている3つの無料パイプライン(Maker、Braker、Gemoma)の解析結果を比較した。一般的に報告されるアノテーション精度の指標に加え、自動アノテーションで頻繁に見られる重大な欠陥を分類する新たなシステムを定義した。さらに、検証済みの「ゴールドスタンダード」遺伝子の大部分は、テストセット全体において各パイプラインによって正しく同定されたものの、断片化、人工的な融合、あるいは欠落といった遺伝子が、無視できない割合で各パイプライン特有のパターンとして生じていることを示した。そのような状況下でも、Eukanは、原生生物のコンパクトなゲノムなど、他のパイプラインが困難に直面するようなケースにおいて、一貫して良好な性能を示した。
インストール
windows11 WSLでテストした(macだと依存ライブラリのインストールでエラーが発生した)。
Github
git clone https://github.com/BFL-lab/eukan.git
cd eukan
mamba config --set channel_priority strict
mamba env create -f environment.yml
conda activate eukan
さらに、GeneMarkが必要。kernel 3.10をダウンロードする。
https://exon.gatech.edu/GeneMark/license_download.cgi
安全でないファイルと出てしまう場合、ファイル名を付けて保存、それから許可でダウンロードできる。プログラムとライセンスキーどちらも取得する。

gmes_linux_64_4.tar.gzとgm_keys.tar.gzをクローンしたeukan/のルートに配置する(解凍不要)。さらにGeneMarkライセンスキーを$HOME/.gm_keyとして登録する (*1)。
それから以下を実行する。このスクリプトは、genemarkとcondaでは入らない補助プログラムをコンパイルして認識できるようにする。
./scripts/install-extras.sh
> eukan check
7 Python checks OK:
✓ module imports all 30 modules OK
✓ pyhmmer phmmer search works
✓ gffutils in-memory DB works
✓ biopython sequence I/O works
✓ pydantic-settings config loads OK
✓ scipy ks_2samp/chi2/BH work
✓ tool registry 38 tools loaded from tools.toml
38 tools OK:
✓ augustus AUGUSTUS (3.5.0) is a gene prediction tool.
✓ snap SNAP - Semi-HMM-based Nucleic Acid Parser (version 2006-07-28)
✓ codingquarry CodingQuarry v. 2.0
✓ genemark # -------------------
✓ diamond diamond version 2.2.4
✓ samtools samtools 1.23.1
✓ minimap2 2.31-r1302
✓ stringtie 3.0.3
✓ rnaspades SPAdes genome assembler v4.3.0 [rnaSPAdes mode]
✓ trinity Trinity version: Trinity-v2.15.2
✓ jellyfish jellyfish 2.3.1
✓ spaln *** SPALN_AVX2 version 3.0.8 <260119> ***
✓ makdbs makdbs Version 2.0.0: format a set of sequences to be quickly addressed
✓ fitild Usage:
✓ combinr combinr 0.1.1
✓ genomethreader gth (GenomeThreader) 1.7.1
✓ trf Tandem Repeats Finder, Version 4.10.0-rc.2
✓ repeatmodeler RepeatModeler version 2.0.8
✓ builddatabase No query sequence file indicated
✓ repeatmasker RepeatMasker version 4.2.4
✓ rmblast rmblastn: 2.17.1+
✓ gff2gbSmallDNA Use of uninitialized value $ARGV in concatenation (.) or string at /home/kazu/miniforge3/envs/eukan/bin/gff2gbSmallDNA.p
✓ optimize_augustus optimize_augustus.pl train augustus and automatically optimize the meta parameters.
✓ bam2wig -----------------------------------------------------------------
✓ etraining AUGUSTUS (3.5.0) is a gene prediction tool.
✓ new_species /home/kazu/miniforge3/envs/eukan/bin/new_species.pl -- create the parameter files necessary for training AUGUSTUS for a
✓ randomSplit /home/kazu/miniforge3/envs/eukan/bin/randomSplit.pl: randomly split a genbank file in two subsets of given sizes
✓ splitMfasta /home/kazu/miniforge3/envs/eukan/bin/splitMfasta.pl -- split a multiple fasta file in smaller multiple fasta files.
✓ join_aug_pred Unknown option: help
✓ gtf2gff NAME
✓ wig2hints Unknown option: help
✓ fathom FATHOM - sequence and annotation tool (version 2006-07-28)
✓ forge FORGE - training program for SNAP (version 2006-07-28)
✓ hmm-assembler usage: hmm-assembler.pl <name> <directory of files from forge>
✓ sortgrcd sortgrcd version 2.2.2: read binary .?rds and sort them
✓ makblk Usage: makblk.pl [-Wx.[bkn|bkp|bka] -K[D|P|S]] [options] seq.1 seq.2 ...
✓ gthconsensus gthconsensus (GenomeThreader) 1.7.1
✓ table2asn table2asn: 1.28.1094
Checked 38 external tools total.
4 databases MISSING or INVALID:
✗ uniprot uniprot_sprot.faa not found in /home/kazu/Documents/eukan/databases
✗ pfam Pfam-A.hmm not found in /home/kazu/Documents/eukan/databases
✗ kofam kofam_eukaryote.hmm not found in /home/kazu/Documents/eukan/databases
✗ ko_list ko_list.tsv not found in /home/kazu/Documents/eukan/databases
run: eukan db-fetch
まだ準備は終わらない。ツールは揃ったが、次はデータベースがないと表示されるので以下を叩く。
eukan db-fetch
eukan db-fetch --homology-db kofam
> eukan db-fetch -h
Usage: eukan db-fetch [OPTIONS]
Download reference databases (UniProt or KOfam, plus Pfam).
Without --database, fetches Pfam plus the homology DB selected by
--homology-db:
uniprot → uniprot_sprot.faa (default; SwissProt phmmer search)
kofam → kofam_eukaryote.hmm + ko_list.tsv (KEGG Orthology HMMs)
Use --database to fetch an explicit subset (e.g. -d pfam to refresh
only Pfam, or -d kofam -d ko_list to fetch KOfam without touching Pfam).
Options:
Pipeline parameters:
-o, --output-dir PATH Directory to download databases into.
[default: databases]
--homology-db [uniprot|kofam]
Which homology DB to fetch alongside Pfam.
'uniprot' downloads SwissProt; 'kofam'
downloads the KOfam HMM profiles + ko_list
and presses an eukaryote-only HMM database.
[default: uniprot]
-d, --database [uniprot|pfam|kofam|ko_list]
Specific database(s) to fetch. Overrides
--homology-db when given.
-f, --force Re-download even if databases are up to
date.
-h, --help Show this message and exit.
DB取得は10分くらいで終了した。

依存再チェック
> eukan check

O.K !
help
> eukan -h
Usage: eukan [OPTIONS] COMMAND [ARGS]...
Eukan: Eukaryotic nuclear genome annotation pipeline.
Typical workflow:
1. eukan check Verify installation and tools
eukan db-fetch Download UniProt + Pfam databases
2. eukan mask-repeats Soft-mask repeats (optional but recommended)
3. eukan assemble Build transcriptome from RNA-seq (optional but recommended)
4. eukan annotate Annotate genome using proteins + assembly (if available)
5. eukan func-annot Add functional info to predicted proteins
6. eukan prep-submission Validate + package for NCBI submission via table2asn
Helpers:
eukan compare Compare annotations against a reference/previous annotation
eukan gff3toseq Extract sequences from annotation
eukan status View progress of a pipeline run
Options:
--version Show the version and exit.
-v, --verbose Enable debug logging.
-q, --quiet Suppress info logging (warnings only).
-h, --help Show this message and exit.
Commands:
annotate Run the genome annotation pipeline.
assemble Assemble transcriptome from RNA-seq reads.
check Verify Python deps, external tools, and databases.
compare Compare predicted gene models against a reference GFF3.
db-fetch Download reference databases (UniProt or KOfam, plus...
func-annot Add functional annotations (UniProt/KOfam + Pfam) to...
gff3toseq Extract protein or cDNA sequences from GFF3 + genome.
mask-repeats Soft-mask repeats with RepeatModeler + RepeatMasker.
prep-submission Validate + package an annotated genome for NCBI...
status Show the status of a pipeline run.
実行方法
1、リピートマスク - 小文字を含まないゲノムFASTAを入力する (ソフトマスクされたDNAは小文字になる)。
mkdir test_eukan
cd test_eukan
eukan mask-repeats -g genome.fasta -n 20
> eukan mask-repeats -h
Usage: eukan mask-repeats [OPTIONS]
Soft-mask repeats with RepeatModeler + RepeatMasker.
Produces, in the working directory:
<stem>.masked.fasta soft-masked genome (lower-case in repeats)
<stem>.repeats.gff raw RepeatMasker GFF
hints_repeatmask.gff AUGUSTUS-format hints (auto-discovered by
`eukan annotate`)
Pass the masked genome to `eukan annotate -g <stem>.masked.fasta`.
Required input:
-g, --genome PATH Genome sequence in FASTA format. [required]
Pipeline parameters:
-n, --numcpu INTEGER Number of CPU threads. [default: 16]
--engine [rmblast|ncbi] Search engine for BuildDatabase / RepeatMasker.
[default: rmblast]
--lib PATH Pre-built repeat-family library FASTA. When set,
RepeatModeler is skipped.
Re-run steps:
--run-modeler Force re-run BuildDatabase + RepeatModeler.
--run-masker Force re-run RepeatMasker.
-f, --force Force re-run all steps (ignore cached outputs).
-h, --help Show this message and exit.
RepeatModeler(紹介)で反復配列ライブラリを作成し、RepeatMasker(紹介)でゲノムをソフトマスクする。AUGUSTUSによる遺伝子予測前にマスクすることが推奨されている。
出力例
repeats/

2、(任意) RNA-seqデータから転写産物エビデンスの構築 - 1のソフトマスクされたfastaファイルを使う。シングルエンドは"-s"で指定する。"--uniprot"で作った転写産物の向きや融合転写産物を補正するための補助DBを指定する (unstranded RNA-seq のとき、転写産物がどちら向きかをタンパク質相同性で補正できる)。複数RNA seqあるなら、おそらく連結して1つのペアエンドとして使用する (要確認)。strand-specific ライブラリなら -S RF などを追加する。
eukan assemble -g repeats/genome.masked.fasta \
-l R1.fastq.gz -r R2.fastq.gz -n 10 --memory-gb 64\
--uniprot databases/uniprot_sprot.faa
> eukan assemble -h
Usage: eukan assemble [OPTIONS]
Assemble transcriptome from RNA-seq reads.
Provide either paired-end reads (--left and --right together) or
single-end reads (--single). If using paired-end reads, both --left
and --right are required.
Required input:
-g, --genome PATH Genome FASTA file. [required]
-l, --left PATH Left paired-end reads.
-r, --right PATH Right paired-end reads.
-s, --single PATH Single-end reads.
Pipeline parameters:
-n, --numcpu INTEGER Number of CPU threads. [default: 16]
-S, --strand-specific [RF|FR|R|F]
Strand-specific library type.
--non-canonical [auto|force|off]
Non-canonical splice mapping. minimap2 maps
with the splice preset; 'auto' (default) re-
maps with the non-canonical flags (-J 0 -C 3
--splice-flank=no) when the soft-clip
diagnostic finds extensive non-canonical
splicing (so hints/assembly aren't biased by
the canonical alignment). 'force' always
applies them; 'off' never does. [default:
auto]
--diagnose-softclips / --no-diagnose-softclips
Run the soft-clip + intron diagnostic after
read mapping. Detects trans-splicing (via de
novo splice-leader clusters) and non-
canonical splice prevalence; surfaces both
as INFO/WARNING and gates the --non-
canonical auto re-map. [default: diagnose-
softclips]
-c, --code INTEGER NCBI genetic code table number. [default:
1]
-m, --min-intron INTEGER Minimum intron length. [default: 20]
-M, --max-intron INTEGER Maximum intron length, hard-imposed:
transcript models are split at any longer
intron (the max_intron_split step) and
combinr enforces it, and Trinity genome-
guided uses it as
--genome_guided_max_intron. Changing it on a
resumed run re-runs max_intron_split/combinr
automatically; recovering longer introns
from the assembly or mapping also needs
--run-trinity/--run-map-transcripts. Set 0
to disable the model split. [default: 5000]
--phred [33|64] Phred quality score. [default: 33]
-j, --jaccard-clip / --no-jaccard-clip
In-house jaccard clipping of fused Trinity
transcripts (both de novo and genome-
guided), splitting two adjacent loci joined
into one contig. On by default; needs paired
reads. --no-jaccard-clip disables; tune via
the --jaccard-* knobs below.
--jaccard-greediness FLOAT Jaccard low-coverage sensitivity (default
1.5). Coverage-adaptive slack that lets
faint fusion troughs in low-depth regions be
split: 0 = Trinity's fixed floor (most
stringent), higher = more aggressive in low
coverage. Only used with -j.
--jaccard-max-trough FLOAT Jaccard trough-depth gate (default 0.05): a
junction's jaccard must dip to <= this to be
cut. LOWER for more stringent clipping (a
deeper trough required). Only used with -j.
--jaccard-min-delta FLOAT Jaccard flanking-hill rise (default 0.35):
the jaccard must climb this far above the
trough on both sides for a cut. RAISE for
more stringent clipping. Only used with -j.
--jaccard-max-adaptive-trough FLOAT
Ceiling on the coverage-adaptive trough gate
(default 0.30): caps how far --jaccard-
greediness can relax --jaccard-max-trough in
low coverage. LOWER to keep low-coverage
clipping stringent. Only used with -j.
--combinr-stringent-overlap FLOAT
combinr --stringent-overlap: two transcripts
cluster only when their span overlap is >=
this percent of the shorter transcript
(default 0 = any overlap). Raise it (e.g.
30) to stop short or tip-overlapping
transcripts welding collinear neighbours
into one model.
--sl-sequence TEXT Override the spliced-leader sequence for
trans-splice acceptor detection (else
recovered from the read soft-clip verdict or
de novo insertions).
--sl-cluster-window INTEGER Genomic window (bp) for consolidating SL
acceptor sites. [default: 5]
--adapter-sequence TEXT Extra sequencing-adapter sequence to exclude
from SL detection (repeatable). Added to the
built-in Illumina/Nextera set; use for
platform-specific adapters (e.g. MGI/BGI).
--sl-adapter-filter / --no-sl-adapter-filter
Screen the recovered SL consensus / acceptor
candidates against known sequencing adapters
so residual Illumina read-through (e.g.
AGATCGGAAGAGC) isn't mistaken for a spliced
leader. On by default; --no-sl-adapter-
filter disables it.
--combinr-path PATH Path to the combinr binary (else resolved
from PATH or $EUKAN_ASSEMBLE_COMBINR_PATH).
--uniprot PATH SwissProt FASTA (uniprot_sprot.faa) or
prebuilt diamond .dmnd. Enables homology-
based splice-strand correction on unstranded
libraries (skipped when -S/--strand-specific
is given), and homology de-fusion with
--defuse. Without it, both are no-ops.
--defuse Split chimeric (fused) transcripts using
protein homology: an ultra-sensitive diamond
blastx vs SwissProt that finds >=2 distinct,
non-overlapping hits on one transcript cuts
it at the inter-hit gap. Requires --uniprot.
--defuse-overlap-tolerance FLOAT
Max fractional query overlap (of the shorter
hit) for two protein hits to still count as
distinct evidence of separate genes (default
0.10).
--memory-gb INTEGER Assembly memory cap in GiB (Trinity
--max_memory / rnaSPAdes -m). Defaults to 60
percent of currently-available memory
(floored at 4 GiB).
Re-run steps:
-A, --run-minimap2 Force re-run minimap2 read mapping.
-T, --run-trinity Force re-run Trinity de novo + genome-guided
assembly.
--run-jaccard Force re-run jaccard clipping of fused transcripts.
--run-map-transcripts Force re-run minimap2 transcript→genome mapping.
--run-strand-correct Force re-run homology-based splice-strand
correction.
--run-defuse Force re-run homology-based transcript de-fusion.
--run-max-intron-split Force re-run the max-intron split of transcript
models.
--run-sl-detect Force re-run SL trans-splice acceptor detection.
--run-sl-cut Force re-run the genomic SL cut of transcript
models.
--run-combinr Force re-run combinr transcript consolidation.
-f, --force Force re-run all steps (ignore cached outputs).
-h, --help Show this message and exit.:wq
STAR (紹介)によるアセンブリへのマッピング後、Trinityによるgenome-guided or de novoアセンブリ (紹介)が行われる (Trinityアセンブラ (紹介)にはゲノムガイドモードとde novoアセンブリモードの2つのモードがある)。2つのRNA seqアセンブリは、最後にcombinr (Github) により統合された転写産物エビデンスとなる。
出力例
assemble/

3、遺伝子構造の予測 - ゲノムから遺伝子構造を予測して、最終的なGFF3形式アノテーションを作る。1のソフトマスクされたfastaファイルを使う。近縁タンパク質とRNA seqデータをエビデンスとして、 Ab initio gene predictionを改善することができる。2のRNA seqエビデンスフォルダ: annotate/は自動で認識される。"-p"には、対象生物に近縁な生物のタンパク質配列を指定する(必須)。対象に近い10種程度のプロテオームが望ましく、遠縁種を大量に混ぜると、パラログや重複した証拠により、むしろ注釈精度が低下する可能性があると説明されている。近縁種がなければSwiss-Protを使う (マニュアルより)。"-k"でkingdom: fungus/protist/animal/plantを選択できる。
eukan annotate -g repeats/genome.masked.fasta \
-p related_proteins.faa --kingdom fungus -n 20
> eukan annotate -h
Usage: eukan annotate [OPTIONS]
Run the genome annotation pipeline.
When run in the same directory as `eukan assemble`, transcript evidence
(FASTA, GFF3, RNA-seq hints) and strand-specificity are discovered
automatically. Use the override options to supply your own files or to
replace the auto-discovered values.
Required input:
-g, --genome PATH Genome sequence in FASTA format. Must not contain
lower-case nucleotides (the pipeline soft-masks repeats
by converting to lower-case). [required]
-p, --proteins PATH One or more protein FASTA files. [required]
Pipeline parameters:
-k, --kingdom [fungus|protist|animal|plant]
Target organism kingdom (tunes predictor
parameters).
-n, --numcpu INTEGER Number of CPU threads. [default: 16]
--existing-augustus TEXT Use pre-trained AUGUSTUS species parameters.
-w, --weights INTEGER Weights for evidence sources: protein, gene
predictions, transcripts. [default: 2, 1,
3]
--combinr-stringent-overlap FLOAT
combinr --stringent-overlap for the
consensus --alt-splice isoform grouping: two
transcript isoforms attach to one gene only
when their span overlap is >= this percent
of the shorter (default 0 = any overlap).
Raise it (e.g. 30) to keep tip-overlapping
collinear neighbours separate.
-c, --code INTEGER NCBI genetic code table number. [default:
11]
Override options:
-tf, --transcripts-fasta PATH Override auto-discovered transcript FASTA.
-tg, --transcripts-gff PATH Override auto-discovered transcript GFF3.
-r, --rnaseq-hints PATH Override auto-discovered RNA-seq hints GFF.
--strand-specific Transcripts are strand-oriented.
--combinr-path FILE Path to the combinr binary (default:
'combinr' on PATH).
--splice-permissive Allow non-canonical splice sites (GC-AG, AT-
AC). When assembly evidence exists, observed
splice types are used automatically;
otherwise enables blanket allowance in
AUGUSTUS.
Experimental:
--spsp Build species-specific spaln parameters from transcripts
(alternative to fitild).
Re-run steps:
--run-genemark Force re-run GeneMark gene prediction.
--run-prot-align Force re-run protein alignment (spaln/gth).
--run-augustus Force re-run AUGUSTUS training and prediction.
--run-snap Force re-run SNAP (and CodingQuarry) prediction.
--run-consensus Force re-run consensus model building.
-h, --help Show this message and exit.
2のRNA-seqのエビデンスも使用する場合、mask-repeats、assemble、annotateを同じ作業ディレクトリで実行すると、eukanが前段階の結果を自動検出して使用する。また、下のように手動で指定することもできる。
eukan annotate -g repeats/genome.masked.fasta \
-p related_proteins.faa --kingdom fungus -n 20 \
--transcripts-fasta assemble/nr_transcripts.fasta \
--transcripts-gff assemble/nr_transcripts.gff3 \
--rnaseq-hints assemble/hints_rnaseq.gff
GeneMark、AUGUSTUS、SNAP、CodingQuarry、タンパク質アラインメントなどを統合して遺伝子モデルが構築される。
出力例
annotate/

final.gff3が複数のエビデンスから統廃合されてできた最終的な遺伝子モデルを含むアノテーションファイル。
4、機能的アノテーションの付与 - annotateで作った遺伝子モデルにタンパク質の機能的アノテーション、ドメイン情報、KO/Pfamなどを付与する。
4-1、まず、3の最終遺伝子モデルのでGFF3からタンパク質のfaaファイルを作る。
eukan gff3toseq -g repeats/genome.masked.fasta -i annotate/final.gff3 \
--output-format protein -o func-annot/predicted_proteins.faa
=>predicted_proteins.faaができる。
4-2、eukan func-annotコマンドで機能的アノテーションを付与する。predicted_proteins.faaを指定する。ダウンロードしたDBはカレントにdatabases/があれば自動認識される。そうでないなら、下のように明示的にoption指定する。
eukan func-annot \
-p func-annot/predicted_proteins.faa \
--homology-db kofam \
--kofam databases/kofam_eukaryote.hmm \
--ko-list databases/ko_list.tsv \
--pfam databases/Pfam-A.hmm \
--gff3 annotate/final.gff3 \
-n 20
> eukan func-annot -h
Usage: eukan func-annot [OPTIONS]
Add functional annotations (UniProt/KOfam + Pfam) to proteins.
When run after `eukan annotate` and `eukan db-fetch`, the predicted
protein sequences and homology/Pfam databases are discovered
automatically. Use the override options to point to different files
or to run functional annotation independently of the main pipeline.
--homology-db uniprot (default) runs phmmer against UniProt-SwissProt
and emits inference=similar to AA sequence:UniProtKB:... per hit.
--homology-db kofam runs hmmscan against KEGG's KOfam HMM database
and emits product=<KO definition>, ec_number=<EC>, Dbxref=KEGG:K...,
inference=protein motif:KOFAM:K... when score >= the per-KO threshold.
Pipeline parameters:
-n, --numcpu INTEGER Number of CPU threads. [default: 16]
--homology-db [uniprot|kofam] Homology source: 'uniprot' runs phmmer vs
SwissProt (broad coverage); 'kofam' runs
hmmscan vs the KOfam HMM database with per-KO
bit-score thresholds (KEGG-pathway focused).
Pfam hmmscan runs in both modes. [default:
uniprot]
-e, --evalue TEXT E-value cutoff. [default: 1e-1]
Override options:
-p, --proteins PATH Amino acid sequences in FASTA format.
--uniprot PATH UniProt-SwissProt database FASTA.
--kofam PATH KOfam pressed HMM database.
--ko-list PATH KOfam ko_list TSV (per-KO thresholds + definitions).
--pfam PATH Pfam HMM database.
--gff3 PATH GFF3 file to annotate with functional info.
-f, --force Force re-run all steps (ignore cached outputs).
-h, --help Show this message and exit.
出力例
func-annotate/

final.mod.gff3が機能アノテーションを足した最終gff3ファイル。機能注釈付きのタンパク質faa: predicted_proteins.mod.faaも出力されている。
5、NCBIサブミット用ファイルの作成 - 完成したアノテーションをNCBI/GenBankサブミット用に整形、検証する。
このコマンドをランするには、サブミットする研究者の情報を記載した.sbtファイルが必要。.sbtファイルはNCBIのこちらでページで作成できる。
https://submit.ncbi.nlm.nih.gov/genbank/template/submission/
ダウンロードした.sbtファイルを指定してeukan prep-submissionをランする。"--organism"で対象としている種のscientific nameを指定する。isolate_nameは真菌なら株名となる。--dry-runをつけるとコマンドの挙動を確認できる。
eukan prep-submission -t template.sbt --organism "Genus species" \
--isolate "isolate_name" --locus-tag-prefix "XXXX" --dry-run
> eukan prep-submission -h
Usage: eukan prep-submission [OPTIONS]
Validate + package an annotated genome for NCBI submission via table2asn.
Runs the standard NCBI submission recipe (-split-logs -W -J -Z -euk
-T -V b plus -c/-M/-a) over the genome FASTA and annotated GFF3,
producing a .sqn file ready for upload along with .val (validator),
.dr (discrepancy), and .stats reports for iterative GFF3 refinement.
Auto-discovers inputs from the current working directory:
- genome: from eukan-run.json (manifest)
- gff3: final.mod.gff3 (preferred) or final.gff3 (fallback)
The .sbt submission template must be created via NCBI's web form:
https://submit.ncbi.nlm.nih.gov/genbank/template/submission/
Use --print-command to inspect the exact table2asn invocation, or
--extra-args to append flags not exposed here.
Required input:
-t, --template PATH NCBI submission template (.sbt). Generate one at https:
//submit.ncbi.nlm.nih.gov/genbank/template/submission/
[required]
Source qualifiers:
--organism TEXT Organism scientific name (e.g. 'Homo sapiens').
Required unless --source-info is given.
--isolate TEXT Isolate / strain identifier (optional).
--source-info TEXT Raw -j string for table2asn (e.g. '[organism=Foo]
[isolate=Bar] [country=Canada]'). Overrides
--organism / --isolate when set.
--locus-tag-prefix TEXT NCBI-registered locus tag prefix (required for new-
genome submissions).
Override options:
-g, --genome PATH Genome FASTA. Auto-discovered from eukan-run.json when
omitted.
-i, --gff3 PATH Annotated GFF3. Defaults to final.mod.gff3 (or
final.gff3) in the working directory.
Pipeline parameters:
--cleanup TEXT table2asn -c cleanup flags. [default: befw]
--mode TEXT table2asn -M flatfile mode. [default: n]
-a, --assembly-type TEXT table2asn -a assembly type / gap
configuration. [default: r10k]
--extra-args TEXT Extra table2asn arguments, shell-quoted
(e.g. --extra-args '-split-dr -huge').
--cleanup-gff3 / --no-cleanup-gff3
Pre-process the GFF3 (strip UniProt cruft,
drop CDS-less mRNAs, cap inferences) before
handing it to table2asn. [default: cleanup-
gff3]
Output options:
-o, --output-file PATH Output .sqn path. Defaults to <output-dir>/<genome-
stem>.sqn.
-d, --output-dir PATH Output directory for .sqn and validator reports.
Defaults to ./submission.
--print-command Print the resolved table2asn command and exit (no
outputs written).
--dry-run Print the command and create the output directory,
but don't run table2asn.
-h, --help Show this message and exit.
出力例
submission/

コメント
アノテーション付きゲノムはNCBI Submission PortalのGenome submissionから提出できますが、DDBJなどと同様、先にBioProjectを作成し、BioSampleを登録し、SRA submissionからゲノムショットガン生リードなどを提出してアクセッション番号を取得しておくのが基本的な流れです。
https://submit.ncbi.nlm.nih.gov/about/genome/#step2
特にアノテーション付きゲノムを提出する場合は、BioProject/BioSampleを事前に作成し、locus_tag prefixを取得してからGenome submissionへ進む必要があります。SRAの生リード、ゲノムアセンブリ、アノテーションは別々のsubmissionになりますが、同じBioProject/BioSample accessionで紐づけます。
また、Eukanが高精度であっても、何もチェックせずに提出するのは避けてください。まずBUSCOなどで、可能な限り狭い分類群のデータセットを使ってゲノムと予測タンパク質それぞれの完全性と重複率を確認します。そのうえで、IGVなどのゲノムビューアにRNA-seq由来の転写産物エビデンス、近縁モデル生物のタンパク質エビデンス、最終GFF3をtrackとして読み込み、最終アノテーションが妥当かじっくり確認してください。特にexon-intron境界、短すぎるexon、分断された遺伝子、融合した遺伝子、UTRや遺伝子の向きに注意します。入力データの品質が低い場合など、遺伝子モデルが不正確になる可能性は十分にあります。
その他
- Eukanでは、まずSpalnによる近縁種タンパク質のゲノムアラインメントと、RNA-seqから推定されたイントロン座標を利用したGeneMark-ETの遺伝子予測を行う。次に、GeneMark-ETの予測、転写産物中のORF、タンパク質アラインメントのうち、少なくとも2種類で構造が一致する遺伝子モデルを用いてAUGUSTUSを訓練する。訓練後のAUGUSTUSには、RNA-seqの転写産物、リードカバレッジ、イントロン、およびタンパク質アラインメント由来のhintを与えて遺伝子予測を行う。対象が真菌の場合は、CodingQuarryとSNAPによる予測も追加される。最終的に、転写産物アラインメント、タンパク質アラインメント、AUGUSTUSなどによる遺伝子予測がEvidenceModelerによって重み付きで統合され、コンセンサス遺伝子モデルが作成される。
- GeneMark公式のライセンスは無償利用の対象を学術機関、非営利機関、米国政府機関としている点に注意
引用
Eukan: a fully automated nuclear genome annotation pipeline for less studied and divergent eukaryotes
Matt Sarrasin , Gertraud Burger , B Franz Lang
NAR Genomics and Bioinformatics, Volume 8, Issue 1, March 2026
関連
*1
cp ~/Downloads/gm_key_64 ~/.gm_key
chmod 600 ~/.gm_key

