@puku-ai/sdk 2.0.3 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -19
- package/package.json +21 -223
- package/sdk.cjs +5223 -0
- package/sdk.cjs.map +65 -0
- package/sdk.d.ts +8802 -0
- package/sdk.mjs +52 -0
- package/sdk.mjs.map +65 -0
- package/dist/_vendor/partial-json-parser/parser.d.mts +0 -3
- package/dist/_vendor/partial-json-parser/parser.d.ts.map +0 -1
- package/dist/_vendor/partial-json-parser/parser.js +0 -226
- package/dist/_vendor/partial-json-parser/parser.js.map +0 -1
- package/dist/_vendor/partial-json-parser/parser.mjs +0 -223
- package/dist/_vendor/partial-json-parser/parser.mjs.map +0 -1
- package/dist/api-promise.d.mts +0 -3
- package/dist/api-promise.d.ts.map +0 -1
- package/dist/api-promise.js +0 -19
- package/dist/api-promise.js.map +0 -1
- package/dist/api-promise.mjs +0 -3
- package/dist/api-promise.mjs.map +0 -1
- package/dist/client.d.mts +0 -248
- package/dist/client.d.ts.map +0 -1
- package/dist/client.js +0 -605
- package/dist/client.js.map +0 -1
- package/dist/client.mjs +0 -567
- package/dist/client.mjs.map +0 -1
- package/dist/core/api-promise.d.mts +0 -49
- package/dist/core/api-promise.d.ts.map +0 -1
- package/dist/core/api-promise.js +0 -76
- package/dist/core/api-promise.js.map +0 -1
- package/dist/core/api-promise.mjs +0 -72
- package/dist/core/api-promise.mjs.map +0 -1
- package/dist/core/error.d.mts +0 -50
- package/dist/core/error.d.ts.map +0 -1
- package/dist/core/error.js +0 -125
- package/dist/core/error.js.map +0 -1
- package/dist/core/error.mjs +0 -109
- package/dist/core/error.mjs.map +0 -1
- package/dist/core/pagination.d.mts +0 -105
- package/dist/core/pagination.d.ts.map +0 -1
- package/dist/core/pagination.js +0 -196
- package/dist/core/pagination.js.map +0 -1
- package/dist/core/pagination.mjs +0 -188
- package/dist/core/pagination.mjs.map +0 -1
- package/dist/core/resource.d.mts +0 -6
- package/dist/core/resource.d.ts.map +0 -1
- package/dist/core/resource.js +0 -12
- package/dist/core/resource.js.map +0 -1
- package/dist/core/resource.mjs +0 -8
- package/dist/core/resource.mjs.map +0 -1
- package/dist/core/streaming.d.mts +0 -33
- package/dist/core/streaming.d.ts.map +0 -1
- package/dist/core/streaming.js +0 -293
- package/dist/core/streaming.js.map +0 -1
- package/dist/core/streaming.mjs +0 -288
- package/dist/core/streaming.mjs.map +0 -1
- package/dist/core/uploads.d.mts +0 -3
- package/dist/core/uploads.d.ts.map +0 -1
- package/dist/core/uploads.js +0 -6
- package/dist/core/uploads.js.map +0 -1
- package/dist/core/uploads.mjs +0 -2
- package/dist/core/uploads.mjs.map +0 -1
- package/dist/error.d.mts +0 -3
- package/dist/error.d.ts.map +0 -1
- package/dist/error.js +0 -19
- package/dist/error.js.map +0 -1
- package/dist/error.mjs +0 -3
- package/dist/error.mjs.map +0 -1
- package/dist/helpers/beta/json-schema.d.mts +0 -41
- package/dist/helpers/beta/json-schema.d.ts.map +0 -1
- package/dist/helpers/beta/json-schema.js +0 -60
- package/dist/helpers/beta/json-schema.js.map +0 -1
- package/dist/helpers/beta/json-schema.mjs +0 -56
- package/dist/helpers/beta/json-schema.mjs.map +0 -1
- package/dist/helpers/beta/mcp.d.mts +0 -303
- package/dist/helpers/beta/mcp.d.ts.map +0 -1
- package/dist/helpers/beta/mcp.js +0 -419
- package/dist/helpers/beta/mcp.js.map +0 -1
- package/dist/helpers/beta/mcp.mjs +0 -406
- package/dist/helpers/beta/mcp.mjs.map +0 -1
- package/dist/helpers/beta/memory.d.mts +0 -11
- package/dist/helpers/beta/memory.d.ts.map +0 -1
- package/dist/helpers/beta/memory.js +0 -18
- package/dist/helpers/beta/memory.js.map +0 -1
- package/dist/helpers/beta/memory.mjs +0 -15
- package/dist/helpers/beta/memory.mjs.map +0 -1
- package/dist/helpers/beta/zod.d.mts +0 -7
- package/dist/helpers/beta/zod.d.ts.map +0 -1
- package/dist/helpers/beta/zod.js +0 -19
- package/dist/helpers/beta/zod.js.map +0 -1
- package/dist/helpers/beta/zod.mjs +0 -15
- package/dist/helpers/beta/zod.mjs.map +0 -1
- package/dist/helpers/index.d.mts +0 -3
- package/dist/helpers/index.d.ts.map +0 -1
- package/dist/helpers/index.js +0 -8
- package/dist/helpers/index.js.map +0 -1
- package/dist/helpers/index.mjs +0 -3
- package/dist/helpers/index.mjs.map +0 -1
- package/dist/helpers/json-schema.d.mts +0 -18
- package/dist/helpers/json-schema.d.ts.map +0 -1
- package/dist/helpers/json-schema.js +0 -37
- package/dist/helpers/json-schema.js.map +0 -1
- package/dist/helpers/json-schema.mjs +0 -34
- package/dist/helpers/json-schema.mjs.map +0 -1
- package/dist/helpers/zod.d.mts +0 -13
- package/dist/helpers/zod.d.ts.map +0 -1
- package/dist/helpers/zod.js +0 -24
- package/dist/helpers/zod.js.map +0 -1
- package/dist/helpers/zod.mjs +0 -21
- package/dist/helpers/zod.mjs.map +0 -1
- package/dist/index.d.mts +0 -33
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -38
- package/dist/index.js.map +0 -1
- package/dist/index.mjs +0 -12
- package/dist/index.mjs.map +0 -1
- package/dist/internal/builtin-types.d.mts +0 -73
- package/dist/internal/builtin-types.d.ts.map +0 -1
- package/dist/internal/builtin-types.js +0 -4
- package/dist/internal/builtin-types.js.map +0 -1
- package/dist/internal/builtin-types.mjs +0 -3
- package/dist/internal/builtin-types.mjs.map +0 -1
- package/dist/internal/constants.d.mts +0 -5
- package/dist/internal/constants.d.ts.map +0 -1
- package/dist/internal/constants.js +0 -18
- package/dist/internal/constants.js.map +0 -1
- package/dist/internal/constants.mjs +0 -15
- package/dist/internal/constants.mjs.map +0 -1
- package/dist/internal/decoders/jsonl.d.mts +0 -10
- package/dist/internal/decoders/jsonl.d.ts.map +0 -1
- package/dist/internal/decoders/jsonl.js +0 -41
- package/dist/internal/decoders/jsonl.js.map +0 -1
- package/dist/internal/decoders/jsonl.mjs +0 -37
- package/dist/internal/decoders/jsonl.mjs.map +0 -1
- package/dist/internal/decoders/line.d.mts +0 -17
- package/dist/internal/decoders/line.d.ts.map +0 -1
- package/dist/internal/decoders/line.js +0 -110
- package/dist/internal/decoders/line.js.map +0 -1
- package/dist/internal/decoders/line.mjs +0 -105
- package/dist/internal/decoders/line.mjs.map +0 -1
- package/dist/internal/detect-platform.d.mts +0 -15
- package/dist/internal/detect-platform.d.ts.map +0 -1
- package/dist/internal/detect-platform.js +0 -162
- package/dist/internal/detect-platform.js.map +0 -1
- package/dist/internal/detect-platform.mjs +0 -157
- package/dist/internal/detect-platform.mjs.map +0 -1
- package/dist/internal/errors.d.mts +0 -3
- package/dist/internal/errors.d.ts.map +0 -1
- package/dist/internal/errors.js +0 -41
- package/dist/internal/errors.js.map +0 -1
- package/dist/internal/errors.mjs +0 -36
- package/dist/internal/errors.mjs.map +0 -1
- package/dist/internal/headers.d.mts +0 -22
- package/dist/internal/headers.d.ts.map +0 -1
- package/dist/internal/headers.js +0 -79
- package/dist/internal/headers.js.map +0 -1
- package/dist/internal/headers.mjs +0 -74
- package/dist/internal/headers.mjs.map +0 -1
- package/dist/internal/parse.d.mts +0 -17
- package/dist/internal/parse.d.ts.map +0 -1
- package/dist/internal/parse.js +0 -60
- package/dist/internal/parse.js.map +0 -1
- package/dist/internal/parse.mjs +0 -56
- package/dist/internal/parse.mjs.map +0 -1
- package/dist/internal/request-options.d.mts +0 -77
- package/dist/internal/request-options.d.ts.map +0 -1
- package/dist/internal/request-options.js +0 -14
- package/dist/internal/request-options.js.map +0 -1
- package/dist/internal/request-options.mjs +0 -10
- package/dist/internal/request-options.mjs.map +0 -1
- package/dist/internal/shim-types.d.mts +0 -17
- package/dist/internal/shim-types.d.ts.map +0 -1
- package/dist/internal/shim-types.js +0 -4
- package/dist/internal/shim-types.js.map +0 -1
- package/dist/internal/shim-types.mjs +0 -3
- package/dist/internal/shim-types.mjs.map +0 -1
- package/dist/internal/shims.d.mts +0 -26
- package/dist/internal/shims.d.ts.map +0 -1
- package/dist/internal/shims.js +0 -92
- package/dist/internal/shims.js.map +0 -1
- package/dist/internal/shims.mjs +0 -85
- package/dist/internal/shims.mjs.map +0 -1
- package/dist/internal/stream-utils.d.mts +0 -8
- package/dist/internal/stream-utils.d.ts.map +0 -1
- package/dist/internal/stream-utils.js +0 -38
- package/dist/internal/stream-utils.js.map +0 -1
- package/dist/internal/stream-utils.mjs +0 -35
- package/dist/internal/stream-utils.mjs.map +0 -1
- package/dist/internal/to-file.d.mts +0 -45
- package/dist/internal/to-file.d.ts.map +0 -1
- package/dist/internal/to-file.js +0 -96
- package/dist/internal/to-file.js.map +0 -1
- package/dist/internal/to-file.mjs +0 -93
- package/dist/internal/to-file.mjs.map +0 -1
- package/dist/internal/types.d.mts +0 -69
- package/dist/internal/types.d.ts.map +0 -1
- package/dist/internal/types.js +0 -4
- package/dist/internal/types.js.map +0 -1
- package/dist/internal/types.mjs +0 -3
- package/dist/internal/types.mjs.map +0 -1
- package/dist/internal/uploads.d.mts +0 -42
- package/dist/internal/uploads.d.ts.map +0 -1
- package/dist/internal/uploads.js +0 -145
- package/dist/internal/uploads.js.map +0 -1
- package/dist/internal/uploads.mjs +0 -135
- package/dist/internal/uploads.mjs.map +0 -1
- package/dist/internal/utils/base64.d.mts +0 -3
- package/dist/internal/utils/base64.d.ts.map +0 -1
- package/dist/internal/utils/base64.js +0 -38
- package/dist/internal/utils/base64.js.map +0 -1
- package/dist/internal/utils/base64.mjs +0 -33
- package/dist/internal/utils/base64.mjs.map +0 -1
- package/dist/internal/utils/bytes.d.mts +0 -4
- package/dist/internal/utils/bytes.d.ts.map +0 -1
- package/dist/internal/utils/bytes.js +0 -31
- package/dist/internal/utils/bytes.js.map +0 -1
- package/dist/internal/utils/bytes.mjs +0 -26
- package/dist/internal/utils/bytes.mjs.map +0 -1
- package/dist/internal/utils/env.d.mts +0 -9
- package/dist/internal/utils/env.d.ts.map +0 -1
- package/dist/internal/utils/env.js +0 -22
- package/dist/internal/utils/env.js.map +0 -1
- package/dist/internal/utils/env.mjs +0 -18
- package/dist/internal/utils/env.mjs.map +0 -1
- package/dist/internal/utils/log.d.mts +0 -37
- package/dist/internal/utils/log.d.ts.map +0 -1
- package/dist/internal/utils/log.js +0 -86
- package/dist/internal/utils/log.js.map +0 -1
- package/dist/internal/utils/log.mjs +0 -80
- package/dist/internal/utils/log.mjs.map +0 -1
- package/dist/internal/utils/path.d.mts +0 -15
- package/dist/internal/utils/path.d.ts.map +0 -1
- package/dist/internal/utils/path.js +0 -79
- package/dist/internal/utils/path.js.map +0 -1
- package/dist/internal/utils/path.mjs +0 -74
- package/dist/internal/utils/path.mjs.map +0 -1
- package/dist/internal/utils/promise.d.mts +0 -11
- package/dist/internal/utils/promise.d.ts.map +0 -1
- package/dist/internal/utils/promise.js +0 -18
- package/dist/internal/utils/promise.js.map +0 -1
- package/dist/internal/utils/promise.mjs +0 -15
- package/dist/internal/utils/promise.mjs.map +0 -1
- package/dist/internal/utils/query.d.mts +0 -5
- package/dist/internal/utils/query.d.ts.map +0 -1
- package/dist/internal/utils/query.js +0 -23
- package/dist/internal/utils/query.js.map +0 -1
- package/dist/internal/utils/query.mjs +0 -20
- package/dist/internal/utils/query.mjs.map +0 -1
- package/dist/internal/utils/sleep.d.mts +0 -2
- package/dist/internal/utils/sleep.d.ts.map +0 -1
- package/dist/internal/utils/sleep.js +0 -7
- package/dist/internal/utils/sleep.js.map +0 -1
- package/dist/internal/utils/sleep.mjs +0 -3
- package/dist/internal/utils/sleep.mjs.map +0 -1
- package/dist/internal/utils/uuid.d.mts +0 -5
- package/dist/internal/utils/uuid.d.ts.map +0 -1
- package/dist/internal/utils/uuid.js +0 -19
- package/dist/internal/utils/uuid.js.map +0 -1
- package/dist/internal/utils/uuid.mjs +0 -15
- package/dist/internal/utils/uuid.mjs.map +0 -1
- package/dist/internal/utils/values.d.mts +0 -19
- package/dist/internal/utils/values.d.ts.map +0 -1
- package/dist/internal/utils/values.js +0 -119
- package/dist/internal/utils/values.js.map +0 -1
- package/dist/internal/utils/values.mjs +0 -100
- package/dist/internal/utils/values.mjs.map +0 -1
- package/dist/internal/utils.d.mts +0 -8
- package/dist/internal/utils.d.ts.map +0 -1
- package/dist/internal/utils.js +0 -25
- package/dist/internal/utils.js.map +0 -1
- package/dist/internal/utils.mjs +0 -9
- package/dist/internal/utils.mjs.map +0 -1
- package/dist/lib/BetaMessageStream.d.mts +0 -122
- package/dist/lib/BetaMessageStream.d.ts.map +0 -1
- package/dist/lib/BetaMessageStream.js +0 -628
- package/dist/lib/BetaMessageStream.js.map +0 -1
- package/dist/lib/BetaMessageStream.mjs +0 -624
- package/dist/lib/BetaMessageStream.mjs.map +0 -1
- package/dist/lib/MessageStream.d.mts +0 -121
- package/dist/lib/MessageStream.d.ts.map +0 -1
- package/dist/lib/MessageStream.js +0 -609
- package/dist/lib/MessageStream.js.map +0 -1
- package/dist/lib/MessageStream.mjs +0 -605
- package/dist/lib/MessageStream.mjs.map +0 -1
- package/dist/lib/beta-parser.d.mts +0 -37
- package/dist/lib/beta-parser.d.ts.map +0 -1
- package/dist/lib/beta-parser.js +0 -79
- package/dist/lib/beta-parser.js.map +0 -1
- package/dist/lib/beta-parser.mjs +0 -75
- package/dist/lib/beta-parser.mjs.map +0 -1
- package/dist/lib/parser.d.mts +0 -32
- package/dist/lib/parser.d.ts.map +0 -1
- package/dist/lib/parser.js +0 -66
- package/dist/lib/parser.js.map +0 -1
- package/dist/lib/parser.mjs +0 -62
- package/dist/lib/parser.mjs.map +0 -1
- package/dist/lib/stainless-helper-header.d.mts +0 -34
- package/dist/lib/stainless-helper-header.d.ts.map +0 -1
- package/dist/lib/stainless-helper-header.js +0 -70
- package/dist/lib/stainless-helper-header.js.map +0 -1
- package/dist/lib/stainless-helper-header.mjs +0 -63
- package/dist/lib/stainless-helper-header.mjs.map +0 -1
- package/dist/lib/tools/BetaRunnableTool.d.mts +0 -57
- package/dist/lib/tools/BetaRunnableTool.d.ts.map +0 -1
- package/dist/lib/tools/BetaRunnableTool.js +0 -29
- package/dist/lib/tools/BetaRunnableTool.js.map +0 -1
- package/dist/lib/tools/BetaRunnableTool.mjs +0 -25
- package/dist/lib/tools/BetaRunnableTool.mjs.map +0 -1
- package/dist/lib/tools/BetaToolRunner.d.mts +0 -136
- package/dist/lib/tools/BetaToolRunner.d.ts.map +0 -1
- package/dist/lib/tools/BetaToolRunner.js +0 -374
- package/dist/lib/tools/BetaToolRunner.js.map +0 -1
- package/dist/lib/tools/BetaToolRunner.mjs +0 -370
- package/dist/lib/tools/BetaToolRunner.mjs.map +0 -1
- package/dist/lib/tools/CompactionControl.d.mts +0 -25
- package/dist/lib/tools/CompactionControl.d.ts.map +0 -1
- package/dist/lib/tools/CompactionControl.js +0 -28
- package/dist/lib/tools/CompactionControl.js.map +0 -1
- package/dist/lib/tools/CompactionControl.mjs +0 -25
- package/dist/lib/tools/CompactionControl.mjs.map +0 -1
- package/dist/lib/tools/ToolError.d.mts +0 -33
- package/dist/lib/tools/ToolError.d.ts.map +0 -1
- package/dist/lib/tools/ToolError.js +0 -47
- package/dist/lib/tools/ToolError.js.map +0 -1
- package/dist/lib/tools/ToolError.mjs +0 -43
- package/dist/lib/tools/ToolError.mjs.map +0 -1
- package/dist/lib/tools/ToolRunner.d.mts +0 -132
- package/dist/lib/tools/ToolRunner.d.ts.map +0 -1
- package/dist/lib/tools/ToolRunner.js +0 -291
- package/dist/lib/tools/ToolRunner.js.map +0 -1
- package/dist/lib/tools/ToolRunner.mjs +0 -287
- package/dist/lib/tools/ToolRunner.mjs.map +0 -1
- package/dist/lib/transform-json-schema.d.mts +0 -3
- package/dist/lib/transform-json-schema.d.ts.map +0 -1
- package/dist/lib/transform-json-schema.js +0 -114
- package/dist/lib/transform-json-schema.js.map +0 -1
- package/dist/lib/transform-json-schema.mjs +0 -111
- package/dist/lib/transform-json-schema.mjs.map +0 -1
- package/dist/pagination.d.mts +0 -3
- package/dist/pagination.d.ts.map +0 -1
- package/dist/pagination.js +0 -19
- package/dist/pagination.js.map +0 -1
- package/dist/pagination.mjs +0 -3
- package/dist/pagination.mjs.map +0 -1
- package/dist/resource.d.mts +0 -3
- package/dist/resource.d.ts.map +0 -1
- package/dist/resource.js +0 -19
- package/dist/resource.js.map +0 -1
- package/dist/resource.mjs +0 -3
- package/dist/resource.mjs.map +0 -1
- package/dist/resources/beta/beta.d.mts +0 -66
- package/dist/resources/beta/beta.d.ts.map +0 -1
- package/dist/resources/beta/beta.js +0 -58
- package/dist/resources/beta/beta.js.map +0 -1
- package/dist/resources/beta/beta.mjs +0 -21
- package/dist/resources/beta/beta.mjs.map +0 -1
- package/dist/resources/beta/files.d.mts +0 -151
- package/dist/resources/beta/files.d.ts.map +0 -1
- package/dist/resources/beta/files.js +0 -124
- package/dist/resources/beta/files.js.map +0 -1
- package/dist/resources/beta/files.mjs +0 -120
- package/dist/resources/beta/files.mjs.map +0 -1
- package/dist/resources/beta/index.d.mts +0 -6
- package/dist/resources/beta/index.d.ts.map +0 -1
- package/dist/resources/beta/index.js +0 -15
- package/dist/resources/beta/index.js.map +0 -1
- package/dist/resources/beta/index.mjs +0 -7
- package/dist/resources/beta/index.mjs.map +0 -1
- package/dist/resources/beta/messages/batches.d.mts +0 -646
- package/dist/resources/beta/messages/batches.d.ts.map +0 -1
- package/dist/resources/beta/messages/batches.js +0 -204
- package/dist/resources/beta/messages/batches.js.map +0 -1
- package/dist/resources/beta/messages/batches.mjs +0 -200
- package/dist/resources/beta/messages/batches.mjs.map +0 -1
- package/dist/resources/beta/messages/index.d.mts +0 -4
- package/dist/resources/beta/messages/index.d.ts.map +0 -1
- package/dist/resources/beta/messages/index.js +0 -12
- package/dist/resources/beta/messages/index.js.map +0 -1
- package/dist/resources/beta/messages/index.mjs +0 -5
- package/dist/resources/beta/messages/index.mjs.map +0 -1
- package/dist/resources/beta/messages/messages.d.mts +0 -2966
- package/dist/resources/beta/messages/messages.d.ts.map +0 -1
- package/dist/resources/beta/messages/messages.js +0 -192
- package/dist/resources/beta/messages/messages.js.map +0 -1
- package/dist/resources/beta/messages/messages.mjs +0 -153
- package/dist/resources/beta/messages/messages.mjs.map +0 -1
- package/dist/resources/beta/messages.d.mts +0 -2
- package/dist/resources/beta/messages.d.ts.map +0 -1
- package/dist/resources/beta/messages.js +0 -19
- package/dist/resources/beta/messages.js.map +0 -1
- package/dist/resources/beta/messages.mjs +0 -3
- package/dist/resources/beta/messages.mjs.map +0 -1
- package/dist/resources/beta/models.d.mts +0 -208
- package/dist/resources/beta/models.d.ts.map +0 -1
- package/dist/resources/beta/models.js +0 -60
- package/dist/resources/beta/models.js.map +0 -1
- package/dist/resources/beta/models.mjs +0 -56
- package/dist/resources/beta/models.mjs.map +0 -1
- package/dist/resources/beta/skills/index.d.mts +0 -3
- package/dist/resources/beta/skills/index.d.ts.map +0 -1
- package/dist/resources/beta/skills/index.js +0 -9
- package/dist/resources/beta/skills/index.js.map +0 -1
- package/dist/resources/beta/skills/index.mjs +0 -4
- package/dist/resources/beta/skills/index.mjs.map +0 -1
- package/dist/resources/beta/skills/skills.d.mts +0 -249
- package/dist/resources/beta/skills/skills.d.ts.map +0 -1
- package/dist/resources/beta/skills/skills.js +0 -127
- package/dist/resources/beta/skills/skills.js.map +0 -1
- package/dist/resources/beta/skills/skills.mjs +0 -90
- package/dist/resources/beta/skills/skills.mjs.map +0 -1
- package/dist/resources/beta/skills/versions.d.mts +0 -257
- package/dist/resources/beta/skills/versions.d.ts.map +0 -1
- package/dist/resources/beta/skills/versions.js +0 -100
- package/dist/resources/beta/skills/versions.js.map +0 -1
- package/dist/resources/beta/skills/versions.mjs +0 -96
- package/dist/resources/beta/skills/versions.mjs.map +0 -1
- package/dist/resources/beta/skills.d.mts +0 -2
- package/dist/resources/beta/skills.d.ts.map +0 -1
- package/dist/resources/beta/skills.js +0 -19
- package/dist/resources/beta/skills.js.map +0 -1
- package/dist/resources/beta/skills.mjs +0 -3
- package/dist/resources/beta/skills.mjs.map +0 -1
- package/dist/resources/beta.d.mts +0 -2
- package/dist/resources/beta.d.ts.map +0 -1
- package/dist/resources/beta.js +0 -19
- package/dist/resources/beta.js.map +0 -1
- package/dist/resources/beta.mjs +0 -3
- package/dist/resources/beta.mjs.map +0 -1
- package/dist/resources/completions.d.mts +0 -182
- package/dist/resources/completions.d.ts.map +0 -1
- package/dist/resources/completions.js +0 -23
- package/dist/resources/completions.js.map +0 -1
- package/dist/resources/completions.mjs +0 -19
- package/dist/resources/completions.mjs.map +0 -1
- package/dist/resources/index.d.mts +0 -6
- package/dist/resources/index.d.ts.map +0 -1
- package/dist/resources/index.js +0 -28
- package/dist/resources/index.js.map +0 -1
- package/dist/resources/index.mjs +0 -7
- package/dist/resources/index.mjs.map +0 -1
- package/dist/resources/messages/batches.d.mts +0 -304
- package/dist/resources/messages/batches.d.ts.map +0 -1
- package/dist/resources/messages/batches.js +0 -153
- package/dist/resources/messages/batches.js.map +0 -1
- package/dist/resources/messages/batches.mjs +0 -149
- package/dist/resources/messages/batches.mjs.map +0 -1
- package/dist/resources/messages/index.d.mts +0 -3
- package/dist/resources/messages/index.d.ts.map +0 -1
- package/dist/resources/messages/index.js +0 -9
- package/dist/resources/messages/index.js.map +0 -1
- package/dist/resources/messages/index.mjs +0 -4
- package/dist/resources/messages/index.mjs.map +0 -1
- package/dist/resources/messages/messages.d.mts +0 -2258
- package/dist/resources/messages/messages.d.ts.map +0 -1
- package/dist/resources/messages/messages.js +0 -157
- package/dist/resources/messages/messages.js.map +0 -1
- package/dist/resources/messages/messages.mjs +0 -120
- package/dist/resources/messages/messages.mjs.map +0 -1
- package/dist/resources/messages.d.mts +0 -2
- package/dist/resources/messages.d.ts.map +0 -1
- package/dist/resources/messages.js +0 -19
- package/dist/resources/messages.js.map +0 -1
- package/dist/resources/messages.mjs +0 -3
- package/dist/resources/messages.mjs.map +0 -1
- package/dist/resources/models.d.mts +0 -193
- package/dist/resources/models.d.ts.map +0 -1
- package/dist/resources/models.js +0 -45
- package/dist/resources/models.js.map +0 -1
- package/dist/resources/models.mjs +0 -41
- package/dist/resources/models.mjs.map +0 -1
- package/dist/resources/shared.d.mts +0 -44
- package/dist/resources/shared.d.ts.map +0 -1
- package/dist/resources/shared.js +0 -4
- package/dist/resources/shared.js.map +0 -1
- package/dist/resources/shared.mjs +0 -3
- package/dist/resources/shared.mjs.map +0 -1
- package/dist/resources/top-level.d.mts +0 -2
- package/dist/resources/top-level.d.ts.map +0 -1
- package/dist/resources/top-level.js +0 -4
- package/dist/resources/top-level.js.map +0 -1
- package/dist/resources/top-level.mjs +0 -3
- package/dist/resources/top-level.mjs.map +0 -1
- package/dist/streaming.d.mts +0 -3
- package/dist/streaming.d.ts.map +0 -1
- package/dist/streaming.js +0 -19
- package/dist/streaming.js.map +0 -1
- package/dist/streaming.mjs +0 -3
- package/dist/streaming.mjs.map +0 -1
- package/dist/tools/agent-toolset/fs-util.d.mts +0 -50
- package/dist/tools/agent-toolset/fs-util.d.ts.map +0 -1
- package/dist/tools/agent-toolset/fs-util.js +0 -191
- package/dist/tools/agent-toolset/fs-util.js.map +0 -1
- package/dist/tools/agent-toolset/fs-util.mjs +0 -151
- package/dist/tools/agent-toolset/fs-util.mjs.map +0 -1
- package/dist/tools/agent-toolset/node.browser.d.mts +0 -51
- package/dist/tools/agent-toolset/node.browser.d.ts.map +0 -1
- package/dist/tools/agent-toolset/node.browser.js +0 -94
- package/dist/tools/agent-toolset/node.browser.js.map +0 -1
- package/dist/tools/agent-toolset/node.browser.mjs +0 -78
- package/dist/tools/agent-toolset/node.browser.mjs.map +0 -1
- package/dist/tools/agent-toolset/node.d.mts +0 -158
- package/dist/tools/agent-toolset/node.d.ts.map +0 -1
- package/dist/tools/agent-toolset/node.js +0 -814
- package/dist/tools/agent-toolset/node.js.map +0 -1
- package/dist/tools/agent-toolset/node.mjs +0 -765
- package/dist/tools/agent-toolset/node.mjs.map +0 -1
- package/dist/tools/agent-toolset/skills.d.mts +0 -75
- package/dist/tools/agent-toolset/skills.d.ts.map +0 -1
- package/dist/tools/agent-toolset/skills.js +0 -196
- package/dist/tools/agent-toolset/skills.js.map +0 -1
- package/dist/tools/agent-toolset/skills.mjs +0 -153
- package/dist/tools/agent-toolset/skills.mjs.map +0 -1
- package/dist/tools/memory/node.d.mts +0 -18
- package/dist/tools/memory/node.d.ts.map +0 -1
- package/dist/tools/memory/node.js +0 -358
- package/dist/tools/memory/node.js.map +0 -1
- package/dist/tools/memory/node.mjs +0 -320
- package/dist/tools/memory/node.mjs.map +0 -1
- package/dist/uploads.d.mts +0 -3
- package/dist/uploads.d.ts.map +0 -1
- package/dist/uploads.js +0 -19
- package/dist/uploads.js.map +0 -1
- package/dist/uploads.mjs +0 -3
- package/dist/uploads.mjs.map +0 -1
- package/dist/version.d.mts +0 -2
- package/dist/version.d.ts.map +0 -1
- package/dist/version.js +0 -5
- package/dist/version.js.map +0 -1
- package/dist/version.mjs +0 -2
- package/dist/version.mjs.map +0 -1
package/dist/resources/models.js
DELETED
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
3
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.Models = void 0;
|
|
5
|
-
const resource_js_1 = require("../core/resource.js");
|
|
6
|
-
const pagination_js_1 = require("../core/pagination.js");
|
|
7
|
-
const headers_js_1 = require("../internal/headers.js");
|
|
8
|
-
const path_js_1 = require("../internal/utils/path.js");
|
|
9
|
-
class Models extends resource_js_1.APIResource {
|
|
10
|
-
/**
|
|
11
|
-
* Get a specific model.
|
|
12
|
-
*
|
|
13
|
-
* The Models API response can be used to determine information about a specific
|
|
14
|
-
* model or resolve a model alias to a model ID.
|
|
15
|
-
*/
|
|
16
|
-
retrieve(modelID, params = {}, options) {
|
|
17
|
-
const { betas } = params ?? {};
|
|
18
|
-
return this._client.get((0, path_js_1.path) `/v1/models/${modelID}`, {
|
|
19
|
-
...options,
|
|
20
|
-
headers: (0, headers_js_1.buildHeaders)([
|
|
21
|
-
{ ...(betas?.toString() != null ? { 'anthropic-beta': betas?.toString() } : undefined) },
|
|
22
|
-
options?.headers,
|
|
23
|
-
]),
|
|
24
|
-
});
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* List available models.
|
|
28
|
-
*
|
|
29
|
-
* The Models API response can be used to determine which models are available for
|
|
30
|
-
* use in the API. More recently released models are listed first.
|
|
31
|
-
*/
|
|
32
|
-
list(params = {}, options) {
|
|
33
|
-
const { betas, ...query } = params ?? {};
|
|
34
|
-
return this._client.getAPIList('/v1/models', (pagination_js_1.Page), {
|
|
35
|
-
query,
|
|
36
|
-
...options,
|
|
37
|
-
headers: (0, headers_js_1.buildHeaders)([
|
|
38
|
-
{ ...(betas?.toString() != null ? { 'anthropic-beta': betas?.toString() } : undefined) },
|
|
39
|
-
options?.headers,
|
|
40
|
-
]),
|
|
41
|
-
});
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
exports.Models = Models;
|
|
45
|
-
//# sourceMappingURL=models.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"models.js","sourceRoot":"","sources":["../../src/vendor/resources/models.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,qDAAkD;AAGlD,yDAA2E;AAC3E,uDAAsD;AAEtD,uDAAiD;AAEjD,MAAa,MAAO,SAAQ,yBAAW;IACrC;;;;;OAKG;IACH,QAAQ,CACN,OAAe,EACf,SAAiD,EAAE,EACnD,OAAwB;QAExB,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,EAAE,CAAC;QAC/B,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAA,cAAI,EAAA,cAAc,OAAO,EAAE,EAAE;YACnD,GAAG,OAAO;YACV,OAAO,EAAE,IAAA,yBAAY,EAAC;gBACpB,EAAE,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE;gBACxF,OAAO,EAAE,OAAO;aACjB,CAAC;SACH,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,IAAI,CACF,SAA6C,EAAE,EAC/C,OAAwB;QAExB,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,GAAG,MAAM,IAAI,EAAE,CAAC;QACzC,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE,CAAA,oBAAe,CAAA,EAAE;YAC5D,KAAK;YACL,GAAG,OAAO;YACV,OAAO,EAAE,IAAA,yBAAY,EAAC;gBACpB,EAAE,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE;gBACxF,OAAO,EAAE,OAAO;aACjB,CAAC;SACH,CAAC,CAAC;IACL,CAAC;CACF;AA1CD,wBA0CC"}
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
-
import { APIResource } from '../core/resource.js';
|
|
3
|
-
import { Page } from '../core/pagination.js';
|
|
4
|
-
import { buildHeaders } from '../internal/headers.js';
|
|
5
|
-
import { path } from '../internal/utils/path.js';
|
|
6
|
-
export class Models extends APIResource {
|
|
7
|
-
/**
|
|
8
|
-
* Get a specific model.
|
|
9
|
-
*
|
|
10
|
-
* The Models API response can be used to determine information about a specific
|
|
11
|
-
* model or resolve a model alias to a model ID.
|
|
12
|
-
*/
|
|
13
|
-
retrieve(modelID, params = {}, options) {
|
|
14
|
-
const { betas } = params ?? {};
|
|
15
|
-
return this._client.get(path `/v1/models/${modelID}`, {
|
|
16
|
-
...options,
|
|
17
|
-
headers: buildHeaders([
|
|
18
|
-
{ ...(betas?.toString() != null ? { 'anthropic-beta': betas?.toString() } : undefined) },
|
|
19
|
-
options?.headers,
|
|
20
|
-
]),
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
/**
|
|
24
|
-
* List available models.
|
|
25
|
-
*
|
|
26
|
-
* The Models API response can be used to determine which models are available for
|
|
27
|
-
* use in the API. More recently released models are listed first.
|
|
28
|
-
*/
|
|
29
|
-
list(params = {}, options) {
|
|
30
|
-
const { betas, ...query } = params ?? {};
|
|
31
|
-
return this._client.getAPIList('/v1/models', (Page), {
|
|
32
|
-
query,
|
|
33
|
-
...options,
|
|
34
|
-
headers: buildHeaders([
|
|
35
|
-
{ ...(betas?.toString() != null ? { 'anthropic-beta': betas?.toString() } : undefined) },
|
|
36
|
-
options?.headers,
|
|
37
|
-
]),
|
|
38
|
-
});
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
//# sourceMappingURL=models.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"models.js","sourceRoot":"","sources":["../../src/vendor/resources/models.ts"],"names":[],"mappings":"AAAA,sFAAsF;AAEtF,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGlD,OAAO,EAAE,IAAI,EAAgC,MAAM,uBAAuB,CAAC;AAC3E,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEtD,OAAO,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAC;AAEjD,MAAM,OAAO,MAAO,SAAQ,WAAW;IACrC;;;;;OAKG;IACH,QAAQ,CACN,OAAe,EACf,SAAiD,EAAE,EACnD,OAAwB;QAExB,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,EAAE,CAAC;QAC/B,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAA,cAAc,OAAO,EAAE,EAAE;YACnD,GAAG,OAAO;YACV,OAAO,EAAE,YAAY,CAAC;gBACpB,EAAE,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE;gBACxF,OAAO,EAAE,OAAO;aACjB,CAAC;SACH,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,IAAI,CACF,SAA6C,EAAE,EAC/C,OAAwB;QAExB,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,GAAG,MAAM,IAAI,EAAE,CAAC;QACzC,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE,CAAA,IAAe,CAAA,EAAE;YAC5D,KAAK;YACL,GAAG,OAAO;YACV,OAAO,EAAE,YAAY,CAAC;gBACpB,EAAE,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE;gBACxF,OAAO,EAAE,OAAO;aACjB,CAAC;SACH,CAAC,CAAC;IACL,CAAC;CACF"}
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
export interface APIErrorObject {
|
|
2
|
-
message: string;
|
|
3
|
-
type: 'api_error';
|
|
4
|
-
}
|
|
5
|
-
export interface AuthenticationError {
|
|
6
|
-
message: string;
|
|
7
|
-
type: 'authentication_error';
|
|
8
|
-
}
|
|
9
|
-
export interface BillingError {
|
|
10
|
-
message: string;
|
|
11
|
-
type: 'billing_error';
|
|
12
|
-
}
|
|
13
|
-
export type ErrorObject = InvalidRequestError | AuthenticationError | BillingError | PermissionError | NotFoundError | RateLimitError | GatewayTimeoutError | APIErrorObject | OverloadedError;
|
|
14
|
-
export interface ErrorResponse {
|
|
15
|
-
error: ErrorObject;
|
|
16
|
-
request_id: string | null;
|
|
17
|
-
type: 'error';
|
|
18
|
-
}
|
|
19
|
-
export type ErrorType = 'invalid_request_error' | 'authentication_error' | 'permission_error' | 'not_found_error' | 'rate_limit_error' | 'timeout_error' | 'overloaded_error' | 'api_error' | 'billing_error';
|
|
20
|
-
export interface GatewayTimeoutError {
|
|
21
|
-
message: string;
|
|
22
|
-
type: 'timeout_error';
|
|
23
|
-
}
|
|
24
|
-
export interface InvalidRequestError {
|
|
25
|
-
message: string;
|
|
26
|
-
type: 'invalid_request_error';
|
|
27
|
-
}
|
|
28
|
-
export interface NotFoundError {
|
|
29
|
-
message: string;
|
|
30
|
-
type: 'not_found_error';
|
|
31
|
-
}
|
|
32
|
-
export interface OverloadedError {
|
|
33
|
-
message: string;
|
|
34
|
-
type: 'overloaded_error';
|
|
35
|
-
}
|
|
36
|
-
export interface PermissionError {
|
|
37
|
-
message: string;
|
|
38
|
-
type: 'permission_error';
|
|
39
|
-
}
|
|
40
|
-
export interface RateLimitError {
|
|
41
|
-
message: string;
|
|
42
|
-
type: 'rate_limit_error';
|
|
43
|
-
}
|
|
44
|
-
//# sourceMappingURL=shared.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/vendor/resources/shared.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAEhB,IAAI,EAAE,WAAW,CAAC;CACnB;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAEhB,IAAI,EAAE,sBAAsB,CAAC;CAC9B;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAEhB,IAAI,EAAE,eAAe,CAAC;CACvB;AAED,MAAM,MAAM,WAAW,GACnB,mBAAmB,GACnB,mBAAmB,GACnB,YAAY,GACZ,eAAe,GACf,aAAa,GACb,cAAc,GACd,mBAAmB,GACnB,cAAc,GACd,eAAe,CAAC;AAEpB,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,WAAW,CAAC;IAEnB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAE1B,IAAI,EAAE,OAAO,CAAC;CACf;AAED,MAAM,MAAM,SAAS,GACjB,uBAAuB,GACvB,sBAAsB,GACtB,kBAAkB,GAClB,iBAAiB,GACjB,kBAAkB,GAClB,eAAe,GACf,kBAAkB,GAClB,WAAW,GACX,eAAe,CAAC;AAEpB,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAEhB,IAAI,EAAE,eAAe,CAAC;CACvB;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAEhB,IAAI,EAAE,uBAAuB,CAAC;CAC/B;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAEhB,IAAI,EAAE,iBAAiB,CAAC;CACzB;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAEhB,IAAI,EAAE,kBAAkB,CAAC;CAC1B;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAEhB,IAAI,EAAE,kBAAkB,CAAC;CAC1B;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAEhB,IAAI,EAAE,kBAAkB,CAAC;CAC1B"}
|
package/dist/resources/shared.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/vendor/resources/shared.ts"],"names":[],"mappings":";AAAA,sFAAsF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/vendor/resources/shared.ts"],"names":[],"mappings":"AAAA,sFAAsF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"top-level.d.ts","sourceRoot":"","sources":["../../src/vendor/resources/top-level.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"top-level.js","sourceRoot":"","sources":["../../src/vendor/resources/top-level.ts"],"names":[],"mappings":";AAAA,sFAAsF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"top-level.js","sourceRoot":"","sources":["../../src/vendor/resources/top-level.ts"],"names":[],"mappings":"AAAA,sFAAsF"}
|
package/dist/streaming.d.mts
DELETED
package/dist/streaming.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"streaming.d.ts","sourceRoot":"","sources":["../src/vendor/streaming.ts"],"names":[],"mappings":"AAAA,uDAAuD;AACvD,cAAc,qBAAqB,CAAC"}
|
package/dist/streaming.js
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
/** @deprecated Import from ./core/streaming instead */
|
|
18
|
-
__exportStar(require("./core/streaming.js"), exports);
|
|
19
|
-
//# sourceMappingURL=streaming.js.map
|
package/dist/streaming.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"streaming.js","sourceRoot":"","sources":["../src/vendor/streaming.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uDAAuD;AACvD,sDAAoC"}
|
package/dist/streaming.mjs
DELETED
package/dist/streaming.mjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"streaming.js","sourceRoot":"","sources":["../src/vendor/streaming.ts"],"names":[],"mappings":"AAAA,uDAAuD;AACvD,cAAc,qBAAqB,CAAC"}
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Shared, Node-only filesystem helpers for the agent toolset's file tools:
|
|
3
|
-
* path confinement (symlink-aware), an atomic write, and language-independent
|
|
4
|
-
* error messages. Kept out of `node.ts` so the tool implementations stay focused
|
|
5
|
-
* and these helpers can be reused by every file tool.
|
|
6
|
-
*/
|
|
7
|
-
/** Mode for directories the file tools create — not world-writable under a 0 umask. */
|
|
8
|
-
export declare const DIR_CREATE_MODE = 493;
|
|
9
|
-
/** Mode for files the file tools create. */
|
|
10
|
-
export declare const FILE_CREATE_MODE = 420;
|
|
11
|
-
/**
|
|
12
|
-
* Fully resolve `abs`: `realpath` the longest existing ancestor and re-append
|
|
13
|
-
* the rest, but never re-append a component that is itself a symlink — read the
|
|
14
|
-
* link and continue from its target instead. This handles paths being created
|
|
15
|
-
* (write/edit) without letting a symlink leaf (e.g. a dangling one pointing
|
|
16
|
-
* outside a confinement root) slip through unresolved.
|
|
17
|
-
*/
|
|
18
|
-
export declare function canonicalize(abs: string): Promise<string>;
|
|
19
|
-
/**
|
|
20
|
-
* Resolve `p` and confine it to `root`.
|
|
21
|
-
*
|
|
22
|
-
* Absolute and relative inputs go through the same canonicalise-then-contain
|
|
23
|
-
* check — an absolute path that lands inside `root` is permitted, only paths
|
|
24
|
-
* that resolve *outside* are rejected. Every symlink in `p` (including the
|
|
25
|
-
* leaf, even a dangling one) is resolved before the confinement check, and the
|
|
26
|
-
* resolved path is what the caller then operates on, so a symlink inside `root`
|
|
27
|
-
* that points outside it can neither pass the check nor be followed afterwards.
|
|
28
|
-
*
|
|
29
|
-
* Residual TOCTOU: a component could still be swapped for a symlink between this
|
|
30
|
-
* call and the eventual `fs` operation. Closing that fully needs per-component
|
|
31
|
-
* `O_NOFOLLOW`/`openat`, which Node does not expose ergonomically; this is why a
|
|
32
|
-
* sandbox is still recommended for the toolset as a whole.
|
|
33
|
-
*/
|
|
34
|
-
export declare function confineToRoot(root: string, p: string, opts?: {
|
|
35
|
-
allowOutside?: boolean;
|
|
36
|
-
}): Promise<string>;
|
|
37
|
-
/**
|
|
38
|
-
* Atomically write `content` to `targetPath`: write a sibling temp file, fsync
|
|
39
|
-
* it, then rename over the target. The rename is atomic on most filesystems, so
|
|
40
|
-
* a crash mid-write never leaves the target half-written.
|
|
41
|
-
*/
|
|
42
|
-
export declare function atomicWriteFile(targetPath: string, content: string): Promise<void>;
|
|
43
|
-
/**
|
|
44
|
-
* Map a thrown filesystem error to a consistent, language-independent message,
|
|
45
|
-
* so the model sees the same wording regardless of the runtime (Node's raw
|
|
46
|
-
* `ENOENT: no such file...` text would otherwise leak through). Falls back to
|
|
47
|
-
* the raw error message for codes we don't special-case.
|
|
48
|
-
*/
|
|
49
|
-
export declare function fsErrorMessage(err: unknown, file: string): string;
|
|
50
|
-
//# sourceMappingURL=fs-util.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"fs-util.d.ts","sourceRoot":"","sources":["../../../src/vendor/tools/agent-toolset/fs-util.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,uFAAuF;AACvF,eAAO,MAAM,eAAe,MAAQ,CAAC;AACrC,4CAA4C;AAC5C,eAAO,MAAM,gBAAgB,MAAQ,CAAC;AAWtC;;;;;;GAMG;AACH,wBAAsB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAkC/D;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,aAAa,CACjC,IAAI,EAAE,MAAM,EACZ,CAAC,EAAE,MAAM,EACT,IAAI,CAAC,EAAE;IAAE,YAAY,CAAC,EAAE,OAAO,CAAA;CAAE,GAChC,OAAO,CAAC,MAAM,CAAC,CAUjB;AAED;;;;GAIG;AACH,wBAAsB,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBxF;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAwBjE"}
|
|
@@ -1,191 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Shared, Node-only filesystem helpers for the agent toolset's file tools:
|
|
4
|
-
* path confinement (symlink-aware), an atomic write, and language-independent
|
|
5
|
-
* error messages. Kept out of `node.ts` so the tool implementations stay focused
|
|
6
|
-
* and these helpers can be reused by every file tool.
|
|
7
|
-
*/
|
|
8
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
9
|
-
if (k2 === undefined) k2 = k;
|
|
10
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
11
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
12
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
13
|
-
}
|
|
14
|
-
Object.defineProperty(o, k2, desc);
|
|
15
|
-
}) : (function(o, m, k, k2) {
|
|
16
|
-
if (k2 === undefined) k2 = k;
|
|
17
|
-
o[k2] = m[k];
|
|
18
|
-
}));
|
|
19
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
20
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
21
|
-
}) : function(o, v) {
|
|
22
|
-
o["default"] = v;
|
|
23
|
-
});
|
|
24
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
25
|
-
var ownKeys = function(o) {
|
|
26
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
27
|
-
var ar = [];
|
|
28
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
29
|
-
return ar;
|
|
30
|
-
};
|
|
31
|
-
return ownKeys(o);
|
|
32
|
-
};
|
|
33
|
-
return function (mod) {
|
|
34
|
-
if (mod && mod.__esModule) return mod;
|
|
35
|
-
var result = {};
|
|
36
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
37
|
-
__setModuleDefault(result, mod);
|
|
38
|
-
return result;
|
|
39
|
-
};
|
|
40
|
-
})();
|
|
41
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
42
|
-
exports.FILE_CREATE_MODE = exports.DIR_CREATE_MODE = void 0;
|
|
43
|
-
exports.canonicalize = canonicalize;
|
|
44
|
-
exports.confineToRoot = confineToRoot;
|
|
45
|
-
exports.atomicWriteFile = atomicWriteFile;
|
|
46
|
-
exports.fsErrorMessage = fsErrorMessage;
|
|
47
|
-
const fs = __importStar(require("node:fs/promises"));
|
|
48
|
-
const path = __importStar(require("node:path"));
|
|
49
|
-
const node_crypto_1 = require("node:crypto");
|
|
50
|
-
const ToolError_js_1 = require("../../lib/tools/ToolError.js");
|
|
51
|
-
/** Mode for directories the file tools create — not world-writable under a 0 umask. */
|
|
52
|
-
exports.DIR_CREATE_MODE = 0o755;
|
|
53
|
-
/** Mode for files the file tools create. */
|
|
54
|
-
exports.FILE_CREATE_MODE = 0o644;
|
|
55
|
-
/** `realpath` `p`, or return `p` unchanged when it cannot be resolved. */
|
|
56
|
-
async function realpathOrSelf(p) {
|
|
57
|
-
try {
|
|
58
|
-
return await fs.realpath(p);
|
|
59
|
-
}
|
|
60
|
-
catch {
|
|
61
|
-
return p;
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
/**
|
|
65
|
-
* Fully resolve `abs`: `realpath` the longest existing ancestor and re-append
|
|
66
|
-
* the rest, but never re-append a component that is itself a symlink — read the
|
|
67
|
-
* link and continue from its target instead. This handles paths being created
|
|
68
|
-
* (write/edit) without letting a symlink leaf (e.g. a dangling one pointing
|
|
69
|
-
* outside a confinement root) slip through unresolved.
|
|
70
|
-
*/
|
|
71
|
-
async function canonicalize(abs) {
|
|
72
|
-
const tail = [];
|
|
73
|
-
let prefix = abs;
|
|
74
|
-
let hops = 0;
|
|
75
|
-
for (;;) {
|
|
76
|
-
let real;
|
|
77
|
-
try {
|
|
78
|
-
real = await fs.realpath(prefix);
|
|
79
|
-
}
|
|
80
|
-
catch {
|
|
81
|
-
let isLink = false;
|
|
82
|
-
try {
|
|
83
|
-
isLink = (await fs.lstat(prefix)).isSymbolicLink();
|
|
84
|
-
}
|
|
85
|
-
catch {
|
|
86
|
-
/* prefix truly doesn't exist (ENOENT) — fall through and walk up */
|
|
87
|
-
}
|
|
88
|
-
if (isLink) {
|
|
89
|
-
// Resolve the symlink ourselves and retry; `tail` (the part below it)
|
|
90
|
-
// still applies to the link's target. The hop cap matches Linux
|
|
91
|
-
// MAXSYMLINKS — the same threshold at which `realpath` itself would
|
|
92
|
-
// have returned ELOOP — so a cycle of unresolvable links terminates.
|
|
93
|
-
if (++hops > 40) {
|
|
94
|
-
throw new ToolError_js_1.ToolError(`path ${JSON.stringify(abs)} has too many levels of symbolic links`);
|
|
95
|
-
}
|
|
96
|
-
prefix = path.resolve(path.dirname(prefix), await fs.readlink(prefix));
|
|
97
|
-
continue;
|
|
98
|
-
}
|
|
99
|
-
const parent = path.dirname(prefix);
|
|
100
|
-
if (parent === prefix)
|
|
101
|
-
return abs; // walked past the FS root without a hit
|
|
102
|
-
tail.push(path.basename(prefix));
|
|
103
|
-
prefix = parent;
|
|
104
|
-
continue;
|
|
105
|
-
}
|
|
106
|
-
return tail.length ? path.join(real, ...tail.reverse()) : real;
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
/**
|
|
110
|
-
* Resolve `p` and confine it to `root`.
|
|
111
|
-
*
|
|
112
|
-
* Absolute and relative inputs go through the same canonicalise-then-contain
|
|
113
|
-
* check — an absolute path that lands inside `root` is permitted, only paths
|
|
114
|
-
* that resolve *outside* are rejected. Every symlink in `p` (including the
|
|
115
|
-
* leaf, even a dangling one) is resolved before the confinement check, and the
|
|
116
|
-
* resolved path is what the caller then operates on, so a symlink inside `root`
|
|
117
|
-
* that points outside it can neither pass the check nor be followed afterwards.
|
|
118
|
-
*
|
|
119
|
-
* Residual TOCTOU: a component could still be swapped for a symlink between this
|
|
120
|
-
* call and the eventual `fs` operation. Closing that fully needs per-component
|
|
121
|
-
* `O_NOFOLLOW`/`openat`, which Node does not expose ergonomically; this is why a
|
|
122
|
-
* sandbox is still recommended for the toolset as a whole.
|
|
123
|
-
*/
|
|
124
|
-
async function confineToRoot(root, p, opts) {
|
|
125
|
-
const allowOutside = opts?.allowOutside ?? false;
|
|
126
|
-
const realRoot = await realpathOrSelf(path.resolve(root));
|
|
127
|
-
const abs = path.resolve(realRoot, p);
|
|
128
|
-
if (allowOutside)
|
|
129
|
-
return abs;
|
|
130
|
-
const real = await canonicalize(abs);
|
|
131
|
-
if (real !== realRoot && !real.startsWith(realRoot + path.sep)) {
|
|
132
|
-
throw new ToolError_js_1.ToolError(`path ${JSON.stringify(p)} escapes workdir`);
|
|
133
|
-
}
|
|
134
|
-
return real;
|
|
135
|
-
}
|
|
136
|
-
/**
|
|
137
|
-
* Atomically write `content` to `targetPath`: write a sibling temp file, fsync
|
|
138
|
-
* it, then rename over the target. The rename is atomic on most filesystems, so
|
|
139
|
-
* a crash mid-write never leaves the target half-written.
|
|
140
|
-
*/
|
|
141
|
-
async function atomicWriteFile(targetPath, content) {
|
|
142
|
-
const dir = path.dirname(targetPath);
|
|
143
|
-
const tempPath = path.join(dir, `.tmp-${process.pid}-${(0, node_crypto_1.randomUUID)()}`);
|
|
144
|
-
let handle;
|
|
145
|
-
try {
|
|
146
|
-
handle = await fs.open(tempPath, 'wx', exports.FILE_CREATE_MODE);
|
|
147
|
-
await handle.writeFile(content, 'utf-8');
|
|
148
|
-
await handle.sync();
|
|
149
|
-
await handle.close();
|
|
150
|
-
handle = undefined;
|
|
151
|
-
await fs.rename(tempPath, targetPath);
|
|
152
|
-
}
|
|
153
|
-
catch (err) {
|
|
154
|
-
if (handle)
|
|
155
|
-
await handle.close().catch(() => { });
|
|
156
|
-
await fs.unlink(tempPath).catch(() => { });
|
|
157
|
-
throw err;
|
|
158
|
-
}
|
|
159
|
-
}
|
|
160
|
-
/**
|
|
161
|
-
* Map a thrown filesystem error to a consistent, language-independent message,
|
|
162
|
-
* so the model sees the same wording regardless of the runtime (Node's raw
|
|
163
|
-
* `ENOENT: no such file...` text would otherwise leak through). Falls back to
|
|
164
|
-
* the raw error message for codes we don't special-case.
|
|
165
|
-
*/
|
|
166
|
-
function fsErrorMessage(err, file) {
|
|
167
|
-
const code = err?.code;
|
|
168
|
-
switch (code) {
|
|
169
|
-
case 'ENOENT':
|
|
170
|
-
return `${file}: no such file or directory`;
|
|
171
|
-
case 'EACCES':
|
|
172
|
-
case 'EPERM':
|
|
173
|
-
return `${file}: permission denied`;
|
|
174
|
-
case 'ENOTDIR':
|
|
175
|
-
return `${file}: not a directory`;
|
|
176
|
-
case 'EISDIR':
|
|
177
|
-
return `${file}: is a directory`;
|
|
178
|
-
case 'ELOOP':
|
|
179
|
-
return `${file}: too many levels of symbolic links`;
|
|
180
|
-
case 'ENAMETOOLONG':
|
|
181
|
-
return `${file}: file name too long`;
|
|
182
|
-
case 'ENOSPC':
|
|
183
|
-
return `${file}: no space left on device`;
|
|
184
|
-
case 'EMFILE':
|
|
185
|
-
case 'ENFILE':
|
|
186
|
-
return `${file}: too many open files`;
|
|
187
|
-
default:
|
|
188
|
-
return `${file}: ${err instanceof Error ? err.message : String(err)}`;
|
|
189
|
-
}
|
|
190
|
-
}
|
|
191
|
-
//# sourceMappingURL=fs-util.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"fs-util.js","sourceRoot":"","sources":["../../../src/vendor/tools/agent-toolset/fs-util.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,151 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Shared, Node-only filesystem helpers for the agent toolset's file tools:
|
|
3
|
-
* path confinement (symlink-aware), an atomic write, and language-independent
|
|
4
|
-
* error messages. Kept out of `node.ts` so the tool implementations stay focused
|
|
5
|
-
* and these helpers can be reused by every file tool.
|
|
6
|
-
*/
|
|
7
|
-
import * as fs from 'node:fs/promises';
|
|
8
|
-
import * as path from 'node:path';
|
|
9
|
-
import { randomUUID } from 'node:crypto';
|
|
10
|
-
import { ToolError } from '../../lib/tools/ToolError.js';
|
|
11
|
-
/** Mode for directories the file tools create — not world-writable under a 0 umask. */
|
|
12
|
-
export const DIR_CREATE_MODE = 0o755;
|
|
13
|
-
/** Mode for files the file tools create. */
|
|
14
|
-
export const FILE_CREATE_MODE = 0o644;
|
|
15
|
-
/** `realpath` `p`, or return `p` unchanged when it cannot be resolved. */
|
|
16
|
-
async function realpathOrSelf(p) {
|
|
17
|
-
try {
|
|
18
|
-
return await fs.realpath(p);
|
|
19
|
-
}
|
|
20
|
-
catch {
|
|
21
|
-
return p;
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
/**
|
|
25
|
-
* Fully resolve `abs`: `realpath` the longest existing ancestor and re-append
|
|
26
|
-
* the rest, but never re-append a component that is itself a symlink — read the
|
|
27
|
-
* link and continue from its target instead. This handles paths being created
|
|
28
|
-
* (write/edit) without letting a symlink leaf (e.g. a dangling one pointing
|
|
29
|
-
* outside a confinement root) slip through unresolved.
|
|
30
|
-
*/
|
|
31
|
-
export async function canonicalize(abs) {
|
|
32
|
-
const tail = [];
|
|
33
|
-
let prefix = abs;
|
|
34
|
-
let hops = 0;
|
|
35
|
-
for (;;) {
|
|
36
|
-
let real;
|
|
37
|
-
try {
|
|
38
|
-
real = await fs.realpath(prefix);
|
|
39
|
-
}
|
|
40
|
-
catch {
|
|
41
|
-
let isLink = false;
|
|
42
|
-
try {
|
|
43
|
-
isLink = (await fs.lstat(prefix)).isSymbolicLink();
|
|
44
|
-
}
|
|
45
|
-
catch {
|
|
46
|
-
/* prefix truly doesn't exist (ENOENT) — fall through and walk up */
|
|
47
|
-
}
|
|
48
|
-
if (isLink) {
|
|
49
|
-
// Resolve the symlink ourselves and retry; `tail` (the part below it)
|
|
50
|
-
// still applies to the link's target. The hop cap matches Linux
|
|
51
|
-
// MAXSYMLINKS — the same threshold at which `realpath` itself would
|
|
52
|
-
// have returned ELOOP — so a cycle of unresolvable links terminates.
|
|
53
|
-
if (++hops > 40) {
|
|
54
|
-
throw new ToolError(`path ${JSON.stringify(abs)} has too many levels of symbolic links`);
|
|
55
|
-
}
|
|
56
|
-
prefix = path.resolve(path.dirname(prefix), await fs.readlink(prefix));
|
|
57
|
-
continue;
|
|
58
|
-
}
|
|
59
|
-
const parent = path.dirname(prefix);
|
|
60
|
-
if (parent === prefix)
|
|
61
|
-
return abs; // walked past the FS root without a hit
|
|
62
|
-
tail.push(path.basename(prefix));
|
|
63
|
-
prefix = parent;
|
|
64
|
-
continue;
|
|
65
|
-
}
|
|
66
|
-
return tail.length ? path.join(real, ...tail.reverse()) : real;
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
/**
|
|
70
|
-
* Resolve `p` and confine it to `root`.
|
|
71
|
-
*
|
|
72
|
-
* Absolute and relative inputs go through the same canonicalise-then-contain
|
|
73
|
-
* check — an absolute path that lands inside `root` is permitted, only paths
|
|
74
|
-
* that resolve *outside* are rejected. Every symlink in `p` (including the
|
|
75
|
-
* leaf, even a dangling one) is resolved before the confinement check, and the
|
|
76
|
-
* resolved path is what the caller then operates on, so a symlink inside `root`
|
|
77
|
-
* that points outside it can neither pass the check nor be followed afterwards.
|
|
78
|
-
*
|
|
79
|
-
* Residual TOCTOU: a component could still be swapped for a symlink between this
|
|
80
|
-
* call and the eventual `fs` operation. Closing that fully needs per-component
|
|
81
|
-
* `O_NOFOLLOW`/`openat`, which Node does not expose ergonomically; this is why a
|
|
82
|
-
* sandbox is still recommended for the toolset as a whole.
|
|
83
|
-
*/
|
|
84
|
-
export async function confineToRoot(root, p, opts) {
|
|
85
|
-
const allowOutside = opts?.allowOutside ?? false;
|
|
86
|
-
const realRoot = await realpathOrSelf(path.resolve(root));
|
|
87
|
-
const abs = path.resolve(realRoot, p);
|
|
88
|
-
if (allowOutside)
|
|
89
|
-
return abs;
|
|
90
|
-
const real = await canonicalize(abs);
|
|
91
|
-
if (real !== realRoot && !real.startsWith(realRoot + path.sep)) {
|
|
92
|
-
throw new ToolError(`path ${JSON.stringify(p)} escapes workdir`);
|
|
93
|
-
}
|
|
94
|
-
return real;
|
|
95
|
-
}
|
|
96
|
-
/**
|
|
97
|
-
* Atomically write `content` to `targetPath`: write a sibling temp file, fsync
|
|
98
|
-
* it, then rename over the target. The rename is atomic on most filesystems, so
|
|
99
|
-
* a crash mid-write never leaves the target half-written.
|
|
100
|
-
*/
|
|
101
|
-
export async function atomicWriteFile(targetPath, content) {
|
|
102
|
-
const dir = path.dirname(targetPath);
|
|
103
|
-
const tempPath = path.join(dir, `.tmp-${process.pid}-${randomUUID()}`);
|
|
104
|
-
let handle;
|
|
105
|
-
try {
|
|
106
|
-
handle = await fs.open(tempPath, 'wx', FILE_CREATE_MODE);
|
|
107
|
-
await handle.writeFile(content, 'utf-8');
|
|
108
|
-
await handle.sync();
|
|
109
|
-
await handle.close();
|
|
110
|
-
handle = undefined;
|
|
111
|
-
await fs.rename(tempPath, targetPath);
|
|
112
|
-
}
|
|
113
|
-
catch (err) {
|
|
114
|
-
if (handle)
|
|
115
|
-
await handle.close().catch(() => { });
|
|
116
|
-
await fs.unlink(tempPath).catch(() => { });
|
|
117
|
-
throw err;
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
/**
|
|
121
|
-
* Map a thrown filesystem error to a consistent, language-independent message,
|
|
122
|
-
* so the model sees the same wording regardless of the runtime (Node's raw
|
|
123
|
-
* `ENOENT: no such file...` text would otherwise leak through). Falls back to
|
|
124
|
-
* the raw error message for codes we don't special-case.
|
|
125
|
-
*/
|
|
126
|
-
export function fsErrorMessage(err, file) {
|
|
127
|
-
const code = err?.code;
|
|
128
|
-
switch (code) {
|
|
129
|
-
case 'ENOENT':
|
|
130
|
-
return `${file}: no such file or directory`;
|
|
131
|
-
case 'EACCES':
|
|
132
|
-
case 'EPERM':
|
|
133
|
-
return `${file}: permission denied`;
|
|
134
|
-
case 'ENOTDIR':
|
|
135
|
-
return `${file}: not a directory`;
|
|
136
|
-
case 'EISDIR':
|
|
137
|
-
return `${file}: is a directory`;
|
|
138
|
-
case 'ELOOP':
|
|
139
|
-
return `${file}: too many levels of symbolic links`;
|
|
140
|
-
case 'ENAMETOOLONG':
|
|
141
|
-
return `${file}: file name too long`;
|
|
142
|
-
case 'ENOSPC':
|
|
143
|
-
return `${file}: no space left on device`;
|
|
144
|
-
case 'EMFILE':
|
|
145
|
-
case 'ENFILE':
|
|
146
|
-
return `${file}: too many open files`;
|
|
147
|
-
default:
|
|
148
|
-
return `${file}: ${err instanceof Error ? err.message : String(err)}`;
|
|
149
|
-
}
|
|
150
|
-
}
|
|
151
|
-
//# sourceMappingURL=fs-util.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"fs-util.js","sourceRoot":"","sources":["../../../src/vendor/tools/agent-toolset/fs-util.ts"],"names":[],"mappings":"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"}
|