Disclosure: No affiliate program is active for these links on 2026-10-04. Every tool link goes to an official source. The links are not sponsored links. Read how we test and label evidence.

Which self-hosted AI agent fits your use case?

Our first-person verdict is narrow by design. Hermes Agent is our pick for operators who want a persistent general-purpose agent because we run its runtime persistently on our own server fleet. That is operational proof for the runtime, not proof that its model inference is self-hosted.

For the other use cases, this is a documentation-based shortlist, not a fleet verdict. OpenHands, n8n, Dify, and Flowise are all not tested by us for this article.

CandidateBest fitTested by usWhat is self-hostedModel boundaryOperator burdenOfficial source
Hermes AgentPersistent general-purpose agentYes, runtime operated on our fleetAgent runtimeVerify in current docs and in the deployed configurationOur framework: runtime, endpoint, tools, records, updates, backups, recoveryOfficial repository
OpenHandsLocal OpenHands setupNo, not tested by usLocally run OpenHands setup documented by the official guideVerify in current docsOur framework: runtime, endpoint, files, credentials, logs, updates, backups, recoveryOfficial local setup
n8nWorkflow automation with AI stepsNo, not tested by usWorkflow runtime and workflows in a self-hosted deploymentVerify in current docsOur framework: workflows, endpoint, credentials, records, updates, backups, recoveryOfficial self-hosting docs
DifyDocker Compose self-host installationNo, not tested by usDocumented Docker Compose self-host installationVerify in current docsOur framework: application runtime, endpoint, tools, data, records, updates, backups, recoveryOfficial Docker Compose quick start
FlowiseDocumented Flowise deploymentNo, not tested by usFlowise deployment described by the official docsVerify in current docsOur framework: runtime, endpoint, connections, records, updates, backups, recoveryOfficial deployment docs
Operator callout: “Self-hosted” describes a boundary, not an automatic privacy, compliance, security, cost, or sovereignty guarantee. Map the runtime and model endpoint separately.

What does “self-hosted AI agent” actually mean?

A self-hosted agent can be a runtime you operate while its model calls still leave for a remote provider. The agent process, interface, workflows, files, and logs may sit on your server while inference happens through an external endpoint. A buyer must map both boundaries.

Our own setup makes the distinction concrete. We run Hermes Agent persistently on our server fleet. We also use Claude Code interactively and Codex through dedicated delegation sessions. Claude Code and Codex use remote, subscription-backed models in our setup, so neither is proof of self-hosted model inference.

The stack has separate boundaries:

  • Runtime: where the agent process or workflow engine runs.
  • Model endpoint: where inference runs and which provider receives the request.
  • Files and data: where inputs, context, and outputs are stored.
  • Tools and credentials: what the agent can reach and where its secrets are held.
  • Logs and records: what actions are recorded and where those records live.
  • Operations: who owns updates, backups, recovery, and the final operating decision.

If you are deciding where the machine itself belongs, see our guide to choosing a self-hosted AI server. For a wider ownership view, compare the boundaries in our guide to hosting your own AI.

Why is Hermes Agent our pick for persistent operation?

Tested by us. We run Hermes Agent persistently on our own servers. This is why it appears first for the persistent general-purpose use case. It is not our product, and we are not turning that use into a universal ranking.

Our proof stops at what we can establish: persistent operation of the runtime on our fleet. We do not publish a duration, uptime figure, performance score, cost result, security result, or privacy result. We also do not treat the runtime location as evidence about the model endpoint.

Choose this fit when the question is whether you want to operate a persistent general-purpose agent runtime and accept the accompanying operator responsibilities. Before adopting it, record:

  1. The runtime location and its operator.
  2. The configured model endpoint.
  3. The files, data, tools, and credentials it can reach.
  4. The logs and records you need to retain.
  5. The owner of updates, backups, and recovery.
Fleet callout: Our Hermes evidence is runtime evidence. It does not convert every connected model, tool, or data path into a self-hosted component.

When does OpenHands belong on the shortlist?

Not tested by us. OpenHands documents a local setup, so it belongs on the shortlist when the desired scope is a locally run OpenHands environment. This statement is limited to that documented local-run scope.

We have not tested or rejected OpenHands for this page. We do not claim that its local setup is secure, private, fast, or production-ready. Verify the current model configuration, file access, tool permissions, records, updates, backups, and recovery before treating the deployment as suitable for your work.

