# Why run your own harness when you pay for a subscription

Note, 2026-10-22

With a paid LLM subscription, I don't think a harness of your own like OpenClaw or Hermes makes sense. I set up both, on a home server and on a VPS, and gave up on them.

Last updated: 2026-10-27

## What a harness is and why I set one up

An AI model on its own only answers with text. A harness is a program around it: it gives the model tools (a browser, files, a search engine), memory and tasks that run at a set time, and you talk to it through a chat app. OpenClaw and Hermes are two such open-source programs that you run yourself. They promise an assistant that runs around the clock and does things on its own.

I didn't have a problem for such an assistant to solve. I set them up out of curiosity and because the "24/7 assistant" was getting a lot of attention at the time. I invented the use case to see how it works, and I suspect plenty of people do exactly the same.

## What I tried and on what

I ran everything on models on my own computer: Gemma 4 and Qwen 3.6, in 9B versions. I picked them because they cost nothing beyond electricity and hardware I already had, so I don't pay for tokens. I talked to the agent through Discord, which I use to reach people anyway, so the choice was obvious.

The first attempt was plot listings. I had the agent search for them and it went badly: it couldn't load pages or search properly. I set up the SearXNG search engine myself, and Exa, built for AI agents, was an option too.

The second was a reminder. The agent was supposed to message me on Discord until I explicitly replied that I had done something. It didn't work, because the program was full of bugs.

The third was controlling it by voice from my phone through Open WebUI. It practically didn't work.

## What kept breaking

Programs like this have wide permissions on the system, so I ran them in rootless Docker to keep a mishap away from the rest of the computer. In that mode they barely started at all. I lost time on permissions, digging through GitHub issues and one workaround after another. On top of that, the frontend saved settings wrongly.

The longest hunt was around scripts: the agent wrote them itself to launch tools and validated them itself, and I spent half a day debugging why it didn't work. In the end it turned out the model I was using was simply too weak.

Some of the blame is the models', because those from a few months ago were a lot worse than today's. I also suspect these projects are tested less than apps from big companies, but that's only a guess. I didn't try the harnesses with a cloud model, so the conclusion about weak models applies to these small local ones.

## What the provider apps have

The one real advantage of these harnesses is proactivity: the agent wakes up on its own (heartbeat) and does tasks at a set time. You can already schedule a task for a given hour in the Codex and Claude apps, and the providers are going further, toward agents that run in the cloud all the time: Google has Gemini Spark (May), OpenAI has Dots (September), and on October 21 Anthropic showed Claude Duet. According to reports, all of it is still in beta or in selected countries, mostly the US, so it isn't available here yet. I'd guess because of data processing regulations.

The search built into Claude and Codex is simply better for me than a hand-wired SearXNG. Since I pay for the model anyway, why assemble the same thing from scratch.

## When your own harness makes sense

The first case is hardware that can handle a good model. That means a Mac Studio with 256 GB of memory, or a mini computer built on Nvidia chips (DGX Spark, not to be confused with Gemini Spark). Models that run on such machines are where OpenClaw or Hermes start to make sense. Gemma and Qwen 9B were too weak on my computer, mainly because they can't cope with tool calling, and the agent's whole job rests on calling tools by itself. They become usable from around 27B, and by my estimate a machine like that costs at least 20 to 30 thousand zlotys. That is enough for simple scripts, looking up information and simple analysis.

Writing code and more complicated work still need the cloud models from providers. Hosting a model with 700B+ parameters makes no sense cost-wise, unless it's a big company that will keep such a machine busy 24/7. For me the value of that hardware is, for now, too low to beat a 100-zloty subscription, which is roughly what the cheapest useful plan costs at most providers. Then there's context: the harness fills it with a lot of its own prompts (memory, instructions, scheduled tasks), so you have to fit it to the model.

The second case is data that can't leave for a provider, legal data for example. Then your own model is what's left. At work I have such a case: the agent gets full permissions so it can read the files given to it, and it has no internet apart from the model's API, so that nothing leaks in an uncontrolled way. The Codex and Claude apps are simpler here: fetching a page usually needs no approval, while sending something to a form usually does, though it depends on the permission settings.

Related: [a website an agent can use](https://majlo.dev/en/blog/strona-dla-agentow) and [an assistant with access to your apps](https://majlo.dev/en/guides/asystent-z-dostepem-do-aplikacji).

## Glossary

- **LLM**: A large language model: a program trained on huge amounts of text that writes and understands language. ChatGPT, Claude and Gemini run on such models.
- **harness**: A program around an AI model that lets it use tools and act on its own.
- **OpenClaw**: An open-source program you run yourself. It gives an AI model access to files and programs, and you control it from a chat app.
- **Hermes**: An open-source program from Nous Research, similar to OpenClaw. It runs on your side and remembers what it has learned.
- **home server**: A computer at home that runs around the clock and offers files or programs to other devices.
- **VPS**: A rented computer in a data centre that you reach over the internet and that runs around the clock.
- **agent**: A program built on an AI model that carries out tasks by itself, for example searching, clicking and saving.
- **use case**: A specific way of using a tool, for example "summarises my mail every morning".
- **token**: A piece of text, such as a word or part of one, that a model splits what it reads and writes into. With a paid API, the price depends on the number of tokens.
- **Discord**: A chat app for text and voice conversations in groups, popular among gamers.
- **SearXNG**: A search engine you run yourself. It sends your question to several other search engines and collects their results.
- **Exa**: A search engine for programs and AI agents that returns the clean text of pages.
- **bug**: A mistake in a program that makes it behave differently from what it should.
- **rootless Docker**: Docker runs a program in an isolated environment. The rootless version has no administrator rights, so the program cannot break the rest of the computer.
- **GitHub issues**: The list of bug reports and ideas of a project on GitHub, the service where programmers keep their code.
- **frontend**: The part of a program you see and click: windows, buttons, forms.
- **script**: A short program, a list of commands carried out one after another.
- **debugging**: Finding and fixing mistakes in a program.
- **Open WebUI**: A web page for talking to AI models running on your own machine, looking much like ChatGPT.
- **heartbeat**: A regular signal that wakes the agent so it can check whether it has anything to do.
- **cloud**: Computers owned by companies in data centres that you use over the internet instead of running the program yourself.
- **Gemini Spark**: An AI agent from Google that runs in the cloud around the clock and, for example, watches your mail and calendar.
- **beta**: An early version of a product that a company gives to selected users to test.
- **Mac Studio**: A small desktop computer from Apple that can be bought with a very large memory, which AI models need a lot of.
- **DGX Spark**: A small computer from Nvidia for running AI models at home.
- **Gemma**: A family of AI models from Google whose files you can download and run on your own computer.
- **model parameters (9B, 27B)**: The number of settings inside an AI model, where B means billions. Usually more means a more capable model, but also a heavier one.
- **Qwen**: A family of AI models from Alibaba that you can also run on your own computer.
- **tool calling**: A model's ability to run a tool by itself, such as a search engine.
- **context**: The amount of text a model can see at once. Everything sent to it takes up room.
- **prompt**: A text with an instruction that you send to an AI model.
- **API**: An interface through which one program asks another for data or to do something.
- **hosting**: Keeping a program running on a computer that is always on and available to users.
- **dots**: An AI agent from OpenAI that lives in ChatGPT, has its own computer in the cloud and works around the clock.
- **Claude Duet**: An app with an AI agent from Anthropic that suggests what to do on its own, e.g. plans meeting times.
