Expand description
Server-side implementation for session persistence
The server runs as a daemon and holds all editor state. Clients connect via IPC (Unix domain sockets or Windows named pipes) to send input and receive rendered output.
§Architecture
- Data socket: Pure byte stream for stdin/stdout relay (hot path)
- Control socket: JSON messages for resize, ping/pong, etc (cold path)
See docs/internal/session-persistence-design.md for full design.
Re-exports§
pub use capture_backend::terminal_setup_sequences;pub use capture_backend::terminal_teardown_sequences;pub use capture_backend::CaptureBackend;pub use daemon::daemonize;pub use daemon::is_process_running;pub use daemon::read_pid_file;pub use daemon::spawn_server_detached;pub use daemon::write_pid_file;pub use editor_server::EditorServer;pub use editor_server::EditorServerConfig;pub use input_parser::InputParser;pub use ipc::ServerListener;pub use ipc::SocketPaths;pub use protocol::ClientHello;pub use protocol::ControlMessage;pub use protocol::ServerHello;pub use protocol::PROTOCOL_VERSION;
Modules§
- capture_
backend - Capturing backend for ratatui
- daemon
- Daemonization support for running the server in the background
- editor_
server - Editor integration with the session server
- input_
parser - Server-side input parsing
- ipc
- IPC infrastructure for client-server communication
- protocol
- Protocol definitions for client-server communication