MCPcopy Create free account
hub / github.com/Louisym/MiniCC / ConversationMessage

Class ConversationMessage

tutorials/07_auto_compaction.py:69–91  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

67
68@dataclass(frozen=True)
69class ConversationMessage:
70 role: str
71 blocks: tuple[ContentBlock, ...]
72 usage: Optional[TokenUsage] = None
73
74 @staticmethod
75 def user_text(text: str) -> "ConversationMessage":
76 return ConversationMessage(role="user", blocks=(TextBlock(text=text),))
77
78 @staticmethod
79 def assistant_text(text: str) -> "ConversationMessage":
80 return ConversationMessage(role="assistant", blocks=(TextBlock(text=text),))
81
82 @staticmethod
83 def system_text(text: str) -> "ConversationMessage":
84 return ConversationMessage(role="system", blocks=(TextBlock(text=text),))
85
86 @staticmethod
87 def tool_result(tool_use_id: str, tool_name: str, output: str, is_error: bool = False) -> "ConversationMessage":
88 return ConversationMessage(
89 role="tool",
90 blocks=(ToolResultBlock(tool_use_id=tool_use_id, tool_name=tool_name, output=output, is_error=is_error),),
91 )
92
93@dataclass
94class Session:

Callers 5

user_textMethod · 0.70
assistant_textMethod · 0.70
system_textMethod · 0.70
tool_resultMethod · 0.70
mainFunction · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected