Skip to main content

Writing and Modifying OpenTofu Code

The OpenTofu language is OpenTofu's primary user interface, and all of OpenTofu's workflows rely on configurations written in the OpenTofu language.

OpenTofu CLI includes several commands to make OpenTofu code more convenient to work with. Integrating these commands into your editing workflow can potentially save you time and effort.

  • The tofu console command starts an interactive shell for evaluating OpenTofu expressions, which can be a faster way to verify that a particular resource argument results in the value you expect.

  • The tofu fmt command rewrites OpenTofu configuration files to a canonical format and style, so you don't have to waste time making minor adjustments for readability and consistency. It works well as a pre-commit hook in your version control system.

  • The tofu validate command validates the syntax and arguments of the OpenTofu configuration files in a directory, including argument and attribute names and types for resources and modules. The plan and apply commands automatically validate a configuration before performing any other work, so validate isn't a crucial part of the core workflow, but it can be very useful as a pre-commit hook or as part of a continuous integration pipeline.