Intent Router
| Request | Reference | Load When |
|---|---|---|
| Install tool, first-time setup, backend login | resources/install-and-setup.md |
User needs to install Pulumi or configure backend |
| Language choice, project layout, resource patterns | resources/language-and-project.md |
User asks about supported languages or project structure |
| Stacks, config, secrets | resources/stacks-and-config.md |
User needs stack management, config values, or secrets |
| CLI commands, workflows | resources/command-cookbook.md |
User needs preview/up/destroy patterns or command reference |
Quick Start
# 1. Create a new project (prompts for language, cloud, stack)
pulumi new aws-typescript
# 2. Preview changes (no modifications made)
pulumi preview
3. Deploy changes
pulumi up
4. Destroy infrastructure (DANGEROUS — requires confirmation)pulumi destroy
## Language Selection
Pulumi supports multiple languages — choose based on your team's familiarity:
| Language | Template prefix | Runtime needed |
| --- | --- | --- |
| TypeScript | `aws-typescript` | Node.js |
| Python | `aws-python` | Python 3.8+ |
| Go | `aws-go` | Go 1.21+ |
| C# | `aws-csharp` | .NET 6+ |
| Java | `aws-java` | JDK 11+ |
| YAML | `aws-yaml` | None |
## Core Command Tracks
- **New project:** `pulumi new <template>` — scaffold project with language/cloud
- **Preview:** `pulumi preview` — show planned changes, no deployment
- **Deploy:** `pulumi up` — create or update resources
- **Destroy:** `pulumi destroy` — remove all stack resources
- **Refresh:** `pulumi refresh` — sync state with actual cloud resources
- **Stack ops:** `pulumi stack ls`, `pulumi stack select`, `pulumi stack output`
## Stack Concept
A **stack** is a deployment target (e.g., `dev`, `staging`, `prod`). Each stack has its own config and state:
```bash
pulumi stack init prod
pulumi stack select dev
pulumi config set aws:region us-west-2
pulumi up
Safety Guardrails
- Always run
pulumi previewbeforepulumi up— review resource diffs carefully. pulumi destroyis irreversible — confirm the stack resource list before proceeding.- Use
pulumi config set --secretfor sensitive values (passwords, API keys). - Never commit Pulumi state files or unencrypted secret values.
- Use stack policies (CrossGuard) to enforce organizational guardrails.
Workflow
- Select or create a stack:
pulumi stack select dev - Set required config:
pulumi config set aws:region us-east-1 - Write or update program code.
- Run
pulumi previewand review the diff. - Run
pulumi upto deploy. - Check outputs:
pulumi stack output
Related Skills
- terraform — HCL-based IaC; Pulumi can import from Terraform state
- ansible — configuration management for post-provision setup
References
resources/install-and-setup.mdresources/language-and-project.mdresources/stacks-and-config.mdresources/command-cookbook.md- Official docs: https://www.pulumi.com/docs/
- API / provider registry: https://www.pulumi.com/registry/
- Tutorials: https://www.pulumi.com/learn/
- Community: https://www.pulumi.com/blog/