3.2 KiB
3.2 KiB
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[0.2.0] - 2025-11-10
BREAKING CHANGES
Removed Deprecated Event Variants
The MessagePartAdded event variant has been removed from the Event enum. This variant was part of the old streaming system and has been replaced by the new ACP-style SessionUpdate event.
Migration Guide:
If you were using MessagePartAdded, you should migrate to using SessionUpdate instead:
Old code:
match event {
Event::MessagePartAdded { session_id, message_id, part } => {
// Handle message part
}
// ...
}
New code:
match event {
Event::SessionUpdate { session_id, update } => {
match update {
SessionUpdate::UserMessageChunk { message_id, content, .. } => {
// Handle user message content
}
SessionUpdate::AgentMessageChunk { message_id, content, .. } => {
// Handle agent message content
}
SessionUpdate::AgentThoughtChunk { message_id, content, .. } => {
// Handle agent thinking/reasoning
}
SessionUpdate::ToolCall { message_id, tool_call, .. } => {
// Handle tool call initiated
}
SessionUpdate::ToolCallUpdate { message_id, tool_call_id, tool_call, .. } => {
// Handle tool call updates
}
}
}
// ...
}
Key Differences:
SessionUpdateuses typedContentBlockinstead of genericMessagePart- Updates are categorized by type (user/agent/thought/tool)
- Better separation of concerns for streaming content
- Aligns with Agent-Client Protocol (ACP) standards
What This Means:
- The protocol now uses a unified streaming model via
SessionUpdate - Better alignment with ACP specification
- Clearer separation between message lifecycle events and streaming updates
- More structured content representation with
ContentBlock
Added
SessionUpdateevent variant with ACP-style streaming updatesSessionUpdateenum with variants:UserMessageChunk: User message content streamingAgentMessageChunk: Agent message content streamingAgentThoughtChunk: Agent reasoning/thinking streamingToolCall: Tool call initiatedToolCallUpdate: Tool call status/content updates
ContentBlockenum for structured content representationToolCalltype with status tracking and metadata
Changed
- Streaming events now use
SessionUpdateinstead ofMessagePartAdded - Version bumped from 0.1.0 to 0.2.0 (breaking change)
[0.1.0] - 2025-11-09
Added
- Initial protocol definition
Eventenum with session, message, connector, and system eventsSessionandSessionMetadatatypesMessage,MessageMetadata,MessageRole,MessageStatustypesMessagePartenum for message content- OpenCode adapter for translating OpenCode events to Dirigent protocol
- REST adapter for converting REST API responses
- Comprehensive test suite