# Manage Transformations Using Rudder CLI


{{< announcement >}}
This feature is in **Public Beta**, where we work with early users and customers to test new features and get feedback before making them generally available.

[Contact the Product team](mailto:product@rudderstack.com) if you have any questions.
{{< /announcement >}}

You can leverage [Rudder CLI]({{< ref "dev-tools/rudder-cli/" >}}) to manage [Transformations]({{< ref "transformations/overview.md" >}}) and [Transformation Libraries]({{< ref "transformations/libraries.md" >}}) as code using a YAML-driven workflow. You can keep transformation code and test definitions in your repository, validate changes locally, and apply updates to your workspace in a controlled way.

## Key features

With Rudder CLI's transformations management feature, you get the following capabilities:

### Declarative YAML configuration

- Define both `transformation` and `transformation-library` resources in YAML files
- Write transformation code inline or reference external code files
- Include local test suites alongside your transformation definitions
- Validate configurations locally before deployment

### Local testing and safer deployment workflow

- Test individual, all, or only modified transformations
- Compare actual output against expected results
- Preview changes with a dry run before applying them to your workspace

### Git integration and CI/CD support

- Keep transformation specs, code, and test fixtures version-controlled in Git
- Reuse the same commands locally and in CI pipelines
- Use a review-first **Validate** > **Test** > **Apply** workflow

## Who can use this feature?

The CLI-based transformations workflow is useful to:

- Manage transformations and libraries programmatically with consistent standards
- Test transformation behavior before publishing updates
- Keep transformation code and tests in the same repository and review process
- Automate validation and deployment in CI/CD

## Workflow overview

1. [Install Rudder CLI]({{< ref "dev-tools/rudder-cli/installation.md" >}}) and authenticate with your workspace.
2. Add transformation and library YAML specs, optional external code, and local test fixtures in a project directory.
3. Run **validate**, **transformations test**, and **apply** (optionally with `--dry-run` first), or wire the same commands into CI/CD.

## Get started

See the following guides for detailed documentation on managing transformations using Rudder CLI:

- [Manage Transformations Using Rudder CLI]({{< ref "dev-tools/rudder-cli/manage-transformations.md" >}})
- [End-to-End Walkthrough: Transformations Management with Rudder CLI]({{< ref "dev-tools/rudder-cli/transformations-walkthrough.md" >}})
- [Transformations YAML Reference]({{< ref "dev-tools/rudder-cli/yaml-transformations.md" >}})
- [GitHub Actions for Transformations]({{< ref "dev-tools/rudder-cli/github-actions/transformations.md" >}})