When does n8n fit better than a general agent?

Not tested by us for this article. n8n documents self-hosting. Its fit in this comparison is workflow automation that can host AI workflows. We do not describe it as a universal autonomous agent.

Consider that category when your starting point is a defined workflow rather than an open-ended persistent agent. Our operator review would still map the workflow runtime, each model endpoint, connected credentials, files and data, execution records, updates, backups, and recovery. Those are our evaluation fields, not vendor claims.

When does Dify's Docker Compose route fit?

Not tested by us. Dify documents a Docker Compose quick start for self-hosting. It belongs on this list when the requirement is to evaluate Dify through that documented installation route.

The cited installation context does not settle every operating boundary. Verify the model endpoint in the current documentation and deployed configuration. Then record the application data, tool connections, credentials, logs, updates, backups, recovery process, and operator.

When does a Flowise deployment fit?

Not tested by us. Flowise publishes deployment documentation. Its fit here is evaluating a Flowise deployment, limited to the scope supported by those official deployment docs.

We do not infer a model location or operational outcome from the existence of a deployment guide. Verify the current model endpoint, connections, data path, credentials, records, updates, backups, recovery process, and named operator for the configuration you plan to run.

How should you evaluate operator burden?

Operator burden is our evaluation framework, not a claim made by any vendor. A self-hosted deployment assigns responsibilities somewhere. Write down the owner for each responsibility before choosing software.

BoundaryQuestion to answerRecord to keep
RuntimeWho keeps the agent or workflow service running?Runtime location and operator
Model endpointWhere does each inference request go?Endpoint and provider configuration
Files and dataWhat can the system read and write?Location and access inventory
Tools and credentialsWhich actions and secrets are available?Tool and credential inventory
Logs and recordsWhat evidence of a run is retained?Record location and retention decision
UpdatesWho reviews and applies changes?Named update owner
Backups and recoveryWhat must be restored, by whom?Backup scope and recovery owner

If source access matters to the decision, our open-source AI agent platform guide separates code availability from operating ownership.

Decision callout: Unknown is a valid table entry. Replace it only with evidence from the current docs or the actual deployed configuration.

Which tools did we test and not retain?

None of the four untested alternatives has been tested and rejected by us for this page. OpenHands, n8n, Dify, and Flowise remain on the evaluation list. Calling any of them “tested and not retained” would invent a product test that did not happen.

Hermes Agent is the only listed candidate backed by our fleet operation. The other rows report fit from the stated official setup or deployment scope and carry a prominent not tested by us label.

What is the buying checklist?

Use the same questions for every candidate:

  • Does the documented scope match your use case?
  • Which runtime or interface will you operate?
  • Is the model endpoint local, remote, or still unverified?
  • Where do files, data, logs, and other records live?
  • Which tools and credentials can the agent access?
  • Who owns updates, backups, recovery, and the operating decision?
  • Which claims come from your own test, and which come only from official documentation?

The best choice is the one whose documented scope matches the job and whose full boundary map you are prepared to operate. For our persistent general-purpose use case, that makes Hermes Agent our pick. It does not make Hermes Agent the universal winner.

What should you know about the FAQ searches?

Best self hosted ai agents reddit

Reddit can surface operator discussions, but this guide does not turn community visibility into product proof. Our shortlist separates the one runtime we operate, Hermes Agent, from OpenHands, n8n, Dify, and Flowise, which are not tested by us for this article.

Best self hosted ai agents github

GitHub is the official source for Hermes Agent in this comparison. A repository can document the runtime, but it does not establish where every model call, tool credential, file, log, backup, or recovery process sits in your deployment.

Which self-hosted AI agent platform is the best?

There is no universal winner in the evidence used for this guide. Hermes Agent is our pick for a persistent general-purpose agent because we run it on our own servers. OpenHands, n8n, Dify, and Flowise remain documentation-based candidates and are not tested by us here.

Can you self-host your own AI agent?

Yes. The cited official sources document a repository, local setup, self-hosting, Docker Compose installation, or deployment path for the listed candidates. Self-hosting the runtime does not prove that the model is local, so verify the model endpoint separately.

Written by Loïc Guyon (Tileo), who runs the AI Jungle fleet.