Skip to main content
Estimated time: 10 minutes

Prerequisites

  • GitHub account
  • Claude account on a Pro or Max plan
  • A domain name to point to your instance (technically optional but strongly recommended)

Step 1: Create instance

Create a instance using an Ubuntu image with at least 2 vCPUs and 4GB of RAM. I strongly recommend at least 8GB of RAM in order to run multiple parallel agents with no issues. I personally use 16GB of RAM and have never hit issues with my usage.

Step 2: Point a domain to the instance IP

This could be done later but doing it now saves us waiting time down the line. Create an A record on the domain you want to use for your Konduktor instance pointing to your Lightsail instance IP. If using Cloudflare, keep the Proxy status (cloud) off for now to Konduktor to issue a TLS certificate, and turn it back on post-installation.

Step 3: Enable HTTPS traffic in Lightsail firewall

Lightsail instances don’t enable HTTPS traffic from the internet by default, so you need to go to the Lightsail Console -> Networking -> IPv4 firewall and add a rule to enable HTTPS traffic from “Any IPv4 address” or simply your own address.

Step 4: Install prerequisites

First SSH into your instance:
ssh ubuntu@<your_instance_ip>
And then go on to set up Git, GitHub, and Claude Code. Git and GitHub setup Install gh following the Ubuntu install docs and login (gh auth login) using either username and password (full access) or a Personal Access Token.
We recommend you authenticate into the gh CLI using a fine-grained token that you can create from the GitHub Personal Tokens settings page.No account permissions are necessary. At a minimum, you’ll need the following repository permissions on all repos or the repos you want Konduktor to be able to access:
  • Contents (read and write)
  • Pull requests (read and write)
You might also choose to give other permissions that can be useful:
  • Issues (if you want Konduktor to be able to read and action on issues)
  • Workflows (if you want Konduktor to be able to edit CI)
  • Pages (if you’re using Konduktor with GitHub Pages)
  • Actions (if you want Konduktor to be able to inspect Actions runs)
Once logged into gh you can run gh auth setup-git if you’d like to use the same credentials for Git. It’s also recommended that you run the following to setup proper commit attribution to your GitHub user:
git config --global user.name "<github_username>"
git config --global user.name "<github_email>"
Claude Code setup Install Claude Code (code.claude.com/docs/en/quickstart) and then run claude to go through the authentication flow.

Step 5: Install Konduktor

Run:
curl -fsSL https://konduktor.yakko.dev/install.sh | bash
The script will ask you for server credentials, so you should set up a username and password right now (and store the password). It will also ask if you want to setup nginx and a domain and you should say yes to both. Input your domain from Step 2 and it should validate automatically. Then once the script is done running you can access your domain on a web browser and your Konduktor instance is ready to use. I strongly recommend you follow Step 6 though and configure a GitHub app. Otherwise go to Ship your first feature for a basic guide on how to start using Konduktor.

Step 6: Configure a GitHub app

Given that this is a self-hosted deploy, we can’t provide a GitHub app for you else we’d need to have a server we control in the middle to do auth. However, I strongly recommend you configure a GitHub app. It will take 5 minutes max, and it will unlock features like auto-fixing of CI failures and merge conflicts, task lifecycle automations, and more. The UI will walk you through configuring this.
If you’re using Cloudflare for DNS, you can turn the orange cloud on now :)