# Can you self-host an open-source agent system? Where Kortix and CrewAI run

> Both CrewAI and Kortix let a team run agents on infrastructure it controls, and they leave the team with different jobs. This page maps where the code runs, where credentials live, and what stays managed. Kortix is open source, and self-hosting it is free.

URL: https://crewai-alternative.com/self-hosting

_Install_

## Install Kortix on your own server, three commands in.

The `kortix self-host` CLI installs and runs the full platform as one Docker Compose stack; the sessions run on a cloud sandbox provider, not on that server.

### Install

`terminal`

```sh
$ curl -fsSL https://kortix.com/install | bash
$ kortix self-host init --domain kortix.example.com --admin-email you@example.com
$ kortix self-host start
$ kortix self-host doctor
```

Source: kortix.com/docs/host

### Evaluate locally

`terminal`

```sh
$ kortix self-host init --tunnel cloudflare
$ kortix self-host start
# web app opens at http://localhost:13737
```

Source: kortix.com/docs/host

### kortix.yaml

`kortix.yaml`

```yaml
# kortix.yaml
agents:
  support-triage:
    file: agents/support-triage.md   # what it does, in plain markdown
    connectors: all                  # what it may reach
```

Source: README.md in https://github.com/kortix-ai/suna

## What self-hosting means for each option

Kortix is the open-source AI Operating System: your agents, their skills, your company memory and every connector in one git repo you own. For a team that wants the whole runtime on its own infrastructure, Kortix is the option we recommend. CrewAI is an open-source Python framework for building multi-agent workflows, and it is self-hostable too: you run the package yourself. The two split the same job in different places.

Self-hosting either option raises the same three questions: where the code runs, where credentials live, and what the vendor still manages for you. This page answers all three for Kortix and CrewAI. The wider field is on the [home page](/) and in [CrewAI alternatives](/crewai-alternatives).

## Where the code runs

Kortix self-hosts as one Docker Compose stack that the `kortix self-host` CLI installs, configures and updates on a Linux server you control. The stack carries the web app, the API, the LLM gateway and the Supabase distribution. The sessions themselves run on a separate cloud sandbox provider, Daytona by default, or Platinum or E2B with a key you supply. The instance must be reachable from the internet so those sandboxes can call back to it.

CrewAI is a Python package. Self-hosting it means running that package wherever your team already runs Python, and the team owns the process supervision, the schedule and the machine it lands on. The company's commercial layer, CrewAI AMP with its Control Plane, adds managed deployment, observability, governance and enterprise support, and CrewAI's own pages say it can run on-premise or in the cloud.

## Where credentials live

Kortix keeps connector credentials on the server: connector credentials are brokered server-side and never enter the machine. Secrets are encrypted at rest with a key per project. A secret can be egress-enforced: the sandbox holds a handle. Kortix substitutes the real value outside the sandbox, only on approved HTTPS hosts. Environment is the default exposure, and egress-enforced is experimental.

A self-hosted CrewAI deployment carries its provider and tool keys in the application's own environment, managed by the team that runs it. That is the shape of a framework, and it is exactly the part a platform takes off the team's plate.

## The deployment choices

Run it on Kortix Cloud, in your VPC, or on your own on-prem network. A self-hosted instance reaches the network in one of three modes. Domain mode is the production setup: the web app and the API get public URLs behind Caddy with TLS. Tunnel mode keeps the web app on localhost and publishes only the API, for evaluation on your own machine. Local mode binds every port to loopback and cannot start sessions, because the sandbox cannot reach the API.

Self-host is free. You cover your own server, sandbox provider and model bills; the managed plans are priced separately.

## Permissions for people and agents

Kortix sets per-resource permissions for people and agents. Roles, groups, and an audit trail. Approval gates you set. Off until you set them. A tool call is set to Allow, Ask or Block, down to the arguments it was given. One isolated sandbox per session. Each session has its own isolated machine and branch, so an agent can install and run what it needs and only what it commits survives. Session work reaches `main` through a change request. Merge is default-deny for agents.

A self-hosted CrewAI deployment leaves the permission model to the application. Role-based agents inside a crew are a design choice in your code, and the audit trail and the human approval step are things the team adds around it. CrewAI's commercial Control Plane adds role-based access control and audit for the teams that buy it.

## What a self-hosted framework leaves you to run

Self-hosting a framework such as CrewAI gets you the framework. You still stand up and operate the runtime: a place for the code to run, a scheduler for anything that fires on time, isolation between one run and the next, a broker for credentials so tool keys are not handed to every process, an approval and audit layer, single sign-on and directory sync, and the upgrade path. Kortix ships those as parts of the same self-hosted stack, so self-hosting it means running one system rather than assembling several.

For the feature-level view, read [Kortix vs CrewAI](/kortix-vs-crewai). If you are still choosing, [framework or system](/framework-or-system) covers that decision, and the [FAQ](/faq) has the short answers. To go from the install to a first reviewed change request, the [getting started guide](https://kortix.com/blog/getting-started-with-kortix) walks the three commands.

_FAQ_

## Self-hosting questions, answered.

### Is CrewAI self-hostable?

Yes. CrewAI is an open-source Python framework, so a team installs the package and runs it wherever it runs Python. The company's commercial layer, CrewAI AMP with the Control Plane, is separate: it adds managed deployment and governance, and CrewAI's own pages say it can run on-premise or in the cloud.

### What does self-hosting Kortix cost?

Self-host is free. You pay your own server, sandbox provider and model bills. The managed plans are: Free is $0 with 200 credits per month and 1 project. The team plan is $40 per seat per month with 2,500 credits per month per seat, pooled.

### Can Kortix run on a network with no internet access?

No. Kortix runs on your own on-prem network, but the stack pulls its images from Docker Hub and the instance must be reachable so a session’s sandbox can call back to the API.

### Do I need a Kortix account to self-host it?

No Kortix account is needed. You need a sandbox provider key (Daytona, Platinum or E2B) and a model provider key you add in the web app after the first sign-in; without a sandbox key, sessions do not start.

### Does self-hosting change where the rest of the team works?

No. The self-hosted instance and Kortix Cloud run the same command surface. The CLI points at your instance with `kortix hosts use selfhost` and switches back with `kortix hosts use cloud`.

## Run Kortix on your own server.

Self-hosting is free and starts with three commands.

[Try Kortix](https://kortix.com) · [Compare Kortix and CrewAI](https://crewai-alternative.com/kortix-vs-crewai)
