pulumi-terraform-to-pulumi

Migrate Terraform projects to language-specific Pulumi projects with translated state.

19|3|Updated Mar 11, 2026
One-click install
npx skills add https://github.com/dirien/yet-another-agent-harness --skill pulumi-terraform-to-pulumi-dirien
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: pulumi-terraform-to-pulumi
Source: https://github.com/dirien/yet-another-agent-harness/tree/main/.claude/skills/pulumi-terraform-to-pulumi
Command: npx skills add https://github.com/dirien/yet-another-agent-harness --skill pulumi-terraform-to-pulumi-dirien

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill guides users through migrating Terraform code and state into a language-specific Pulumi project, removing manual translation pain and reducing drift between Terraform and Pulumi representations.

Core Features & Use Cases

  • Automated state translation: Use the terraform-migrate plugin to produce a Pulumi state draft that maps Terraform resources to Pulumi types.
  • Provider discovery and installation: Read the required-providers manifest and install language-specific provider packages at the suggested versions.
  • Importable stack generation and code alignment: Import the translated state into a Pulumi stack and iterate on source code until previews show no unexpected diffs.
  • Use Case: Convert an AWS Terraform module and its state to a TypeScript Pulumi project, install matching provider libraries, import the translated state, and open a PR with the migrated sources.

Quick Start

Migrate the Terraform project at ${terraform_dir} to a TypeScript Pulumi project in ${pulumi_dir}, generate the Pulumi state draft with terraform-migrate, install the required providers, and import the generated state into the target Pulumi stack.

Frequently Asked Questions about pulumi-terraform-to-pulumi

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I migrate Terraform state to Pulumi?▼

Migrate Terraform state to Pulumi by using the terraform-migrate plugin to generate a Pulumi state draft that maps Terraform resources to Pulumi types, then importing the translated state into a Pulumi stack.

Can I convert Terraform HCL configurations to a language-specific Pulumi project?▼

Yes, you can convert Terraform HCL configurations into a language-specific Pulumi project by generating a required-providers manifest, installing matching language-specific provider packages, and aligning the source code until previews show no unexpected diffs.

How does provider translation work when moving from Terraform to Pulumi?▼

Provider translation works by reading the Terraform required-providers manifest, recommending language-specific provider package versions, and installing matching Pulumi provider libraries into the target project.

What is the best way to import Terraform modules into a Pulumi stack?▼

The best way to import Terraform modules into a Pulumi stack is to translate the state using the terraform-migrate plugin and output an importable Pulumi stack file, ensuring resource representations match before deployment.

Do I need to manually fix Pulumi code after migrating from Terraform?▼

Yes, you need to iterate on the generated Pulumi source code after importing the translated state, running previews until there are no unexpected diffs between the Terraform and Pulumi representations.