id, conversationId: $message->conversation_id, role: $message->role, content: $message->content, agent: $message->agent, attachments: $message->attachments, toolCalls: $message->tool_calls, toolResults: $message->tool_results, usage: $message->usage, meta: $message->meta, createdAt: $message->created_at, updatedAt: $message->updated_at, ); } public static function fromAgentResponse(AgentResponse|TextResponse $response, string $agent): MessageDto { /** @var AssistantMessage $message */ $message = $response->messages->first(); return new self( id: $response->invocationId, conversationId: $response->conversationId, role: $message->role->value, content: $message->content, agent: $agent, attachments: [], toolCalls: $response->toolCalls->toArray(), toolResults: $response->toolResults->toArray(), usage: $response->usage->toArray(), meta: $response->meta->toArray(), createdAt: now(), updatedAt: now(), ); } }