memcode docs
Halo

How Halo works

From plain English to a result on your screen, and why it feels like a local command.

From request to result

  1. You type. As soon as you start, Halo opens its connection to the Halo service in the background: network, encryption, sign-in and version agreement. What you type stays on your machine until you press Enter.
  2. You press Enter. The request travels over the connection that is already open.
  3. Halo reads it. Compact, purpose-built models read the request in one pass and propose explicit steps: what to do, on what, with which conditions.
  4. Your machine checks it. The proposal is signed by the service; Halo on your computer verifies the signature, then works out on its own what each step would really do: which files, how much data, which permissions.
  5. You confirm when it matters. Reads run straight away. Anything that changes your machine shows a preview and waits for you.
  6. It runs locally, and the result is shown in your terminal. Results stay on your machine.

The connection stays warm for a few minutes after each request, so the next one is just as quick. After that it closes quietly and reopens the moment you start typing again.

Typed steps, not shell strings

For the tasks Halo knows, it does not generate a shell command and hope. Each request becomes typed steps that Halo's client performs itself: listing files, reading processes, querying Git. Where a step runs an external program, Halo shows the exact command and runs exactly what it showed.

Clarify or decline, never guess

If a request could mean two things, Halo asks. If it is outside what Halo can do, Halo says so. This is deliberate: a fast tool you can trust is more useful than one that improvises.

Conversations

Halo remembers the conversation on your machine, so follow-ups work:

◯ list the python files here
◯ only the ones changed today

The service sees the earlier requests in the conversation and the shape of the results you hold (for example, "214 files"), never the results themselves.

Later: hand-off to Memcode

Halo is built so that, in a later release, a request it cannot handle can be passed to Memcode's agent, only if you turn that on. It is off, and nothing is ever escalated silently.

On this page