Add assistant-ui data agent frontend

This commit is contained in:
武阳
2026-05-06 16:18:32 +08:00
parent d6a2359dc1
commit 7d4ae3e7ba
119 changed files with 14330 additions and 14420 deletions
+14 -2
View File
@@ -13,6 +13,7 @@ MAX_MUTATION_HISTORY = 8
class AgentMessage:
role: str
content: str
model_content: str | None = None
name: str | None = None
tool_call_id: str | None = None
tool_calls: tuple[JSONDict, ...] = ()
@@ -26,7 +27,7 @@ class AgentMessage:
def to_openai_message(self) -> JSONDict:
payload: JSONDict = {
'role': self.role,
'content': self.content,
'content': self.model_content if self.model_content is not None else self.content,
}
if self.name is not None:
payload['name'] = self.name
@@ -37,7 +38,16 @@ class AgentMessage:
return payload
def to_transcript_entry(self) -> JSONDict:
payload = self.to_openai_message()
payload: JSONDict = {
'role': self.role,
'content': self.content,
}
if self.name is not None:
payload['name'] = self.name
if self.tool_call_id is not None:
payload['tool_call_id'] = self.tool_call_id
if self.tool_calls:
payload['tool_calls'] = list(self.tool_calls)
blocks = self.blocks or _derive_blocks(self)
if blocks:
payload['blocks'] = [dict(block) for block in blocks]
@@ -288,6 +298,7 @@ class AgentSessionState:
self,
content: str,
*,
model_content: str | None = None,
metadata: dict[str, Any] | None = None,
message_id: str | None = None,
) -> None:
@@ -295,6 +306,7 @@ class AgentSessionState:
AgentMessage(
role='user',
content=content,
model_content=model_content,
blocks=_text_blocks(content),
metadata=_initialize_message_metadata(
role='user',