docs(blog): add details about zcoderd's role and architecture

The commit adds concrete explanations about zcoderd's responsibilities, includes a simple architecture diagram showing the relationship between components, and emphasizes the predictability and groundedness of the split architecture.
This commit is contained in:
2026-03-11 11:05:38 +01:00
parent 63c60f1337
commit ec7c01208c
@@ -13,6 +13,8 @@ But the short version is simpler:
**`zcoderd` is the brain behind the coding experience.**
More concretely, it is the daemon that manages AI sessions, coordinates tool use, and routes local actions through `zblade` instead of trying to do everything itself.
It is the part of the system that thinks about the request, keeps track of context, decides which tools to use, and coordinates the next step. It does not live inside your editor pretending to be all-powerful. Instead, it works together with **`zblade`**, the client-side companion that actually has access to your workspace, your files, your terminal, and the visible editor state.
That split matters more than it may seem.
@@ -56,6 +58,18 @@ That is where `zblade` comes in.
That division is one of the core ideas behind the platform.
At its simplest, the relationship looks like this:
```text
User
zblade
zcoderd
models + server-side tools
```
## Why this split is useful in practice
There are a few practical benefits to keeping intelligence and execution separate.
@@ -85,6 +99,8 @@ That separation helps the system avoid awkward compromises where every tool is f
Because communication happens over a persistent connection, the system can stream responses, surface progress, request tool actions mid-turn, and continue after results arrive. The experience becomes less like “send prompt, wait, hope” and more like watching an actual coding workflow unfold.
Just as importantly, it is a more predictable workflow. The assistant is not supposed to feel like a hidden process making mysterious changes somewhere behind the curtain. The point is to keep the loop visible: decide, inspect, act, report back.
## So how do `zcoderd` and `zblade` talk?
At a high level, they stay connected through a persistent protocol designed for back-and-forth work rather than one-off prompts.
@@ -103,6 +119,8 @@ This is what makes the system feel agentic without needing to advertise itself a
It is not trying to perform theater.
It is trying to stay grounded in the real project and take the next useful step.
That groundedness matters. Developers tend to trust AI more when they can see where actions happen, which side is responsible for what, and how results make their way back into the session.
## The “brain and hands” model
If there is one mental model worth keeping, it is this: