Comparison
Self-hosted AI agents — the 2026 OSS landscape, honestly categorised
A self-hosted AI agent is an OSS agent framework you install on infrastructure you control — Docker, bare metal, or Kubernetes — so the model calls, the state, and the tool integrations all run on hardware you own. The OSS space is not flat. In 2026 it splits into four real categories: stateful-agent frameworks (Maskin, Letta, Cheshire Cat, Agent Zero, Paperclip), workflow-node builders (n8n, Flowise, Dify, EpicStaff), RAG chat frontends (Open WebUI, LibreChat, AnythingLLM, Bionic GPT), and coding-agent control planes (amux, Crewship, Preloop, Vornik and eight others). Which one you want depends entirely on the object of work — this page tells you which category your work sits in, and points you at the shortlist for that category.
Every canonical 2026 listicle answering this query — Kiebot’s Self-Hosted AI Agent Landscape: 16 Products (June 2026), Digest.Pro’s Top Platforms (August 2026), Lushbinary’s Best Self-Hosted AI Agents 2026 (April 2026) — mixes all four categories into a single flat list. Buyers typing “self-hosted AI agents” want the framework that fits their work. Mixing a Docker-node workflow builder with a stateful agent framework and a RAG chat UI does not answer that question. This page runs the split.
- The category is four categories. Stateful-agent frameworks, workflow-node builders, RAG chat frontends, and coding-agent control planes ship as separate shapes with separate object models. Any listicle that mixes them costs you an evaluation cycle.
- License is a load-bearing filter. Apache 2.0 (permissive), AGPL-3 (network-copyleft), MIT (permissive), and source-available (commercial restrictions) each carry different obligations. Filter by license shape before you filter by features.
- Docker is table-stakes. Every entrant on this page ships a Docker install. If a self-hosted-AI-agent project doesn’t, it isn’t ready for production self-hosting in 2026.
- The stateful-agent category is where Maskin sits. Alongside Letta, Cheshire Cat AI, Agent Zero, and Paperclip — the frame is “persistent typed state + human approvals,” not “chat” and not “coding tasks.”
- Reddit r/opensource owns the SERP head. For peer signal before installing anything, r/opensource’s self-hosted AI agents thread is the highest-signal community discussion currently on this query.
What “self-hosted AI agent” actually names in 2026
The phrase covers any OSS project where three things are true: the software is open source under a license that permits self-hosting, the code runs entirely on infrastructure you control (Docker host, Kubernetes cluster, laptop, on-prem server), and the model calls can be routed to a self-hosted LLM (Ollama, vLLM, TGI, LocalAI) if you want zero data egress. The privacy-conscious operator’s default read is that model calls should be routable to a local endpoint, even if in practice most self-hosted deployments still call a hosted API for the frontier models.
That is what the phrase doesn’t cover: SaaS AI agents with an “on-prem enterprise tier,” managed cloud offerings with a self-serve install, and AI agents behind a commercial cloud API. If the vendor’s business model is that you pay them monthly for their infrastructure, the product is not self-hosted regardless of whether they ship a Docker image.
Inside that definition, the shape of the product still varies wildly. That is where the four-category split earns its keep.
Category 1 — Stateful-agent frameworks
The stateful-agent category is where the agent holds persistent memory across turns and sessions, works on typed first-class objects (not chat messages), and hands off to humans at approval gates. The buyer is a small team or privacy-conscious operator whose work is a decision loop — signals in, bets shaped, tasks executed, outcomes validated — not a single Q&A turn.
| Product | License shape | Install shape | One-line differentiator | Primary source |
|---|---|---|---|---|
| Maskin | Apache 2.0 (permissive) | Docker Compose / K8s | Typed object graph (insight → bet → task → loop), MCP-native, approval-first | maskin.io |
| Letta | Apache 2.0 (permissive) | Docker / pip | MemGPT lineage — persistent memory as a first-class primitive | letta.com |
| Cheshire Cat AI | GPL-3 (copyleft) | Docker | Plugin-based agent framework with long-term memory | cheshirecat.ai |
| Agent Zero | MIT (permissive) | Docker | General-purpose personal assistant, fully-agentic, dynamic tool use | github.com/frdel/agent-zero |
| Paperclip | Per project readme | Docker / K8s | AI/ML orchestration for autonomous teams | Kiebot Landscape 2026-06 |
The load-bearing decision inside this category is what shape does the persistent state take? Letta’s answer is a memory buffer per agent; Cheshire Cat’s is a plugin ecosystem plus a vector store; Agent Zero’s is a hierarchical multi-agent tree; Paperclip’s is a multi-agent orchestration graph; Maskin’s is a typed object graph where insight, bet, task, and loop are all first-class rows with typed relationships. Each shape fits a different job — the closed-loop workspace essay walks why a typed graph is what tier-4 AI-native work actually needs. The Maskin self-hosted control plane page walks the object-model argument in detail if you want the full frame.
Category 2 — Workflow-node builders
The workflow-node category is a visual editor where you drag nodes onto a canvas, wire inputs to outputs, and the result is a runnable agent flow. Every entrant here reads like a spiritual successor to Node-RED, adapted for LLM calls. The buyer is typically automating a known workflow (webhook in → LLM → tool call → response out), not exploring an open-ended decision loop.
| Product | License shape | Install shape | One-line differentiator | Primary source |
|---|---|---|---|---|
| n8n | Fair-code / Sustainable Use License | Docker / npm | 400+ integrations, most mature workflow substrate | n8n.io |
| Flowise | Apache 2.0 (permissive) | Docker / npm | LangChain-native visual builder, fastest path to a chatbot flow | flowiseai.com |
| Dify | Apache 2.0 (community edition) | Docker Compose | LLMOps platform — prompt orchestration, RAG pipelines, agent workflows | dify.ai |
| EpicStaff | Source-available (commercial restrictions) | Docker + PostgreSQL + Redis | Node-based visual editor, RBAC / LDAP / OIDC / SAML | Digest.Pro 2026-08 |
The load-bearing decision here is how heavy is the runtime? n8n is the lightest and the most integration-rich; Flowise is the fastest to a working chatbot; Dify is the most complete LLMOps stack; EpicStaff carries enterprise SSO out of the box. If the work is a genuinely wired workflow, all four are legitimate. If the work is unbounded exploration, none of them fit — the workflow metaphor breaks the moment the flow needs to branch on judgment.
Note the license split: n8n’s Sustainable Use License restricts internal-only commercial use vs charging others for it, EpicStaff’s source-available terms carry similar restrictions, and Flowise / Dify’s Apache 2.0 has none. Read the license before you commit.
Category 3 — RAG chat frontends
The RAG chat category is a self-hostable ChatGPT-shaped UI wired to your own model endpoints and (usually) a document ingestion pipeline. The buyer is looking to give a team ChatGPT without sending prompts to OpenAI, and to point the same UI at internal knowledge for retrieval-augmented answers.
| Product | License shape | Install shape | One-line differentiator | Primary source |
|---|---|---|---|---|
| Open WebUI | BSD-3 (with branding restrictions) | Docker / K8s / pip | Ollama-first ChatGPT UI with document collections and per-user isolation | openwebui.com |
| LibreChat | MIT (permissive) | Docker / npm | Multi-model chat frontend (OpenAI, Anthropic, Google, Ollama, custom) | librechat.ai |
| AnythingLLM | MIT (permissive) | Docker / desktop | Document workspace-first UI, built-in RAG + agent skills | anythingllm.com |
| Bionic GPT | Apache 2.0 (permissive) | Kubernetes | On-premise enterprise ChatGPT-shaped UI with SSO and audit | bionic-gpt.com |
The load-bearing decision here is how much is this a chat UI vs a workspace? Open WebUI is the closest to “ChatGPT-with-Ollama, done”; LibreChat carries the widest model support; AnythingLLM leans into workspace-per-team RAG; Bionic GPT is the enterprise-hardened option (SSO, audit logs, Kubernetes-native). All four fit a “give people ChatGPT that doesn’t leak” job; none are agent frameworks in the stateful-loop sense.
Category 4 — Coding-agent control planes
The coding-agent category is a dashboard that sits above a fleet of coding agents (Claude Code, Codex, OpenHands, Aider, Cline) and manages the queue, the sandbox, the approvals, and the audit log. The buyer is a developer or platform engineer running multiple parallel coding tasks and needing a control surface.
This is a full field in its own right — twelve OSS entrants shipped in 2026 alone (amux, Crewship, Preloop, Nora, Musematic, Mission Control, Clawix, Vornik, Zoink, herdctl, danrex/fleet, VNX). Rather than duplicate the table here, the self-hosted AI agent control plane page walks all twelve entrants with license, runtime, and differentiator per project. A separate shortlist covering the coding-agent runtimes themselves (Claude Code, Codex, OpenHands, Aider, Cline) is covered separately when that piece ships.
If your query is “self-hosted AI agents” and your actual job is a coding-agent fleet, start with the control-plane page above. This page is for the buyer whose work is not coding.
How to pick — three questions
The four categories look overlapping on a features grid. They stop overlapping the moment you ask the buying question in terms of the object of work.
- What is the object of work? A task in a wired workflow → workflow-node builder. A chat turn → RAG chat frontend. A coding task → coding-agent control plane. A decision that runs from signal to validated outcome → stateful-agent framework.
- Persistent state or ephemeral chat? If the agent needs to remember what it decided last week to inform what it decides today, you are in the stateful-agent category. If every turn stands alone or every workflow run starts fresh, one of the other three fits.
- What license terms hold for your commercial use? Apache 2.0 and MIT permit almost anything. AGPL-3 requires network-service source disclosure. Source-available and Sustainable Use licenses restrict reselling the software as a service. Filter by license shape before you filter on features — retrofitting license constraints after you have picked a tool is expensive.
If the answers point you at a stateful-agent framework, the sub-decision is what shape the persistent state takes, and that is where Maskin’s typed object graph vs Letta’s memory buffer vs Cheshire Cat’s plugin store vs Agent Zero’s tree becomes the real cut. That persistent state is your knowledge layer, and a self-hosted team wiki your agents read is one shape of it you run yourself.
Where Maskin sits, honestly
Maskin is one of five entrants in the stateful-agent framework category. The differentiator is the object model: a typed graph (insight → bet → task → loop) with typed relationships (informs, breaks_into, blocks) that agents mutate and humans reshape, with MCP as the tool interop layer and approval-first as the default human split. Apache 2.0 licensed, self-hostable free forever, installable via Docker Compose in under ten minutes. Browse the full docs for the typed object graph and MCP interop spec.
Every one of the other four stateful-agent entrants (Letta, Cheshire Cat, Agent Zero, Paperclip) is a legitimate answer for a differently-shaped job (the Paperclip alternative page covers when to stay on Paperclip and what else fits). If your work is a persistent conversational assistant, Letta or Cheshire Cat probably fit better. If your work is coordinating multiple agents on a decision loop with humans keeping taste at approval gates, Maskin is what the object model was built for — the closed-loop workspace frames why this tier of work looks the way it does, and the self-hosted AI agent control plane page walks the crowding at the tier above. If your real question is a self-hosted alternative to a vendor agent product, the open-source alternative to Claude Cowork page is the pointer.
FAQ
What is a self-hosted AI agent?
An OSS agent framework you install on infrastructure you control, so the code, the state, and (optionally) the model endpoint all run on your hardware. Self-hosting differs from managed / cloud AI agents in that the vendor never sees your prompts, the data never leaves your network, and you own the operational surface — patching, backups, scaling, uptime.
Can you self-host AI agents in 2026?
Yes, and it has become substantially easier over the last twelve months. Every entrant on this page ships a Docker Compose or Kubernetes install that runs in under an hour on commodity hardware. Model calls can be routed to a hosted API (OpenAI, Anthropic) for frontier capability or to a self-hosted model server (Ollama, vLLM, TGI) for zero data egress.
What is the best self-hosted AI agent?
There is no single answer, and any listicle that gives you one is skipping the buying question. The best pick depends on the object of your work: a stateful-agent framework (Maskin, Letta) for decision loops; a workflow-node builder (n8n, Flowise) for wired automations; a RAG chat frontend (Open WebUI, AnythingLLM) for team ChatGPT; a coding-agent control plane (amux, Crewship, Preloop) for coding fleets.
Which self-hosted AI agents run on Docker?
All four categories are Docker-first. Every entrant listed on this page ships a Docker Compose install as the primary path. Kubernetes deployments are available for the enterprise-shaped entrants (Bionic GPT, EpicStaff, Musematic, Clawix). Bare-metal or pip installs are available for the lightest entrants (Letta, Flowise, n8n).
Are there free self-hosted AI agents?
Yes — every entrant on this page is free to self-host under its respective OSS license. Your only costs are the infrastructure you run the software on (VPS, home server, K8s cluster) and the model calls your agents make. If you self-host the model too (Ollama on GPU hardware, or CPU-only for smaller models), the ongoing spend can be near-zero at solo scale.
How should I read the license column?
License shapes on this page are the four-way categorisation a commercial buyer typically filters on. Permissive (Apache 2.0, MIT) is the safest resting place for a small team — modify freely, ship without obligation. Copyleft (AGPL-3, GPL-3) requires derivative works to stay open; network-copyleft in particular can bite if you fork the project and expose the modified fork over a network. Source-available means the source tree is readable but carries commercial-use restrictions — check the specific clauses before betting on it. Fair-code (n8n’s Sustainable Use License is the canonical example; the n8n alternative page quotes what its docs say about it) is free for internal use but restricted for hosted redistribution. Filter by license shape first, then by features. Verify the exact SPDX identifier, version, and commercial-use terms on each project’s readme before relying on it for a regulated deployment — licenses drift, and this categorisation is a starting filter, not a legal opinion.
Is n8n a self-hosted AI agent?
n8n is a self-hosted workflow-node builder that has added AI-agent nodes over 2025-2026. If your work is a wired workflow with an LLM step, n8n fits. If your work is an agent that needs to hold state and reason across turns, n8n’s workflow model is a poor fit — you want a stateful-agent framework instead. If you are weighing n8n against its own alternatives, the n8n alternative comparison sorts them into four shapes.
What about self-hosted AI voice agents?
Voice agents are a specialisation: they wire a self-hosted speech-to-text stack (Whisper, faster-whisper) and a text-to-speech stack (Piper, XTTS) around one of the agent frameworks on this page. Most stateful-agent and workflow-node entrants can be extended with voice pipelines; check the project’s community modules before betting on it as a first-class feature.
Where do I find self-hosted AI agents on GitHub?
Every entrant listed here has a public GitHub repo. The github.com/topics/self-hosted-ai topic tag surfaces the wider category. For peer signal before committing, the Reddit r/opensource thread self-hosted AI agents that run 100% locally is the highest-signal community discussion currently indexed.
Self-hosted vs hosted — how do I decide?
Hosted is faster to start, slower to control. Self-hosted is slower to start, and gives you full control over data residency, model routing, cost profile, and integration surface. If the workload touches regulated data (health, finance, legal) or the vendor’s pricing scales badly with your usage, self-hosting usually wins. If the workload is exploratory and cost sensitivity is low, hosted usually wins.
Start with the category, not the shortlist
The single most common failure mode when picking a self-hosted AI agent in 2026 is skipping the category question and jumping straight into a shortlist that mixes all four categories. That path leads to comparing a chatbot UI to an agent framework on features that only make sense within one category, and re-doing the evaluation once you realise the tool doesn’t fit the shape of your work.
Start with the object of work. That names the category. Then filter by license shape and install shape. Then pick from the two or three entrants that survive. Every category has three-to-five OSS entrants worth shortlisting; every shortlist is faster to evaluate than the twenty-vendor flat listicle the SERP will hand you.
Maskin sits in the stateful-agent category alongside Letta, Cheshire Cat, Agent Zero, and Paperclip. If that is the shape of your work — a decision loop with persistent typed state, MCP tool interop, and human approvals at judgment gates — Maskin is what the object model was built for. For the wider category context, see all open-source alternatives to closed AI-workspace incumbents.
Self-host Maskin free
Apache 2.0, ten minutes on your own hardware, no card required. If your work is a stateful decision loop — signals in, bets shaped, tasks executed, outcomes validated — Maskin is what the object model was built for.