The harness
When you ask your agent something, the work is done by the harness: the AI runtime that ships with every agent and runs on your machine, next to the agent. A conversation in the workspace, building a mission and running one all run on it.
There is nothing to write first — no prompts, no MCP servers, no skill files, no instruction files. In a conversation you just say what you need. What the harness can reach is what you give it as memories — your documents, an API, another agent — and when a piece of work must be done the same way every time, you give it a mission.
How a question travels
Section titled “How a question travels”- You ask in the workspace. Your browser encrypts the message for your agent, so nothing between them can read it.
- The agent checks who you are and that your policy allows the request, then starts a turn of the harness.
- The harness works in a loop. It asks the model what to do next, searches a memory or carries out a step, reads the result and asks again — until it has the answer. In the workspace you can follow it as it happens: which memory it searched, and what it found there.
- Every model call goes through the agent to the router. The harness never holds a provider key. The router does, and it is the only part that talks to the provider.
- The answer comes back to your browser, encrypted end to end.
Content leaves your machines only for the parties you chose: the model provider, with what goes into a model call, and another agent, when you ask one.
Where it runs
Section titled “Where it runs”| Where | On the same machine as the agent. The agent starts it for each turn — it is not a separate service to run or look after. |
| The program | ~/.heia/runtime/harness/hexaeight-engine, installed and updated together with the agent. |
| The sandbox | Every turn runs inside one — bubblewrap on Linux, sandbox-exec on macOS — with the agent’s licence and identity files hidden, so nothing a turn does, or starts, can read them. |
| The model | Reached only through the agent and the router. There is no model key on the agent’s side. |
| Search | A small search service keeps memory search fast. It runs on the CPU — no GPU needed — and stops by itself when the agent stops. |
What it keeps, and where
Section titled “What it keeps, and where”Everything the harness keeps lives in ~/.hexaeight-harness:
| Memories | Each is a searchable body of documents, or a way to reach an API or another agent. |
| Missions | Each mission’s map, cards and files. |
| Conversations | Each conversation’s record, so it carries on where it left off, and its own working folder, so the files of one conversation never appear in another. |
What a turn can do
Section titled “What a turn can do”- Search your memories — this is how it reaches any information at all.
- Ask another agent — through the
connect-to-agentmemory, by the agent’s name, encrypted end to end. See Two agents talking to each other. - Run commands, only as allowed.
- A mission runs only the commands sealed with it — anything else is refused.
- On Machines, every command waits for your approval.
- In a conversation, a command that is not already allowed waits for your approval, and so does the first use of the web.
Your own engine, or a framework
Section titled “Your own engine, or a framework”The harness is what every agent starts with, not the only choice. A framework you already use — CrewAI, LangGraph, Pydantic AI or Agno — can run as a sealed mission on the same harness, with the same identity, memories and policy. Or you can plug in a program of your own. See Frameworks and Bring your own engine.