Resources04 · Client architecture

CLIENT ARCHITECTURE / COMPOSABLE MODULES

Kyormar client architecture

Kyormar is a client. IM and Agent can start separately or link on demand to exchange explicit data.

CLIENT MAP / INDEPENDENT ↔ LINKEDMODULE READY
01 / COMMUNICATIONIMstandalone
00 / MODULE HOSTCLIENTcomposable
02 / TASK EXECUTIONAGENTstandalone

[ KYORMAR CLIENT ]
    ├── [ IM ] ........ communication / standalone
    ├── [ AGENT ] ..... tasks + tools / standalone
    └── [ IM ] ◀── explicit data ──▶ [ AGENT ]
                       │
                       └──▶ [ DEVTOOLS / READ ONLY ]

[ RUST SERVICE ] ...... closed / remote capabilities only
IM ONLY / READYAGENT ONLY / READYLINKED / ON DEMAND

CLIENT MODULES

One client does not require both modules to be present at the same time.

  1. 01MODULE HOST

    Kyormar Client

    desktop / modules / visible UI

    Provide the native desktop, module lifecycle, and visible workspace so IM and Agent share one entry point without being tightly coupled.

    Open public repository: Kyormar-GPUI
  2. 02COMMUNICATION MODULE

    IM

    messages / people / collaboration

    Run independently as a communication client. When connected to Agent, receive only explicit progress, approval requests, and results.

    View communication boundaries: IM data exchange
  3. 03TASK MODULE

    Agent

    context / tools / results

    Handle tasks, context, and tools independently. When connected to IM, emit only consumable task state and results.

    View communication boundaries: Agent data exchange

COMPOSITION MODES / OPT IN TO LINK

Start only the capability
you need.

Here, “pluggable” means product modules can start, stop, and compose independently. It does not promise binary hot-unloading at any arbitrary point during execution.

MODEACTIVEEXCHANGEUSER RESULT
01IM_ONLY[ IM ]NONEIndependent messaging and collaboration
02AGENT_ONLY[ AGENT ]NONEIndependent tasks and tool execution
03LINKED[ IM + AGENT ]EXPLICIT EVENTSMessages, progress, approvals, and results exchanged
04OBSERVED[ CLIENT ]DEVTOOLSRead-only events, state, and tool traces

DATA EXCHANGE / EXPLICIT EVENTS

Composition does not merge state;
it sends and receives explicitly.

Every data item has a sender, event type, and visible result. IM does not take over Agent task state, and Agent does not copy complete IM conversations.

kyormar://trace/session-7F2A● LIVE
01[ IM ]TASK_REQUESTED

Send an explicit message to Agent

02[ AGENT ]WORK_STARTED

Start work and return visible progress

03[ IM ]APPROVAL_RETURNED

Return the user approval to Agent

04[ AGENT ]RESULT_SHARED

Share the final result into IM collaboration

MODULE STATE / SEPARATEEXCHANGE / EXPLICIT

MODULE BOUNDARIES

Complete when independent, restrained when linked.

IM can run independently
When using only communication and collaboration, Agent does not start and no task or tool state is created.
Agent can run independently
When using only tasks and tools, IM does not start and results can remain in the Agent surface.
Composition does not merge state
The modules exchange only explicit data and events while retaining separate lifecycle, storage, and failure boundaries.
DevTools provides open observation only
The open-source tools read events, state, tool calls, and communication traces for reproduction and debugging without becoming a second business-state source.
A separate Rust service exists
It provides necessary account and remote team capabilities. The client does not depend on it to start. The service is closed source, and this site does not expose its internal architecture.