car-inference-types 0.53.0

Pure-serde conversation/message wire types for Common Agent Runtime inference — shared by car-inference and car-sync so the transcript-resume projection can never drift from the real Message enum
Documentation

car-inference-types

Pure-serde conversation/message wire types for Common Agent Runtime inference — Message, ToolCall, ContentBlock.

These define the multi-turn conversation wire form car-inference's protocol handlers and local chat templates consume. They were extracted out of car-inference so a dependency-light consumer can build and pattern-match the real types without pulling the Candle/MLX inference stack:

  • car-inference re-exports every type here (pub use car_inference_types::{Message, ToolCall, ContentBlock}), so its own callers are unchanged.
  • car-sync's transcript-resume projection (multi-device sync B2) builds Vec<Message> directly from folded conversation ops. Depending on this crate — instead of a hand-copied mirror — makes any change to Message's shape a compile error at the resume site, not a runtime from_value::<Message> break in the daemon.

The crate is deliberately serde-only (zero Candle/MLX/tokenizer weight). Anything that needs a model backend belongs in car-inference, not here.