Run what you mean
Pick tasks precisely, and stop the ones that hang.
Say which tasks to run, by name, tag or folder, and vx runs exactly those and what they need. A typo is caught before anything starts, and a task that hangs is stopped.
11 features
Run just the taskSkip the dependency chain when you know it is already built.Most runs should build what a task depends on first. Sometimes you know better: the upstream packages are built and you only want the test you are fixing.
TimeoutsA hung task is killed and reported as a timeout, not left to stall the run.A test that waits on a socket forever holds the whole pipeline hostage. Give a task a limit and vx kills it when the limit passes, then marks it failed with the reason.Each one has a page that shows it working.
Pass arguments throughArguments after -- reach the task, and the cache keeps each set apart.
Group tasksName a set of tasks once and run them with one word.
Source-only packages still countA package with no build step still moves its dependants’ cache keys when its files change.And 6 smaller things that add up.
Say what a task needsOne short syntax for upstream, cross-project and pattern edges.A typo never runs half the graphAsk for a task no project has and vx stops before anything starts.Filter by tagTag projects once, then run a task across every project with that tag.Filter by folderPick projects by where they live, or the root project alone.Remote pools at their own widthSend work to a remote pool and vx fills the pool, not your laptop’s core count.Runs take turnsTwo runs in one checkout wait for each other instead of fighting over files.