Skip to main content
In Trickest, machines are virtual environments that execute your workflows. They are responsible for running your Nodes (tools, scripts & modules), and you can configure them to suit your needs. This guide will help you understand how machines work in Trickest and how you can manage them effectively.

Machine Scaling

Self-hosted machines are reserved before the workflow starts and remain dedicated to that workflow until it completes. They are released only after the workflow finishes, becoming available for other executions. Scaling during execution is not supported for self-hosted machines. Managed machines use dynamic allocation. While a workflow is running, Trickest automatically adjusts the number of active machines based on the current workload. If there are pending jobs waiting in the queue, more machines will be scaled up to handle them. When machines finish their work and become idle, they are scaled down and made available for other workflows. To prevent unnecessary scaling - especially in workflows with many short-running jobs - there is a 60-second threshold before scaling actions take place. This means the system waits for up to a minute before adding or removing machines, avoiding quick and wasteful allocation cycles. For example, if a workflow is running on two machines and a Splitter node produces 100 short jobs, the system will wait briefly before activating new machines. During that time, many jobs may complete on existing machines, so scaling immediately could activate additional machines that spend time starting up but have no jobs left to run once ready, leading to unnecessary allocation and immediate scale-down without improving performance.

Machine Calculation

When you execute a workflow, Trickest calculates the number of machines required based on the number of nodes and branches in your workflow. Each node is assigned to a machine, and the maximum number of machines depends on the workflow complexity.

One Machine Workflow

Single Node Workflow

In a simple workflow with a single node, Trickest assigns one machine to execute the node. The machine will run the node and produce the output.
One Machine Workflow

Single Branch Workflow

In a workflow with multiple nodes connected in a single branch, Trickest assigns one machine to execute each node. The machines run the nodes sequentially, passing the output from one node to the next. Multiple machines can not be used because of the dependency between the nodes. The output of the first node is required as input for the second node.
Single Branch Workflow
For each of the nodes in the screenshot (subfinder, httprobe and ffuf-multi), the same machine will be used to execute the nodes.

Multiple Branches Workflow

If we copy the entire branch and put it underneath the existing branch, Trickest will assign a new machine to execute the nodes in the second branch, which will end up in *maximum number of machines for this particular worklfow to 2.
Multiple Branches Workflow

Multiple Horizontal Nodes

If we add multiple nodes horizontally, Trickest will calculate a new machine to execute each node. This means that each node will be executed in parallel. Let’s add a couple of more nodes horizontally.
Multiple mulHorizontal Nodes
In this example, we’ve added subfinder, assetfinder and amass nodes. Each of these nodes will be executed in parallel on separate machines. This is why platform will calculate 3 machines for this particular workflow.

Splitter and Maximum Number of Machines

In this example, we are going to use sed-add-at-end script to add a FUZZ at the end of each line (in this case web servers) and then we are going to use ffuf tool to fuzz the web servers. But, instead of directly connecting sed-add-at-end with ffuf we are going to add splitter node in between.
Splitter and Maximum Number of Machines
In this example, we’ve added sed-add-at-end, splitter and ffuf nodes. The splitter node will split the input file into multiple chunks and each chunk will be processed by a separate machine. In this case, the platform will use maximum number of machines in your fleet that can be used to execute the nodes.

Machine Management

You can monitor your machines in the Machines page. Here you can see all of your machines and their status.