What Cline is, and what self-hosting it means
Cline is an open-source coding agent that runs in your editor, your terminal, or a desktop app. It reads a codebase, makes multi-file edits, runs commands, and shows every change as a diff you can review or revert, and it works with any model you bring a key for. The project's own site is Cline, and its source is at github.com/cline/cline.
For one developer, that is a complete setup. In practice, self-hosting Cline means the agent runs on each developer's own device, or points at a local model through Ollama or LM Studio. There is no shared server that the team operates.
Kortix is the open-source AI Operating System. A team runs it as one stack on a server it controls, and every member reaches the same instance from the web app, Slack, Microsoft Teams, or the CLI. The Kortix docs describe both the hosted and the self-hosted routes.
What a self-hosted Kortix instance is
A self-hosted Kortix instance is the full platform on a server you control: one Docker Compose stack that the kortix self-host CLI installs, configures, and updates. The stack holds the web frontend, the API, the LLM gateway, and the Supabase distribution. The Kortix docs walk through the install.
The company's agents, their skills, company memory, and connector configuration are files in one git repo the company owns. The manifest kortix.yaml declares the machine image, the connectors, the triggers, and the secret names and grants. Every session runs on its own cloud computer, so the higher-level setup is the same whether you host the instance or use the managed cloud.
What the team gets that a per-developer agent does not
A per-developer agent improves one developer's loop. A self-hosted Kortix instance gives the whole team one system:
- One git repo the company owns, with agents, skills, memory, and connector config as files that read in order.
- One isolated sandbox per session, each on its own branch, so parallel work does not collide.
- Work that lands through review: session work reaches
main through a change request, and merge is default-deny for agents. An administrator can grant the merge capability. - Connector credentials brokered server-side and never enter the machine, with per-resource permissions for people and agents.
- Any model provider with your own keys, run on Kortix Cloud, in your VPC, or on your own on-prem network.
What it needs to run
A Linux server with a public IP. DNS records for the domain and its API subdomain, pointed at the server before the first start. Ports 80 and 443 open inbound. A sandbox provider key, or sessions do not start. A model key, added in the web app after the first sign-in. Domain mode is the production setup; a Cloudflare tunnel is for evaluation on your own device.
The boundary: sessions run off the server
Sessions do not run on the server you host. Each session runs on a cloud sandbox provider, and the instance must be reachable from the internet so those sandboxes can call back. The supported providers are Daytona, Platinum, and E2B. A self-hosted instance is the full platform on your hardware for the app tier; the compute an agent works on sits with one of those providers.
Review before work lands
Every session works on its own branch. When an agent wants to keep a change, it commits, pushes the session branch, and opens a change request against the project's default branch. Session work reaches main through a change request, and merge is default-deny for agents. You set the connector policy: allow, ask, or block, down to the arguments of each call. Approval gates are off until you set them.