@puku-ai/sdk 4.0.0 → 4.0.2
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 +29 -10
- package/dist/index.d.ts +26 -0
- package/dist/index.js +32 -0
- package/dist/index.js.map +1 -0
- package/dist/vendor/_vendor/partial-json-parser/parser.d.ts +2 -0
- package/dist/vendor/_vendor/partial-json-parser/parser.js +223 -0
- package/dist/vendor/_vendor/partial-json-parser/parser.js.map +1 -0
- package/dist/vendor/api-promise.d.ts +2 -0
- package/dist/vendor/api-promise.js +3 -0
- package/dist/vendor/api-promise.js.map +1 -0
- package/dist/vendor/client.d.ts +399 -0
- package/dist/vendor/client.js +976 -0
- package/dist/vendor/client.js.map +1 -0
- package/dist/vendor/core/api-promise.d.ts +49 -0
- package/dist/vendor/core/api-promise.js +77 -0
- package/dist/vendor/core/api-promise.js.map +1 -0
- package/dist/vendor/core/api.d.ts +10 -0
- package/dist/vendor/core/api.js +2 -0
- package/dist/vendor/core/api.js.map +1 -0
- package/dist/vendor/core/credentials.d.ts +130 -0
- package/dist/vendor/core/credentials.js +274 -0
- package/dist/vendor/core/credentials.js.map +1 -0
- package/dist/vendor/core/error.d.ts +82 -0
- package/dist/vendor/core/error.js +140 -0
- package/dist/vendor/core/error.js.map +1 -0
- package/dist/vendor/core/middleware.d.ts +153 -0
- package/dist/vendor/core/middleware.js +168 -0
- package/dist/vendor/core/middleware.js.map +1 -0
- package/dist/vendor/core/pagination.d.ts +121 -0
- package/dist/vendor/core/pagination.js +207 -0
- package/dist/vendor/core/pagination.js.map +1 -0
- package/dist/vendor/core/resource.d.ts +5 -0
- package/dist/vendor/core/resource.js +8 -0
- package/dist/vendor/core/resource.js.map +1 -0
- package/dist/vendor/core/streaming.d.ts +41 -0
- package/dist/vendor/core/streaming.js +342 -0
- package/dist/vendor/core/streaming.js.map +1 -0
- package/dist/vendor/core/uploads.d.ts +2 -0
- package/dist/vendor/core/uploads.js +2 -0
- package/dist/vendor/core/uploads.js.map +1 -0
- package/dist/vendor/error.d.ts +2 -0
- package/dist/vendor/error.js +3 -0
- package/dist/vendor/error.js.map +1 -0
- package/dist/vendor/helpers/beta/environments.d.ts +22 -0
- package/dist/vendor/helpers/beta/environments.js +23 -0
- package/dist/vendor/helpers/beta/environments.js.map +1 -0
- package/dist/vendor/helpers/beta/json-schema.d.ts +36 -0
- package/dist/vendor/helpers/beta/json-schema.js +53 -0
- package/dist/vendor/helpers/beta/json-schema.js.map +1 -0
- package/dist/vendor/helpers/beta/mcp.d.ts +302 -0
- package/dist/vendor/helpers/beta/mcp.js +406 -0
- package/dist/vendor/helpers/beta/mcp.js.map +1 -0
- package/dist/vendor/helpers/beta/memory.d.ts +10 -0
- package/dist/vendor/helpers/beta/memory.js +15 -0
- package/dist/vendor/helpers/beta/memory.js.map +1 -0
- package/dist/vendor/helpers/beta/standard-schema.d.ts +44 -0
- package/dist/vendor/helpers/beta/standard-schema.js +54 -0
- package/dist/vendor/helpers/beta/standard-schema.js.map +1 -0
- package/dist/vendor/helpers/beta/zod.d.ts +32 -0
- package/dist/vendor/helpers/beta/zod.js +52 -0
- package/dist/vendor/helpers/beta/zod.js.map +1 -0
- package/dist/vendor/helpers/index.d.ts +2 -0
- package/dist/vendor/helpers/index.js +3 -0
- package/dist/vendor/helpers/index.js.map +1 -0
- package/dist/vendor/helpers/json-schema.d.ts +17 -0
- package/dist/vendor/helpers/json-schema.js +34 -0
- package/dist/vendor/helpers/json-schema.js.map +1 -0
- package/dist/vendor/helpers/zod.d.ts +12 -0
- package/dist/vendor/helpers/zod.js +42 -0
- package/dist/vendor/helpers/zod.js.map +1 -0
- package/dist/vendor/index.d.ts +16 -0
- package/dist/vendor/index.js +23 -0
- package/dist/vendor/index.js.map +1 -0
- package/dist/vendor/internal/builtin-types.d.ts +72 -0
- package/dist/vendor/internal/builtin-types.js +3 -0
- package/dist/vendor/internal/builtin-types.js.map +1 -0
- package/dist/vendor/internal/constants.d.ts +4 -0
- package/dist/vendor/internal/constants.js +10 -0
- package/dist/vendor/internal/constants.js.map +1 -0
- package/dist/vendor/internal/decoders/jsonl.d.ts +9 -0
- package/dist/vendor/internal/decoders/jsonl.js +37 -0
- package/dist/vendor/internal/decoders/jsonl.js.map +1 -0
- package/dist/vendor/internal/decoders/line.d.ts +16 -0
- package/dist/vendor/internal/decoders/line.js +105 -0
- package/dist/vendor/internal/decoders/line.js.map +1 -0
- package/dist/vendor/internal/detect-platform.d.ts +14 -0
- package/dist/vendor/internal/detect-platform.js +155 -0
- package/dist/vendor/internal/detect-platform.js.map +1 -0
- package/dist/vendor/internal/errors.d.ts +2 -0
- package/dist/vendor/internal/errors.js +38 -0
- package/dist/vendor/internal/errors.js.map +1 -0
- package/dist/vendor/internal/file-store.d.ts +135 -0
- package/dist/vendor/internal/file-store.js +529 -0
- package/dist/vendor/internal/file-store.js.map +1 -0
- package/dist/vendor/internal/headers.d.ts +28 -0
- package/dist/vendor/internal/headers.js +114 -0
- package/dist/vendor/internal/headers.js.map +1 -0
- package/dist/vendor/internal/message-stream-utils.d.ts +9 -0
- package/dist/vendor/internal/message-stream-utils.js +30 -0
- package/dist/vendor/internal/message-stream-utils.js.map +1 -0
- package/dist/vendor/internal/node.browser.d.ts +8 -0
- package/dist/vendor/internal/node.browser.js +19 -0
- package/dist/vendor/internal/node.browser.js.map +1 -0
- package/dist/vendor/internal/node.d.ts +13 -0
- package/dist/vendor/internal/node.js +14 -0
- package/dist/vendor/internal/node.js.map +1 -0
- package/dist/vendor/internal/parse.d.ts +17 -0
- package/dist/vendor/internal/parse.js +62 -0
- package/dist/vendor/internal/parse.js.map +1 -0
- package/dist/vendor/internal/qs/formats.d.ts +6 -0
- package/dist/vendor/internal/qs/formats.js +9 -0
- package/dist/vendor/internal/qs/formats.js.map +1 -0
- package/dist/vendor/internal/qs/index.d.ts +9 -0
- package/dist/vendor/internal/qs/index.js +10 -0
- package/dist/vendor/internal/qs/index.js.map +1 -0
- package/dist/vendor/internal/qs/stringify.d.ts +2 -0
- package/dist/vendor/internal/qs/stringify.js +274 -0
- package/dist/vendor/internal/qs/stringify.js.map +1 -0
- package/dist/vendor/internal/qs/types.d.ts +56 -0
- package/dist/vendor/internal/qs/types.js +2 -0
- package/dist/vendor/internal/qs/types.js.map +1 -0
- package/dist/vendor/internal/qs/utils.d.ts +14 -0
- package/dist/vendor/internal/qs/utils.js +217 -0
- package/dist/vendor/internal/qs/utils.js.map +1 -0
- package/dist/vendor/internal/request-options.d.ts +126 -0
- package/dist/vendor/internal/request-options.js +27 -0
- package/dist/vendor/internal/request-options.js.map +1 -0
- package/dist/vendor/internal/request-signal.d.ts +3 -0
- package/dist/vendor/internal/request-signal.js +45 -0
- package/dist/vendor/internal/request-signal.js.map +1 -0
- package/dist/vendor/internal/shim-types.d.ts +16 -0
- package/dist/vendor/internal/shim-types.js +3 -0
- package/dist/vendor/internal/shim-types.js.map +1 -0
- package/dist/vendor/internal/shims.d.ts +25 -0
- package/dist/vendor/internal/shims.js +85 -0
- package/dist/vendor/internal/shims.js.map +1 -0
- package/dist/vendor/internal/stainless-helper-header.d.ts +59 -0
- package/dist/vendor/internal/stainless-helper-header.js +83 -0
- package/dist/vendor/internal/stainless-helper-header.js.map +1 -0
- package/dist/vendor/internal/stream-utils.d.ts +7 -0
- package/dist/vendor/internal/stream-utils.js +35 -0
- package/dist/vendor/internal/stream-utils.js.map +1 -0
- package/dist/vendor/internal/to-file.d.ts +44 -0
- package/dist/vendor/internal/to-file.js +93 -0
- package/dist/vendor/internal/to-file.js.map +1 -0
- package/dist/vendor/internal/types.d.ts +62 -0
- package/dist/vendor/internal/types.js +3 -0
- package/dist/vendor/internal/types.js.map +1 -0
- package/dist/vendor/internal/uploads.d.ts +41 -0
- package/dist/vendor/internal/uploads.js +139 -0
- package/dist/vendor/internal/uploads.js.map +1 -0
- package/dist/vendor/internal/utils/abort.d.ts +11 -0
- package/dist/vendor/internal/utils/abort.js +22 -0
- package/dist/vendor/internal/utils/abort.js.map +1 -0
- package/dist/vendor/internal/utils/async-queue.d.ts +30 -0
- package/dist/vendor/internal/utils/async-queue.js +66 -0
- package/dist/vendor/internal/utils/async-queue.js.map +1 -0
- package/dist/vendor/internal/utils/backoff.d.ts +22 -0
- package/dist/vendor/internal/utils/backoff.js +36 -0
- package/dist/vendor/internal/utils/backoff.js.map +1 -0
- package/dist/vendor/internal/utils/base64.d.ts +2 -0
- package/dist/vendor/internal/utils/base64.js +33 -0
- package/dist/vendor/internal/utils/base64.js.map +1 -0
- package/dist/vendor/internal/utils/bytes.d.ts +3 -0
- package/dist/vendor/internal/utils/bytes.js +26 -0
- package/dist/vendor/internal/utils/bytes.js.map +1 -0
- package/dist/vendor/internal/utils/env.d.ts +8 -0
- package/dist/vendor/internal/utils/env.js +18 -0
- package/dist/vendor/internal/utils/env.js.map +1 -0
- package/dist/vendor/internal/utils/log.d.ts +46 -0
- package/dist/vendor/internal/utils/log.js +105 -0
- package/dist/vendor/internal/utils/log.js.map +1 -0
- package/dist/vendor/internal/utils/path.d.ts +14 -0
- package/dist/vendor/internal/utils/path.js +74 -0
- package/dist/vendor/internal/utils/path.js.map +1 -0
- package/dist/vendor/internal/utils/promise.d.ts +10 -0
- package/dist/vendor/internal/utils/promise.js +15 -0
- package/dist/vendor/internal/utils/promise.js.map +1 -0
- package/dist/vendor/internal/utils/query.d.ts +1 -0
- package/dist/vendor/internal/utils/query.js +6 -0
- package/dist/vendor/internal/utils/query.js.map +1 -0
- package/dist/vendor/internal/utils/sleep.d.ts +9 -0
- package/dist/vendor/internal/utils/sleep.js +24 -0
- package/dist/vendor/internal/utils/sleep.js.map +1 -0
- package/dist/vendor/internal/utils/time.d.ts +2 -0
- package/dist/vendor/internal/utils/time.js +5 -0
- package/dist/vendor/internal/utils/time.js.map +1 -0
- package/dist/vendor/internal/utils/uuid.d.ts +4 -0
- package/dist/vendor/internal/utils/uuid.js +15 -0
- package/dist/vendor/internal/utils/uuid.js.map +1 -0
- package/dist/vendor/internal/utils/values.d.ts +24 -0
- package/dist/vendor/internal/utils/values.js +106 -0
- package/dist/vendor/internal/utils/values.js.map +1 -0
- package/dist/vendor/internal/utils.d.ts +7 -0
- package/dist/vendor/internal/utils.js +9 -0
- package/dist/vendor/internal/utils.js.map +1 -0
- package/dist/vendor/lib/BetaMessageStream.d.ts +123 -0
- package/dist/vendor/lib/BetaMessageStream.js +662 -0
- package/dist/vendor/lib/BetaMessageStream.js.map +1 -0
- package/dist/vendor/lib/MessageStream.d.ts +122 -0
- package/dist/vendor/lib/MessageStream.js +609 -0
- package/dist/vendor/lib/MessageStream.js.map +1 -0
- package/dist/vendor/lib/beta-parser.d.ts +36 -0
- package/dist/vendor/lib/beta-parser.js +75 -0
- package/dist/vendor/lib/beta-parser.js.map +1 -0
- package/dist/vendor/lib/credentials/credential-chain.d.ts +38 -0
- package/dist/vendor/lib/credentials/credential-chain.js +208 -0
- package/dist/vendor/lib/credentials/credential-chain.js.map +1 -0
- package/dist/vendor/lib/credentials/identity-token.d.ts +10 -0
- package/dist/vendor/lib/credentials/identity-token.js +35 -0
- package/dist/vendor/lib/credentials/identity-token.js.map +1 -0
- package/dist/vendor/lib/credentials/oidc-federation.d.ts +39 -0
- package/dist/vendor/lib/credentials/oidc-federation.js +79 -0
- package/dist/vendor/lib/credentials/oidc-federation.js.map +1 -0
- package/dist/vendor/lib/credentials/token-cache.d.ts +53 -0
- package/dist/vendor/lib/credentials/token-cache.js +110 -0
- package/dist/vendor/lib/credentials/token-cache.js.map +1 -0
- package/dist/vendor/lib/credentials/types.d.ts +95 -0
- package/dist/vendor/lib/credentials/types.js +226 -0
- package/dist/vendor/lib/credentials/types.js.map +1 -0
- package/dist/vendor/lib/credentials/user-oauth.d.ts +20 -0
- package/dist/vendor/lib/credentials/user-oauth.js +94 -0
- package/dist/vendor/lib/credentials/user-oauth.js.map +1 -0
- package/dist/vendor/lib/credentials.d.ts +3 -0
- package/dist/vendor/lib/credentials.js +3 -0
- package/dist/vendor/lib/credentials.js.map +1 -0
- package/dist/vendor/lib/environments/index.d.ts +3 -0
- package/dist/vendor/lib/environments/index.js +4 -0
- package/dist/vendor/lib/environments/index.js.map +1 -0
- package/dist/vendor/lib/environments/poller.d.ts +94 -0
- package/dist/vendor/lib/environments/poller.js +218 -0
- package/dist/vendor/lib/environments/poller.js.map +1 -0
- package/dist/vendor/lib/environments/worker.d.ts +226 -0
- package/dist/vendor/lib/environments/worker.js +572 -0
- package/dist/vendor/lib/environments/worker.js.map +1 -0
- package/dist/vendor/lib/helper-client.d.ts +30 -0
- package/dist/vendor/lib/helper-client.js +55 -0
- package/dist/vendor/lib/helper-client.js.map +1 -0
- package/dist/vendor/lib/middleware.d.ts +97 -0
- package/dist/vendor/lib/middleware.js +775 -0
- package/dist/vendor/lib/middleware.js.map +1 -0
- package/dist/vendor/lib/parser.d.ts +31 -0
- package/dist/vendor/lib/parser.js +62 -0
- package/dist/vendor/lib/parser.js.map +1 -0
- package/dist/vendor/lib/sessions/accumulate.d.ts +22 -0
- package/dist/vendor/lib/sessions/accumulate.js +42 -0
- package/dist/vendor/lib/sessions/accumulate.js.map +1 -0
- package/dist/vendor/lib/standard-schema.d.ts +130 -0
- package/dist/vendor/lib/standard-schema.js +41 -0
- package/dist/vendor/lib/standard-schema.js.map +1 -0
- package/dist/vendor/lib/tools/BetaRunnableTool.d.ts +48 -0
- package/dist/vendor/lib/tools/BetaRunnableTool.js +26 -0
- package/dist/vendor/lib/tools/BetaRunnableTool.js.map +1 -0
- package/dist/vendor/lib/tools/BetaToolRunner.d.ts +160 -0
- package/dist/vendor/lib/tools/BetaToolRunner.js +497 -0
- package/dist/vendor/lib/tools/BetaToolRunner.js.map +1 -0
- package/dist/vendor/lib/tools/CompactionControl.d.ts +29 -0
- package/dist/vendor/lib/tools/CompactionControl.js +25 -0
- package/dist/vendor/lib/tools/CompactionControl.js.map +1 -0
- package/dist/vendor/lib/tools/SessionToolRunner.d.ts +178 -0
- package/dist/vendor/lib/tools/SessionToolRunner.js +737 -0
- package/dist/vendor/lib/tools/SessionToolRunner.js.map +1 -0
- package/dist/vendor/lib/tools/ToolError.d.ts +32 -0
- package/dist/vendor/lib/tools/ToolError.js +43 -0
- package/dist/vendor/lib/tools/ToolError.js.map +1 -0
- package/dist/vendor/lib/transform-json-schema.d.ts +2 -0
- package/dist/vendor/lib/transform-json-schema.js +111 -0
- package/dist/vendor/lib/transform-json-schema.js.map +1 -0
- package/dist/vendor/pagination.d.ts +2 -0
- package/dist/vendor/pagination.js +3 -0
- package/dist/vendor/pagination.js.map +1 -0
- package/dist/vendor/resource.d.ts +2 -0
- package/dist/vendor/resource.js +3 -0
- package/dist/vendor/resource.js.map +1 -0
- package/dist/vendor/resources/beta/agents/agents.d.ts +1128 -0
- package/dist/vendor/resources/beta/agents/agents.js +123 -0
- package/dist/vendor/resources/beta/agents/agents.js.map +1 -0
- package/dist/vendor/resources/beta/agents/index.d.ts +2 -0
- package/dist/vendor/resources/beta/agents/index.js +4 -0
- package/dist/vendor/resources/beta/agents/index.js.map +1 -0
- package/dist/vendor/resources/beta/agents/versions.d.ts +32 -0
- package/dist/vendor/resources/beta/agents/versions.js +32 -0
- package/dist/vendor/resources/beta/agents/versions.js.map +1 -0
- package/dist/vendor/resources/beta/agents.d.ts +1 -0
- package/dist/vendor/resources/beta/agents.js +3 -0
- package/dist/vendor/resources/beta/agents.js.map +1 -0
- package/dist/vendor/resources/beta/beta.d.ts +131 -0
- package/dist/vendor/resources/beta/beta.js +69 -0
- package/dist/vendor/resources/beta/beta.js.map +1 -0
- package/dist/vendor/resources/beta/deployment-runs.d.ts +305 -0
- package/dist/vendor/resources/beta/deployment-runs.js +51 -0
- package/dist/vendor/resources/beta/deployment-runs.js.map +1 -0
- package/dist/vendor/resources/beta/deployments.d.ts +698 -0
- package/dist/vendor/resources/beta/deployments.js +192 -0
- package/dist/vendor/resources/beta/deployments.js.map +1 -0
- package/dist/vendor/resources/beta/dreams.d.ts +335 -0
- package/dist/vendor/resources/beta/dreams.js +112 -0
- package/dist/vendor/resources/beta/dreams.js.map +1 -0
- package/dist/vendor/resources/beta/environments/environments.d.ts +432 -0
- package/dist/vendor/resources/beta/environments/environments.js +142 -0
- package/dist/vendor/resources/beta/environments/environments.js.map +1 -0
- package/dist/vendor/resources/beta/environments/index.d.ts +2 -0
- package/dist/vendor/resources/beta/environments/index.js +4 -0
- package/dist/vendor/resources/beta/environments/index.js.map +1 -0
- package/dist/vendor/resources/beta/environments/work.d.ts +500 -0
- package/dist/vendor/resources/beta/environments/work.js +251 -0
- package/dist/vendor/resources/beta/environments/work.js.map +1 -0
- package/dist/vendor/resources/beta/environments.d.ts +1 -0
- package/dist/vendor/resources/beta/environments.js +3 -0
- package/dist/vendor/resources/beta/environments.js.map +1 -0
- package/dist/vendor/resources/beta/files.d.ts +190 -0
- package/dist/vendor/resources/beta/files.js +120 -0
- package/dist/vendor/resources/beta/files.js.map +1 -0
- package/dist/vendor/resources/beta/index.d.ts +17 -0
- package/dist/vendor/resources/beta/index.js +19 -0
- package/dist/vendor/resources/beta/index.js.map +1 -0
- package/dist/vendor/resources/beta/memory-stores/index.d.ts +3 -0
- package/dist/vendor/resources/beta/memory-stores/index.js +5 -0
- package/dist/vendor/resources/beta/memory-stores/index.js.map +1 -0
- package/dist/vendor/resources/beta/memory-stores/memories.d.ts +346 -0
- package/dist/vendor/resources/beta/memory-stores/memories.js +126 -0
- package/dist/vendor/resources/beta/memory-stores/memories.js.map +1 -0
- package/dist/vendor/resources/beta/memory-stores/memory-stores.d.ts +230 -0
- package/dist/vendor/resources/beta/memory-stores/memory-stores.js +137 -0
- package/dist/vendor/resources/beta/memory-stores/memory-stores.js.map +1 -0
- package/dist/vendor/resources/beta/memory-stores/memory-versions.d.ts +252 -0
- package/dist/vendor/resources/beta/memory-stores/memory-versions.js +77 -0
- package/dist/vendor/resources/beta/memory-stores/memory-versions.js.map +1 -0
- package/dist/vendor/resources/beta/memory-stores.d.ts +1 -0
- package/dist/vendor/resources/beta/memory-stores.js +3 -0
- package/dist/vendor/resources/beta/memory-stores.js.map +1 -0
- package/dist/vendor/resources/beta/messages/batches.d.ts +685 -0
- package/dist/vendor/resources/beta/messages/batches.js +203 -0
- package/dist/vendor/resources/beta/messages/batches.js.map +1 -0
- package/dist/vendor/resources/beta/messages/index.d.ts +3 -0
- package/dist/vendor/resources/beta/messages/index.js +5 -0
- package/dist/vendor/resources/beta/messages/index.js.map +1 -0
- package/dist/vendor/resources/beta/messages/messages.d.ts +5376 -0
- package/dist/vendor/resources/beta/messages/messages.js +158 -0
- package/dist/vendor/resources/beta/messages/messages.js.map +1 -0
- package/dist/vendor/resources/beta/messages.d.ts +1 -0
- package/dist/vendor/resources/beta/messages.js +3 -0
- package/dist/vendor/resources/beta/messages.js.map +1 -0
- package/dist/vendor/resources/beta/models.d.ts +217 -0
- package/dist/vendor/resources/beta/models.js +56 -0
- package/dist/vendor/resources/beta/models.js.map +1 -0
- package/dist/vendor/resources/beta/organization/api-keys.d.ts +176 -0
- package/dist/vendor/resources/beta/organization/api-keys.js +52 -0
- package/dist/vendor/resources/beta/organization/api-keys.js.map +1 -0
- package/dist/vendor/resources/beta/organization/compliance-settings.d.ts +73 -0
- package/dist/vendor/resources/beta/organization/compliance-settings.js +48 -0
- package/dist/vendor/resources/beta/organization/compliance-settings.js.map +1 -0
- package/dist/vendor/resources/beta/organization/external-keys.d.ts +271 -0
- package/dist/vendor/resources/beta/organization/external-keys.js +115 -0
- package/dist/vendor/resources/beta/organization/external-keys.js.map +1 -0
- package/dist/vendor/resources/beta/organization/federation/federation.d.ts +13 -0
- package/dist/vendor/resources/beta/organization/federation/federation.js +13 -0
- package/dist/vendor/resources/beta/organization/federation/federation.js.map +1 -0
- package/dist/vendor/resources/beta/organization/federation/index.d.ts +3 -0
- package/dist/vendor/resources/beta/organization/federation/index.js +5 -0
- package/dist/vendor/resources/beta/organization/federation/index.js.map +1 -0
- package/dist/vendor/resources/beta/organization/federation/issuers.d.ts +352 -0
- package/dist/vendor/resources/beta/organization/federation/issuers.js +165 -0
- package/dist/vendor/resources/beta/organization/federation/issuers.js.map +1 -0
- package/dist/vendor/resources/beta/organization/federation/rules/index.d.ts +2 -0
- package/dist/vendor/resources/beta/organization/federation/rules/index.js +4 -0
- package/dist/vendor/resources/beta/organization/federation/rules/index.js.map +1 -0
- package/dist/vendor/resources/beta/organization/federation/rules/rules.d.ts +467 -0
- package/dist/vendor/resources/beta/organization/federation/rules/rules.js +190 -0
- package/dist/vendor/resources/beta/organization/federation/rules/rules.js.map +1 -0
- package/dist/vendor/resources/beta/organization/federation/rules/workspaces.d.ts +123 -0
- package/dist/vendor/resources/beta/organization/federation/rules/workspaces.js +110 -0
- package/dist/vendor/resources/beta/organization/federation/rules/workspaces.js.map +1 -0
- package/dist/vendor/resources/beta/organization/federation/rules.d.ts +1 -0
- package/dist/vendor/resources/beta/organization/federation/rules.js +3 -0
- package/dist/vendor/resources/beta/organization/federation/rules.js.map +1 -0
- package/dist/vendor/resources/beta/organization/federation.d.ts +1 -0
- package/dist/vendor/resources/beta/organization/federation.js +3 -0
- package/dist/vendor/resources/beta/organization/federation.js.map +1 -0
- package/dist/vendor/resources/beta/organization/index.d.ts +10 -0
- package/dist/vendor/resources/beta/organization/index.js +12 -0
- package/dist/vendor/resources/beta/organization/index.js.map +1 -0
- package/dist/vendor/resources/beta/organization/invites.d.ts +161 -0
- package/dist/vendor/resources/beta/organization/invites.js +72 -0
- package/dist/vendor/resources/beta/organization/invites.js.map +1 -0
- package/dist/vendor/resources/beta/organization/organization.d.ts +72 -0
- package/dist/vendor/resources/beta/organization/organization.js +54 -0
- package/dist/vendor/resources/beta/organization/organization.js.map +1 -0
- package/dist/vendor/resources/beta/organization/rate-limits.d.ts +76 -0
- package/dist/vendor/resources/beta/organization/rate-limits.js +27 -0
- package/dist/vendor/resources/beta/organization/rate-limits.js.map +1 -0
- package/dist/vendor/resources/beta/organization/service-accounts/index.d.ts +2 -0
- package/dist/vendor/resources/beta/organization/service-accounts/index.js +4 -0
- package/dist/vendor/resources/beta/organization/service-accounts/index.js.map +1 -0
- package/dist/vendor/resources/beta/organization/service-accounts/service-accounts.d.ts +257 -0
- package/dist/vendor/resources/beta/organization/service-accounts/service-accounts.js +166 -0
- package/dist/vendor/resources/beta/organization/service-accounts/service-accounts.js.map +1 -0
- package/dist/vendor/resources/beta/organization/service-accounts/workspaces.d.ts +140 -0
- package/dist/vendor/resources/beta/organization/service-accounts/workspaces.js +121 -0
- package/dist/vendor/resources/beta/organization/service-accounts/workspaces.js.map +1 -0
- package/dist/vendor/resources/beta/organization/service-accounts.d.ts +1 -0
- package/dist/vendor/resources/beta/organization/service-accounts.js +3 -0
- package/dist/vendor/resources/beta/organization/service-accounts.js.map +1 -0
- package/dist/vendor/resources/beta/organization/users.d.ts +123 -0
- package/dist/vendor/resources/beta/organization/users.js +63 -0
- package/dist/vendor/resources/beta/organization/users.js.map +1 -0
- package/dist/vendor/resources/beta/organization/workspaces/index.d.ts +4 -0
- package/dist/vendor/resources/beta/organization/workspaces/index.js +6 -0
- package/dist/vendor/resources/beta/organization/workspaces/index.js.map +1 -0
- package/dist/vendor/resources/beta/organization/workspaces/members.d.ts +134 -0
- package/dist/vendor/resources/beta/organization/workspaces/members.js +98 -0
- package/dist/vendor/resources/beta/organization/workspaces/members.js.map +1 -0
- package/dist/vendor/resources/beta/organization/workspaces/rate-limits.d.ts +82 -0
- package/dist/vendor/resources/beta/organization/workspaces/rate-limits.js +30 -0
- package/dist/vendor/resources/beta/organization/workspaces/rate-limits.js.map +1 -0
- package/dist/vendor/resources/beta/organization/workspaces/service-accounts.d.ts +209 -0
- package/dist/vendor/resources/beta/organization/workspaces/service-accounts.js +185 -0
- package/dist/vendor/resources/beta/organization/workspaces/service-accounts.js.map +1 -0
- package/dist/vendor/resources/beta/organization/workspaces/workspaces.d.ts +302 -0
- package/dist/vendor/resources/beta/organization/workspaces/workspaces.js +104 -0
- package/dist/vendor/resources/beta/organization/workspaces/workspaces.js.map +1 -0
- package/dist/vendor/resources/beta/organization/workspaces.d.ts +1 -0
- package/dist/vendor/resources/beta/organization/workspaces.js +3 -0
- package/dist/vendor/resources/beta/organization/workspaces.js.map +1 -0
- package/dist/vendor/resources/beta/organization.d.ts +1 -0
- package/dist/vendor/resources/beta/organization.js +3 -0
- package/dist/vendor/resources/beta/organization.js.map +1 -0
- package/dist/vendor/resources/beta/sessions/events.d.ts +1513 -0
- package/dist/vendor/resources/beta/sessions/events.js +115 -0
- package/dist/vendor/resources/beta/sessions/events.js.map +1 -0
- package/dist/vendor/resources/beta/sessions/index.d.ts +4 -0
- package/dist/vendor/resources/beta/sessions/index.js +6 -0
- package/dist/vendor/resources/beta/sessions/index.js.map +1 -0
- package/dist/vendor/resources/beta/sessions/resources.d.ts +227 -0
- package/dist/vendor/resources/beta/sessions/resources.js +128 -0
- package/dist/vendor/resources/beta/sessions/resources.js.map +1 -0
- package/dist/vendor/resources/beta/sessions/sessions.d.ts +866 -0
- package/dist/vendor/resources/beta/sessions/sessions.js +150 -0
- package/dist/vendor/resources/beta/sessions/sessions.js.map +1 -0
- package/dist/vendor/resources/beta/sessions/threads/events.d.ts +77 -0
- package/dist/vendor/resources/beta/sessions/threads/events.js +57 -0
- package/dist/vendor/resources/beta/sessions/threads/events.js.map +1 -0
- package/dist/vendor/resources/beta/sessions/threads/index.d.ts +2 -0
- package/dist/vendor/resources/beta/sessions/threads/index.js +4 -0
- package/dist/vendor/resources/beta/sessions/threads/index.js.map +1 -0
- package/dist/vendor/resources/beta/sessions/threads/threads.d.ts +195 -0
- package/dist/vendor/resources/beta/sessions/threads/threads.js +80 -0
- package/dist/vendor/resources/beta/sessions/threads/threads.js.map +1 -0
- package/dist/vendor/resources/beta/sessions/threads.d.ts +1 -0
- package/dist/vendor/resources/beta/sessions/threads.js +3 -0
- package/dist/vendor/resources/beta/sessions/threads.js.map +1 -0
- package/dist/vendor/resources/beta/sessions.d.ts +1 -0
- package/dist/vendor/resources/beta/sessions.js +3 -0
- package/dist/vendor/resources/beta/sessions.js.map +1 -0
- package/dist/vendor/resources/beta/skills/index.d.ts +2 -0
- package/dist/vendor/resources/beta/skills/index.js +4 -0
- package/dist/vendor/resources/beta/skills/index.js.map +1 -0
- package/dist/vendor/resources/beta/skills/skills.d.ts +178 -0
- package/dist/vendor/resources/beta/skills/skills.js +96 -0
- package/dist/vendor/resources/beta/skills/skills.js.map +1 -0
- package/dist/vendor/resources/beta/skills/versions.d.ts +181 -0
- package/dist/vendor/resources/beta/skills/versions.js +125 -0
- package/dist/vendor/resources/beta/skills/versions.js.map +1 -0
- package/dist/vendor/resources/beta/skills.d.ts +1 -0
- package/dist/vendor/resources/beta/skills.js +3 -0
- package/dist/vendor/resources/beta/skills.js.map +1 -0
- package/dist/vendor/resources/beta/tunnels/certificates.d.ts +162 -0
- package/dist/vendor/resources/beta/tunnels/certificates.js +125 -0
- package/dist/vendor/resources/beta/tunnels/certificates.js.map +1 -0
- package/dist/vendor/resources/beta/tunnels/index.d.ts +2 -0
- package/dist/vendor/resources/beta/tunnels/index.js +4 -0
- package/dist/vendor/resources/beta/tunnels/index.js.map +1 -0
- package/dist/vendor/resources/beta/tunnels/tunnels.d.ts +211 -0
- package/dist/vendor/resources/beta/tunnels/tunnels.js +173 -0
- package/dist/vendor/resources/beta/tunnels/tunnels.js.map +1 -0
- package/dist/vendor/resources/beta/tunnels.d.ts +1 -0
- package/dist/vendor/resources/beta/tunnels.js +3 -0
- package/dist/vendor/resources/beta/tunnels.js.map +1 -0
- package/dist/vendor/resources/beta/user-profiles.d.ts +244 -0
- package/dist/vendor/resources/beta/user-profiles.js +114 -0
- package/dist/vendor/resources/beta/user-profiles.js.map +1 -0
- package/dist/vendor/resources/beta/vaults/credentials.d.ts +715 -0
- package/dist/vendor/resources/beta/vaults/credentials.js +173 -0
- package/dist/vendor/resources/beta/vaults/credentials.js.map +1 -0
- package/dist/vendor/resources/beta/vaults/index.d.ts +2 -0
- package/dist/vendor/resources/beta/vaults/index.js +4 -0
- package/dist/vendor/resources/beta/vaults/index.js.map +1 -0
- package/dist/vendor/resources/beta/vaults/vaults.d.ts +191 -0
- package/dist/vendor/resources/beta/vaults/vaults.js +141 -0
- package/dist/vendor/resources/beta/vaults/vaults.js.map +1 -0
- package/dist/vendor/resources/beta/vaults.d.ts +1 -0
- package/dist/vendor/resources/beta/vaults.js +3 -0
- package/dist/vendor/resources/beta/vaults.js.map +1 -0
- package/dist/vendor/resources/beta/webhooks.d.ts +464 -0
- package/dist/vendor/resources/beta/webhooks.js +29 -0
- package/dist/vendor/resources/beta/webhooks.js.map +1 -0
- package/dist/vendor/resources/beta.d.ts +1 -0
- package/dist/vendor/resources/beta.js +3 -0
- package/dist/vendor/resources/beta.js.map +1 -0
- package/dist/vendor/resources/completions.d.ts +172 -0
- package/dist/vendor/resources/completions.js +19 -0
- package/dist/vendor/resources/completions.js.map +1 -0
- package/dist/vendor/resources/files.d.ts +104 -0
- package/dist/vendor/resources/files.js +48 -0
- package/dist/vendor/resources/files.js.map +1 -0
- package/dist/vendor/resources/index.d.ts +7 -0
- package/dist/vendor/resources/index.js +9 -0
- package/dist/vendor/resources/index.js.map +1 -0
- package/dist/vendor/resources/messages/batches.d.ts +312 -0
- package/dist/vendor/resources/messages/batches.js +157 -0
- package/dist/vendor/resources/messages/batches.js.map +1 -0
- package/dist/vendor/resources/messages/index.d.ts +2 -0
- package/dist/vendor/resources/messages/index.js +4 -0
- package/dist/vendor/resources/messages/index.js.map +1 -0
- package/dist/vendor/resources/messages/messages.d.ts +3886 -0
- package/dist/vendor/resources/messages/messages.js +130 -0
- package/dist/vendor/resources/messages/messages.js.map +1 -0
- package/dist/vendor/resources/messages.d.ts +1 -0
- package/dist/vendor/resources/messages.js +3 -0
- package/dist/vendor/resources/messages.js.map +1 -0
- package/dist/vendor/resources/models.d.ts +196 -0
- package/dist/vendor/resources/models.js +41 -0
- package/dist/vendor/resources/models.js.map +1 -0
- package/dist/vendor/resources/shared.d.ts +43 -0
- package/dist/vendor/resources/shared.js +3 -0
- package/dist/vendor/resources/shared.js.map +1 -0
- package/dist/vendor/resources/skills/index.d.ts +2 -0
- package/dist/vendor/resources/skills/index.js +4 -0
- package/dist/vendor/resources/skills/index.js.map +1 -0
- package/dist/vendor/resources/skills/skills.d.ts +128 -0
- package/dist/vendor/resources/skills/skills.js +36 -0
- package/dist/vendor/resources/skills/skills.js.map +1 -0
- package/dist/vendor/resources/skills/versions.d.ts +103 -0
- package/dist/vendor/resources/skills/versions.js +37 -0
- package/dist/vendor/resources/skills/versions.js.map +1 -0
- package/dist/vendor/resources/skills.d.ts +1 -0
- package/dist/vendor/resources/skills.js +3 -0
- package/dist/vendor/resources/skills.js.map +1 -0
- package/dist/vendor/resources/top-level.d.ts +1 -0
- package/dist/vendor/resources/top-level.js +3 -0
- package/dist/vendor/resources/top-level.js.map +1 -0
- package/dist/vendor/resources.d.ts +1 -0
- package/dist/vendor/resources.js +2 -0
- package/dist/vendor/resources.js.map +1 -0
- package/dist/vendor/streaming.d.ts +2 -0
- package/dist/vendor/streaming.js +3 -0
- package/dist/vendor/streaming.js.map +1 -0
- package/dist/vendor/tools/agent-toolset/fs-util.d.ts +74 -0
- package/dist/vendor/tools/agent-toolset/fs-util.js +184 -0
- package/dist/vendor/tools/agent-toolset/fs-util.js.map +1 -0
- package/dist/vendor/tools/agent-toolset/memories.d.ts +172 -0
- package/dist/vendor/tools/agent-toolset/memories.js +910 -0
- package/dist/vendor/tools/agent-toolset/memories.js.map +1 -0
- package/dist/vendor/tools/agent-toolset/node.browser.d.ts +80 -0
- package/dist/vendor/tools/agent-toolset/node.browser.js +129 -0
- package/dist/vendor/tools/agent-toolset/node.browser.js.map +1 -0
- package/dist/vendor/tools/agent-toolset/node.d.ts +191 -0
- package/dist/vendor/tools/agent-toolset/node.js +886 -0
- package/dist/vendor/tools/agent-toolset/node.js.map +1 -0
- package/dist/vendor/tools/agent-toolset/skills.d.ts +73 -0
- package/dist/vendor/tools/agent-toolset/skills.js +320 -0
- package/dist/vendor/tools/agent-toolset/skills.js.map +1 -0
- package/dist/vendor/tools/agent-toolset/sync-interval.d.ts +18 -0
- package/dist/vendor/tools/agent-toolset/sync-interval.js +25 -0
- package/dist/vendor/tools/agent-toolset/sync-interval.js.map +1 -0
- package/dist/vendor/tools/memory/node.browser.d.ts +26 -0
- package/dist/vendor/tools/memory/node.browser.js +44 -0
- package/dist/vendor/tools/memory/node.browser.js.map +1 -0
- package/dist/vendor/tools/memory/node.d.ts +17 -0
- package/dist/vendor/tools/memory/node.js +327 -0
- package/dist/vendor/tools/memory/node.js.map +1 -0
- package/dist/vendor/uploads.d.ts +2 -0
- package/dist/vendor/uploads.js +3 -0
- package/dist/vendor/uploads.js.map +1 -0
- package/dist/vendor/version.d.ts +1 -0
- package/dist/vendor/version.js +2 -0
- package/dist/vendor/version.js.map +1 -0
- package/package.json +7 -14
- package/sdk.cjs +6 -6
- package/sdk.cjs.map +18 -18
- package/sdk.d.ts +10 -10
- package/sdk.mjs +21 -21
- package/sdk.mjs.map +18 -18
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"node.js","sourceRoot":"","sources":["../../../../src/vendor/tools/agent-toolset/node.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Node-only skill plumbing for the agent toolset: downloading a session
|
|
3
|
+
* agent's skills into the workdir and extracting the archives. Kept in its own
|
|
4
|
+
* file because it is a distinct concern from the tool implementations in
|
|
5
|
+
* `node.ts` — distinct enough, and large enough, to review on its own.
|
|
6
|
+
*/
|
|
7
|
+
import type { AgentToolContext } from './node';
|
|
8
|
+
/**
|
|
9
|
+
* Download the session agent's skills into `{ctx.workdir}/skills/<name>/`.
|
|
10
|
+
*
|
|
11
|
+
* No-op (returns a no-op cleanup) unless `ctx.client` is set together with
|
|
12
|
+
* `ctx.session` (or the deprecated `ctx.sessionId`). Reads the resolved agent
|
|
13
|
+
* off the session and, for each skill, fetches its files via
|
|
14
|
+
* `client.beta.skills.versions.download` and extracts the archive (a zip or
|
|
15
|
+
* tar.* archive) into a directory named after the skill. A failure on one skill
|
|
16
|
+
* is logged and does not block the others. Call this before starting the
|
|
17
|
+
* session tool runner (e.g. right after the bash session / workdir is ready).
|
|
18
|
+
*
|
|
19
|
+
* Pass `ctx.session`. A session's resources cannot change while it runs, so the
|
|
20
|
+
* caller fetches it once and shares that snapshot with the memory-store
|
|
21
|
+
* download — the two can then never disagree about the attached resources.
|
|
22
|
+
*
|
|
23
|
+
* `ctx.sessionId` is deprecated: it costs an extra `sessions.retrieve` round
|
|
24
|
+
* trip on every call, and a caller that uses it for both this and the
|
|
25
|
+
* memory-store download fetches the session twice. It remains supported for
|
|
26
|
+
* callers written before `session` existed.
|
|
27
|
+
*
|
|
28
|
+
* Returns a cleanup function that removes the skill directories this call
|
|
29
|
+
* created — call it once the work item is done so downloaded skills do not
|
|
30
|
+
* accumulate in the workdir across sessions.
|
|
31
|
+
*/
|
|
32
|
+
export declare function setupSkills(ctx: AgentToolContext): Promise<() => Promise<void>>;
|
|
33
|
+
/**
|
|
34
|
+
* Pair an archive's name listing (`unzip -Z1` / `tar -tf`) with its typed
|
|
35
|
+
* listing (`unzip -Z --h --t` / `tar -tvf`) and split the members into plain
|
|
36
|
+
* (regular file or directory) and special (everything else). Special members
|
|
37
|
+
* are excluded from extraction rather than rejected; the archive is refused
|
|
38
|
+
* only when the two listings disagree in length or a special member's name
|
|
39
|
+
* cannot be passed back to the CLI verbatim (see {@link canExcludeVerbatim}).
|
|
40
|
+
*/
|
|
41
|
+
export declare function classifyArchiveListing(cmd: 'unzip' | 'tar', names: string, typed: string): {
|
|
42
|
+
plain: string[];
|
|
43
|
+
special: string[];
|
|
44
|
+
};
|
|
45
|
+
/**
|
|
46
|
+
* Walk `dir` with `lstat` semantics and reject anything that is not a regular
|
|
47
|
+
* file or directory. Never follows a link and never descends into anything
|
|
48
|
+
* but a real directory.
|
|
49
|
+
*/
|
|
50
|
+
export declare function assertOnlyPlainEntries(dir: string): Promise<void>;
|
|
51
|
+
/**
|
|
52
|
+
* Extract a skill download (a zip or tar.* archive) into `dest`. Streams the
|
|
53
|
+
* response body straight to a temp file beside `dest` (so the whole archive is
|
|
54
|
+
* never buffered in memory — skills can contain large binaries), then shells out
|
|
55
|
+
* to `unzip`/`tar` — consistent with the rest of the toolset, which already
|
|
56
|
+
* invokes `bash` and `rg`. Both `unzip` and `tar` must be available on `PATH`; a
|
|
57
|
+
* missing binary surfaces as a clear error (see {@link runArchiveTool}). Refuses
|
|
58
|
+
* any member that would escape `dest` (zip-slip / tar-slip): skill archives
|
|
59
|
+
* come from the API, but skills can be third-party. Members that are not a
|
|
60
|
+
* regular file or directory (symlink, hardlink, device, fifo) are excluded
|
|
61
|
+
* from extraction rather than rejected; an archive whose special members
|
|
62
|
+
* cannot be excluded reliably is refused (see {@link classifyArchiveListing}).
|
|
63
|
+
* `tar` matches exclusions unanchored, so a plain member sharing a special
|
|
64
|
+
* member's name may be dropped too. The staging tree is verified to hold only
|
|
65
|
+
* regular files and directories before anything is promoted into `dest`.
|
|
66
|
+
*
|
|
67
|
+
* The skill bundle's single wrapper directory is stripped: the archive is
|
|
68
|
+
* extracted into a staging dir and the wrapper's contents are promoted into
|
|
69
|
+
* `dest`, so files land at `dest/SKILL.md` rather than a doubled
|
|
70
|
+
* `dest/<skill>/SKILL.md` (`unzip` has no `--strip-components`, so this is
|
|
71
|
+
* done uniformly by staging + promote rather than per-tool flags).
|
|
72
|
+
*/
|
|
73
|
+
export declare function extractSkillArchive(resp: Response, dest: string): Promise<void>;
|
|
@@ -0,0 +1,320 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Node-only skill plumbing for the agent toolset: downloading a session
|
|
3
|
+
* agent's skills into the workdir and extracting the archives. Kept in its own
|
|
4
|
+
* file because it is a distinct concern from the tool implementations in
|
|
5
|
+
* `node.ts` — distinct enough, and large enough, to review on its own.
|
|
6
|
+
*/
|
|
7
|
+
import { child_process, fs as fssync, path, stream, util } from '../../internal/node.js';
|
|
8
|
+
import { PukuError } from '../../core/error.js';
|
|
9
|
+
import { loggerFor } from '../../internal/utils/log.js';
|
|
10
|
+
import { DIR_CREATE_MODE, errnoCode } from './fs-util.js';
|
|
11
|
+
const fs = fssync.promises;
|
|
12
|
+
const execFileAsync = util.promisify(child_process.execFile);
|
|
13
|
+
/**
|
|
14
|
+
* Download the session agent's skills into `{ctx.workdir}/skills/<name>/`.
|
|
15
|
+
*
|
|
16
|
+
* No-op (returns a no-op cleanup) unless `ctx.client` is set together with
|
|
17
|
+
* `ctx.session` (or the deprecated `ctx.sessionId`). Reads the resolved agent
|
|
18
|
+
* off the session and, for each skill, fetches its files via
|
|
19
|
+
* `client.beta.skills.versions.download` and extracts the archive (a zip or
|
|
20
|
+
* tar.* archive) into a directory named after the skill. A failure on one skill
|
|
21
|
+
* is logged and does not block the others. Call this before starting the
|
|
22
|
+
* session tool runner (e.g. right after the bash session / workdir is ready).
|
|
23
|
+
*
|
|
24
|
+
* Pass `ctx.session`. A session's resources cannot change while it runs, so the
|
|
25
|
+
* caller fetches it once and shares that snapshot with the memory-store
|
|
26
|
+
* download — the two can then never disagree about the attached resources.
|
|
27
|
+
*
|
|
28
|
+
* `ctx.sessionId` is deprecated: it costs an extra `sessions.retrieve` round
|
|
29
|
+
* trip on every call, and a caller that uses it for both this and the
|
|
30
|
+
* memory-store download fetches the session twice. It remains supported for
|
|
31
|
+
* callers written before `session` existed.
|
|
32
|
+
*
|
|
33
|
+
* Returns a cleanup function that removes the skill directories this call
|
|
34
|
+
* created — call it once the work item is done so downloaded skills do not
|
|
35
|
+
* accumulate in the workdir across sessions.
|
|
36
|
+
*/
|
|
37
|
+
export async function setupSkills(ctx) {
|
|
38
|
+
const { client, sessionId } = ctx;
|
|
39
|
+
if (!client)
|
|
40
|
+
return async () => { };
|
|
41
|
+
const log = loggerFor(client);
|
|
42
|
+
let session = ctx.session;
|
|
43
|
+
if (!session) {
|
|
44
|
+
if (sessionId === undefined)
|
|
45
|
+
return async () => { };
|
|
46
|
+
log.warn('AgentToolContext.sessionId is deprecated and costs an extra session fetch; ' +
|
|
47
|
+
'fetch the session once and set `session` instead', { component: 'agent-tool-context' });
|
|
48
|
+
// The sessions/skills resources inject their puku-beta headers
|
|
49
|
+
// (managed-agents / skills) themselves — no need to pass `betas` here.
|
|
50
|
+
session = await client.beta.sessions.retrieve(sessionId);
|
|
51
|
+
}
|
|
52
|
+
const skillsRoot = path.resolve(ctx.workdir, 'skills');
|
|
53
|
+
const created = [];
|
|
54
|
+
for (const skill of session.agent.skills) {
|
|
55
|
+
try {
|
|
56
|
+
const version = await client.beta.skills.versions.retrieve(skill.version, { skill_id: skill.skill_id });
|
|
57
|
+
// The directory is the skill's name, reduced to a single safe path
|
|
58
|
+
// component so a hostile name can't escape `skillsRoot`.
|
|
59
|
+
let dirname = path.basename(version.name.trim());
|
|
60
|
+
if (dirname === '' || dirname === '.' || dirname === '..')
|
|
61
|
+
dirname = skill.skill_id;
|
|
62
|
+
const dest = path.resolve(skillsRoot, dirname);
|
|
63
|
+
if (dest !== skillsRoot && !dest.startsWith(skillsRoot + path.sep)) {
|
|
64
|
+
log.warn('skill name escapes the skills dir; skipping', {
|
|
65
|
+
component: 'agent-tool-context',
|
|
66
|
+
name: version.name,
|
|
67
|
+
});
|
|
68
|
+
continue;
|
|
69
|
+
}
|
|
70
|
+
// `skill.version` may be the alias `"latest"`, which only the retrieve
|
|
71
|
+
// endpoint resolves; download by the concrete id it returned.
|
|
72
|
+
const resp = await client.beta.skills.versions.download(version.id, { skill_id: skill.skill_id });
|
|
73
|
+
await fs.rm(dest, { recursive: true, force: true });
|
|
74
|
+
await fs.mkdir(dest, { recursive: true, mode: DIR_CREATE_MODE });
|
|
75
|
+
created.push(dest);
|
|
76
|
+
await extractSkillArchive(resp, dest);
|
|
77
|
+
log.info('downloaded skill', {
|
|
78
|
+
component: 'agent-tool-context',
|
|
79
|
+
skill_id: skill.skill_id,
|
|
80
|
+
version: version.id,
|
|
81
|
+
dest,
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
catch (e) {
|
|
85
|
+
log.warn('failed to download skill', {
|
|
86
|
+
component: 'agent-tool-context',
|
|
87
|
+
skill_id: skill.skill_id,
|
|
88
|
+
error: String(e),
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
return async () => {
|
|
93
|
+
for (const dest of created) {
|
|
94
|
+
await fs.rm(dest, { recursive: true, force: true }).catch((e) => {
|
|
95
|
+
log.warn('failed to clean up skill', { component: 'agent-tool-context', dest, error: String(e) });
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
/** Reject archive members that are absolute or contain a `..` component. */
|
|
101
|
+
function assertSafeMemberNames(names) {
|
|
102
|
+
for (const raw of names) {
|
|
103
|
+
const entry = raw.trim();
|
|
104
|
+
if (!entry)
|
|
105
|
+
continue;
|
|
106
|
+
if (path.isAbsolute(entry) || entry.split(/[\\/]/).includes('..')) {
|
|
107
|
+
throw new PukuError(`refusing to extract unsafe archive member: ${entry}`);
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
const INCONSISTENT_LISTING = 'skill archive listing is inconsistent; refusing to extract';
|
|
112
|
+
/**
|
|
113
|
+
* Type chars (first byte of each `ls`-style line from `unzip -Z` / `tar -tvf`)
|
|
114
|
+
* that denote a regular file or directory. `zipinfo` prints `?` for entries
|
|
115
|
+
* with no Unix type bits, which `unzip` extracts as regular files; GNU tar
|
|
116
|
+
* prints `C` for contiguous files. Everything else — `l` symlink, `h`
|
|
117
|
+
* hardlink, `b`/`c` device, `p` fifo, `s` socket, unknown tar types — is a
|
|
118
|
+
* special member.
|
|
119
|
+
*/
|
|
120
|
+
const PLAIN_TYPE_CHARS = { unzip: new Set(['-', 'd', '?']), tar: new Set(['-', 'd', 'C']) };
|
|
121
|
+
function listingLines(listing) {
|
|
122
|
+
const lines = listing.split('\n');
|
|
123
|
+
if (lines[lines.length - 1] === '')
|
|
124
|
+
lines.pop();
|
|
125
|
+
return lines;
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* A special member is excluded by handing its listed name back to the CLI as
|
|
129
|
+
* a pattern, so the name must be byte-identical to what is stored. `tar`,
|
|
130
|
+
* `bsdtar` and `unzip` print bytes they cannot show literally as `\ooo`, `^X`
|
|
131
|
+
* or `#U` escapes, or as raw non-ASCII; any such name cannot be excluded
|
|
132
|
+
* reliably. A leading `-` would let `unzip` parse the pattern as an option.
|
|
133
|
+
*/
|
|
134
|
+
function canExcludeVerbatim(cmd, name) {
|
|
135
|
+
return /^[\x20-\x7E]+$/.test(name) && !/[\\^#]/.test(name) && !(cmd === 'unzip' && name.startsWith('-'));
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* Pair an archive's name listing (`unzip -Z1` / `tar -tf`) with its typed
|
|
139
|
+
* listing (`unzip -Z --h --t` / `tar -tvf`) and split the members into plain
|
|
140
|
+
* (regular file or directory) and special (everything else). Special members
|
|
141
|
+
* are excluded from extraction rather than rejected; the archive is refused
|
|
142
|
+
* only when the two listings disagree in length or a special member's name
|
|
143
|
+
* cannot be passed back to the CLI verbatim (see {@link canExcludeVerbatim}).
|
|
144
|
+
*/
|
|
145
|
+
export function classifyArchiveListing(cmd, names, typed) {
|
|
146
|
+
const nameLines = listingLines(names);
|
|
147
|
+
const typedLines = listingLines(typed);
|
|
148
|
+
if (nameLines.length !== typedLines.length)
|
|
149
|
+
throw new PukuError(INCONSISTENT_LISTING);
|
|
150
|
+
const plain = [];
|
|
151
|
+
const special = [];
|
|
152
|
+
nameLines.forEach((name, i) => {
|
|
153
|
+
if (PLAIN_TYPE_CHARS[cmd].has(typedLines[i].charAt(0))) {
|
|
154
|
+
plain.push(name);
|
|
155
|
+
return;
|
|
156
|
+
}
|
|
157
|
+
if (!canExcludeVerbatim(cmd, name)) {
|
|
158
|
+
throw new PukuError(`refusing to extract archive: cannot safely exclude member ${JSON.stringify(name)}`);
|
|
159
|
+
}
|
|
160
|
+
special.push(name);
|
|
161
|
+
});
|
|
162
|
+
return { plain, special };
|
|
163
|
+
}
|
|
164
|
+
/**
|
|
165
|
+
* Walk `dir` with `lstat` semantics and reject anything that is not a regular
|
|
166
|
+
* file or directory. Never follows a link and never descends into anything
|
|
167
|
+
* but a real directory.
|
|
168
|
+
*/
|
|
169
|
+
export async function assertOnlyPlainEntries(dir) {
|
|
170
|
+
for (const entry of await fs.readdir(dir, { withFileTypes: true })) {
|
|
171
|
+
if (entry.isDirectory())
|
|
172
|
+
await assertOnlyPlainEntries(path.join(dir, entry.name));
|
|
173
|
+
else if (!entry.isFile())
|
|
174
|
+
throw new PukuError(INCONSISTENT_LISTING);
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* Run an archive CLI (`unzip` for zip archives, `tar` for everything else),
|
|
179
|
+
* returning its stdout. Both binaries must be on `PATH`; a missing one would
|
|
180
|
+
* otherwise surface as an opaque `ENOENT` spawn failure, so it is turned into a
|
|
181
|
+
* clear, specific error naming the missing command.
|
|
182
|
+
*/
|
|
183
|
+
async function runArchiveTool(cmd, args) {
|
|
184
|
+
try {
|
|
185
|
+
const { stdout } = await execFileAsync(cmd, args);
|
|
186
|
+
return stdout;
|
|
187
|
+
}
|
|
188
|
+
catch (e) {
|
|
189
|
+
if (errnoCode(e) === 'ENOENT') {
|
|
190
|
+
throw new PukuError(`skill extraction requires the \`${cmd}\` command, but it was not found on PATH`);
|
|
191
|
+
}
|
|
192
|
+
throw e;
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
/**
|
|
196
|
+
* The single top-level directory shared by every entry in an archive listing,
|
|
197
|
+
* or `''` if entries don't all live under one common directory. Skill bundles
|
|
198
|
+
* are packaged wrapped in one directory named after the skill (e.g.
|
|
199
|
+
* `pdf/SKILL.md`, `pdf/scripts/...`); the extractor strips it so contents land
|
|
200
|
+
* directly in the skill's dir instead of a redundant nested `<skill>/<skill>/`
|
|
201
|
+
* level. A flat or multi-root archive yields `''`.
|
|
202
|
+
*/
|
|
203
|
+
function archiveTopDir(names) {
|
|
204
|
+
let top;
|
|
205
|
+
let nested = false;
|
|
206
|
+
for (const raw of names) {
|
|
207
|
+
// Drop `.` / empty segments so a `./pdf/...`-style listing (e.g. from
|
|
208
|
+
// `tar -C dir .`) is treated the same as `pdf/...`.
|
|
209
|
+
const parts = raw
|
|
210
|
+
.trim()
|
|
211
|
+
.split('/')
|
|
212
|
+
.filter((p) => p !== '' && p !== '.');
|
|
213
|
+
if (parts.length === 0)
|
|
214
|
+
continue;
|
|
215
|
+
const first = parts[0];
|
|
216
|
+
if (top === undefined)
|
|
217
|
+
top = first;
|
|
218
|
+
else if (first !== top)
|
|
219
|
+
return '';
|
|
220
|
+
if (parts.length > 1)
|
|
221
|
+
nested = true;
|
|
222
|
+
}
|
|
223
|
+
return top !== undefined && nested ? top : '';
|
|
224
|
+
}
|
|
225
|
+
/**
|
|
226
|
+
* Extract a skill download (a zip or tar.* archive) into `dest`. Streams the
|
|
227
|
+
* response body straight to a temp file beside `dest` (so the whole archive is
|
|
228
|
+
* never buffered in memory — skills can contain large binaries), then shells out
|
|
229
|
+
* to `unzip`/`tar` — consistent with the rest of the toolset, which already
|
|
230
|
+
* invokes `bash` and `rg`. Both `unzip` and `tar` must be available on `PATH`; a
|
|
231
|
+
* missing binary surfaces as a clear error (see {@link runArchiveTool}). Refuses
|
|
232
|
+
* any member that would escape `dest` (zip-slip / tar-slip): skill archives
|
|
233
|
+
* come from the API, but skills can be third-party. Members that are not a
|
|
234
|
+
* regular file or directory (symlink, hardlink, device, fifo) are excluded
|
|
235
|
+
* from extraction rather than rejected; an archive whose special members
|
|
236
|
+
* cannot be excluded reliably is refused (see {@link classifyArchiveListing}).
|
|
237
|
+
* `tar` matches exclusions unanchored, so a plain member sharing a special
|
|
238
|
+
* member's name may be dropped too. The staging tree is verified to hold only
|
|
239
|
+
* regular files and directories before anything is promoted into `dest`.
|
|
240
|
+
*
|
|
241
|
+
* The skill bundle's single wrapper directory is stripped: the archive is
|
|
242
|
+
* extracted into a staging dir and the wrapper's contents are promoted into
|
|
243
|
+
* `dest`, so files land at `dest/SKILL.md` rather than a doubled
|
|
244
|
+
* `dest/<skill>/SKILL.md` (`unzip` has no `--strip-components`, so this is
|
|
245
|
+
* done uniformly by staging + promote rather than per-tool flags).
|
|
246
|
+
*/
|
|
247
|
+
export async function extractSkillArchive(resp, dest) {
|
|
248
|
+
const tmp = path.join(dest, `.skill-archive-${process.pid}-${Date.now()}`);
|
|
249
|
+
if (!resp.body) {
|
|
250
|
+
throw new PukuError('skill download response had no body');
|
|
251
|
+
}
|
|
252
|
+
await stream.promises.pipeline(stream.Readable.fromWeb(resp.body), fssync.createWriteStream(tmp));
|
|
253
|
+
const stage = path.join(path.dirname(dest), `.skill-stage-${process.pid}-${Date.now()}`);
|
|
254
|
+
const excludeFile = path.join(path.dirname(dest), `.skill-exclude-${process.pid}-${Date.now()}`);
|
|
255
|
+
try {
|
|
256
|
+
// Sniff the first bytes: zip archives start with "PK\x03\x04"; treat
|
|
257
|
+
// anything else as a tar.* archive (`tar -xf` autodetects gzip/bzip2/xz).
|
|
258
|
+
const head = await readHead(tmp, 4);
|
|
259
|
+
const isZip = head.length >= 4 && head[0] === 0x50 && head[1] === 0x4b && head[2] === 0x03 && head[3] === 0x04;
|
|
260
|
+
const archiveCmd = isZip ? 'unzip' : 'tar';
|
|
261
|
+
// List first, validate, then extract — `tar`/`unzip` will happily write a
|
|
262
|
+
// `../` member (or follow a symlink member) outside `-C`/`-d` otherwise.
|
|
263
|
+
const names = await runArchiveTool(archiveCmd, isZip ? ['-Z1', tmp] : ['-tf', tmp]);
|
|
264
|
+
const typed = await runArchiveTool(archiveCmd, isZip ? ['-Z', '--h', '--t', tmp] : ['-tvf', tmp]);
|
|
265
|
+
const { plain, special } = classifyArchiveListing(archiveCmd, names, typed);
|
|
266
|
+
assertSafeMemberNames([...plain, ...special]);
|
|
267
|
+
const top = archiveTopDir(plain);
|
|
268
|
+
await fs.mkdir(stage, { recursive: true, mode: DIR_CREATE_MODE });
|
|
269
|
+
// `unzip` exits non-zero when every member is excluded, so only run the
|
|
270
|
+
// extractor when there is something to extract.
|
|
271
|
+
if (plain.length > 0) {
|
|
272
|
+
await runArchiveTool(archiveCmd, await extractArgs(archiveCmd, tmp, stage, special, excludeFile));
|
|
273
|
+
}
|
|
274
|
+
await assertOnlyPlainEntries(stage);
|
|
275
|
+
// Promote the wrapper's contents (or the staged tree itself, if the
|
|
276
|
+
// archive wasn't wrapped) into the already-created empty `dest`. `stage`
|
|
277
|
+
// is a sibling of `dest`, so each rename stays on one filesystem.
|
|
278
|
+
const srcRoot = top ? path.join(stage, top) : stage;
|
|
279
|
+
const entries = await fs.readdir(srcRoot).catch((e) => {
|
|
280
|
+
throw errnoCode(e) === 'ENOENT' ? new PukuError(INCONSISTENT_LISTING) : e;
|
|
281
|
+
});
|
|
282
|
+
for (const entry of entries) {
|
|
283
|
+
await fs.rename(path.join(srcRoot, entry), path.join(dest, entry));
|
|
284
|
+
}
|
|
285
|
+
}
|
|
286
|
+
finally {
|
|
287
|
+
await fs.rm(tmp, { force: true });
|
|
288
|
+
await fs.rm(excludeFile, { force: true });
|
|
289
|
+
await fs.rm(stage, { recursive: true, force: true });
|
|
290
|
+
}
|
|
291
|
+
}
|
|
292
|
+
/**
|
|
293
|
+
* Arguments that extract `archive` into `stage` while excluding every member
|
|
294
|
+
* in `special`. Names are glob-escaped because both CLIs treat exclusions as
|
|
295
|
+
* patterns; `tar` reads them from `excludeFile`, `unzip` takes them after
|
|
296
|
+
* `-x`, which must follow `-d` so no pattern is parsed as an option.
|
|
297
|
+
*/
|
|
298
|
+
async function extractArgs(cmd, archive, stage, special, excludeFile) {
|
|
299
|
+
const patterns = special.map((name) => name.replace(/[*?[\\]/g, '\\$&'));
|
|
300
|
+
if (cmd === 'unzip') {
|
|
301
|
+
return ['-oq', archive, '-d', stage, ...(patterns.length > 0 ? ['-x', ...patterns] : [])];
|
|
302
|
+
}
|
|
303
|
+
if (patterns.length === 0)
|
|
304
|
+
return ['-xf', archive, '-C', stage];
|
|
305
|
+
await fs.writeFile(excludeFile, patterns.join('\n') + '\n', { flag: 'wx', mode: 0o600 });
|
|
306
|
+
return ['-xf', archive, '-C', stage, '-X', excludeFile];
|
|
307
|
+
}
|
|
308
|
+
/** Read the first `n` bytes of `file`. */
|
|
309
|
+
async function readHead(file, n) {
|
|
310
|
+
const handle = await fs.open(file, 'r');
|
|
311
|
+
try {
|
|
312
|
+
const buf = Buffer.alloc(n);
|
|
313
|
+
const { bytesRead } = await handle.read(buf, 0, n, 0);
|
|
314
|
+
return buf.subarray(0, bytesRead);
|
|
315
|
+
}
|
|
316
|
+
finally {
|
|
317
|
+
await handle.close();
|
|
318
|
+
}
|
|
319
|
+
}
|
|
320
|
+
//# sourceMappingURL=skills.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skills.js","sourceRoot":"","sources":["../../../../src/vendor/tools/agent-toolset/skills.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The memory sync cadence, split out of `memories.ts` so runtime-agnostic
|
|
3
|
+
* callers (the environment worker) can validate an interval up front without
|
|
4
|
+
* reaching into the Node-only toolset module.
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* How often (milliseconds) the worker syncs the session's memory stores back
|
|
8
|
+
* while the session runs. Checked after each dispatched tool call.
|
|
9
|
+
*/
|
|
10
|
+
export declare const DEFAULT_MEMORY_SYNC_INTERVAL_MS = 15000;
|
|
11
|
+
/**
|
|
12
|
+
* The shortest sync interval accepted. Each sync lists every attached store,
|
|
13
|
+
* so anything tighter mostly spends requests rediscovering that nothing
|
|
14
|
+
* changed.
|
|
15
|
+
*/
|
|
16
|
+
export declare const MIN_MEMORY_SYNC_INTERVAL_MS = 5000;
|
|
17
|
+
/** Throw unless `ms` is a usable sync interval. `option` names it in the message. */
|
|
18
|
+
export declare function checkMemorySyncInterval(ms: number, option: string): void;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The memory sync cadence, split out of `memories.ts` so runtime-agnostic
|
|
3
|
+
* callers (the environment worker) can validate an interval up front without
|
|
4
|
+
* reaching into the Node-only toolset module.
|
|
5
|
+
*/
|
|
6
|
+
import { PukuError } from '../../core/error.js';
|
|
7
|
+
/**
|
|
8
|
+
* How often (milliseconds) the worker syncs the session's memory stores back
|
|
9
|
+
* while the session runs. Checked after each dispatched tool call.
|
|
10
|
+
*/
|
|
11
|
+
export const DEFAULT_MEMORY_SYNC_INTERVAL_MS = 15_000;
|
|
12
|
+
/**
|
|
13
|
+
* The shortest sync interval accepted. Each sync lists every attached store,
|
|
14
|
+
* so anything tighter mostly spends requests rediscovering that nothing
|
|
15
|
+
* changed.
|
|
16
|
+
*/
|
|
17
|
+
export const MIN_MEMORY_SYNC_INTERVAL_MS = 5_000;
|
|
18
|
+
/** Throw unless `ms` is a usable sync interval. `option` names it in the message. */
|
|
19
|
+
export function checkMemorySyncInterval(ms, option) {
|
|
20
|
+
if (!(ms >= MIN_MEMORY_SYNC_INTERVAL_MS)) {
|
|
21
|
+
throw new PukuError(`${option} must be at least ${MIN_MEMORY_SYNC_INTERVAL_MS}ms (got ${ms}); ` +
|
|
22
|
+
'to run without memory sync, pass `memorySyncIntervalMs: null` to the worker instead');
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=sync-interval.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sync-interval.js","sourceRoot":"","sources":["../../../../src/vendor/tools/agent-toolset/sync-interval.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE7C;;;GAGG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAG,MAAM,CAAC;AAEtD;;;;GAIG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,KAAK,CAAC;AAEjD,qFAAqF;AACrF,MAAM,UAAU,uBAAuB,CAAC,EAAU,EAAE,MAAc;IAChE,IAAI,CAAC,CAAC,EAAE,IAAI,2BAA2B,CAAC,EAAE,CAAC;QACzC,MAAM,IAAI,SAAS,CACjB,GAAG,MAAM,qBAAqB,2BAA2B,WAAW,EAAE,KAAK;YACzE,qFAAqF,CACxF,CAAC;IACJ,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Browser stub for `tools/memory/node`.
|
|
3
|
+
*
|
|
4
|
+
* The real module's {@link BetaLocalFilesystemMemoryTool} is implemented on top
|
|
5
|
+
* of Node built-ins (`fs/promises`, `path`, `crypto`), which browser bundlers
|
|
6
|
+
* cannot resolve. The `browser` field in `package.json` substitutes this stub
|
|
7
|
+
* in browser builds; Node runtimes and node-target bundles ignore the mapping
|
|
8
|
+
* and load the real implementation.
|
|
9
|
+
*
|
|
10
|
+
* `betaMemoryTool` is runtime-agnostic and is re-exported for real here; only
|
|
11
|
+
* the filesystem-backed handlers throw.
|
|
12
|
+
*/
|
|
13
|
+
export { betaMemoryTool } from '../../helpers/beta/memory';
|
|
14
|
+
export type { MemoryToolHandlers } from '../../helpers/beta/memory';
|
|
15
|
+
import type { MemoryToolHandlers } from '../../helpers/beta/memory';
|
|
16
|
+
import type { BetaMemoryTool20250818CreateCommand, BetaMemoryTool20250818DeleteCommand, BetaMemoryTool20250818InsertCommand, BetaMemoryTool20250818RenameCommand, BetaMemoryTool20250818StrReplaceCommand, BetaMemoryTool20250818ViewCommand } from '../../resources/beta';
|
|
17
|
+
export declare class BetaLocalFilesystemMemoryTool implements MemoryToolHandlers {
|
|
18
|
+
constructor(_basePath?: string);
|
|
19
|
+
static init(_basePath?: string): Promise<BetaLocalFilesystemMemoryTool>;
|
|
20
|
+
view(_command: BetaMemoryTool20250818ViewCommand): Promise<string>;
|
|
21
|
+
create(_command: BetaMemoryTool20250818CreateCommand): Promise<string>;
|
|
22
|
+
str_replace(_command: BetaMemoryTool20250818StrReplaceCommand): Promise<string>;
|
|
23
|
+
insert(_command: BetaMemoryTool20250818InsertCommand): Promise<string>;
|
|
24
|
+
delete(_command: BetaMemoryTool20250818DeleteCommand): Promise<string>;
|
|
25
|
+
rename(_command: BetaMemoryTool20250818RenameCommand): Promise<string>;
|
|
26
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Browser stub for `tools/memory/node`.
|
|
3
|
+
*
|
|
4
|
+
* The real module's {@link BetaLocalFilesystemMemoryTool} is implemented on top
|
|
5
|
+
* of Node built-ins (`fs/promises`, `path`, `crypto`), which browser bundlers
|
|
6
|
+
* cannot resolve. The `browser` field in `package.json` substitutes this stub
|
|
7
|
+
* in browser builds; Node runtimes and node-target bundles ignore the mapping
|
|
8
|
+
* and load the real implementation.
|
|
9
|
+
*
|
|
10
|
+
* `betaMemoryTool` is runtime-agnostic and is re-exported for real here; only
|
|
11
|
+
* the filesystem-backed handlers throw.
|
|
12
|
+
*/
|
|
13
|
+
export { betaMemoryTool } from '../../helpers/beta/memory.js';
|
|
14
|
+
import { PukuError } from '../../core/error.js';
|
|
15
|
+
function nodeOnly(name) {
|
|
16
|
+
throw new PukuError(`${name} requires Node.js or a Node-compatible runtime`);
|
|
17
|
+
}
|
|
18
|
+
export class BetaLocalFilesystemMemoryTool {
|
|
19
|
+
constructor(_basePath = './memory') {
|
|
20
|
+
nodeOnly('BetaLocalFilesystemMemoryTool');
|
|
21
|
+
}
|
|
22
|
+
static init(_basePath = './memory') {
|
|
23
|
+
return nodeOnly('BetaLocalFilesystemMemoryTool.init');
|
|
24
|
+
}
|
|
25
|
+
view(_command) {
|
|
26
|
+
return nodeOnly('BetaLocalFilesystemMemoryTool');
|
|
27
|
+
}
|
|
28
|
+
create(_command) {
|
|
29
|
+
return nodeOnly('BetaLocalFilesystemMemoryTool');
|
|
30
|
+
}
|
|
31
|
+
str_replace(_command) {
|
|
32
|
+
return nodeOnly('BetaLocalFilesystemMemoryTool');
|
|
33
|
+
}
|
|
34
|
+
insert(_command) {
|
|
35
|
+
return nodeOnly('BetaLocalFilesystemMemoryTool');
|
|
36
|
+
}
|
|
37
|
+
delete(_command) {
|
|
38
|
+
return nodeOnly('BetaLocalFilesystemMemoryTool');
|
|
39
|
+
}
|
|
40
|
+
rename(_command) {
|
|
41
|
+
return nodeOnly('BetaLocalFilesystemMemoryTool');
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=node.browser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"node.browser.js","sourceRoot":"","sources":["../../../../src/vendor/tools/memory/node.browser.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAG3D,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAW7C,SAAS,QAAQ,CAAC,IAAY;IAC5B,MAAM,IAAI,SAAS,CAAC,GAAG,IAAI,gDAAgD,CAAC,CAAC;AAC/E,CAAC;AAED,MAAM,OAAO,6BAA6B;IACxC,YAAY,YAAoB,UAAU;QACxC,QAAQ,CAAC,+BAA+B,CAAC,CAAC;IAC5C,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,YAAoB,UAAU;QACxC,OAAO,QAAQ,CAAC,oCAAoC,CAAC,CAAC;IACxD,CAAC;IAED,IAAI,CAAC,QAA2C;QAC9C,OAAO,QAAQ,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,CAAC,QAA6C;QAClD,OAAO,QAAQ,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;IAED,WAAW,CAAC,QAAiD;QAC3D,OAAO,QAAQ,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,CAAC,QAA6C;QAClD,OAAO,QAAQ,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,CAAC,QAA6C;QAClD,OAAO,QAAQ,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,CAAC,QAA6C;QAClD,OAAO,QAAQ,CAAC,+BAA+B,CAAC,CAAC;IACnD,CAAC;CACF"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export { betaMemoryTool } from '../../helpers/beta/memory';
|
|
2
|
+
export type { MemoryToolHandlers } from '../../helpers/beta/memory';
|
|
3
|
+
import type { MemoryToolHandlers } from '../../helpers/beta/memory';
|
|
4
|
+
import { BetaMemoryTool20250818CreateCommand, BetaMemoryTool20250818DeleteCommand, BetaMemoryTool20250818InsertCommand, BetaMemoryTool20250818RenameCommand, BetaMemoryTool20250818StrReplaceCommand, BetaMemoryTool20250818ViewCommand } from '../../resources/beta';
|
|
5
|
+
export declare class BetaLocalFilesystemMemoryTool implements MemoryToolHandlers {
|
|
6
|
+
private basePath;
|
|
7
|
+
private memoryRoot;
|
|
8
|
+
constructor(basePath?: string);
|
|
9
|
+
static init(basePath?: string): Promise<BetaLocalFilesystemMemoryTool>;
|
|
10
|
+
private validatePath;
|
|
11
|
+
view(command: BetaMemoryTool20250818ViewCommand): Promise<string>;
|
|
12
|
+
create(command: BetaMemoryTool20250818CreateCommand): Promise<string>;
|
|
13
|
+
str_replace(command: BetaMemoryTool20250818StrReplaceCommand): Promise<string>;
|
|
14
|
+
insert(command: BetaMemoryTool20250818InsertCommand): Promise<string>;
|
|
15
|
+
delete(command: BetaMemoryTool20250818DeleteCommand): Promise<string>;
|
|
16
|
+
rename(command: BetaMemoryTool20250818RenameCommand): Promise<string>;
|
|
17
|
+
}
|