Installing Buildkite Agent on Windows

The Buildkite Agent is supported on Windows 8, Windows Server 2012, and newer.

Automated install with Powershell

You'll need to run the automated installer within Powershell with Administrative Privileges.

To start a Powershell session as an Administrator:

  1. Open the Start menu and type "powershell"
  2. Highlight "Windows Powershell" in the results
  3. Press CTRL+SHIFT+ENTER (you'll be prompted to allow this app to make changes)

Once you're in an escalated Powershell session, you can run this script to install the latest version of the Agent:

$env:buildkiteAgentToken = "my_token"
Set-ExecutionPolicy Bypass -Scope Process -Force
iex ((New-Object System.Net.WebClient).DownloadString(''))

Manual Installation

  1. Download the latest Windows release from Buildkite Agent releases on GitHub
  2. Extract the files to a directory of your choice (we recommend C:\buildkite-agent)
  3. Edit buildkite-agent.cfg and add your agent token
  4. Run buildkite-agent.exe start from a command prompt

SSH Key Configuration

SSH keys should be copied to (or generated into) in the user’s .ssh directory. For example, typing the following into Git Bash will generate a new private key which you can add to your source code host:

$ ssh-keygen -t rsa -b 4096 -C ""

See the Agent SSH Keys documentation for more details.

File Locations

  • Configuration: C:\buildkite-agent\buildkite-agent.cfg
  • Hooks: C:\buildkite-agent\hooks
  • Builds: C:\buildkite-agent\builds
  • SSH keys: %USERPROFILE%\.ssh


The configuration file is located at C:\buildkite-agent\buildkite-agent.cfg. See the configuration documentation for an explanation of each configuration setting.


Rerun the install script.

Git for Windows

While the agent will work without Git installed, you will require Git for Windows to interact with Git or SSH. Git for Windows also includes Bash and a variety of standard linux tools which are frequently required for plugins.

Running as a service

The simplest way to run buildkite-agent as a service is to use a third-party tool like nssm. Once installed, you can either run the GUI and configure manually, or create via the command-line:

nssm.exe install buildkite-agent "C:\buildkite-agent\bin\buildkite-agent.exe" "start"
nssm.exe set buildkite-agent AppStdout "C:\buildkite-agent\buildkite-agent.log"
nssm.exe set buildkite-agent AppStderr "C:\buildkite-agent\buildkite-agent.log"

nssm.exe status buildkite-agent
# Expected output: SERVICE_STOPPED
nssm.exe start buildkite-agent
nssm.exe status buildkite-agent