diff --git a/src/core/error.ts b/src/core/error.ts index 89ffec90..eea91395 100644 --- a/src/core/error.ts +++ b/src/core/error.ts @@ -4,6 +4,8 @@ import { castToError } from '../internal/errors'; export class AnthropicError extends Error {} +export class UnableToParseToolParameterError extends AnthropicError {} + export class APIError< TStatus extends number | undefined = number | undefined, THeaders extends Headers | undefined = Headers | undefined, diff --git a/src/lib/BetaMessageStream.ts b/src/lib/BetaMessageStream.ts index 934da564..e791d64b 100644 --- a/src/lib/BetaMessageStream.ts +++ b/src/lib/BetaMessageStream.ts @@ -1,6 +1,6 @@ import { partialParse } from '../_vendor/partial-json-parser/parser'; import type { Logger } from '../client'; -import { AnthropicError, APIUserAbortError } from '../error'; +import { AnthropicError, APIUserAbortError, UnableToParseToolParameterError } from '../error'; import { isAbortError } from '../internal/errors'; import { type RequestOptions } from '../internal/request-options'; import { @@ -413,6 +413,9 @@ export class BetaMessageStream implements AsyncIterable implements AsyncIterable; + + + /** + * Body param: Whether to ignore tool parameter parse errors. + * + * If set to `true`, the model will ignore tool parameter parse errors and return them in the response. + * + * If set to `false`, the model will return an error if a tool parameter parse error occurs. + */ + ignore_tool_parameter_parse_errors?: boolean; } export namespace MessageCreateParams {