yoi/crates/client
2026-06-01 20:59:32 +09:00
..
src rename: adopt yoi identity 2026-06-01 18:49:23 +09:00
Cargo.toml cli: move product entrypoint to insomnia 2026-05-31 22:07:52 +09:00
README.md docs: reorganize developer documentation 2026-06-01 20:59:32 +09:00

client

Role

client contains reusable socket-client and runtime-command mechanics for talking to Pods from CLI/TUI code.

Boundaries

Owns:

  • one-shot Pod socket client behavior
  • request/reply delivery mechanics
  • runtime command construction below the product façade
  • shared attach/status probing helpers used by higher layers

Does not own:

  • product command names (yoi)
  • Pod state authority (pod, pod-store, session-store)
  • UI rendering (tui)
  • Worker turn semantics (llm-worker)

Design notes

The client boundary lets tui and yoi share Pod communication without making library crates depend on the product binary. Socket clients should drain connect-time snapshot/alert traffic before sending a method or deciding status.

See also