- Built-in local and remote caching to speed up your tasks and save you time and money.
- A single line to enable distributed computation, across multiple machines. Fully managed agents, dynamically allocated based on PR size.
- TuskyComing soon
- A powerful Artificial Intelligence equipped with context of your workspace, commit history, and historical build timing data. Tusky can uniquely understand and optimize your codebase and pipelines.
The Pillars of Fast CI
Remote Caching, dynamic machine provisioning and distribution, flaky task detection and re-running.
Managed Compute, Smarter
Maintaining CI scripts should not be an ongoing task of tweaking and adjusting to accommodate for changes of the codebase. Forget long complex yaml configs. Nx Agents leverages the knowledge from the Nx project graph to understand your codebase and optimize accordingly.
- Describe the what, not the how.
- Every code change is different, so why should you run the same CI pipeline for every pull request? Tell Nx what to run, and let Nx Agents figure out the details.
- Efficient task distribution.
- The Nx project and task graph provide the foundation to optimize task distribution across multiple machines by providing information about projects, their tasks and dependencies among them.
Optimize cost, at scale
Nx supports common types and sizes of compute options, and lets you provide parameters to keep compute costs under control while making CI fast. Now you don't have to choose between speed and cost savings.
Enterprise customers have the option to use Nx Agents in conjunction with their existing cloud compute infrastructure.See Nx Cloud's pricing
npx nx-cloud start-ci-run --distribute-on="15 linux-medium-plus-js"
End-to-end tests are split and distributed automatically with Nx's TestAtomizer. And with automatic re-running of flaky tests, there are no more manual re-runs, and no more waiting on monolithic e2e test suites to finish.
- Types of Tasks
- E2E tests and builds may run in similar environments, but the work they're doing is pretty different. Nx's awareness of different types of tasks lets Nx Agents determine the best distribution strategy for the job.
- Task dependency graph
- Nx knows how your projects relate, and the order in which tasks should run. Since each build is different, a manual parallelization solution can't come near the level of precision of Nx Agents' AutoPlanner.
- Historical task timings
- The more the same Nx task runs, the more Nx Agents learn. The AutoPlanner uses this historical knowledge to distribute tasks across agents as evenly as possible.
- Changeset size
- If you're not rebuilding your entire workspace every time, you don't need the same compute capacity for every CI run.
- Cost vs speed preferences
- Sometimes speed is all that matters, sometimes it's better to save a little money. Set some parameters, and let AutoPlanner handle the details.
Nx automatically identifies and re-runs unstable tasks, comparing them to previous runs and alerting you about any inconsistencies.
- Precise Flakiness Detection
- using the Nx Replay hash key. Different results for the same key are a precise indicator for an unstable task.
- Automated Re-Running.
- Unreliable tasks can automatically be scheduled for re-running. This happens on a different Nx agent to avoid any leftovers from previous runs that could affect the result.
Nx Workflows (coming soon) allows you to simplify your CI setup even further, by running your full CI process end-to-end on Nx Cloud, no pipelines necessary.
Or keep your current CI and move your Nx tasks onto Nx Agents.