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.