HCP Terraform
What it is
HCP Terraform (formerly Terraform Cloud; Terraform Enterprise is the self-hosted equivalent) is HashiCorp's managed platform that runs Terraform remotely and stores state, adding shared run history, policy enforcement, team permissions and a private module/provider registry. Using Terraform CLI locally does not require it, and a free tier exists.
Core objects and features
- Organization โ Projects โ Workspaces. A workspace binds a configuration (VCS repo or CLI upload), variables, state and run history.
- Workflows - VCS-driven (a push queues a run), CLI-driven (
terraform login, then acloudblock naming organization and workspace), and API-driven. - Runs - plan, then a confirmation step, then apply. Speculative plans run against pull requests without applying.
- Variables - Terraform variables and environment variables, with a sensitive flag; variable sets share the same variables across many workspaces.
- Remote state sharing - read another workspace's outputs with a
terraform_remote_statedata source using theremotebackend, or thetfe_outputsdata source. - Policy as Code - Sentinel or OPA policies evaluated at plan time, set to advisory or mandatory, with overrides where permitted.
- Agents - self-hosted agent pools for runs that need private network access.
- Also: cost estimation, run triggers, notifications, SSO and team-based permissions.
Traps
- The
cloudblock effectively replaces abackendblock; you cannot use both in the same configuration. - With a CLI-driven workspace,
terraform applyfrom your terminal still executes remotely by default and streams logs. - Sentinel policies evaluate the plan, not applied state.
- Storing a variable in the workspace means the same configuration promotes across environments without edits.
Rule of thumb
If the question asks where state and runs live for a team rather than a laptop, the answer is the platform workspace, not local terraform.tfstate.