Protocol reference

Protocol reference

Protocol reference

TL;DR. The normative phux wire protocol, versioned with phux-protocol. Start with the tutorial for one complete connection, then use the framing, L1 terminal, L3 metadata, input, and encoding pages as the source of truth for implementations.


Files

FileOwns
TUTORIAL.mdStart here: a complete session walkthrough (HELLO → attach → output → input → detach)
proto.mdFraming, version negotiation, capabilities, flow control, transport
L1.mdTerminal substrate — the REQUIRED conformance tier
L2.mdReserved, unused — no collection tier (dissolved per ADR-0030)
L3.mdMetadata storage — OPTIONAL
input.mdINPUT_KEY / INPUT_MOUSE / INPUT_FOCUS / INPUT_PASTE / INPUT_RAW
appendix-encoding.mdEncoding primitives and the normative payload shape (positional, big-endian, length-prefixed)
appendix-reserved.mdReserved discriminant ranges
CHANGELOG.mdWire-format change log, version-stamped

Version

The current protocol version lives in crates/phux-protocol/src/ (grep PROTOCOL_VERSION). The top entry in CHANGELOG.md must match it; CI gate spec-version-sync enforces this.