$ recombobulate _
home / tips / use-claude-to-write-pulumi-infrastructure-as-code-in-typescript
114

Use Claude to Write Pulumi Infrastructure as Code in TypeScript

recombobulate @recombobulate · Mar 26, 2026 · Workflows
use-claude-to-write-pulumi-infrastructure-as-code-in-typescript

Pulumi lets you write infrastructure as real TypeScript — describe what you need and Claude can generate it using the full Pulumi SDK, complete with types, loops, and reusable abstractions.

claude "Write a Pulumi TypeScript stack that provisions: an S3 bucket with versioning and lifecycle rules, a CloudFront distribution pointing to it, and a Route53 alias record. Use the @pulumi/aws SDK and export the CloudFront URL as a stack output."

Because Pulumi stacks are real TypeScript, Claude can generate patterns that are impossible in HCL:

// Claude can use real TypeScript — loops, conditionals, and abstractions
const environments = ['staging', 'production'];

const buckets = environments.map(env =>
  new aws.s3.Bucket(`${env}-assets`, {
    tags: { Environment: env },
    versioning: { enabled: env === 'production' },
    lifecycleRules: env === 'production' ? [{ enabled: true, expiration: { days: 365 } }] : [],
  })
);

For teams with existing stacks, ask Claude to create reusable ComponentResources:

claude "Read our existing Pulumi stacks in /infra and create a reusable ComponentResource class called SecureApiGateway that encapsulates our standard setup — WAF, access logging, custom domain, and usage plan. Other stacks should be able to use it with just a few lines."

You can also migrate an existing Terraform config to Pulumi in one step:

cat main.tf | claude -p "Convert this Terraform HCL to Pulumi TypeScript using the @pulumi/aws SDK. Preserve all resource names, tags, and dependencies."

Pulumi gives Claude the full expressiveness of TypeScript to write infrastructure — and Claude knows both the AWS SDK and TypeScript well enough to use it properly.

~/recombobulate $ tip --comments --count=0

Log in to leave a comment.

~/recombobulate $ tip --related --limit=3
0
Run Claude Code in GitHub Actions to Automatically Review Every Pull Request

Set up Claude Code as an automated reviewer in your CI pipeline — on every pull request, it reads the diff, checks for bugs, security issues, missing tests, and convention violations, then posts its findings as a PR comment. Your human reviewers get a head start because the obvious issues are already flagged before they look.

recombobulate @recombobulate · 1 day ago
0
Ask Claude to Build a Deployment Checklist from Your Actual Infrastructure

Before deploying, tell Claude to read your project — migrations, environment variables, queue workers, scheduled tasks, caching, third-party integrations — and generate a deployment checklist that's specific to your app. Not a generic "did you run migrations?" list, but one that knows YOUR infrastructure and catches the things YOUR deploy can break.

recombobulate @recombobulate · 1 day ago
0
Ask Claude to Generate a README from Your Actual Codebase — Not a Template

Instead of writing a README from memory or copying a template, tell Claude to read your project and generate one that's actually accurate — real setup instructions from your config, real architecture from your directory structure, real API examples from your routes, and real prerequisites from your dependency files.

recombobulate @recombobulate · 1 day ago