fix(ui): regression in tool output in client/server mode (#2878)

Christian Rocha created

Change summary

internal/proto/message.go              | 2 ++
internal/server/events.go              | 3 +++
internal/workspace/client_workspace.go | 3 +++
3 files changed, 8 insertions(+)

Detailed changes

internal/proto/message.go 🔗

@@ -153,6 +153,8 @@ type ToolResult struct {
 	ToolCallID string `json:"tool_call_id"`
 	Name       string `json:"name"`
 	Content    string `json:"content"`
+	Data       string `json:"data,omitempty"`
+	MIMEType   string `json:"mime_type,omitempty"`
 	Metadata   string `json:"metadata"`
 	IsError    bool   `json:"is_error"`
 }

internal/server/events.go 🔗

@@ -186,6 +186,9 @@ func messageToProto(m message.Message) proto.Message {
 				ToolCallID: v.ToolCallID,
 				Name:       v.Name,
 				Content:    v.Content,
+				Data:       v.Data,
+				MIMEType:   v.MIMEType,
+				Metadata:   v.Metadata,
 				IsError:    v.IsError,
 			})
 		case message.Finish:

internal/workspace/client_workspace.go 🔗

@@ -722,6 +722,9 @@ func protoToMessage(m proto.Message) message.Message {
 				ToolCallID: v.ToolCallID,
 				Name:       v.Name,
 				Content:    v.Content,
+				Data:       v.Data,
+				MIMEType:   v.MIMEType,
+				Metadata:   v.Metadata,
 				IsError:    v.IsError,
 			})
 		case proto.Finish: