(builder *strings.Builder, msg session.Message)
| 101 | } |
| 102 | |
| 103 | func writeAssistantMessage(builder *strings.Builder, msg session.Message) { |
| 104 | builder.WriteString("\n## Assistant") |
| 105 | if msg.AgentName != "" { |
| 106 | fmt.Fprintf(builder, " (%s)", msg.AgentName) |
| 107 | } |
| 108 | builder.WriteString("\n\n") |
| 109 | |
| 110 | if msg.Message.ReasoningContent != "" { |
| 111 | builder.WriteString("### Reasoning\n\n") |
| 112 | builder.WriteString(msg.Message.ReasoningContent) |
| 113 | builder.WriteString("\n\n") |
| 114 | } |
| 115 | |
| 116 | if msg.Message.Content != "" { |
| 117 | builder.WriteString(msg.Message.Content) |
| 118 | builder.WriteString("\n") |
| 119 | } |
| 120 | |
| 121 | if len(msg.Message.ToolCalls) > 0 { |
| 122 | builder.WriteString("\n### Tool Calls\n\n") |
| 123 | for _, toolCall := range msg.Message.ToolCalls { |
| 124 | fmt.Fprintf(builder, "- **%s**", toolCall.Function.Name) |
| 125 | if toolCall.ID != "" { |
| 126 | fmt.Fprintf(builder, " (ID: %s)", toolCall.ID) |
| 127 | } |
| 128 | |
| 129 | builder.WriteString("\n") |
| 130 | toJSONString(builder, toolCall.Function.Arguments) |
| 131 | builder.WriteString("\n") |
| 132 | } |
| 133 | builder.WriteString("\n") |
| 134 | } |
| 135 | } |
| 136 | |
| 137 | func writeToolMessage(builder *strings.Builder, msg session.Message) { |
| 138 | builder.WriteString("### Tool Result") |
no test coverage detected