domainator find_features
Annotate transmembrane regions, signal peptides, and other sequence features.
Annotate sequence files with feature detection algorithms
For each CDS or protein in the input file, run feature detection algorithms to
identify transmembrane regions, signal peptides, and other sequence features.
If no feature options are supplied, the input is still processed to normalize
CDS translations where possible.
Supported algorithms:
- TMbed: Transmembrane protein prediction using ProtT5 language model embeddings
- MOTIF: PROSITE-style pattern matching for exact motif search
Give at least one of these outputs: --genbank_out, --fasta_out. - as an input or output means standard input or output, where the option says it is allowed.
| Option | Value | Default | Description |
|---|---|---|---|
-v, --verbose |
show debug output, and a traceback for errors. | ||
-q, --quiet |
show errors only: no progress messages or warnings. | ||
-i, --input |
FILE ... | required | The genbank or fasta files to annotate. Genbank files can be nucleotide (with CDS annotations) or peptide. Fasta files must be peptide. Use - to read standard input. |
--alphabet |
{nucleotide,protein} | protein | Whether the sequences in FASTA inputs are protein or nucleotide. GenBank records declare their own molecule type. |
-o, --genbank_out |
FILE | Write the records to this GenBank file. Use - for standard output. | |
--fasta_out |
FILE | Write the records to this FASTA file. Use - for standard output. | |
--cpu |
INTEGER | 0 | The number of CPU threads to use. 0: one per physical core. |
--gene_call |
{all,unannotated} | When activated, new CDS annotations will be added with Prodigal in Metagenomic mode. If 'all', then any existing CDS annotations will be deleted and all contigs will be re-annotated. If 'unannotated', then only contigs without CDS annotations will be annotated. If you supply a nucleotide fasta file, be sure to also specify --alphabet nucleotide. | |
--tmbed |
Run TMbed transmembrane and signal peptide prediction. | ||
--motif |
STRING ... | PROSITE motifs to search for. More information about PROSITE motif specification can be found: https://emboss.sourceforge.net/apps/release/6.5/emboss/apps/fuzzpro.html Example: '[DE](2)HS{P}X(2)PX(2,4)C' matches two Asp/Glu, then His, Ser, any except Pro, two of any, Pro, two to four of any, Cys. Motif names for boolean expressions are auto-generated by sanitizing the pattern (replacing parentheses and dashes with underscores). | |
--batch_size |
INTEGER | 4000 | Batch size for sequence processing. Larger values may be faster but require more memory. |
--device |
STRING | cuda:0 | For models that can use GPU acceleration, use this device if available, falling back to the CPU if it is not. Use 'cpu' to always run on the CPU. Examples: 'cpu', 'cuda:0'. |
--model_dir |
DIR | Base directory for downloading/loading algorithm model weights. Individual algorithms will create subdirectories as needed. Can be overridden per-algorithm with --[algorithm]_model_dir. | |
--tmbed_model_dir |
DIR | Directory to download/load TMbed's ProtT5 encoder model (~2.25 GB). Overrides --model_dir for TMbed. If neither is specified, uses HF_HOME env var if set, otherwise downloads to tmbed/models/t5/ inside the installed package. | |
--partial |
{include,exclude,only} | include | Which CDSs/proteins to annotate, by fragment status. include: all. exclude: skip fragments. only: only fragments. A CDS is a fragment if its location has '<' or '>', or it has a /partial qualifier. A protein record is a fragment if it has a UniProt ' (Fragment)' or MGnify 'FL=0' header, a 'Flags: Fragment' definition or NON_TER features (UniProt text entries), or a CDS/Protein feature with '<' or '>' spanning it. |
Every command also takes --config FILE (options from a JSON or YAML file, keyed by option name) and --print_config.