---
title: Download & Install Pulumi
url: /docs/get-started/download-install/
---
The latest version of Pulumi is **3.237.0**. For previous versions, see [Available versions](/docs/install/versions/). For a list of features, bug fixes, and more see the [CHANGELOG](https://github.com/pulumi/pulumi/blob/master/CHANGELOG.md).

## Choose an operating system

<!-- chooser: os -->

<!-- option: macos -->
<h3 class="no-anchor pt-4">
<svg xmlns="http://www.w3.org/2000/svg" class="ph-icon ph-icon--regular pr-2" fill="currentColor" aria-hidden="true" focusable="false"><use href="/icons/sprite.70fd70d1a833861af10bfc0def62d9dd4208a71e6b1f81581da2b8c9f48cda97.svg#p-package-regular"/></svg>
Homebrew Package Manager</h3>
```bash
$ brew install pulumi/tap/pulumi
```

<h3 class="no-anchor pt-4">
<svg xmlns="http://www.w3.org/2000/svg" class="ph-icon ph-icon--regular pr-2" fill="currentColor" aria-hidden="true" focusable="false"><use href="/icons/sprite.70fd70d1a833861af10bfc0def62d9dd4208a71e6b1f81581da2b8c9f48cda97.svg#p-download-simple-regular"/></svg>
macOS Binary Download</h3>
[amd64](https://get.pulumi.com/releases/sdk/pulumi-v3.237.0-darwin-x64.tar.gz)
[arm64](https://get.pulumi.com/releases/sdk/pulumi-v3.237.0-darwin-arm64.tar.gz)
macOS Ventura (13) or later is required.

**Note:** Pulumi supports many clouds using the same languages, CLI, and deployment workflow. For a streamlined Pulumi walkthrough, including language runtime installation and cloud configuration, see the [Get Started](/docs/get-started) guides.

<!-- /option -->

<!-- option: linux -->

<h3 class="no-anchor pt-4">
<svg xmlns="http://www.w3.org/2000/svg" class="ph-icon ph-icon--regular pr-2" fill="currentColor" aria-hidden="true" focusable="false"><use href="/icons/sprite.70fd70d1a833861af10bfc0def62d9dd4208a71e6b1f81581da2b8c9f48cda97.svg#p-package-regular"/></svg>
Install Script</h3>
```bash
$ curl -fsSL https://get.pulumi.com | sh
```

<h3 class="no-anchor pt-4">
<svg xmlns="http://www.w3.org/2000/svg" class="ph-icon ph-icon--regular pr-2" fill="currentColor" aria-hidden="true" focusable="false"><use href="/icons/sprite.70fd70d1a833861af10bfc0def62d9dd4208a71e6b1f81581da2b8c9f48cda97.svg#p-download-simple-regular"/></svg>
Linux Binary Download</h3>
[amd64](https://get.pulumi.com/releases/sdk/pulumi-v3.237.0-linux-x64.tar.gz)

**Note:** Pulumi supports many clouds using the same languages, CLI, and deployment workflow. For a streamlined Pulumi walkthrough, including language runtime installation and cloud configuration, see the [Get Started](/docs/get-started) guides.

<!-- /option -->

<!-- option: windows -->

<h3 class="no-anchor pt-4">
<svg xmlns="http://www.w3.org/2000/svg" class="ph-icon ph-icon--regular pr-2" fill="currentColor" aria-hidden="true" focusable="false"><use href="/icons/sprite.70fd70d1a833861af10bfc0def62d9dd4208a71e6b1f81581da2b8c9f48cda97.svg#p-package-regular"/></svg>
Installer (MSI)</h3>

[amd64](https://github.com/pulumi/pulumi-winget/releases/download/v3.237.0/pulumi-3.237.0-windows-x64.msi)

<h3 class="no-anchor pt-4">
<svg xmlns="http://www.w3.org/2000/svg" class="ph-icon ph-icon--regular pr-2" fill="currentColor" aria-hidden="true" focusable="false"><use href="/icons/sprite.70fd70d1a833861af10bfc0def62d9dd4208a71e6b1f81581da2b8c9f48cda97.svg#p-download-simple-regular"/></svg>
Windows Binary Download</h3>

[amd64](https://get.pulumi.com/releases/sdk/pulumi-v3.237.0-windows-x64.zip)

Windows 8 and later are supported.

**Note:** Pulumi supports many clouds using the same languages, CLI, and deployment workflow. For a streamlined Pulumi walkthrough, including language runtime installation and cloud configuration, see the [Get Started](/docs/get-started) guides.

<!-- /option -->

<!-- /chooser -->

## More installation methods

In addition, there are many ways to install Pulumi:

<!-- chooser: os -->

<!-- option: macos -->

##### Official Pulumi Homebrew Tap

You can install Pulumi through the [Homebrew package manager](https://brew.sh/) and using our official
[Pulumi Homebrew Tap](https://github.com/pulumi/homebrew-tap/)
```bash
$ brew install pulumi/tap/pulumi
```

This will install the `pulumi` CLI to the usual place (often `/usr/local/bin/pulumi`) and add it to your path.
Subsequent updates can be installed in the usual way:
```bash
$ brew upgrade pulumi
```

##### Community Homebrew

A Pulumi formula is available on the Community Homebrew. If you do not have the Pulumi tap installed, then you can
still install Pulumi from homebrew using the command:
```bash
$ brew install pulumi
```

##### MacPorts

You can install Pulumi through the [MacPorts package manager](https://www.macports.org/):
```bash
$ sudo port install pulumi
```

This will install the `pulumi` CLI to `/opt/local/bin/pulumi` and add it to your path.
Subsequent updates can be installed through the `upgrade outdated` command:
```bash
$ sudo port upgrade outdated
```

##### Installation Script

Alternatively, you can run our installation script.
```bash
$ curl -fsSL https://get.pulumi.com | sh
```

This will install the `pulumi` CLI to `~/.pulumi/bin` and add it to your path. When it can’t automatically add `pulumi` to your path, you will be prompted to add it manually.
See [How to permanently set $PATH on Unix](https://stackoverflow.com/questions/14637979/how-to-permanently-set-path-on-linux-unix) for guidance.
The installer script can be rerun to subsequently install new updates.

##### Manual Installation

If you do not wish to use the previous options, you can install Pulumi manually.

Download [Pulumi 3.237.0 for macOS](https://get.pulumi.com/releases/sdk/pulumi-v3.237.0-darwin-x64.tar.gz). For prior versions and release notes, see the [Available versions](/docs/install/versions/) page.

Extract the tarball and move the binaries in the `pulumi` directory to a directory included in your system’s `$PATH`.

<!-- /option -->

<!-- option: linux -->

##### Installation Script

To install, run our installation script:
```bash
$ curl -fsSL https://get.pulumi.com | sh
```

This will install the `pulumi` CLI to `~/.pulumi/bin` and add it to your path. When it can’t automatically add `pulumi` to your path, you will be prompted to add it manually.
See [How to permanently set $PATH on Unix](https://stackoverflow.com/questions/14637979/how-to-permanently-set-path-on-linux-unix) for guidance.

##### Manual Installation

Alternatively, you can install Pulumi manually. We provide a prebuilt binary for Linux.

Download [Pulumi 3.237.0 for Linux x64](https://get.pulumi.com/releases/sdk/pulumi-v3.237.0-linux-x64.tar.gz). For prior versions and release notes, see the [Available versions](/docs/install/versions/) page.

Extract the tarball and move the binaries in the `pulumi` directory to a directory included in your system’s `$PATH`.

<!-- /option -->

<!-- option: windows -->

##### Chocolatey

You can install Pulumi using elevated permissions through the [Chocolatey package manager](https://chocolatey.org):
```bash
> choco install pulumi
```

This will install the `pulumi` CLI to the usual place (often `$($env:ChocolateyInstall)\lib\pulumi`) and generate the [shims](https://docs.chocolatey.org/en-us/features/shim) (usually `$($env:ChocolateyInstall)\bin`) to add Pulumi your path.
Subsequent updates can be installed in the usual way:
```bash
> choco upgrade pulumi
```

##### Windows Package Manager (Winget)

Install Pulumi using the Windows Package Manager `winget` CLI. This is built-in on Windows 11 and later.
```bash
> winget install pulumi
```

To update Pulumi to a more recent version:
```bash
> winget upgrade pulumi
```

##### Standalone Installer (MSI)

Download the latest [Pulumi Installer for Windows x64](https://github.com/pulumi/pulumi-winget/releases/download/v3.237.0/pulumi-3.237.0-windows-x64.msi) and run it like any other installer. It will automatically add Pulumi to the path and make it available machine-wide.

##### Installation Script

Open a new command prompt window (**WIN+R**: `cmd.exe`):

Run our installation script:

```bash
> @"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; iex ((New-Object System.Net.WebClient).DownloadString('https://get.pulumi.com/install.ps1'))" && SET "PATH=%PATH%;%USERPROFILE%\.pulumi\bin"
```

This will install the `pulumi.exe` CLI to `%USERPROFILE%\.pulumi\bin` and add it to your path.

##### Manual Installation

Alternatively, you can install Pulumi manually using binaries built for Windows x64.

Download [Pulumi 3.237.0 binaries for Windows x64](https://get.pulumi.com/releases/sdk/pulumi-v3.237.0-windows-x64.zip). For prior versions and release notes, see the [Available versions](/docs/install/versions/) page.

Unzip the file and extract the contents to a folder such as `C:\pulumi`.

Add `C:\pulumi\bin` to your path via **System Properties** -> **Advanced** -> **Environment Variables** -> **User Variables** -> **Path** -> **Edit**.

<!-- /option -->

<!-- /chooser -->

## Verify installation

After installing Pulumi, verify everything is in working order by running the `pulumi` CLI:

<!-- chooser: os -->

<!-- option: macos -->
```bash
$ pulumi version
```

<!-- /option -->

<!-- option: linux -->
```bash
$ pulumi version
```

<!-- /option -->

<!-- option: windows -->
```bash
> pulumi version
```

<!-- /option -->

<!-- /chooser -->

### Common errors and warnings

These are common installation-related errors or warnings you may encounter.

#### Pulumi not found error

If you get an error that `pulumi` could not be found, it means your path has not been configured correctly. Verify that your system's `$PATH` contains the directory containing the `pulumi` CLI installed earlier.

#### New version warning

If a new version of Pulumi is available, the CLI produces the following example warning when running any of the available commands:

<!-- chooser: os -->

<!-- option: macos -->
```
warning: A new version of Pulumi is available. To upgrade from version '2.17.26' to '3.237.0', run
   $ curl -sSL https://get.pulumi.com | sh
or visit https://pulumi.com/docs/reference/install/ for manual instructions and release notes.

```

<!-- /option -->

<!-- option: linux -->
```
warning: A new version of Pulumi is available. To upgrade from version '2.17.26' to '3.237.0', run
   $ curl -sSL https://get.pulumi.com | sh
or visit https://pulumi.com/docs/reference/install/ for manual instructions and release notes.

```

<!-- /option -->

<!-- option: windows -->
```
warning: A new version of Pulumi is available. To upgrade from version '2.17.26' to '3.237.0', run
   > "%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://get.pulumi.com/install.ps1'))"
or visit https://pulumi.com/docs/reference/install/ for manual instructions and release notes.

```

<!-- /option -->

<!-- /chooser -->

> **Note:** If you're in an environment with no internet access, you may skip the Pulumi version update check by setting the environment variable `PULUMI_SKIP_UPDATE_CHECK` to `1` or `true`.

## Enhance your AI coding assistant with agent skills

Skills are structured knowledge packages that follow the open [Agent Skills](https://agentskills.io) specification. They work across multiple AI coding platforms including Claude Code, GitHub Copilot, Cursor, VS Code, Codex, and Gemini CLI. When you install Pulumi skills, your AI assistant gains access to detailed workflows, code patterns, and decision trees for common infrastructure tasks.

### Claude Code Plugin Marketplace

For Claude Code users, the plugin system provides the simplest installation experience:

```bash
claude plugin marketplace add pulumi/agent-skills
claude plugin install pulumi-migration     # Install migration skills
claude plugin install pulumi-authoring     # Install authoring skills
```

You can install both plugin groups or choose only the ones you need.

### Universal installation

For Cursor, GitHub Copilot, VS Code, Codex, Gemini and other platforms, use the universal [Agent Skills](https://agentskills.io) CLI:

```bash
npx skills add pulumi/agent-skills --skill '*'
```

## Upgrading Pulumi

If you are upgrading from Pulumi 2.0 to 3.0, please see our [migration guide](/docs/install/migrating-3.0).

## Installing betas and previous versions

Most installation methods choose the latest version by default. To install a specific version, use the following commands. You can find the list of versions on the [Available versions](/docs/install/versions/) page.

<!-- chooser: os -->

<!-- option: macos -->

### macOS Installation Script

```bash
$ curl -fsSL https://get.pulumi.com | sh -s -- --version <version>
```

<!-- /option -->

<!-- option: linux -->

### Linux Installation Script

To install, run our installation script:
```bash
$ curl -fsSL https://get.pulumi.com | sh -s -- --version <version>
```

<!-- /option -->

<!-- option: windows -->

### Chocolatey

You can specify a specific version with [Chocolatey package manager](https://chocolatey.org):
```bash
> choco install pulumi --version
```

### Windows Installation Script

Open a new command prompt window (**WIN+R**: `cmd.exe`):

Run our installation script (replace <code><version></code> with the version number):

```bash
> @"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $version = '<version>'; iex ((New-Object System.Net.WebClient).DownloadString('https://get.pulumi.com/install.ps1')).Replace('${Version}', $version)" && SET "PATH=%PATH%;%USERPROFILE%\.pulumi\bin"
```

<!-- /option -->

<!-- /chooser -->

## Installing dev releases

In addition to installing a specific version, the latest dev version can also be installed automatically.  This version contains the latest changes that have been merged to the main development branch.

<!-- chooser: os -->

<!-- option: macos -->

### macOS Installation Script

```bash
$ curl -fsSL https://get.pulumi.com | sh -s -- --version dev
```

<!-- /option -->

<!-- option: linux -->

### Linux Installation Script

To install, run our installation script:
```bash
$ curl -fsSL https://get.pulumi.com | sh -s -- --version dev
```

<!-- /option -->

<!-- option: windows -->

### Windows Installation Script

Open a new command prompt window (**WIN+R**: `cmd.exe`):

Run our installation script:

```bash
> @"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; & ([ScriptBlock]::Create((New-Object System.Net.WebClient).DownloadString('https://get.pulumi.com/install.ps1'))) -Version dev" && SET "PATH=%PATH%;%USERPROFILE%\.pulumi\bin"
```

<!-- /option -->

<!-- /chooser -->

## Minimum system requirements

<!--
## Rationale for Minimum System Requirements

Please see https://github.com/pulumi/pulumi-benchmarking where we have a benchmarking codebase to represent typical pulumi actions.

The results from this benchmark were 10% CPU utilization on a Apple M1 Pro for the apply and 20% CPU utilization for the destroy.
The memory usage for both was 1.5GB.

So the following recommendations were made to add some headroom for the typical pulumi actions, espciailly for larger projects.
-->

The following are general recommendations for minimum system requirements when using Pulumi. Actual performance may vary based on the SDK runtime, providers used, operating system and the size and complexity of your infrastructure deployments. However, the following requirements should be considered a minimum to account for typical usage.

| Component      | Recommendation                                                                                                              |
|----------------|-----------------------------------------------------------------------------------------------------------------------------|
| **CPU**        | 2 GHz or faster processor (or equivalent vCPUs for cloud environments)                                                      |
| **RAM**        | 4 GB or more                                                                                                                |
| **Disk Space** | 1 GB or more free disk space (additional space may be required when using multiple runtimes, providers, or large codebases) |

> **Note:** System requirements can vary significantly depending on the providers used and how packages/plugins are managed. Using multiple providers or large plugins may require additional disk space. Performance may also be impacted by the runtime for the SDK you are using (e.g., Node.js, Python, Go), the operating system, and how packages are managed in your development environment. Additionally, CPU and RAM requirements can be influenced by the complexity of your infrastructure, the runtimes, and the packages/plugins used, as well as the ability to take advantage of parallel processing during `pulumi plan` and `pulumi apply` operations.

## Uninstalling Pulumi

To uninstall Pulumi, use your installation method's command of choice. If you installed Pulumi manually, delete the `pulumi` directory that you created. Afterwards, remove the `.pulumi` folder from your home directory which contains plugins and other cached metadata.
