What a harness is - and why it beats the model
Frontier model quality has largely converged. What decides whether an AI actually gets work done is the harness around it: tools, gates, memory, planning, resumption and surfaces. Here is what that looks like, counted.
Ask three people which model is best today and you will get three answers, all defensible, all with a half-life of about six weeks. That is the honest state of things in August 2026: at the top of the market, raw capability has largely converged. The gap between the best frontier models and the ones a rung below is real, but it is no longer the thing that decides whether an AI finishes your work or leaves you with a wall of text.
The thing that decides that is the harness.
What a harness actually is
A harness is everything between you and the model. The model is a function: text in, text out. It has no hands, no memory of yesterday, no way to see whether the file it just wrote landed, no idea that you got interrupted and closed the laptop. The harness supplies all of that.
Concretely, a harness is six things:
- Tools. What the model can actually touch: files, the browser, your calendar, a shell, an image generator, your WordPress install.
- Gates. What happens before a tool fires. Approval prompts, sandboxes, a killswitch, spend limits. A model that can do anything and asks nothing is not more capable, it is just less safe.
- Memory. What survives the end of a conversation, and what deliberately does not.
- Planning. Turning "clean up my downloads folder and file the invoices" into an ordered set of steps that can be checked off, rather than one hopeful monologue.
- Resumption. The unglamorous one. Reloads, restarts, second runs, a task that was half done when the machine went to sleep. Most agent demos never get tested here, and it is where most of them fall apart.
- Surfaces. Chat is one way in. Voice is another. So is a background goal that runs while you are asleep, a mobile app, a mascot on your desktop, an editor window.
Swap the model in a good harness and the work still gets done. Swap the harness under a great model and you are back to copy-pasting.
The numbers, and the honest asterisk
It helps to make this concrete. As of today, Skales on the desktop ships 257 built-in tools. Forty-seven of those exist purely for WordPress, which tells you something about how specific useful tooling has to be: "browse the web" is not a tool, "update this post's featured image" is. The mobile app carries 101 native tools of its own, not a remote shell to the desktop. Twenty-six providers are supported, so the brain behind all of it is your choice.
Here is the asterisk, because a number like 257 invites a fair objection: no model receives 257 tool definitions in a single turn. That would be both wasteful and counterproductive. Tool definitions cost context, and past a certain count most models get measurably worse at picking the right one. So Skales works with a tool budget: a working set goes out with the turn, and more can be pulled in at runtime when the task actually calls for them. The catalog is 257. The context stays lean.
That distinction is the whole point. The size of the catalog says what the agent is capable of reaching. The budget says whether it can still think clearly while reaching. Getting only the first half right is how you build an impressive spec sheet and a frustrating product.
Ollama is the engine, Skales is the vehicle
This is where comparisons usually turn into sport, so let us not.
Ollama is excellent at what it does: it makes running a local model on your own machine a one-line affair, and it did more than any other project to make local inference normal. LM Studio does the same job with a lovely GUI and a model browser that is genuinely fun to poke around in. Jan takes the open-source, local-first stance further than most. All three are better than Skales at being what they are: a clean, focused way to get a model running locally.
They are engines. An engine is not a car. None of them is trying to be the layer that plans a multi-step job, asks you before it deletes something, remembers the project you were on last Tuesday, and picks the work back up after a restart. That is a different product with a different burden, and Skales carries it: local inference is one of several ways to power the agent, not the product itself.
The same courtesy applies upward. Cursor is the better tool if your day is spent inside a repository and you want an editor that has internalised your codebase - that focus is its advantage, not an accident. Claude Desktop is a beautifully restrained client with first-class MCP support and it will very often be the calmer choice for pure conversation. OpenClaw proved, at remarkable scale, that people want a personal agent that owns its own data, and its autonomous loop is real work by real engineers.
Skales differs on where the burden sits. It is a signed app you double-click, with approval gates on by default, a file sandbox, a killswitch, and no daemon for you to secure. The comparison pages on this site say all of this in more detail, including the rows where the other side wins, and there are several of those.
Local, without the setup tax
The harness argument gets sharpest at the local end, because that is where the gap between "the model works" and "the work happens" is widest.
Skales ships its own inference server. Not a dependency you install first: llama.cpp, bundled, with a catalog of 55 models. Every entry in that catalog carries its license and its SHA-256 checksum, which matters more than it sounds like it does - a model file is executable-adjacent content you are pulling onto your machine, and knowing exactly what arrived and under what terms you may use it should be table stakes.
Images generate on-device through stable-diffusion.cpp. Speech-to-text runs on Whisper, offline. Text-to-speech runs on Piper, offline. Voice in, voice out, pictures made, no key, no account, no network. That is not a privacy slogan, it is a description of where the bytes go.
And at the other end, for people who do not want to think about any of this: Skales IQ starts with zero keys. No API key, no provider signup, no free-tier scavenger hunt before the first useful answer. The setup tax is the single largest reason people bounce off agent software, and removing it is a harness decision, not a model decision.
Why this is the more interesting fight
If model quality were still the whole game, the correct strategy would be to wait. Whoever is ahead this quarter will not be ahead next quarter, and building on top of any one of them is a bet against the calendar.
But the harness compounds. A tool written last year still works. A gate that catches a destructive command catches it regardless of which model issued it. A task that resumes correctly after a restart resumes correctly for every model you ever swap in. The work you put into the layer around the model keeps paying out while the models underneath keep changing.
That is the bet Skales makes: the model is the part you should be able to change your mind about.
Download Skales - free for personal use, and the install takes about 30 seconds.
New here? Skales is the private AI agent you install like an app - free for personal use, any model, everything stays on your machine.
Download Skales