@@ -35,14 +35,13 @@ type GlobToolRenderContext struct{}
3535
3636// RenderTool implements the [ToolRenderer] interface.
3737func (g *GlobToolRenderContext) RenderTool(sty *styles.Styles, width int, opts *ToolRenderOpts) string {
38− cappedWidth := cappedMessageWidth(width)
3938 if opts.IsPending() {
4039 return pendingTool(sty, "Glob", opts.Anim)
4140 }
4241
4342 var params tools.GlobParams
4443 if err := json.Unmarshal([]byte(opts.ToolCall.Input), ¶ms); err != nil {
45− return toolErrorContent(sty, &message.ToolResult{Content: "Invalid parameters"}, cappedWidth)
44+ return toolErrorContent(sty, &message.ToolResult{Content: "Invalid parameters"}, width)
4645 }
4746
4847 toolParams := []string{params.Pattern}
@@ -50,12 +49,12 @@ func (g *GlobToolRenderContext) RenderTool(sty *styles.Styles, width int, opts *
5049 toolParams = append(toolParams, "path", params.Path)
5150 }
5251
53− header := toolHeader(sty, opts.Status, "Glob", cappedWidth, opts.Compact, toolParams...)
52+ header := toolHeader(sty, opts.Status, "Glob", width, opts.Compact, toolParams...)
5453 if opts.Compact {
5554 return header
5655 }
5756
58− if earlyState, ok := toolEarlyStateContent(sty, opts, cappedWidth); ok {
57+ if earlyState, ok := toolEarlyStateContent(sty, opts, width); ok {
5958 return joinToolParts(header, earlyState)
6059 }
6160
@@ -63,7 +62,7 @@ func (g *GlobToolRenderContext) RenderTool(sty *styles.Styles, width int, opts *
6362 return header
6463 }
6564
66− bodyWidth := cappedWidth - toolBodyLeftPaddingTotal
65+ bodyWidth := width - toolBodyLeftPaddingTotal
6766 body := sty.Tool.Body.Render(toolOutputPlainContent(sty, opts.Result.Content, bodyWidth, opts.ExpandedContent))
6867 return joinToolParts(header, body)
6968}
@@ -94,14 +93,13 @@ type GrepToolRenderContext struct{}
9493
9594// RenderTool implements the [ToolRenderer] interface.
9695func (g *GrepToolRenderContext) RenderTool(sty *styles.Styles, width int, opts *ToolRenderOpts) string {
97− cappedWidth := cappedMessageWidth(width)
9896 if opts.IsPending() {
9997 return pendingTool(sty, "Grep", opts.Anim)
10098 }
10199
102100 var params tools.GrepParams
103101 if err := json.Unmarshal([]byte(opts.ToolCall.Input), ¶ms); err != nil {
104− return toolErrorContent(sty, &message.ToolResult{Content: "Invalid parameters"}, cappedWidth)
102+ return toolErrorContent(sty, &message.ToolResult{Content: "Invalid parameters"}, width)
105103 }
106104
107105 toolParams := []string{params.Pattern}
@@ -115,12 +113,12 @@ func (g *GrepToolRenderContext) RenderTool(sty *styles.Styles, width int, opts *
115113 toolParams = append(toolParams, "literal", "true")
116114 }
117115
118− header := toolHeader(sty, opts.Status, "Grep", cappedWidth, opts.Compact, toolParams...)
116+ header := toolHeader(sty, opts.Status, "Grep", width, opts.Compact, toolParams...)
119117 if opts.Compact {
120118 return header
121119 }
122120
123− if earlyState, ok := toolEarlyStateContent(sty, opts, cappedWidth); ok {
121+ if earlyState, ok := toolEarlyStateContent(sty, opts, width); ok {
124122 return joinToolParts(header, earlyState)
125123 }
126124
@@ -128,7 +126,7 @@ func (g *GrepToolRenderContext) RenderTool(sty *styles.Styles, width int, opts *
128126 return header
129127 }
130128
131− bodyWidth := cappedWidth - toolBodyLeftPaddingTotal
129+ bodyWidth := width - toolBodyLeftPaddingTotal
132130 body := sty.Tool.Body.Render(toolOutputPlainContent(sty, opts.Result.Content, bodyWidth, opts.ExpandedContent))
133131 return joinToolParts(header, body)
134132}
@@ -159,14 +157,13 @@ type LSToolRenderContext struct{}
159157
160158// RenderTool implements the [ToolRenderer] interface.
161159func (l *LSToolRenderContext) RenderTool(sty *styles.Styles, width int, opts *ToolRenderOpts) string {
162− cappedWidth := cappedMessageWidth(width)
163160 if opts.IsPending() {
164161 return pendingTool(sty, "List", opts.Anim)
165162 }
166163
167164 var params tools.LSParams
168165 if err := json.Unmarshal([]byte(opts.ToolCall.Input), ¶ms); err != nil {
169− return toolErrorContent(sty, &message.ToolResult{Content: "Invalid parameters"}, cappedWidth)
166+ return toolErrorContent(sty, &message.ToolResult{Content: "Invalid parameters"}, width)
170167 }
171168
172169 path := params.Path
@@ -175,12 +172,12 @@ func (l *LSToolRenderContext) RenderTool(sty *styles.Styles, width int, opts *To
175172 }
176173 path = fsext.PrettyPath(path)
177174
178− header := toolHeader(sty, opts.Status, "List", cappedWidth, opts.Compact, path)
175+ header := toolHeader(sty, opts.Status, "List", width, opts.Compact, path)
179176 if opts.Compact {
180177 return header
181178 }
182179
183− if earlyState, ok := toolEarlyStateContent(sty, opts, cappedWidth); ok {
180+ if earlyState, ok := toolEarlyStateContent(sty, opts, width); ok {
184181 return joinToolParts(header, earlyState)
185182 }
186183
@@ -188,7 +185,7 @@ func (l *LSToolRenderContext) RenderTool(sty *styles.Styles, width int, opts *To
188185 return header
189186 }
190187
191− bodyWidth := cappedWidth - toolBodyLeftPaddingTotal
188+ bodyWidth := width - toolBodyLeftPaddingTotal
192189 body := sty.Tool.Body.Render(toolOutputPlainContent(sty, opts.Result.Content, bodyWidth, opts.ExpandedContent))
193190 return joinToolParts(header, body)
194191}
@@ -219,14 +216,13 @@ type SourcegraphToolRenderContext struct{}
219216
220217// RenderTool implements the [ToolRenderer] interface.
221218func (s *SourcegraphToolRenderContext) RenderTool(sty *styles.Styles, width int, opts *ToolRenderOpts) string {
222− cappedWidth := cappedMessageWidth(width)
223219 if opts.IsPending() {
224220 return pendingTool(sty, "Sourcegraph", opts.Anim)
225221 }
226222
227223 var params tools.SourcegraphParams
228224 if err := json.Unmarshal([]byte(opts.ToolCall.Input), ¶ms); err != nil {
229− return toolErrorContent(sty, &message.ToolResult{Content: "Invalid parameters"}, cappedWidth)
225+ return toolErrorContent(sty, &message.ToolResult{Content: "Invalid parameters"}, width)
230226 }
231227
232228 toolParams := []string{params.Query}
@@ -237,12 +233,12 @@ func (s *SourcegraphToolRenderContext) RenderTool(sty *styles.Styles, width int,
237233 toolParams = append(toolParams, "context", formatNonZero(params.ContextWindow))
238234 }
239235
240− header := toolHeader(sty, opts.Status, "Sourcegraph", cappedWidth, opts.Compact, toolParams...)
236+ header := toolHeader(sty, opts.Status, "Sourcegraph", width, opts.Compact, toolParams...)
241237 if opts.Compact {
242238 return header
243239 }
244240
245− if earlyState, ok := toolEarlyStateContent(sty, opts, cappedWidth); ok {
241+ if earlyState, ok := toolEarlyStateContent(sty, opts, width); ok {
246242 return joinToolParts(header, earlyState)
247243 }
248244
@@ -250,7 +246,7 @@ func (s *SourcegraphToolRenderContext) RenderTool(sty *styles.Styles, width int,
250246 return header
251247 }
252248
253− bodyWidth := cappedWidth - toolBodyLeftPaddingTotal
249+ bodyWidth := width - toolBodyLeftPaddingTotal
254250 body := sty.Tool.Body.Render(toolOutputPlainContent(sty, opts.Result.Content, bodyWidth, opts.ExpandedContent))
255251 return joinToolParts(header, body)
256252}