> For the complete documentation index, see [llms.txt](https://developer.harness.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.harness.io/web-application-and-api-protection-waap/application-security-testing/ast-basics-and-workflow/runners-and-cli.md).

# Runners and CLI

Runners are nothing but Traceable CLI installed on your server as a service. They form the execution backbone of application security testing by enabling scans to run within your infrastructure and communicate results back to the Traceable platform.

## Traceable CLI vs Runner

The following table compares Traceable CLI and runner on various parameters, along with their use case and recommendations:

| Parameters     | Traceable CLI                                                                                                                                                 | Traceable Runner                                                                                                                                                                                                                                                                                             |
| -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Integration    | It is designed to integrate with CI systems, allowing jobs to be triggered and run on a CI runner. It is a quick way to run scans from local or remote hosts. | It is designed to integrate with job schedulers and CI/CD systems, allowing the CI pipeline to trigger the scan and delegate the actual running to the Traceable runner.                                                                                                                                     |
| Execution      | It executes synchronously, running tests immediately as they are invoked.                                                                                     | It executes asynchronously, consuming the job queue.                                                                                                                                                                                                                                                         |
| Configuration  | It is usually a part of the script setup.                                                                                                                     | It requires a runner pool, which is typically set up using Helm charts or similar deployment tools.                                                                                                                                                                                                          |
| Use Case       | It is ideal for pre-commit hooks, pre-deploy checks, and other stages in the development pipeline where immediate feedback is required.                       | It is ideal for scheduling regular security scans, batch jobs, or handling multiple requests asynchronously.                                                                                                                                                                                                 |
| Recommendation | It is recommended for use in small to medium-sized projects that require immediate results on simple security tests.                                          | <p>It is recommended for use in either of the following scenarios:</p><ul><li>When working with large projects requiring complex security testing, most attack coverage and tests run for longer durations.</li><li>When you want to run periodic exhaustive tests as daily/weekly scheduled jobs.</li></ul> |

***

## Runner installation methods

You can download and install a runner using either of the following methods:

* Through the Traceable platform
* As a service using the `install.sh` script
* Using Helm chart
* On AWS ECS using CloudFormation or Terraform

However, before installing a runner, you must ensure that you have the necessary software and hardware requirements. For more information, see [Software and Hardware Requirements](/web-application-and-api-protection-waap/application-security-testing/ast-basics-and-workflow/runners-and-cli/software-and-hardware-requirements.md). Once you have the necessary requirements, you can install the runner. For the steps to do this, see [Installing a Runner](/web-application-and-api-protection-waap/application-security-testing/ast-basics-and-workflow/runners-and-cli/installing-a-runner.md).

Traceable also allows you to set up custom certificates for runners according to your requirements. For more information, see [Set up custom certificates for runners](/web-application-and-api-protection-waap/application-security-testing/ast-basics-and-workflow/runners-and-cli/traceable-cli-config.md#set-up-custom-certificates-for-runners).
