Pass arguments through
Arguments after -- reach the task, and the cache keeps each set apart.

Sometimes a task needs one more flag for this run only, like a test filter. Everything after -- is appended to the task’s command.
The arguments are part of the cache key, so a run with --watch=false never replays the output of a run without it.
More in Run what you mean

Run just the task
Skip the dependency chain when you know it is already built.

Timeouts
A hung task is killed and reported as a timeout, not left to stall the run.

Group tasks
Name a set of tasks once and run them with one word.

Source-only packages still count
A package with no build step still moves its dependants’ cache keys when its files change.

Say what a task needs
One short syntax for upstream, cross-project and pattern edges.

A typo never runs half the graph
Ask for a task no project has and vx stops before anything starts.

Filter by tag
Tag projects once, then run a task across every project with that tag.

Filter by folder
Pick projects by where they live, or the root project alone.

Remote pools at their own width
Send work to a remote pool and vx fills the pool, not your laptop’s core count.

Runs take turns
Two runs in one checkout wait for each other instead of fighting over files.