Nextclade CLI clade calls different from Nextclade Web calls

Hi all,

I was curious to know why the clade calls through CLI versions 1.4.3 through 1.6.0 are called differently than when the same file is run through the web server. We generally use the CLI tool but are considering giving up some convenience so that we can have specific/up to date clade calls.

Any information you can provide would be helpful!

Thanks.

Hi @jbarnell ,

Sorry for the troubles. CLI and Web should produce identical results, because they run exactly the same algorithm code to the letter. So if results differ, then it’s a bug.

Note that the dataset is what affects on clade assignment the most.
What virus are you working on? What dataset are you using for the CLI? Have you updated it recently?

It would help if you could provide example sequences (or their GISAID or GenBank IDs) and tell how you use Nextclade CLI exactly (i.e. the series of commands you issue to get Nextclade, get a dataset and make a run).

2 Likes

Further to Ivan’s answer, I suspect you’re not updating the reference dataset that’s used to assign clades.

CLI versions should only under rarest of circumstances affect clade alls.

Most changes in clade calls will come from new datasets.

You are probably not updating your CLI’s datasets, while the web does the update automatically.

You should probably make it a habit to download the latest datasets automatically, whenever you use the CLI. This is very simple:

nextclade dataset get --name 'sars-cov-2' --output-dir 'data/sars-cov-2'

(see more here: Nextclade datasets — Nextclade documentation)

You can then use the dataset when you run nextclade, like so for example:

nextclade run \
   --input-fasta query.fasta \
   --input-dataset data/sars-cov-2 \
   --output-dir output

You can find the changelog of datasets here: nextclade_data/CHANGELOG.md at master · nextstrain/nextclade_data · GitHub

1 Like

I see… I am guessing you’re right about the dataset updates, I was not aware of those. I use a cron on Linux to regularly pull any updates to the executable, and will add the dataset refresh to the cron as well. Will let you know if I run into additional issues!

1 Like