MCPcopy Create free account
hub / github.com/GongShichen/LuminaCode / BuildAssistantMessage

Function BuildAssistantMessage

agent/messages.go:48–67  ·  view source on GitHub ↗
(thinkingContent []map[string]any, fullText string, toolCalls []coretools.ToolCall, messageID string)

Source from the content-addressed store, hash-verified

46}
47
48func BuildAssistantMessage(thinkingContent []map[string]any, fullText string, toolCalls []coretools.ToolCall, messageID string) map[string]any {
49 content := make([]map[string]any, 0, len(thinkingContent)+1+len(toolCalls))
50 content = append(content, thinkingContent...)
51 if fullText != "" {
52 content = append(content, map[string]any{"type": "text", "text": fullText})
53 }
54 for _, tc := range toolCalls {
55 content = append(content, map[string]any{
56 "type": "tool_use",
57 "id": tc.ID,
58 "name": tc.Name,
59 "input": tc.Input,
60 })
61 }
62 msg := map[string]any{"role": "assistant", "content": content}
63 if messageID != "" {
64 msg["id"] = messageID
65 }
66 return msg
67}
68
69func AppendAssistantMessage(state *AgentState, thinkingContent []map[string]any, fullText string, toolCalls []coretools.ToolCall, messageID string) {
70 state.Messages = append(state.Messages, BuildAssistantMessage(thinkingContent, fullText, toolCalls, messageID))

Callers 1

AppendAssistantMessageFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected