Skip to content
AgentKennel

Install

Install AgentKennel on your own server

Three ways in. All of them end the same: a dashboard on HTTPS where you press + New, sign in to Claude once, and give an agent a task.

Before you start

AgentKennel starts Claude Code with --dangerously-skip-permissions, so agents don't stop to ask before each command. On a server install they run as your user, with your sudo. Use a dedicated VPS or the Docker sandbox, not your laptop.

One command on a fresh VPS

Log in to the server as a normal user with sudo and run:

shell
curl -fsSL https://raw.githubusercontent.com/yanhs/agentkennel/master/install.sh | bash

On a root-only VPS, make that user first: adduser deck && usermod -aG sudo deck, then log in as deck. Want to read the script before running it?

shell
curl -fsSL https://raw.githubusercontent.com/yanhs/agentkennel/master/install.sh -o install.sh && less install.sh
bash install.sh
  1. At the end the installer prints the address and a one-time setup link, https://<host>/login?setup=<token>. Only that link can set the password, so a stranger who finds the fresh server first can't. Lost it? Run the install command again.
  2. Open it and set your password.
  3. Press + New (it opens in ~/projects), sign in to Claude once, and give the agent a task.

HTTPS without a domain. With ports 80 and 443 free you get a trusted Let's Encrypt certificate for https://<your-ip-with-dashes>.sslip.io. With only 443 taken, the same on port 8443. Otherwise a self-signed certificate on https://<your-ip>:8765 that the browser warns about once. --https your-domain.com uses your own domain.

Update or repair: run the same command again; running agents keep running. Remove: ~/agentkennel/install.sh --uninstall keeps your terminals, board and password. Forgot the password? ~/agentkennel/install.sh --reset-password prints a new one-time link; the old password and every signed-in browser stop working.

Docker sandbox

Agents stay inside a container and can't touch the host. You need Docker and one free TCP port (8765) open in your firewall. Docker-published ports bypass ufw.

shell
git clone https://github.com/yanhs/agentkennel.git && cd agentkennel
docker compose up -d --wait && docker compose logs agentkennel | grep setup

The second line waits until the dashboard is up, then prints the whole one-time link, https://<your-vps-ip>:8765/login?setup=<token>. Open it and set the password; the certificate is one the container made for itself, so the browser warns once. ./https.sh gets a trusted one for a free sslip.io name (it needs ports 80 and 443). Forgot the password? In the AgentKennel folder, docker compose exec agentkennel python3 status_server.py --reset-password prints a new one-time link (put your address in front).

The price of the sandbox: agents can't manage the host, a site they start inside isn't reachable from outside, apt installs vanish when the container is re-created, and there is no systemd.

Set it up while creating the server

Most cloud providers let you paste a cloud-init script when you create a server. This one creates a user named agents with sudo and runs the one-command install as that user, with a password you choose, so the dashboard is waiting for you when the server is ready. No SSH session needed. The page puts a random password into the script for you; save it, and change it after the first sign-in, because the provider keeps the script in the server's metadata.

With JavaScript on, this page puts a random password into the script for you.

cloud-init
#cloud-config
users:
  - default
  - name: agents
    shell: /bin/bash
    sudo: ALL=(ALL) NOPASSWD:ALL
runcmd:
  - [bash, -c, "sudo -iu agents bash -c 'curl -fsSL https://raw.githubusercontent.com/yanhs/agentkennel/master/install.sh | AGENTKENNEL_PASSWORD=CHANGE-ME bash -s -- --yes --no-guests' > /var/log/agentkennel-install.log 2>&1"]

After 5 to 10 minutes, open https://<server-ip-with-dashes>.sslip.io and sign in with that password. If nothing opens after 15 minutes, the install log is /var/log/agentkennel-install.log, readable from the provider's web console. Step-by-step, in each provider's own words:

All the details

Every installer option, what it installs and how it runs is in the AgentKennel README on GitHub.