@@ -145,7 +145,7 @@ func formatSourcegraphResults(result map[string]any, contextWindow int) (string,
145 for _, err := range errors {
145 for _, err := range errors {
146 if errMap, ok := err.(map[string]any); ok {
146 if errMap, ok := err.(map[string]any); ok {
147 if message, ok := errMap["message"].(string); ok {
147 if message, ok := errMap["message"].(string); ok {
148− buffer.WriteString(fmt.Sprintf("- %s\n", message))
148+ fmt.Fprintf(&buffer, "- %s\n", message)
@@ -172,7 +172,7 @@ func formatSourcegraphResults(result map[string]any, contextWindow int) (string,
172 limitHit, _ := searchResults["limitHit"].(bool)
172 limitHit, _ := searchResults["limitHit"].(bool)
174 buffer.WriteString("# Sourcegraph Search Results\n\n")
174 buffer.WriteString("# Sourcegraph Search Results\n\n")
175− buffer.WriteString(fmt.Sprintf("Found %d matches across %d results\n", int(matchCount), int(resultCount)))
175+ fmt.Fprintf(&buffer, "Found %d matches across %d results\n", int(matchCount), int(resultCount))
177 if limitHit {
177 if limitHit {
178 buffer.WriteString("(Result limit reached, try a more specific query)\n")
178 buffer.WriteString("(Result limit reached, try a more specific query)\n")
@@ -215,10 +215,10 @@ func formatSourcegraphResults(result map[string]any, contextWindow int) (string,
215 fileURL, _ := file["url"].(string)
215 fileURL, _ := file["url"].(string)
216 fileContent, _ := file["content"].(string)
216 fileContent, _ := file["content"].(string)
218− buffer.WriteString(fmt.Sprintf("## Result %d: %s/%s\n\n", i+1, repoName, filePath))
218+ fmt.Fprintf(&buffer, "## Result %d: %s/%s\n\n", i+1, repoName, filePath)
220 if fileURL != "" {
220 if fileURL != "" {
221− buffer.WriteString(fmt.Sprintf("URL: %s\n\n", fileURL))
221+ fmt.Fprintf(&buffer, "URL: %s\n\n", fileURL)
224 if len(lineMatches) > 0 {
224 if len(lineMatches) > 0 {
@@ -240,24 +240,24 @@ func formatSourcegraphResults(result map[string]any, contextWindow int) (string,
241 for j := startLine - 1; j < int(lineNumber)-1 && j < len(lines); j++ {
241 for j := startLine - 1; j < int(lineNumber)-1 && j < len(lines); j++ {
242 if j >= 0 {
242 if j >= 0 {
243− buffer.WriteString(fmt.Sprintf("%d| %s\n", j+1, lines[j]))
243+ fmt.Fprintf(&buffer, "%d| %s\n", j+1, lines[j])
247− buffer.WriteString(fmt.Sprintf("%d| %s\n", int(lineNumber), preview))
247+ fmt.Fprintf(&buffer, "%d| %s\n", int(lineNumber), preview)
249 endLine := int(lineNumber) + contextWindow
249 endLine := int(lineNumber) + contextWindow
251 for j := int(lineNumber); j < endLine && j < len(lines); j++ {
251 for j := int(lineNumber); j < endLine && j < len(lines); j++ {
252 if j < len(lines) {
252 if j < len(lines) {
253− buffer.WriteString(fmt.Sprintf("%d| %s\n", j+1, lines[j]))
253+ fmt.Fprintf(&buffer, "%d| %s\n", j+1, lines[j])
257 buffer.WriteString("```\n\n")
257 buffer.WriteString("```\n\n")
259 buffer.WriteString("```\n")
259 buffer.WriteString("```\n")
260− buffer.WriteString(fmt.Sprintf("%d| %s\n", int(lineNumber), preview))
260+ fmt.Fprintf(&buffer, "%d| %s\n", int(lineNumber), preview)
261 buffer.WriteString("```\n\n")
261 buffer.WriteString("```\n\n")