File tree Expand file tree Collapse file tree 1 file changed +19
-6
lines changed
packages/agent-runtime/src Expand file tree Collapse file tree 1 file changed +19
-6
lines changed Original file line number Diff line number Diff line change @@ -59,7 +59,7 @@ import type {
5959 CustomToolDefinitions ,
6060 ProjectFileContext ,
6161} from '@codebuff/common/util/file'
62- import type { ToolSet } from 'ai'
62+ import { APICallError , type ToolSet } from 'ai'
6363
6464async function additionalToolDefinitions (
6565 params : {
@@ -918,11 +918,24 @@ export async function loopAgentSteps(
918918 throw error
919919 }
920920
921- // Extract clean error message (just the message, not name:message format)
922- const errorMessage =
923- error instanceof Error
924- ? error . message + ( error . stack ? `\n\n${ error . stack } ` : '' )
925- : String ( error )
921+ let errorMessage = ''
922+ if ( error instanceof APICallError ) {
923+ const {
924+ url,
925+ requestBodyValues,
926+ statusCode,
927+ responseHeaders,
928+ responseBody,
929+ isRetryable,
930+ } = error
931+ errorMessage = `API call error: ${ error . message } \n\n ${ error . stack } \n\nURL: ${ url } \nRequest body values: ${ JSON . stringify ( requestBodyValues ) } \nStatus code: ${ statusCode } \nResponse headers: ${ JSON . stringify ( responseHeaders ) } \nResponse body: ${ responseBody } \nIs retryable: ${ isRetryable } \nData: ${ JSON . stringify ( error . data ) } `
932+ } else {
933+ // Extract clean error message (just the message, not name:message format)
934+ errorMessage =
935+ error instanceof Error
936+ ? error . message + ( error . stack ? `\n\n${ error . stack } ` : '' )
937+ : String ( error )
938+ }
926939
927940 const status = checkLiveUserInput ( params ) ? 'failed' : 'cancelled'
928941 await finishAgentRun ( {
You can’t perform that action at this time.
0 commit comments