genaicode 1.0.0 → 2.1.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/CHANGELOG.md +37 -0
- package/README.md +371 -88
- package/dist/cli.d.ts +2 -0
- package/dist/cli.js +4 -0
- package/dist/cli.js.map +1 -0
- package/dist/core/client.d.ts +42 -0
- package/dist/core/client.js +190 -0
- package/dist/core/client.js.map +1 -0
- package/dist/core/errors.d.ts +38 -0
- package/dist/core/errors.js +118 -0
- package/dist/core/errors.js.map +1 -0
- package/dist/core/middleware.d.ts +43 -0
- package/dist/core/middleware.js +173 -0
- package/dist/core/middleware.js.map +1 -0
- package/dist/core/plugins.d.ts +21 -0
- package/dist/core/plugins.js +55 -0
- package/dist/core/plugins.js.map +1 -0
- package/dist/core/prompt.d.ts +14 -0
- package/dist/core/prompt.js +47 -0
- package/dist/core/prompt.js.map +1 -0
- package/dist/core/result.d.ts +5 -0
- package/dist/core/result.js +27 -0
- package/dist/core/result.js.map +1 -0
- package/dist/core/stream.d.ts +11 -0
- package/dist/core/stream.js +93 -0
- package/dist/core/stream.js.map +1 -0
- package/dist/core/types.d.ts +153 -0
- package/dist/core/types.js +2 -0
- package/dist/core/types.js.map +1 -0
- package/dist/index.d.ts +12 -8
- package/dist/index.js +8 -11
- package/dist/index.js.map +1 -1
- package/dist/pivot-notice.d.ts +1 -0
- package/dist/pivot-notice.js +13 -0
- package/dist/pivot-notice.js.map +1 -0
- package/dist/providers/anthropic-converter.d.ts +12 -0
- package/dist/providers/anthropic-converter.js +111 -0
- package/dist/providers/anthropic-converter.js.map +1 -0
- package/dist/providers/anthropic.d.ts +11 -0
- package/dist/providers/anthropic.js +90 -0
- package/dist/providers/anthropic.js.map +1 -0
- package/dist/providers/fixtures/multimodal-tool-roundtrip.d.ts +4 -0
- package/dist/providers/fixtures/multimodal-tool-roundtrip.js +32 -0
- package/dist/providers/fixtures/multimodal-tool-roundtrip.js.map +1 -0
- package/dist/providers/google-converter.d.ts +10 -0
- package/dist/providers/google-converter.js +142 -0
- package/dist/providers/google-converter.js.map +1 -0
- package/dist/providers/google.d.ts +22 -0
- package/dist/providers/google.js +97 -0
- package/dist/providers/google.js.map +1 -0
- package/dist/providers/openai-converter.d.ts +33 -0
- package/dist/providers/openai-converter.js +192 -0
- package/dist/providers/openai-converter.js.map +1 -0
- package/dist/providers/openai.d.ts +13 -0
- package/dist/providers/openai.js +45 -0
- package/dist/providers/openai.js.map +1 -0
- package/dist/providers.d.ts +11 -0
- package/dist/providers.js +7 -0
- package/dist/providers.js.map +1 -0
- package/docs/pivot.md +111 -0
- package/docs/provider-packages.md +60 -0
- package/docs/retry.md +62 -0
- package/docs/semver.md +55 -0
- package/package.json +34 -91
- package/bin/genaicode-dev.js +0 -12
- package/bin/genaicode.cjs +0 -23
- package/dist/ai-service/ai-studio.d.ts +0 -6
- package/dist/ai-service/ai-studio.js +0 -460
- package/dist/ai-service/ai-studio.js.map +0 -1
- package/dist/ai-service/anthropic.d.ts +0 -5
- package/dist/ai-service/anthropic.js +0 -353
- package/dist/ai-service/anthropic.js.map +0 -1
- package/dist/ai-service/common-types.d.ts +0 -131
- package/dist/ai-service/common-types.js +0 -10
- package/dist/ai-service/common-types.js.map +0 -1
- package/dist/ai-service/common.d.ts +0 -23
- package/dist/ai-service/common.js +0 -59
- package/dist/ai-service/common.js.map +0 -1
- package/dist/ai-service/dall-e.d.ts +0 -7
- package/dist/ai-service/dall-e.js +0 -44
- package/dist/ai-service/dall-e.js.map +0 -1
- package/dist/ai-service/files-api.d.ts +0 -33
- package/dist/ai-service/files-api.js +0 -239
- package/dist/ai-service/files-api.js.map +0 -1
- package/dist/ai-service/github-models.d.ts +0 -13
- package/dist/ai-service/github-models.js +0 -49
- package/dist/ai-service/github-models.js.map +0 -1
- package/dist/ai-service/local-llm.d.ts +0 -6
- package/dist/ai-service/local-llm.js +0 -74
- package/dist/ai-service/local-llm.js.map +0 -1
- package/dist/ai-service/openai-responses.d.ts +0 -9
- package/dist/ai-service/openai-responses.js +0 -332
- package/dist/ai-service/openai-responses.js.map +0 -1
- package/dist/ai-service/openai.d.ts +0 -9
- package/dist/ai-service/openai.js +0 -395
- package/dist/ai-service/openai.js.map +0 -1
- package/dist/ai-service/service-configurations-types.d.ts +0 -79
- package/dist/ai-service/service-configurations-types.js +0 -6
- package/dist/ai-service/service-configurations-types.js.map +0 -1
- package/dist/ai-service/service-configurations.d.ts +0 -42
- package/dist/ai-service/service-configurations.js +0 -241
- package/dist/ai-service/service-configurations.js.map +0 -1
- package/dist/ai-service/unescape-function-call.d.ts +0 -7
- package/dist/ai-service/unescape-function-call.js +0 -59
- package/dist/ai-service/unescape-function-call.js.map +0 -1
- package/dist/ai-service/vertex-ai-claude.d.ts +0 -5
- package/dist/ai-service/vertex-ai-claude.js +0 -160
- package/dist/ai-service/vertex-ai-claude.js.map +0 -1
- package/dist/ai-service/vertex-ai-imagen.d.ts +0 -7
- package/dist/ai-service/vertex-ai-imagen.js +0 -70
- package/dist/ai-service/vertex-ai-imagen.js.map +0 -1
- package/dist/ai-service/vertex-ai.d.ts +0 -6
- package/dist/ai-service/vertex-ai.js +0 -18
- package/dist/ai-service/vertex-ai.js.map +0 -1
- package/dist/cli/cli-options.d.ts +0 -10
- package/dist/cli/cli-options.js +0 -116
- package/dist/cli/cli-options.js.map +0 -1
- package/dist/cli/cli-params.d.ts +0 -29
- package/dist/cli/cli-params.js +0 -118
- package/dist/cli/cli-params.js.map +0 -1
- package/dist/cli/service-autodetect.d.ts +0 -2
- package/dist/cli/service-autodetect.js +0 -17
- package/dist/cli/service-autodetect.js.map +0 -1
- package/dist/cli/validate-cli-params.d.ts +0 -18
- package/dist/cli/validate-cli-params.js +0 -146
- package/dist/cli/validate-cli-params.js.map +0 -1
- package/dist/files/cache-file.d.ts +0 -10
- package/dist/files/cache-file.js +0 -57
- package/dist/files/cache-file.js.map +0 -1
- package/dist/files/file-id-utils.d.ts +0 -7
- package/dist/files/file-id-utils.js +0 -25
- package/dist/files/file-id-utils.js.map +0 -1
- package/dist/files/file-utils.d.ts +0 -2
- package/dist/files/file-utils.js +0 -7
- package/dist/files/file-utils.js.map +0 -1
- package/dist/files/find-files.d.ts +0 -10
- package/dist/files/find-files.js +0 -87
- package/dist/files/find-files.js.map +0 -1
- package/dist/files/path-utils.d.ts +0 -1
- package/dist/files/path-utils.js +0 -12
- package/dist/files/path-utils.js.map +0 -1
- package/dist/files/read-files.d.ts +0 -18
- package/dist/files/read-files.js +0 -107
- package/dist/files/read-files.js.map +0 -1
- package/dist/files/search-files.d.ts +0 -53
- package/dist/files/search-files.js +0 -97
- package/dist/files/search-files.js.map +0 -1
- package/dist/files/source-code-tree.d.ts +0 -16
- package/dist/files/source-code-tree.js +0 -41
- package/dist/files/source-code-tree.js.map +0 -1
- package/dist/files/source-code-types.d.ts +0 -53
- package/dist/files/source-code-types.js +0 -2
- package/dist/files/source-code-types.js.map +0 -1
- package/dist/files/source-code-utils.d.ts +0 -31
- package/dist/files/source-code-utils.js +0 -126
- package/dist/files/source-code-utils.js.map +0 -1
- package/dist/files/summary-cache.d.ts +0 -25
- package/dist/files/summary-cache.js +0 -23
- package/dist/files/summary-cache.js.map +0 -1
- package/dist/files/temp-buffer.d.ts +0 -2
- package/dist/files/temp-buffer.js +0 -12
- package/dist/files/temp-buffer.js.map +0 -1
- package/dist/files/update-files.d.ts +0 -7
- package/dist/files/update-files.js +0 -30
- package/dist/files/update-files.js.map +0 -1
- package/dist/help-docs/genaicode-help-document.d.ts +0 -1
- package/dist/help-docs/genaicode-help-document.js +0 -287
- package/dist/help-docs/genaicode-help-document.js.map +0 -1
- package/dist/images/ensure-alpha.d.ts +0 -1
- package/dist/images/ensure-alpha.js +0 -5
- package/dist/images/ensure-alpha.js.map +0 -1
- package/dist/images/imgly-remove-background.d.ts +0 -2
- package/dist/images/imgly-remove-background.js +0 -21
- package/dist/images/imgly-remove-background.js.map +0 -1
- package/dist/images/resize-image.d.ts +0 -19
- package/dist/images/resize-image.js +0 -22
- package/dist/images/resize-image.js.map +0 -1
- package/dist/images/split-image.d.ts +0 -18
- package/dist/images/split-image.js +0 -25
- package/dist/images/split-image.js.map +0 -1
- package/dist/main/codegen-non-interactive.d.ts +0 -2
- package/dist/main/codegen-non-interactive.js +0 -20
- package/dist/main/codegen-non-interactive.js.map +0 -1
- package/dist/main/codegen-types.d.ts +0 -145
- package/dist/main/codegen-types.js +0 -2
- package/dist/main/codegen-types.js.map +0 -1
- package/dist/main/codegen-utils.d.ts +0 -8
- package/dist/main/codegen-utils.js +0 -43
- package/dist/main/codegen-utils.js.map +0 -1
- package/dist/main/codegen.d.ts +0 -5
- package/dist/main/codegen.js +0 -105
- package/dist/main/codegen.js.map +0 -1
- package/dist/main/codegen.test-utils.d.ts +0 -81
- package/dist/main/codegen.test-utils.js +0 -87
- package/dist/main/codegen.test-utils.js.map +0 -1
- package/dist/main/common/abort-controller.d.ts +0 -2
- package/dist/main/common/abort-controller.js +0 -5
- package/dist/main/common/abort-controller.js.map +0 -1
- package/dist/main/common/app-context-bus.d.ts +0 -11
- package/dist/main/common/app-context-bus.js +0 -29
- package/dist/main/common/app-context-bus.js.map +0 -1
- package/dist/main/common/console-types.d.ts +0 -23
- package/dist/main/common/console-types.js +0 -8
- package/dist/main/common/console-types.js.map +0 -1
- package/dist/main/common/content-bus-types.d.ts +0 -60
- package/dist/main/common/content-bus-types.js +0 -12
- package/dist/main/common/content-bus-types.js.map +0 -1
- package/dist/main/common/content-bus.d.ts +0 -16
- package/dist/main/common/content-bus.js +0 -102
- package/dist/main/common/content-bus.js.map +0 -1
- package/dist/main/common/cost-collector.d.ts +0 -12
- package/dist/main/common/cost-collector.js +0 -90
- package/dist/main/common/cost-collector.js.map +0 -1
- package/dist/main/common/user-actions.d.ts +0 -36
- package/dist/main/common/user-actions.js +0 -59
- package/dist/main/common/user-actions.js.map +0 -1
- package/dist/main/config-lib.d.ts +0 -13
- package/dist/main/config-lib.js +0 -90
- package/dist/main/config-lib.js.map +0 -1
- package/dist/main/config-schema.d.ts +0 -15
- package/dist/main/config-schema.js +0 -320
- package/dist/main/config-schema.js.map +0 -1
- package/dist/main/config-types.d.ts +0 -96
- package/dist/main/config-types.js +0 -4
- package/dist/main/config-types.js.map +0 -1
- package/dist/main/config.d.ts +0 -14
- package/dist/main/config.js +0 -110
- package/dist/main/config.js.map +0 -1
- package/dist/main/generate-content-functions.d.ts +0 -3
- package/dist/main/generate-content-functions.js +0 -19
- package/dist/main/generate-content-functions.js.map +0 -1
- package/dist/main/interactive/codegen-interactive.d.ts +0 -2
- package/dist/main/interactive/codegen-interactive.js +0 -57
- package/dist/main/interactive/codegen-interactive.js.map +0 -1
- package/dist/main/interactive/codegen-worker.d.ts +0 -2
- package/dist/main/interactive/codegen-worker.js +0 -55
- package/dist/main/interactive/codegen-worker.js.map +0 -1
- package/dist/main/interactive/common.d.ts +0 -5
- package/dist/main/interactive/common.js +0 -49
- package/dist/main/interactive/common.js.map +0 -1
- package/dist/main/interactive/configure.d.ts +0 -2
- package/dist/main/interactive/configure.js +0 -95
- package/dist/main/interactive/configure.js.map +0 -1
- package/dist/main/interactive/error-handling.d.ts +0 -1
- package/dist/main/interactive/error-handling.js +0 -43
- package/dist/main/interactive/error-handling.js.map +0 -1
- package/dist/main/interactive/help.d.ts +0 -1
- package/dist/main/interactive/help.js +0 -20
- package/dist/main/interactive/help.js.map +0 -1
- package/dist/main/interactive/select-ai-service.d.ts +0 -2
- package/dist/main/interactive/select-ai-service.js +0 -27
- package/dist/main/interactive/select-ai-service.js.map +0 -1
- package/dist/main/interactive/task-file.d.ts +0 -2
- package/dist/main/interactive/task-file.js +0 -35
- package/dist/main/interactive/task-file.js.map +0 -1
- package/dist/main/interactive/text-prompt.d.ts +0 -2
- package/dist/main/interactive/text-prompt.js +0 -18
- package/dist/main/interactive/text-prompt.js.map +0 -1
- package/dist/main/interactive/user-action-handlers.d.ts +0 -1
- package/dist/main/interactive/user-action-handlers.js +0 -20
- package/dist/main/interactive/user-action-handlers.js.map +0 -1
- package/dist/main/interactive/user-interrupt.d.ts +0 -1
- package/dist/main/interactive/user-interrupt.js +0 -36
- package/dist/main/interactive/user-interrupt.js.map +0 -1
- package/dist/main/knowledge/knowledge-store.d.ts +0 -6
- package/dist/main/knowledge/knowledge-store.js +0 -128
- package/dist/main/knowledge/knowledge-store.js.map +0 -1
- package/dist/main/knowledge/types.d.ts +0 -20
- package/dist/main/knowledge/types.js +0 -2
- package/dist/main/knowledge/types.js.map +0 -1
- package/dist/main/plugin-loader.d.ts +0 -36
- package/dist/main/plugin-loader.js +0 -245
- package/dist/main/plugin-loader.js.map +0 -1
- package/dist/main/ui/backend/api-handlers.d.ts +0 -6
- package/dist/main/ui/backend/api-handlers.js +0 -5
- package/dist/main/ui/backend/api-handlers.js.map +0 -1
- package/dist/main/ui/backend/api-utils.d.ts +0 -2
- package/dist/main/ui/backend/api-utils.js +0 -18
- package/dist/main/ui/backend/api-utils.js.map +0 -1
- package/dist/main/ui/backend/api.d.ts +0 -3
- package/dist/main/ui/backend/api.js +0 -25
- package/dist/main/ui/backend/api.js.map +0 -1
- package/dist/main/ui/backend/endpoints/compress-context-endpoint.d.ts +0 -1
- package/dist/main/ui/backend/endpoints/compress-context-endpoint.js +0 -18
- package/dist/main/ui/backend/endpoints/compress-context-endpoint.js.map +0 -1
- package/dist/main/ui/backend/endpoints/config-endpoint.d.ts +0 -1
- package/dist/main/ui/backend/endpoints/config-endpoint.js +0 -51
- package/dist/main/ui/backend/endpoints/config-endpoint.js.map +0 -1
- package/dist/main/ui/backend/endpoints/console-logs-endpoint.d.ts +0 -1
- package/dist/main/ui/backend/endpoints/console-logs-endpoint.js +0 -19
- package/dist/main/ui/backend/endpoints/console-logs-endpoint.js.map +0 -1
- package/dist/main/ui/backend/endpoints/content-endpoint.d.ts +0 -1
- package/dist/main/ui/backend/endpoints/content-endpoint.js +0 -14
- package/dist/main/ui/backend/endpoints/content-endpoint.js.map +0 -1
- package/dist/main/ui/backend/endpoints/context-endpoint.d.ts +0 -1
- package/dist/main/ui/backend/endpoints/context-endpoint.js +0 -169
- package/dist/main/ui/backend/endpoints/context-endpoint.js.map +0 -1
- package/dist/main/ui/backend/endpoints/edit-message-endpoint.d.ts +0 -1
- package/dist/main/ui/backend/endpoints/edit-message-endpoint.js +0 -37
- package/dist/main/ui/backend/endpoints/edit-message-endpoint.js.map +0 -1
- package/dist/main/ui/backend/endpoints/execute-codegen-endpoint.d.ts +0 -1
- package/dist/main/ui/backend/endpoints/execute-codegen-endpoint.js +0 -44
- package/dist/main/ui/backend/endpoints/execute-codegen-endpoint.js.map +0 -1
- package/dist/main/ui/backend/endpoints/execution-status-endpoint.d.ts +0 -1
- package/dist/main/ui/backend/endpoints/execution-status-endpoint.js +0 -37
- package/dist/main/ui/backend/endpoints/execution-status-endpoint.js.map +0 -1
- package/dist/main/ui/backend/endpoints/generate-content-endpoint.d.ts +0 -1
- package/dist/main/ui/backend/endpoints/generate-content-endpoint.js +0 -29
- package/dist/main/ui/backend/endpoints/generate-content-endpoint.js.map +0 -1
- package/dist/main/ui/backend/endpoints/index.d.ts +0 -13
- package/dist/main/ui/backend/endpoints/index.js +0 -14
- package/dist/main/ui/backend/endpoints/index.js.map +0 -1
- package/dist/main/ui/backend/endpoints/interrupt-execution-endpoint.d.ts +0 -1
- package/dist/main/ui/backend/endpoints/interrupt-execution-endpoint.js +0 -28
- package/dist/main/ui/backend/endpoints/interrupt-execution-endpoint.js.map +0 -1
- package/dist/main/ui/backend/endpoints/iteration-endpoint.d.ts +0 -1
- package/dist/main/ui/backend/endpoints/iteration-endpoint.js +0 -16
- package/dist/main/ui/backend/endpoints/iteration-endpoint.js.map +0 -1
- package/dist/main/ui/backend/endpoints/question-endpoint.d.ts +0 -1
- package/dist/main/ui/backend/endpoints/question-endpoint.js +0 -72
- package/dist/main/ui/backend/endpoints/question-endpoint.js.map +0 -1
- package/dist/main/ui/backend/endpoints/service-configuration-endpoint.d.ts +0 -1
- package/dist/main/ui/backend/endpoints/service-configuration-endpoint.js +0 -54
- package/dist/main/ui/backend/endpoints/service-configuration-endpoint.js.map +0 -1
- package/dist/main/ui/backend/endpoints/usage-endpoint.d.ts +0 -1
- package/dist/main/ui/backend/endpoints/usage-endpoint.js +0 -15
- package/dist/main/ui/backend/endpoints/usage-endpoint.js.map +0 -1
- package/dist/main/ui/backend/server.d.ts +0 -8
- package/dist/main/ui/backend/server.js +0 -84
- package/dist/main/ui/backend/server.js.map +0 -1
- package/dist/main/ui/backend/service.d.ts +0 -159
- package/dist/main/ui/backend/service.js +0 -626
- package/dist/main/ui/backend/service.js.map +0 -1
- package/dist/main/ui/codegen-ui.d.ts +0 -6
- package/dist/main/ui/codegen-ui.js +0 -22
- package/dist/main/ui/codegen-ui.js.map +0 -1
- package/dist/main/ui/common/api-types.d.ts +0 -170
- package/dist/main/ui/common/api-types.js +0 -13
- package/dist/main/ui/common/api-types.js.map +0 -1
- package/dist/main/ui/frontend/assets/favicon-DvroFOpS.png +0 -0
- package/dist/main/ui/frontend/assets/index-5QDg_0vR.css +0 -1
- package/dist/main/ui/frontend/assets/index-C_k1AhO2.js +0 -3445
- package/dist/main/ui/frontend/assets/logo-BGHkG1-J.png +0 -0
- package/dist/main/ui/frontend/assets/logo-dark-KAsU1C78.png +0 -0
- package/dist/main/ui/frontend/assets/press-start-2p-cyrillic-400-normal-oElOGqNf.woff2 +0 -0
- package/dist/main/ui/frontend/assets/press-start-2p-cyrillic-ext-400-normal-COIQET2s.woff2 +0 -0
- package/dist/main/ui/frontend/assets/press-start-2p-greek-400-normal-DUIT0YPZ.woff2 +0 -0
- package/dist/main/ui/frontend/assets/press-start-2p-latin-400-normal-BKfmdmKK.woff +0 -0
- package/dist/main/ui/frontend/assets/press-start-2p-latin-400-normal-xj9lRvVs.woff2 +0 -0
- package/dist/main/ui/frontend/assets/press-start-2p-latin-ext-400-normal-B18ub5-k.woff +0 -0
- package/dist/main/ui/frontend/assets/press-start-2p-latin-ext-400-normal-DDIa4im3.woff2 +0 -0
- package/dist/main/ui/frontend/assets/wolf-bark-Bl17CX4O.mp3 +0 -0
- package/dist/main/ui/frontend/index.html +0 -16
- package/dist/main/ui/user-action-handlers.d.ts +0 -2
- package/dist/main/ui/user-action-handlers.js +0 -34
- package/dist/main/ui/user-action-handlers.js.map +0 -1
- package/dist/operations/create-directory/create-directory-def.d.ts +0 -9
- package/dist/operations/create-directory/create-directory-def.js +0 -22
- package/dist/operations/create-directory/create-directory-def.js.map +0 -1
- package/dist/operations/create-directory/create-directory-executor.d.ts +0 -6
- package/dist/operations/create-directory/create-directory-executor.js +0 -22
- package/dist/operations/create-directory/create-directory-executor.js.map +0 -1
- package/dist/operations/create-file/create-file-def.d.ts +0 -10
- package/dist/operations/create-file/create-file-def.js +0 -29
- package/dist/operations/create-file/create-file-def.js.map +0 -1
- package/dist/operations/create-file/create-file-executor.d.ts +0 -6
- package/dist/operations/create-file/create-file-executor.js +0 -27
- package/dist/operations/create-file/create-file-executor.js.map +0 -1
- package/dist/operations/delete-file/delete-file-def.d.ts +0 -9
- package/dist/operations/delete-file/delete-file-def.js +0 -22
- package/dist/operations/delete-file/delete-file-def.js.map +0 -1
- package/dist/operations/delete-file/delete-file-executor.d.ts +0 -6
- package/dist/operations/delete-file/delete-file-executor.js +0 -23
- package/dist/operations/delete-file/delete-file-executor.js.map +0 -1
- package/dist/operations/download-file/download-file-def.d.ts +0 -10
- package/dist/operations/download-file/download-file-def.js +0 -26
- package/dist/operations/download-file/download-file-def.js.map +0 -1
- package/dist/operations/download-file/download-file-executor.d.ts +0 -6
- package/dist/operations/download-file/download-file-executor.js +0 -44
- package/dist/operations/download-file/download-file-executor.js.map +0 -1
- package/dist/operations/imgly-remove-background/imgly-remove-background-def.d.ts +0 -10
- package/dist/operations/imgly-remove-background/imgly-remove-background-def.js +0 -26
- package/dist/operations/imgly-remove-background/imgly-remove-background-def.js.map +0 -1
- package/dist/operations/imgly-remove-background/imgly-remove-background-executor.d.ts +0 -6
- package/dist/operations/imgly-remove-background/imgly-remove-background-executor.js +0 -40
- package/dist/operations/imgly-remove-background/imgly-remove-background-executor.js.map +0 -1
- package/dist/operations/move-file/move-file-def.d.ts +0 -10
- package/dist/operations/move-file/move-file-def.js +0 -26
- package/dist/operations/move-file/move-file-def.js.map +0 -1
- package/dist/operations/move-file/move-file-executor.d.ts +0 -6
- package/dist/operations/move-file/move-file-executor.js +0 -29
- package/dist/operations/move-file/move-file-executor.js.map +0 -1
- package/dist/operations/operations-index.d.ts +0 -3
- package/dist/operations/operations-index.js +0 -33
- package/dist/operations/operations-index.js.map +0 -1
- package/dist/operations/patch-file/patch-file-def.d.ts +0 -10
- package/dist/operations/patch-file/patch-file-def.js +0 -40
- package/dist/operations/patch-file/patch-file-def.js.map +0 -1
- package/dist/operations/patch-file/patch-file-executor.d.ts +0 -5
- package/dist/operations/patch-file/patch-file-executor.js +0 -26
- package/dist/operations/patch-file/patch-file-executor.js.map +0 -1
- package/dist/operations/resize-image/resize-image-def.d.ts +0 -13
- package/dist/operations/resize-image/resize-image-def.js +0 -37
- package/dist/operations/resize-image/resize-image-def.js.map +0 -1
- package/dist/operations/resize-image/resize-image-executor.d.ts +0 -5
- package/dist/operations/resize-image/resize-image-executor.js +0 -30
- package/dist/operations/resize-image/resize-image-executor.js.map +0 -1
- package/dist/operations/split-image/split-image-def.d.ts +0 -18
- package/dist/operations/split-image/split-image-def.js +0 -46
- package/dist/operations/split-image/split-image-def.js.map +0 -1
- package/dist/operations/split-image/split-image-executor.d.ts +0 -6
- package/dist/operations/split-image/split-image-executor.js +0 -51
- package/dist/operations/split-image/split-image-executor.js.map +0 -1
- package/dist/operations/update-file/update-file-def.d.ts +0 -10
- package/dist/operations/update-file/update-file-def.js +0 -27
- package/dist/operations/update-file/update-file-def.js.map +0 -1
- package/dist/operations/update-file/update-file-executor.d.ts +0 -5
- package/dist/operations/update-file/update-file-executor.js +0 -22
- package/dist/operations/update-file/update-file-executor.js.map +0 -1
- package/dist/project-profiles/detection.d.ts +0 -40
- package/dist/project-profiles/detection.js +0 -131
- package/dist/project-profiles/detection.js.map +0 -1
- package/dist/project-profiles/index.d.ts +0 -35
- package/dist/project-profiles/index.js +0 -72
- package/dist/project-profiles/index.js.map +0 -1
- package/dist/project-profiles/profiles/golang.d.ts +0 -65
- package/dist/project-profiles/profiles/golang.js +0 -208
- package/dist/project-profiles/profiles/golang.js.map +0 -1
- package/dist/project-profiles/profiles/java-maven.d.ts +0 -80
- package/dist/project-profiles/profiles/java-maven.js +0 -165
- package/dist/project-profiles/profiles/java-maven.js.map +0 -1
- package/dist/project-profiles/profiles/javascript-npm.d.ts +0 -40
- package/dist/project-profiles/profiles/javascript-npm.js +0 -118
- package/dist/project-profiles/profiles/javascript-npm.js.map +0 -1
- package/dist/project-profiles/profiles/javascript-react.d.ts +0 -46
- package/dist/project-profiles/profiles/javascript-react.js +0 -147
- package/dist/project-profiles/profiles/javascript-react.js.map +0 -1
- package/dist/project-profiles/profiles/python-django.d.ts +0 -58
- package/dist/project-profiles/profiles/python-django.js +0 -200
- package/dist/project-profiles/profiles/python-django.js.map +0 -1
- package/dist/project-profiles/types.d.ts +0 -122
- package/dist/project-profiles/types.js +0 -77
- package/dist/project-profiles/types.js.map +0 -1
- package/dist/prompt/ai-service-fallback.d.ts +0 -4
- package/dist/prompt/ai-service-fallback.js +0 -47
- package/dist/prompt/ai-service-fallback.js.map +0 -1
- package/dist/prompt/context-utils.d.ts +0 -7
- package/dist/prompt/context-utils.js +0 -33
- package/dist/prompt/context-utils.js.map +0 -1
- package/dist/prompt/dynamic-function-generator.d.ts +0 -2
- package/dist/prompt/dynamic-function-generator.js +0 -58
- package/dist/prompt/dynamic-function-generator.js.map +0 -1
- package/dist/prompt/function-calling-validate.d.ts +0 -4
- package/dist/prompt/function-calling-validate.js +0 -109
- package/dist/prompt/function-calling-validate.js.map +0 -1
- package/dist/prompt/function-calling.d.ts +0 -5
- package/dist/prompt/function-calling.js +0 -88
- package/dist/prompt/function-calling.js.map +0 -1
- package/dist/prompt/function-defs/analysis-result.d.ts +0 -7
- package/dist/prompt/function-defs/analysis-result.js +0 -24
- package/dist/prompt/function-defs/analysis-result.js.map +0 -1
- package/dist/prompt/function-defs/ask-question.d.ts +0 -20
- package/dist/prompt/function-defs/ask-question.js +0 -373
- package/dist/prompt/function-defs/ask-question.js.map +0 -1
- package/dist/prompt/function-defs/code-execution.d.ts +0 -7
- package/dist/prompt/function-defs/code-execution.js +0 -27
- package/dist/prompt/function-defs/code-execution.js.map +0 -1
- package/dist/prompt/function-defs/codegen-planning.d.ts +0 -8
- package/dist/prompt/function-defs/codegen-planning.js +0 -60
- package/dist/prompt/function-defs/codegen-planning.js.map +0 -1
- package/dist/prompt/function-defs/codegen-summary.d.ts +0 -5
- package/dist/prompt/function-defs/codegen-summary.js +0 -103
- package/dist/prompt/function-defs/codegen-summary.js.map +0 -1
- package/dist/prompt/function-defs/compound-action-list.d.ts +0 -7
- package/dist/prompt/function-defs/compound-action-list.js +0 -38
- package/dist/prompt/function-defs/compound-action-list.js.map +0 -1
- package/dist/prompt/function-defs/compound-action.d.ts +0 -2
- package/dist/prompt/function-defs/compound-action.js +0 -47
- package/dist/prompt/function-defs/compound-action.js.map +0 -1
- package/dist/prompt/function-defs/container-task-commands.d.ts +0 -10
- package/dist/prompt/function-defs/container-task-commands.js +0 -185
- package/dist/prompt/function-defs/container-task-commands.js.map +0 -1
- package/dist/prompt/function-defs/context-compression.d.ts +0 -47
- package/dist/prompt/function-defs/context-compression.js +0 -49
- package/dist/prompt/function-defs/context-compression.js.map +0 -1
- package/dist/prompt/function-defs/conversation-graph.d.ts +0 -33
- package/dist/prompt/function-defs/conversation-graph.js +0 -110
- package/dist/prompt/function-defs/conversation-graph.js.map +0 -1
- package/dist/prompt/function-defs/conversation-summary.d.ts +0 -2
- package/dist/prompt/function-defs/conversation-summary.js +0 -15
- package/dist/prompt/function-defs/conversation-summary.js.map +0 -1
- package/dist/prompt/function-defs/explanation.d.ts +0 -5
- package/dist/prompt/function-defs/explanation.js +0 -18
- package/dist/prompt/function-defs/explanation.js.map +0 -1
- package/dist/prompt/function-defs/explore-external-directories.d.ts +0 -16
- package/dist/prompt/function-defs/explore-external-directories.js +0 -48
- package/dist/prompt/function-defs/explore-external-directories.js.map +0 -1
- package/dist/prompt/function-defs/extract-file-fragments.d.ts +0 -27
- package/dist/prompt/function-defs/extract-file-fragments.js +0 -36
- package/dist/prompt/function-defs/extract-file-fragments.js.map +0 -1
- package/dist/prompt/function-defs/genaicode-help.d.ts +0 -6
- package/dist/prompt/function-defs/genaicode-help.js +0 -23
- package/dist/prompt/function-defs/genaicode-help.js.map +0 -1
- package/dist/prompt/function-defs/generate-image.d.ts +0 -5
- package/dist/prompt/function-defs/generate-image.js +0 -42
- package/dist/prompt/function-defs/generate-image.js.map +0 -1
- package/dist/prompt/function-defs/get-image-assets.d.ts +0 -5
- package/dist/prompt/function-defs/get-image-assets.js +0 -21
- package/dist/prompt/function-defs/get-image-assets.js.map +0 -1
- package/dist/prompt/function-defs/get-source-code.d.ts +0 -5
- package/dist/prompt/function-defs/get-source-code.js +0 -49
- package/dist/prompt/function-defs/get-source-code.js.map +0 -1
- package/dist/prompt/function-defs/iterate.d.ts +0 -20
- package/dist/prompt/function-defs/iterate.js +0 -373
- package/dist/prompt/function-defs/iterate.js.map +0 -1
- package/dist/prompt/function-defs/optimize-context.d.ts +0 -5
- package/dist/prompt/function-defs/optimize-context.js +0 -74
- package/dist/prompt/function-defs/optimize-context.js.map +0 -1
- package/dist/prompt/function-defs/perform-analysis.d.ts +0 -8
- package/dist/prompt/function-defs/perform-analysis.js +0 -28
- package/dist/prompt/function-defs/perform-analysis.js.map +0 -1
- package/dist/prompt/function-defs/pull-console-logs.d.ts +0 -2
- package/dist/prompt/function-defs/pull-console-logs.js +0 -29
- package/dist/prompt/function-defs/pull-console-logs.js.map +0 -1
- package/dist/prompt/function-defs/read-external-files.d.ts +0 -9
- package/dist/prompt/function-defs/read-external-files.js +0 -30
- package/dist/prompt/function-defs/read-external-files.js.map +0 -1
- package/dist/prompt/function-defs/read-history.d.ts +0 -2
- package/dist/prompt/function-defs/read-history.js +0 -14
- package/dist/prompt/function-defs/read-history.js.map +0 -1
- package/dist/prompt/function-defs/reasoning-inference.d.ts +0 -3
- package/dist/prompt/function-defs/reasoning-inference.js +0 -39
- package/dist/prompt/function-defs/reasoning-inference.js.map +0 -1
- package/dist/prompt/function-defs/run-bash-command.d.ts +0 -2
- package/dist/prompt/function-defs/run-bash-command.js +0 -29
- package/dist/prompt/function-defs/run-bash-command.js.map +0 -1
- package/dist/prompt/function-defs/run-container-task.d.ts +0 -11
- package/dist/prompt/function-defs/run-container-task.js +0 -41
- package/dist/prompt/function-defs/run-container-task.js.map +0 -1
- package/dist/prompt/function-defs/run-project-command.d.ts +0 -2
- package/dist/prompt/function-defs/run-project-command.js +0 -40
- package/dist/prompt/function-defs/run-project-command.js.map +0 -1
- package/dist/prompt/function-defs/set-summaries.d.ts +0 -5
- package/dist/prompt/function-defs/set-summaries.js +0 -59
- package/dist/prompt/function-defs/set-summaries.js.map +0 -1
- package/dist/prompt/function-defs/structured-question.d.ts +0 -2
- package/dist/prompt/function-defs/structured-question.js +0 -64
- package/dist/prompt/function-defs/structured-question.js.map +0 -1
- package/dist/prompt/function-defs/update-history.d.ts +0 -5
- package/dist/prompt/function-defs/update-history.js +0 -22
- package/dist/prompt/function-defs/update-history.js.map +0 -1
- package/dist/prompt/function-defs/web-search.d.ts +0 -9
- package/dist/prompt/function-defs/web-search.js +0 -16
- package/dist/prompt/function-defs/web-search.js.map +0 -1
- package/dist/prompt/limits.d.ts +0 -3
- package/dist/prompt/limits.js +0 -21
- package/dist/prompt/limits.js.map +0 -1
- package/dist/prompt/prompt-codegen.d.ts +0 -9
- package/dist/prompt/prompt-codegen.js +0 -45
- package/dist/prompt/prompt-codegen.js.map +0 -1
- package/dist/prompt/prompt-service.d.ts +0 -8
- package/dist/prompt/prompt-service.js +0 -147
- package/dist/prompt/prompt-service.js.map +0 -1
- package/dist/prompt/prompt-service.test-utils.d.ts +0 -66
- package/dist/prompt/prompt-service.test-utils.js +0 -171
- package/dist/prompt/prompt-service.test-utils.js.map +0 -1
- package/dist/prompt/source-code-optimize.d.ts +0 -2
- package/dist/prompt/source-code-optimize.js +0 -27
- package/dist/prompt/source-code-optimize.js.map +0 -1
- package/dist/prompt/static-prompts.d.ts +0 -17
- package/dist/prompt/static-prompts.js +0 -23
- package/dist/prompt/static-prompts.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/ask-question-handler.d.ts +0 -3
- package/dist/prompt/steps/step-ask-question/ask-question-handler.js +0 -13
- package/dist/prompt/steps/step-ask-question/ask-question-handler.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/container-task/command-execution-loop.d.ts +0 -7
- package/dist/prompt/steps/step-ask-question/handlers/container-task/command-execution-loop.js +0 -301
- package/dist/prompt/steps/step-ask-question/handlers/container-task/command-execution-loop.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/check-context.d.ts +0 -12
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/check-context.js +0 -41
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/check-context.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/complete-task.d.ts +0 -4
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/complete-task.js +0 -49
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/complete-task.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/copy-from-container.d.ts +0 -4
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/copy-from-container.js +0 -190
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/copy-from-container.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/copy-to-container.d.ts +0 -4
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/copy-to-container.js +0 -139
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/copy-to-container.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/edit-file.d.ts +0 -10
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/edit-file.js +0 -93
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/edit-file.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/fail-task.d.ts +0 -4
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/fail-task.js +0 -72
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/fail-task.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/gain-knowledge.d.ts +0 -10
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/gain-knowledge.js +0 -125
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/gain-knowledge.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/interrupt-controller.d.ts +0 -19
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/interrupt-controller.js +0 -33
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/interrupt-controller.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/query-knowledge.d.ts +0 -8
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/query-knowledge.js +0 -85
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/query-knowledge.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/request-secret.d.ts +0 -6
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/request-secret.js +0 -122
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/request-secret.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/run-command.d.ts +0 -7
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/run-command.js +0 -146
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/run-command.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/send-message.d.ts +0 -4
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/send-message.js +0 -56
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/send-message.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/set-execution-plan.d.ts +0 -4
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/set-execution-plan.js +0 -56
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/set-execution-plan.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/update-execution-plan.d.ts +0 -4
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/update-execution-plan.js +0 -39
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/update-execution-plan.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/view-file.d.ts +0 -10
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/view-file.js +0 -95
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/view-file.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/web-search.d.ts +0 -2
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/web-search.js +0 -96
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/web-search.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/wrap-context.d.ts +0 -4
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/wrap-context.js +0 -123
- package/dist/prompt/steps/step-ask-question/handlers/container-task/commands/wrap-context.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/container-task/container-command-handlers.d.ts +0 -34
- package/dist/prompt/steps/step-ask-question/handlers/container-task/container-command-handlers.js +0 -332
- package/dist/prompt/steps/step-ask-question/handlers/container-task/container-command-handlers.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/container-task/container-commands-registry.d.ts +0 -11
- package/dist/prompt/steps/step-ask-question/handlers/container-task/container-commands-registry.js +0 -50
- package/dist/prompt/steps/step-ask-question/handlers/container-task/container-commands-registry.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/container-task/container-commands-types.d.ts +0 -28
- package/dist/prompt/steps/step-ask-question/handlers/container-task/container-commands-types.js +0 -2
- package/dist/prompt/steps/step-ask-question/handlers/container-task/container-commands-types.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/container-task/container-task-orchestrator.d.ts +0 -2
- package/dist/prompt/steps/step-ask-question/handlers/container-task/container-task-orchestrator.js +0 -202
- package/dist/prompt/steps/step-ask-question/handlers/container-task/container-task-orchestrator.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/container-task/container-task-types.d.ts +0 -52
- package/dist/prompt/steps/step-ask-question/handlers/container-task/container-task-types.js +0 -2
- package/dist/prompt/steps/step-ask-question/handlers/container-task/container-task-types.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/container-task/utils/docker-check.d.ts +0 -4
- package/dist/prompt/steps/step-ask-question/handlers/container-task/utils/docker-check.js +0 -15
- package/dist/prompt/steps/step-ask-question/handlers/container-task/utils/docker-check.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/container-task/utils/docker-utils.d.ts +0 -50
- package/dist/prompt/steps/step-ask-question/handlers/container-task/utils/docker-utils.js +0 -358
- package/dist/prompt/steps/step-ask-question/handlers/container-task/utils/docker-utils.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/file-request-utils.d.ts +0 -47
- package/dist/prompt/steps/step-ask-question/handlers/file-request-utils.js +0 -114
- package/dist/prompt/steps/step-ask-question/handlers/file-request-utils.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-code-generation.d.ts +0 -4
- package/dist/prompt/steps/step-ask-question/handlers/handle-code-generation.js +0 -177
- package/dist/prompt/steps/step-ask-question/handlers/handle-code-generation.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-compound-action.d.ts +0 -20
- package/dist/prompt/steps/step-ask-question/handlers/handle-compound-action.js +0 -305
- package/dist/prompt/steps/step-ask-question/handlers/handle-compound-action.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-confirm-code-generation.d.ts +0 -2
- package/dist/prompt/steps/step-ask-question/handlers/handle-confirm-code-generation.js +0 -40
- package/dist/prompt/steps/step-ask-question/handlers/handle-confirm-code-generation.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-context-compression.d.ts +0 -2
- package/dist/prompt/steps/step-ask-question/handlers/handle-context-compression.js +0 -35
- package/dist/prompt/steps/step-ask-question/handlers/handle-context-compression.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-context-optimization.d.ts +0 -2
- package/dist/prompt/steps/step-ask-question/handlers/handle-context-optimization.js +0 -34
- package/dist/prompt/steps/step-ask-question/handlers/handle-context-optimization.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-conversation-graph.d.ts +0 -11
- package/dist/prompt/steps/step-ask-question/handlers/handle-conversation-graph.js +0 -503
- package/dist/prompt/steps/step-ask-question/handlers/handle-conversation-graph.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-create-file.d.ts +0 -2
- package/dist/prompt/steps/step-ask-question/handlers/handle-create-file.js +0 -159
- package/dist/prompt/steps/step-ask-question/handlers/handle-create-file.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-end-conversation.d.ts +0 -2
- package/dist/prompt/steps/step-ask-question/handlers/handle-end-conversation.js +0 -30
- package/dist/prompt/steps/step-ask-question/handlers/handle-end-conversation.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-explore-external-directories.d.ts +0 -2
- package/dist/prompt/steps/step-ask-question/handlers/handle-explore-external-directories.js +0 -280
- package/dist/prompt/steps/step-ask-question/handlers/handle-explore-external-directories.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-genaicode-help.d.ts +0 -8
- package/dist/prompt/steps/step-ask-question/handlers/handle-genaicode-help.js +0 -105
- package/dist/prompt/steps/step-ask-question/handlers/handle-genaicode-help.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-generate-image.d.ts +0 -2
- package/dist/prompt/steps/step-ask-question/handlers/handle-generate-image.js +0 -110
- package/dist/prompt/steps/step-ask-question/handlers/handle-generate-image.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-lint.d.ts +0 -6
- package/dist/prompt/steps/step-ask-question/handlers/handle-lint.js +0 -60
- package/dist/prompt/steps/step-ask-question/handlers/handle-lint.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-perform-analysis.d.ts +0 -6
- package/dist/prompt/steps/step-ask-question/handlers/handle-perform-analysis.js +0 -110
- package/dist/prompt/steps/step-ask-question/handlers/handle-perform-analysis.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-project-command.d.ts +0 -2
- package/dist/prompt/steps/step-ask-question/handlers/handle-project-command.js +0 -282
- package/dist/prompt/steps/step-ask-question/handlers/handle-project-command.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-pull-app-context.d.ts +0 -9
- package/dist/prompt/steps/step-ask-question/handlers/handle-pull-app-context.js +0 -94
- package/dist/prompt/steps/step-ask-question/handlers/handle-pull-app-context.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-pull-console-logs.d.ts +0 -2
- package/dist/prompt/steps/step-ask-question/handlers/handle-pull-console-logs.js +0 -174
- package/dist/prompt/steps/step-ask-question/handlers/handle-pull-console-logs.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-push-app-context.d.ts +0 -9
- package/dist/prompt/steps/step-ask-question/handlers/handle-push-app-context.js +0 -104
- package/dist/prompt/steps/step-ask-question/handlers/handle-push-app-context.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-read-external-files.d.ts +0 -2
- package/dist/prompt/steps/step-ask-question/handlers/handle-read-external-files.js +0 -149
- package/dist/prompt/steps/step-ask-question/handlers/handle-read-external-files.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-reasoning-inference.d.ts +0 -7
- package/dist/prompt/steps/step-ask-question/handlers/handle-reasoning-inference.js +0 -119
- package/dist/prompt/steps/step-ask-question/handlers/handle-reasoning-inference.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-remove-files-from-context.d.ts +0 -2
- package/dist/prompt/steps/step-ask-question/handlers/handle-remove-files-from-context.js +0 -100
- package/dist/prompt/steps/step-ask-question/handlers/handle-remove-files-from-context.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-request-files-content.d.ts +0 -8
- package/dist/prompt/steps/step-ask-question/handlers/handle-request-files-content.js +0 -145
- package/dist/prompt/steps/step-ask-question/handlers/handle-request-files-content.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-request-files-fragments.d.ts +0 -8
- package/dist/prompt/steps/step-ask-question/handlers/handle-request-files-fragments.js +0 -197
- package/dist/prompt/steps/step-ask-question/handlers/handle-request-files-fragments.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-request-git-context.d.ts +0 -3
- package/dist/prompt/steps/step-ask-question/handlers/handle-request-git-context.js +0 -251
- package/dist/prompt/steps/step-ask-question/handlers/handle-request-git-context.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-request-permissions.d.ts +0 -2
- package/dist/prompt/steps/step-ask-question/handlers/handle-request-permissions.js +0 -83
- package/dist/prompt/steps/step-ask-question/handlers/handle-request-permissions.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-run-bash-command.d.ts +0 -2
- package/dist/prompt/steps/step-ask-question/handlers/handle-run-bash-command.js +0 -185
- package/dist/prompt/steps/step-ask-question/handlers/handle-run-bash-command.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-run-container-task.d.ts +0 -2
- package/dist/prompt/steps/step-ask-question/handlers/handle-run-container-task.js +0 -7
- package/dist/prompt/steps/step-ask-question/handlers/handle-run-container-task.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-search-code.d.ts +0 -2
- package/dist/prompt/steps/step-ask-question/handlers/handle-search-code.js +0 -96
- package/dist/prompt/steps/step-ask-question/handlers/handle-search-code.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-send-message.d.ts +0 -2
- package/dist/prompt/steps/step-ask-question/handlers/handle-send-message.js +0 -21
- package/dist/prompt/steps/step-ask-question/handlers/handle-send-message.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-structured-question.d.ts +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-structured-question.js +0 -72
- package/dist/prompt/steps/step-ask-question/handlers/handle-structured-question.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-update-file.d.ts +0 -2
- package/dist/prompt/steps/step-ask-question/handlers/handle-update-file.js +0 -161
- package/dist/prompt/steps/step-ask-question/handlers/handle-update-file.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-web-search.d.ts +0 -1
- package/dist/prompt/steps/step-ask-question/handlers/handle-web-search.js +0 -85
- package/dist/prompt/steps/step-ask-question/handlers/handle-web-search.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/step-ask-question-handlers.d.ts +0 -3
- package/dist/prompt/steps/step-ask-question/step-ask-question-handlers.js +0 -5
- package/dist/prompt/steps/step-ask-question/step-ask-question-handlers.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/step-ask-question-types.d.ts +0 -257
- package/dist/prompt/steps/step-ask-question/step-ask-question-types.js +0 -2
- package/dist/prompt/steps/step-ask-question/step-ask-question-types.js.map +0 -1
- package/dist/prompt/steps/step-ask-question/step-ask-question.d.ts +0 -37
- package/dist/prompt/steps/step-ask-question/step-ask-question.js +0 -132
- package/dist/prompt/steps/step-ask-question/step-ask-question.js.map +0 -1
- package/dist/prompt/steps/step-auto-context-refresh.d.ts +0 -6
- package/dist/prompt/steps/step-auto-context-refresh.js +0 -98
- package/dist/prompt/steps/step-auto-context-refresh.js.map +0 -1
- package/dist/prompt/steps/step-codegen-planning.d.ts +0 -11
- package/dist/prompt/steps/step-codegen-planning.js +0 -147
- package/dist/prompt/steps/step-codegen-planning.js.map +0 -1
- package/dist/prompt/steps/step-context-compression.d.ts +0 -8
- package/dist/prompt/steps/step-context-compression.js +0 -231
- package/dist/prompt/steps/step-context-compression.js.map +0 -1
- package/dist/prompt/steps/step-context-optimization.d.ts +0 -8
- package/dist/prompt/steps/step-context-optimization.js +0 -308
- package/dist/prompt/steps/step-context-optimization.js.map +0 -1
- package/dist/prompt/steps/step-ensure-context.d.ts +0 -8
- package/dist/prompt/steps/step-ensure-context.js +0 -114
- package/dist/prompt/steps/step-ensure-context.js.map +0 -1
- package/dist/prompt/steps/step-generate-codegen-summary-prompt.d.ts +0 -2
- package/dist/prompt/steps/step-generate-codegen-summary-prompt.js +0 -133
- package/dist/prompt/steps/step-generate-codegen-summary-prompt.js.map +0 -1
- package/dist/prompt/steps/step-generate-codegen-summary.d.ts +0 -14
- package/dist/prompt/steps/step-generate-codegen-summary.js +0 -68
- package/dist/prompt/steps/step-generate-codegen-summary.js.map +0 -1
- package/dist/prompt/steps/step-generate-image.d.ts +0 -10
- package/dist/prompt/steps/step-generate-image.js +0 -32
- package/dist/prompt/steps/step-generate-image.js.map +0 -1
- package/dist/prompt/steps/step-generate-summary.d.ts +0 -10
- package/dist/prompt/steps/step-generate-summary.js +0 -63
- package/dist/prompt/steps/step-generate-summary.js.map +0 -1
- package/dist/prompt/steps/step-history-update.d.ts +0 -6
- package/dist/prompt/steps/step-history-update.js +0 -69
- package/dist/prompt/steps/step-history-update.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/container-task/command-execution-loop.d.ts +0 -7
- package/dist/prompt/steps/step-iterate/handlers/container-task/command-execution-loop.js +0 -301
- package/dist/prompt/steps/step-iterate/handlers/container-task/command-execution-loop.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/complete-task.d.ts +0 -4
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/complete-task.js +0 -49
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/complete-task.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/copy-from-container.d.ts +0 -4
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/copy-from-container.js +0 -190
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/copy-from-container.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/copy-to-container.d.ts +0 -4
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/copy-to-container.js +0 -139
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/copy-to-container.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/edit-file.d.ts +0 -10
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/edit-file.js +0 -93
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/edit-file.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/fail-task.d.ts +0 -4
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/fail-task.js +0 -72
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/fail-task.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/gain-knowledge.d.ts +0 -10
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/gain-knowledge.js +0 -125
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/gain-knowledge.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/interrupt-controller.d.ts +0 -19
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/interrupt-controller.js +0 -33
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/interrupt-controller.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/query-knowledge.d.ts +0 -8
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/query-knowledge.js +0 -85
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/query-knowledge.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/request-secret.d.ts +0 -6
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/request-secret.js +0 -122
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/request-secret.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/run-command.d.ts +0 -7
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/run-command.js +0 -146
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/run-command.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/send-message.d.ts +0 -4
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/send-message.js +0 -56
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/send-message.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/set-execution-plan.d.ts +0 -4
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/set-execution-plan.js +0 -56
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/set-execution-plan.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/update-execution-plan.d.ts +0 -4
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/update-execution-plan.js +0 -39
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/update-execution-plan.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/view-file.d.ts +0 -10
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/view-file.js +0 -95
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/view-file.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/web-search.d.ts +0 -2
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/web-search.js +0 -96
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/web-search.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/wrap-context.d.ts +0 -4
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/wrap-context.js +0 -123
- package/dist/prompt/steps/step-iterate/handlers/container-task/commands/wrap-context.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/container-task/container-commands-registry.d.ts +0 -11
- package/dist/prompt/steps/step-iterate/handlers/container-task/container-commands-registry.js +0 -50
- package/dist/prompt/steps/step-iterate/handlers/container-task/container-commands-registry.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/container-task/container-commands-types.d.ts +0 -28
- package/dist/prompt/steps/step-iterate/handlers/container-task/container-commands-types.js +0 -2
- package/dist/prompt/steps/step-iterate/handlers/container-task/container-commands-types.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/container-task/container-task-orchestrator.d.ts +0 -2
- package/dist/prompt/steps/step-iterate/handlers/container-task/container-task-orchestrator.js +0 -202
- package/dist/prompt/steps/step-iterate/handlers/container-task/container-task-orchestrator.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/container-task/utils/docker-check.d.ts +0 -4
- package/dist/prompt/steps/step-iterate/handlers/container-task/utils/docker-check.js +0 -15
- package/dist/prompt/steps/step-iterate/handlers/container-task/utils/docker-check.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/container-task/utils/docker-utils.d.ts +0 -50
- package/dist/prompt/steps/step-iterate/handlers/container-task/utils/docker-utils.js +0 -358
- package/dist/prompt/steps/step-iterate/handlers/container-task/utils/docker-utils.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/file-request-utils.d.ts +0 -47
- package/dist/prompt/steps/step-iterate/handlers/file-request-utils.js +0 -114
- package/dist/prompt/steps/step-iterate/handlers/file-request-utils.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/handle-code-execution.d.ts +0 -1
- package/dist/prompt/steps/step-iterate/handlers/handle-code-execution.js +0 -133
- package/dist/prompt/steps/step-iterate/handlers/handle-code-execution.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/handle-code-generation.d.ts +0 -4
- package/dist/prompt/steps/step-iterate/handlers/handle-code-generation.js +0 -177
- package/dist/prompt/steps/step-iterate/handlers/handle-code-generation.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/handle-compound-action.d.ts +0 -20
- package/dist/prompt/steps/step-iterate/handlers/handle-compound-action.js +0 -305
- package/dist/prompt/steps/step-iterate/handlers/handle-compound-action.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/handle-confirm-code-generation.d.ts +0 -2
- package/dist/prompt/steps/step-iterate/handlers/handle-confirm-code-generation.js +0 -40
- package/dist/prompt/steps/step-iterate/handlers/handle-confirm-code-generation.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/handle-context-compression.d.ts +0 -2
- package/dist/prompt/steps/step-iterate/handlers/handle-context-compression.js +0 -35
- package/dist/prompt/steps/step-iterate/handlers/handle-context-compression.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/handle-context-optimization.d.ts +0 -2
- package/dist/prompt/steps/step-iterate/handlers/handle-context-optimization.js +0 -34
- package/dist/prompt/steps/step-iterate/handlers/handle-context-optimization.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/handle-conversation-graph.d.ts +0 -11
- package/dist/prompt/steps/step-iterate/handlers/handle-conversation-graph.js +0 -503
- package/dist/prompt/steps/step-iterate/handlers/handle-conversation-graph.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/handle-create-file.d.ts +0 -2
- package/dist/prompt/steps/step-iterate/handlers/handle-create-file.js +0 -159
- package/dist/prompt/steps/step-iterate/handlers/handle-create-file.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/handle-end-conversation.d.ts +0 -2
- package/dist/prompt/steps/step-iterate/handlers/handle-end-conversation.js +0 -30
- package/dist/prompt/steps/step-iterate/handlers/handle-end-conversation.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/handle-explore-external-directories.d.ts +0 -2
- package/dist/prompt/steps/step-iterate/handlers/handle-explore-external-directories.js +0 -280
- package/dist/prompt/steps/step-iterate/handlers/handle-explore-external-directories.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/handle-genaicode-help.d.ts +0 -8
- package/dist/prompt/steps/step-iterate/handlers/handle-genaicode-help.js +0 -105
- package/dist/prompt/steps/step-iterate/handlers/handle-genaicode-help.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/handle-generate-image.d.ts +0 -2
- package/dist/prompt/steps/step-iterate/handlers/handle-generate-image.js +0 -110
- package/dist/prompt/steps/step-iterate/handlers/handle-generate-image.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/handle-perform-analysis.d.ts +0 -6
- package/dist/prompt/steps/step-iterate/handlers/handle-perform-analysis.js +0 -110
- package/dist/prompt/steps/step-iterate/handlers/handle-perform-analysis.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/handle-project-command.d.ts +0 -2
- package/dist/prompt/steps/step-iterate/handlers/handle-project-command.js +0 -280
- package/dist/prompt/steps/step-iterate/handlers/handle-project-command.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/handle-pull-app-context.d.ts +0 -9
- package/dist/prompt/steps/step-iterate/handlers/handle-pull-app-context.js +0 -94
- package/dist/prompt/steps/step-iterate/handlers/handle-pull-app-context.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/handle-pull-console-logs.d.ts +0 -2
- package/dist/prompt/steps/step-iterate/handlers/handle-pull-console-logs.js +0 -174
- package/dist/prompt/steps/step-iterate/handlers/handle-pull-console-logs.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/handle-push-app-context.d.ts +0 -9
- package/dist/prompt/steps/step-iterate/handlers/handle-push-app-context.js +0 -104
- package/dist/prompt/steps/step-iterate/handlers/handle-push-app-context.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/handle-read-external-files.d.ts +0 -2
- package/dist/prompt/steps/step-iterate/handlers/handle-read-external-files.js +0 -149
- package/dist/prompt/steps/step-iterate/handlers/handle-read-external-files.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/handle-reasoning-inference.d.ts +0 -7
- package/dist/prompt/steps/step-iterate/handlers/handle-reasoning-inference.js +0 -119
- package/dist/prompt/steps/step-iterate/handlers/handle-reasoning-inference.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/handle-remove-files-from-context.d.ts +0 -2
- package/dist/prompt/steps/step-iterate/handlers/handle-remove-files-from-context.js +0 -100
- package/dist/prompt/steps/step-iterate/handlers/handle-remove-files-from-context.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/handle-request-files-content.d.ts +0 -8
- package/dist/prompt/steps/step-iterate/handlers/handle-request-files-content.js +0 -146
- package/dist/prompt/steps/step-iterate/handlers/handle-request-files-content.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/handle-request-files-fragments.d.ts +0 -8
- package/dist/prompt/steps/step-iterate/handlers/handle-request-files-fragments.js +0 -197
- package/dist/prompt/steps/step-iterate/handlers/handle-request-files-fragments.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/handle-request-git-context.d.ts +0 -3
- package/dist/prompt/steps/step-iterate/handlers/handle-request-git-context.js +0 -251
- package/dist/prompt/steps/step-iterate/handlers/handle-request-git-context.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/handle-request-permissions.d.ts +0 -2
- package/dist/prompt/steps/step-iterate/handlers/handle-request-permissions.js +0 -83
- package/dist/prompt/steps/step-iterate/handlers/handle-request-permissions.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/handle-run-bash-command.d.ts +0 -2
- package/dist/prompt/steps/step-iterate/handlers/handle-run-bash-command.js +0 -185
- package/dist/prompt/steps/step-iterate/handlers/handle-run-bash-command.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/handle-run-container-task.d.ts +0 -2
- package/dist/prompt/steps/step-iterate/handlers/handle-run-container-task.js +0 -7
- package/dist/prompt/steps/step-iterate/handlers/handle-run-container-task.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/handle-search-code.d.ts +0 -2
- package/dist/prompt/steps/step-iterate/handlers/handle-search-code.js +0 -96
- package/dist/prompt/steps/step-iterate/handlers/handle-search-code.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/handle-send-message.d.ts +0 -2
- package/dist/prompt/steps/step-iterate/handlers/handle-send-message.js +0 -21
- package/dist/prompt/steps/step-iterate/handlers/handle-send-message.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/handle-structured-question.d.ts +0 -1
- package/dist/prompt/steps/step-iterate/handlers/handle-structured-question.js +0 -72
- package/dist/prompt/steps/step-iterate/handlers/handle-structured-question.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/handle-update-file.d.ts +0 -2
- package/dist/prompt/steps/step-iterate/handlers/handle-update-file.js +0 -161
- package/dist/prompt/steps/step-iterate/handlers/handle-update-file.js.map +0 -1
- package/dist/prompt/steps/step-iterate/handlers/handle-web-search.d.ts +0 -1
- package/dist/prompt/steps/step-iterate/handlers/handle-web-search.js +0 -85
- package/dist/prompt/steps/step-iterate/handlers/handle-web-search.js.map +0 -1
- package/dist/prompt/steps/step-iterate/iterate-handler.d.ts +0 -4
- package/dist/prompt/steps/step-iterate/iterate-handler.js +0 -14
- package/dist/prompt/steps/step-iterate/iterate-handler.js.map +0 -1
- package/dist/prompt/steps/step-iterate/step-iterate-handlers.d.ts +0 -3
- package/dist/prompt/steps/step-iterate/step-iterate-handlers.js +0 -5
- package/dist/prompt/steps/step-iterate/step-iterate-handlers.js.map +0 -1
- package/dist/prompt/steps/step-iterate/step-iterate-types.d.ts +0 -255
- package/dist/prompt/steps/step-iterate/step-iterate-types.js +0 -2
- package/dist/prompt/steps/step-iterate/step-iterate-types.js.map +0 -1
- package/dist/prompt/steps/step-iterate/step-iterate.d.ts +0 -37
- package/dist/prompt/steps/step-iterate/step-iterate.js +0 -132
- package/dist/prompt/steps/step-iterate/step-iterate.js.map +0 -1
- package/dist/prompt/steps/step-process-file-updates.d.ts +0 -12
- package/dist/prompt/steps/step-process-file-updates.js +0 -148
- package/dist/prompt/steps/step-process-file-updates.js.map +0 -1
- package/dist/prompt/steps/step-summarization.d.ts +0 -10
- package/dist/prompt/steps/step-summarization.js +0 -167
- package/dist/prompt/steps/step-summarization.js.map +0 -1
- package/dist/prompt/steps/step-validate-recover.d.ts +0 -2
- package/dist/prompt/steps/step-validate-recover.js +0 -71
- package/dist/prompt/steps/step-validate-recover.js.map +0 -1
- package/dist/prompt/steps/step-verify-patch.d.ts +0 -10
- package/dist/prompt/steps/step-verify-patch.js +0 -52
- package/dist/prompt/steps/step-verify-patch.js.map +0 -1
- package/dist/prompt/steps/steps-types.d.ts +0 -4
- package/dist/prompt/steps/steps-types.js +0 -6
- package/dist/prompt/steps/steps-types.js.map +0 -1
- package/dist/prompt/steps/steps-utils.d.ts +0 -7
- package/dist/prompt/steps/steps-utils.js +0 -11
- package/dist/prompt/steps/steps-utils.js.map +0 -1
- package/dist/prompt/systemprompt.d.ts +0 -4
- package/dist/prompt/systemprompt.js +0 -113
- package/dist/prompt/systemprompt.js.map +0 -1
- package/dist/prompt/token-estimator.d.ts +0 -8
- package/dist/prompt/token-estimator.js +0 -31
- package/dist/prompt/token-estimator.js.map +0 -1
- package/dist/prompt-debug/current-prompt-plugin.d.ts +0 -3
- package/dist/prompt-debug/current-prompt-plugin.js +0 -10
- package/dist/prompt-debug/current-prompt-plugin.js.map +0 -1
- package/dist/utils/docker-utils.d.ts +0 -37
- package/dist/utils/docker-utils.js +0 -258
- package/dist/utils/docker-utils.js.map +0 -1
- package/dist/vite-genaicode/code-transformer.d.ts +0 -5
- package/dist/vite-genaicode/code-transformer.js +0 -83
- package/dist/vite-genaicode/code-transformer.js.map +0 -1
- package/dist/vite-genaicode/console-interceptor.d.ts +0 -53
- package/dist/vite-genaicode/console-interceptor.js +0 -117
- package/dist/vite-genaicode/console-interceptor.js.map +0 -1
- package/dist/vite-genaicode/constants.d.ts +0 -3
- package/dist/vite-genaicode/constants.js +0 -4
- package/dist/vite-genaicode/constants.js.map +0 -1
- package/dist/vite-genaicode/dynamic-function-generator.d.ts +0 -2
- package/dist/vite-genaicode/dynamic-function-generator.js +0 -47
- package/dist/vite-genaicode/dynamic-function-generator.js.map +0 -1
- package/dist/vite-genaicode/html-injector.d.ts +0 -6
- package/dist/vite-genaicode/html-injector.js +0 -14
- package/dist/vite-genaicode/html-injector.js.map +0 -1
- package/dist/vite-genaicode/server-manager.d.ts +0 -26
- package/dist/vite-genaicode/server-manager.js +0 -91
- package/dist/vite-genaicode/server-manager.js.map +0 -1
- package/dist/vite-genaicode/vite-genaicode-context.d.ts +0 -31
- package/dist/vite-genaicode/vite-genaicode-context.js +0 -120
- package/dist/vite-genaicode/vite-genaicode-context.js.map +0 -1
- package/dist/vite-genaicode/vite-genaicode-frontend.d.ts +0 -1
- package/dist/vite-genaicode/vite-genaicode-frontend.js +0 -329
- package/dist/vite-genaicode/vite-genaicode-frontend.js.map +0 -1
- package/dist/vite-genaicode/vite-genaicode-plugin.d.ts +0 -21
- package/dist/vite-genaicode/vite-genaicode-plugin.js +0 -87
- package/dist/vite-genaicode/vite-genaicode-plugin.js.map +0 -1
- package/dist/vite-genaicode/vite-genaicode-types.d.ts +0 -28
- package/dist/vite-genaicode/vite-genaicode-types.js +0 -11
- package/dist/vite-genaicode/vite-genaicode-types.js.map +0 -1
- package/media/logo-dark.png +0 -0
- package/media/logo.png +0 -0
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
import { assistant, prompt, system, toPromptItems } from './prompt.js';
|
|
2
|
+
import { withPlugins } from './plugins.js';
|
|
3
|
+
import { parseJsonResult, resultText, resultToPromptItem, resultToolCalls } from './result.js';
|
|
4
|
+
import { providerStream, streamTextDeltas } from './stream.js';
|
|
5
|
+
class RequestBuilderImpl {
|
|
6
|
+
provider;
|
|
7
|
+
state;
|
|
8
|
+
constructor(provider, state) {
|
|
9
|
+
this.provider = provider;
|
|
10
|
+
this.state = state;
|
|
11
|
+
}
|
|
12
|
+
copy(change) {
|
|
13
|
+
return new RequestBuilderImpl(this.provider, {
|
|
14
|
+
...this.state,
|
|
15
|
+
...change,
|
|
16
|
+
prompt: change.prompt ?? this.state.prompt,
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
system(text) {
|
|
20
|
+
const nextPrompt = [...this.state.prompt];
|
|
21
|
+
const firstNonSystem = nextPrompt.findIndex((item) => item.type !== 'systemPrompt');
|
|
22
|
+
nextPrompt.splice(firstNonSystem === -1 ? nextPrompt.length : firstNonSystem, 0, system(text));
|
|
23
|
+
return this.copy({ prompt: nextPrompt });
|
|
24
|
+
}
|
|
25
|
+
user(input) {
|
|
26
|
+
return this.copy({ prompt: [...this.state.prompt, ...toPromptItems(input)] });
|
|
27
|
+
}
|
|
28
|
+
assistant(text, toolCalls = []) {
|
|
29
|
+
return this.copy({ prompt: [...this.state.prompt, assistant(text, { toolCalls })] });
|
|
30
|
+
}
|
|
31
|
+
model(model) {
|
|
32
|
+
return this.copy({ model });
|
|
33
|
+
}
|
|
34
|
+
temperature(temperature) {
|
|
35
|
+
return this.copy({ temperature });
|
|
36
|
+
}
|
|
37
|
+
maxOutputTokens(maxOutputTokens) {
|
|
38
|
+
return this.copy({ maxOutputTokens });
|
|
39
|
+
}
|
|
40
|
+
tools(tools, toolChoice = 'auto') {
|
|
41
|
+
return this.copy({ tools, toolChoice });
|
|
42
|
+
}
|
|
43
|
+
signal(signal) {
|
|
44
|
+
return this.copy({ signal });
|
|
45
|
+
}
|
|
46
|
+
inspect() {
|
|
47
|
+
return {
|
|
48
|
+
prompt: this.state.prompt.map((item) => ({ ...item })),
|
|
49
|
+
model: this.state.model,
|
|
50
|
+
temperature: this.state.temperature,
|
|
51
|
+
maxOutputTokens: this.state.maxOutputTokens,
|
|
52
|
+
tools: this.state.tools,
|
|
53
|
+
toolChoice: this.state.toolChoice,
|
|
54
|
+
signal: this.state.signal,
|
|
55
|
+
metadata: this.state.metadata,
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
run() {
|
|
59
|
+
return this.provider.generate(this.inspect());
|
|
60
|
+
}
|
|
61
|
+
async text() {
|
|
62
|
+
return resultText(await this.run());
|
|
63
|
+
}
|
|
64
|
+
async json(parse) {
|
|
65
|
+
const result = await this.run();
|
|
66
|
+
return parseJsonResult(result, parse);
|
|
67
|
+
}
|
|
68
|
+
async toolCalls() {
|
|
69
|
+
return resultToolCalls(await this.run());
|
|
70
|
+
}
|
|
71
|
+
stream() {
|
|
72
|
+
return providerStream(this.provider, this.inspect());
|
|
73
|
+
}
|
|
74
|
+
streamText() {
|
|
75
|
+
return streamTextDeltas(this.stream());
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
class ConversationImpl {
|
|
79
|
+
createRequest;
|
|
80
|
+
items;
|
|
81
|
+
queue = Promise.resolve();
|
|
82
|
+
generation = 0;
|
|
83
|
+
constructor(initial, createRequest) {
|
|
84
|
+
this.createRequest = createRequest;
|
|
85
|
+
this.items = initial;
|
|
86
|
+
}
|
|
87
|
+
ask(input, configure = (request) => request) {
|
|
88
|
+
const execute = async () => {
|
|
89
|
+
const additions = toPromptItems(input);
|
|
90
|
+
const generation = this.generation;
|
|
91
|
+
const result = await configure(this.createRequest(this.items, additions)).run();
|
|
92
|
+
if (generation === this.generation) {
|
|
93
|
+
this.items = [...this.items, ...additions, resultToPromptItem(result)];
|
|
94
|
+
}
|
|
95
|
+
return result;
|
|
96
|
+
};
|
|
97
|
+
const operation = this.queue.then(execute);
|
|
98
|
+
this.queue = operation.then(() => undefined, () => undefined);
|
|
99
|
+
return operation;
|
|
100
|
+
}
|
|
101
|
+
async text(input, configure) {
|
|
102
|
+
return resultText(await this.ask(input, configure));
|
|
103
|
+
}
|
|
104
|
+
async json(input, parse, configure) {
|
|
105
|
+
return parseJsonResult(await this.ask(input, configure), parse);
|
|
106
|
+
}
|
|
107
|
+
async toolCalls(input, configure) {
|
|
108
|
+
return resultToolCalls(await this.ask(input, configure));
|
|
109
|
+
}
|
|
110
|
+
stream(input, configure = (request) => request) {
|
|
111
|
+
return this.iterateStream(input, configure);
|
|
112
|
+
}
|
|
113
|
+
async *iterateStream(input, configure) {
|
|
114
|
+
let release = () => undefined;
|
|
115
|
+
const gate = new Promise((resolve) => {
|
|
116
|
+
release = resolve;
|
|
117
|
+
});
|
|
118
|
+
const previous = this.queue;
|
|
119
|
+
this.queue = previous.then(() => gate);
|
|
120
|
+
await previous;
|
|
121
|
+
try {
|
|
122
|
+
const additions = toPromptItems(input);
|
|
123
|
+
const generation = this.generation;
|
|
124
|
+
const events = configure(this.createRequest(this.items, additions)).stream();
|
|
125
|
+
let text = '';
|
|
126
|
+
const toolCalls = [];
|
|
127
|
+
const images = [];
|
|
128
|
+
let usage;
|
|
129
|
+
let doneResult;
|
|
130
|
+
for await (const event of events) {
|
|
131
|
+
yield event;
|
|
132
|
+
switch (event.type) {
|
|
133
|
+
case 'text-delta':
|
|
134
|
+
text += event.text;
|
|
135
|
+
break;
|
|
136
|
+
case 'tool-call':
|
|
137
|
+
toolCalls.push(event.toolCall);
|
|
138
|
+
break;
|
|
139
|
+
case 'image':
|
|
140
|
+
images.push({ type: 'image', image: event.image });
|
|
141
|
+
break;
|
|
142
|
+
case 'usage':
|
|
143
|
+
usage = event.usage;
|
|
144
|
+
break;
|
|
145
|
+
case 'done':
|
|
146
|
+
doneResult = event.result;
|
|
147
|
+
break;
|
|
148
|
+
default:
|
|
149
|
+
break;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
const result = doneResult ??
|
|
153
|
+
{
|
|
154
|
+
parts: [
|
|
155
|
+
...(text ? [{ type: 'text', text }] : []),
|
|
156
|
+
...toolCalls.map((toolCall) => ({ type: 'toolCall', toolCall })),
|
|
157
|
+
...images,
|
|
158
|
+
],
|
|
159
|
+
usage,
|
|
160
|
+
};
|
|
161
|
+
if (generation === this.generation) {
|
|
162
|
+
this.items = [...this.items, ...additions, resultToPromptItem(result)];
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
finally {
|
|
166
|
+
release();
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
streamText(input, configure) {
|
|
170
|
+
return streamTextDeltas(this.stream(input, configure));
|
|
171
|
+
}
|
|
172
|
+
history() {
|
|
173
|
+
return this.items.map((item) => ({ ...item }));
|
|
174
|
+
}
|
|
175
|
+
reset(...initial) {
|
|
176
|
+
this.generation += 1;
|
|
177
|
+
this.items = prompt(...initial);
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
export function genaicode(provider, options = {}) {
|
|
181
|
+
const { plugins = [], ...defaults } = options;
|
|
182
|
+
const effectiveProvider = withPlugins(provider, plugins);
|
|
183
|
+
const createRequest = (...inputs) => new RequestBuilderImpl(effectiveProvider, { ...defaults, prompt: prompt(...inputs) });
|
|
184
|
+
return Object.assign((input) => createRequest(input), {
|
|
185
|
+
prompt: createRequest,
|
|
186
|
+
chain: (...initial) => new ConversationImpl(prompt(...initial), createRequest),
|
|
187
|
+
provider: effectiveProvider,
|
|
188
|
+
});
|
|
189
|
+
}
|
|
190
|
+
//# sourceMappingURL=client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/core/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
export type ErrorClass = 'transient' | 'permanent' | 'unknown';
|
|
2
|
+
export interface ClassifiedError {
|
|
3
|
+
class: ErrorClass;
|
|
4
|
+
retryable: boolean;
|
|
5
|
+
reason: string;
|
|
6
|
+
status?: number;
|
|
7
|
+
code?: string;
|
|
8
|
+
cause: unknown;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Classify a provider/SDK error for application-owned retry loops.
|
|
12
|
+
*
|
|
13
|
+
* GenAIcode does not retry automatically. Use this helper (or your own policy)
|
|
14
|
+
* inside ordinary application control flow. See docs/retry.md.
|
|
15
|
+
*/
|
|
16
|
+
export declare function classifyError(error: unknown): ClassifiedError;
|
|
17
|
+
export declare function isRetryable(error: unknown): boolean;
|
|
18
|
+
export interface RetryOptions {
|
|
19
|
+
attempts?: number;
|
|
20
|
+
/** Base delay in ms; doubles each attempt. Defaults to 250. */
|
|
21
|
+
delayMs?: number;
|
|
22
|
+
/** Max delay cap in ms. Defaults to 5000. */
|
|
23
|
+
maxDelayMs?: number;
|
|
24
|
+
shouldRetry?: (error: unknown, attempt: number) => boolean;
|
|
25
|
+
onRetry?: (info: {
|
|
26
|
+
attempt: number;
|
|
27
|
+
error: unknown;
|
|
28
|
+
delayMs: number;
|
|
29
|
+
}) => void;
|
|
30
|
+
signal?: AbortSignal;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Explicit retry helper for application code. Not wired into the client by default.
|
|
34
|
+
*
|
|
35
|
+
* Idempotency: only wrap operations that are safe to repeat (most pure generation
|
|
36
|
+
* calls are; tool side effects are not unless the application makes them idempotent).
|
|
37
|
+
*/
|
|
38
|
+
export declare function withRetry<T>(operation: () => Promise<T>, options?: RetryOptions): Promise<T>;
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
function readStatus(error) {
|
|
2
|
+
if (!error || typeof error !== 'object')
|
|
3
|
+
return undefined;
|
|
4
|
+
const candidate = error;
|
|
5
|
+
for (const value of [candidate.status, candidate.statusCode, candidate.response?.status]) {
|
|
6
|
+
if (typeof value === 'number')
|
|
7
|
+
return value;
|
|
8
|
+
}
|
|
9
|
+
return undefined;
|
|
10
|
+
}
|
|
11
|
+
function readCode(error) {
|
|
12
|
+
if (!error || typeof error !== 'object')
|
|
13
|
+
return undefined;
|
|
14
|
+
const code = error.code;
|
|
15
|
+
return typeof code === 'string' ? code : undefined;
|
|
16
|
+
}
|
|
17
|
+
function messageOf(error) {
|
|
18
|
+
if (error instanceof Error)
|
|
19
|
+
return error.message;
|
|
20
|
+
return String(error);
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Classify a provider/SDK error for application-owned retry loops.
|
|
24
|
+
*
|
|
25
|
+
* GenAIcode does not retry automatically. Use this helper (or your own policy)
|
|
26
|
+
* inside ordinary application control flow. See docs/retry.md.
|
|
27
|
+
*/
|
|
28
|
+
export function classifyError(error) {
|
|
29
|
+
const status = readStatus(error);
|
|
30
|
+
const code = readCode(error);
|
|
31
|
+
const message = messageOf(error).toLowerCase();
|
|
32
|
+
if (error instanceof DOMException && error.name === 'AbortError') {
|
|
33
|
+
return { class: 'permanent', retryable: false, reason: 'aborted', cause: error };
|
|
34
|
+
}
|
|
35
|
+
if (code === 'ECONNRESET' || code === 'ETIMEDOUT' || code === 'ECONNREFUSED' || code === 'ENOTFOUND') {
|
|
36
|
+
return { class: 'transient', retryable: true, reason: `network:${code}`, code, cause: error };
|
|
37
|
+
}
|
|
38
|
+
if (status === 408 || status === 425 || status === 429 || (status !== undefined && status >= 500)) {
|
|
39
|
+
return {
|
|
40
|
+
class: 'transient',
|
|
41
|
+
retryable: true,
|
|
42
|
+
reason: `http:${status}`,
|
|
43
|
+
status,
|
|
44
|
+
code,
|
|
45
|
+
cause: error,
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
if (status !== undefined && status >= 400 && status < 500) {
|
|
49
|
+
return {
|
|
50
|
+
class: 'permanent',
|
|
51
|
+
retryable: false,
|
|
52
|
+
reason: `http:${status}`,
|
|
53
|
+
status,
|
|
54
|
+
code,
|
|
55
|
+
cause: error,
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
if (message.includes('rate limit') ||
|
|
59
|
+
message.includes('timeout') ||
|
|
60
|
+
message.includes('temporar') ||
|
|
61
|
+
message.includes('unavailable') ||
|
|
62
|
+
message.includes('overloaded')) {
|
|
63
|
+
return { class: 'transient', retryable: true, reason: 'message-heuristic', status, code, cause: error };
|
|
64
|
+
}
|
|
65
|
+
if (message.includes('invalid') ||
|
|
66
|
+
message.includes('authentication') ||
|
|
67
|
+
message.includes('unauthorized') ||
|
|
68
|
+
message.includes('permission') ||
|
|
69
|
+
message.includes('not found')) {
|
|
70
|
+
return { class: 'permanent', retryable: false, reason: 'message-heuristic', status, code, cause: error };
|
|
71
|
+
}
|
|
72
|
+
return { class: 'unknown', retryable: false, reason: 'unclassified', status, code, cause: error };
|
|
73
|
+
}
|
|
74
|
+
export function isRetryable(error) {
|
|
75
|
+
return classifyError(error).retryable;
|
|
76
|
+
}
|
|
77
|
+
function sleep(ms, signal) {
|
|
78
|
+
return new Promise((resolve, reject) => {
|
|
79
|
+
if (signal?.aborted) {
|
|
80
|
+
reject(signal.reason instanceof Error ? signal.reason : new DOMException('Aborted', 'AbortError'));
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
const timer = setTimeout(resolve, ms);
|
|
84
|
+
signal?.addEventListener('abort', () => {
|
|
85
|
+
clearTimeout(timer);
|
|
86
|
+
reject(signal.reason instanceof Error ? signal.reason : new DOMException('Aborted', 'AbortError'));
|
|
87
|
+
}, { once: true });
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Explicit retry helper for application code. Not wired into the client by default.
|
|
92
|
+
*
|
|
93
|
+
* Idempotency: only wrap operations that are safe to repeat (most pure generation
|
|
94
|
+
* calls are; tool side effects are not unless the application makes them idempotent).
|
|
95
|
+
*/
|
|
96
|
+
export async function withRetry(operation, options = {}) {
|
|
97
|
+
const attempts = Math.max(1, options.attempts ?? 3);
|
|
98
|
+
const delayMs = options.delayMs ?? 250;
|
|
99
|
+
const maxDelayMs = options.maxDelayMs ?? 5000;
|
|
100
|
+
const shouldRetry = options.shouldRetry ?? ((error) => isRetryable(error));
|
|
101
|
+
let lastError;
|
|
102
|
+
for (let attempt = 1; attempt <= attempts; attempt += 1) {
|
|
103
|
+
try {
|
|
104
|
+
return await operation();
|
|
105
|
+
}
|
|
106
|
+
catch (error) {
|
|
107
|
+
lastError = error;
|
|
108
|
+
if (attempt >= attempts || !shouldRetry(error, attempt)) {
|
|
109
|
+
throw error;
|
|
110
|
+
}
|
|
111
|
+
const wait = Math.min(maxDelayMs, delayMs * 2 ** (attempt - 1));
|
|
112
|
+
options.onRetry?.({ attempt, error, delayMs: wait });
|
|
113
|
+
await sleep(wait, options.signal);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
throw lastError instanceof Error ? lastError : new Error(String(lastError));
|
|
117
|
+
}
|
|
118
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/core/errors.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import type { GenerationRequest, ModelProvider } from './types.js';
|
|
2
|
+
import { type GenAIPlugin } from './plugins.js';
|
|
3
|
+
export interface TimingPluginOptions {
|
|
4
|
+
onTiming?: (info: {
|
|
5
|
+
plugin: string;
|
|
6
|
+
provider?: string;
|
|
7
|
+
durationMs: number;
|
|
8
|
+
ok: boolean;
|
|
9
|
+
}) => void;
|
|
10
|
+
}
|
|
11
|
+
/** Observability middleware: records wall-clock duration around each generate call. */
|
|
12
|
+
export declare function timingPlugin(options?: TimingPluginOptions): GenAIPlugin;
|
|
13
|
+
export interface RateLimitPluginOptions {
|
|
14
|
+
/** Maximum concurrent in-flight generate calls. Defaults to 1. */
|
|
15
|
+
concurrency?: number;
|
|
16
|
+
/** Minimum delay between starting successive calls, in milliseconds. */
|
|
17
|
+
minIntervalMs?: number;
|
|
18
|
+
}
|
|
19
|
+
/** Simple concurrency / interval limiter. Does not talk to external rate-limit stores. */
|
|
20
|
+
export declare function rateLimitPlugin(options?: RateLimitPluginOptions): GenAIPlugin;
|
|
21
|
+
export interface CachePluginOptions {
|
|
22
|
+
/** Stable cache key. Defaults to a JSON serialization of the request (excluding signal). */
|
|
23
|
+
key?: (request: GenerationRequest) => string;
|
|
24
|
+
maxEntries?: number;
|
|
25
|
+
}
|
|
26
|
+
/** In-memory response cache. Intentionally short-circuits `next` on hit. */
|
|
27
|
+
export declare function cachePlugin(options?: CachePluginOptions): GenAIPlugin;
|
|
28
|
+
export interface FallbackPluginOptions {
|
|
29
|
+
/** Additional providers tried after the primary provider fails. */
|
|
30
|
+
providers: readonly ModelProvider[];
|
|
31
|
+
/** Decide whether an error should trigger fallback. Defaults to always. */
|
|
32
|
+
shouldFallback?: (error: unknown, attempt: number) => boolean;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Fallback middleware: on primary failure, try alternate providers in order.
|
|
36
|
+
* Each alternate receives the same GenerationRequest.
|
|
37
|
+
*/
|
|
38
|
+
export declare function fallbackPlugin(options: FallbackPluginOptions): GenAIPlugin;
|
|
39
|
+
/**
|
|
40
|
+
* Compose multiple providers into one ModelProvider that tries each until one succeeds.
|
|
41
|
+
* Prefer this when there is no single "primary" provider wired through plugins.
|
|
42
|
+
*/
|
|
43
|
+
export declare function fallbackProvider(providers: readonly ModelProvider[], name?: string): ModelProvider;
|
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
import { definePlugin } from './plugins.js';
|
|
2
|
+
import { providerStream } from './stream.js';
|
|
3
|
+
/** Observability middleware: records wall-clock duration around each generate call. */
|
|
4
|
+
export function timingPlugin(options = {}) {
|
|
5
|
+
const onTiming = options.onTiming ??
|
|
6
|
+
((info) => {
|
|
7
|
+
console.log(`[genaicode] ${info.plugin} ${info.ok ? 'ok' : 'error'} in ${info.durationMs.toFixed(1)}ms`);
|
|
8
|
+
});
|
|
9
|
+
return definePlugin({
|
|
10
|
+
name: 'timing',
|
|
11
|
+
async generate(request, next) {
|
|
12
|
+
const startedAt = performance.now();
|
|
13
|
+
try {
|
|
14
|
+
const result = await next(request);
|
|
15
|
+
onTiming({ plugin: 'timing', durationMs: performance.now() - startedAt, ok: true });
|
|
16
|
+
return result;
|
|
17
|
+
}
|
|
18
|
+
catch (error) {
|
|
19
|
+
onTiming({ plugin: 'timing', durationMs: performance.now() - startedAt, ok: false });
|
|
20
|
+
throw error;
|
|
21
|
+
}
|
|
22
|
+
},
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
/** Simple concurrency / interval limiter. Does not talk to external rate-limit stores. */
|
|
26
|
+
export function rateLimitPlugin(options = {}) {
|
|
27
|
+
const concurrency = Math.max(1, options.concurrency ?? 1);
|
|
28
|
+
const minIntervalMs = Math.max(0, options.minIntervalMs ?? 0);
|
|
29
|
+
let active = 0;
|
|
30
|
+
let lastStartedAt = 0;
|
|
31
|
+
const waiters = [];
|
|
32
|
+
const pump = () => {
|
|
33
|
+
while (active < concurrency && waiters.length > 0) {
|
|
34
|
+
const now = Date.now();
|
|
35
|
+
// Enforce spacing between starts even when no call is currently in flight
|
|
36
|
+
// (important for concurrency=1 + minIntervalMs).
|
|
37
|
+
const waitMs = lastStartedAt === 0 ? 0 : Math.max(0, minIntervalMs - (now - lastStartedAt));
|
|
38
|
+
if (waitMs > 0) {
|
|
39
|
+
setTimeout(pump, waitMs);
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
const next = waiters.shift();
|
|
43
|
+
if (!next)
|
|
44
|
+
return;
|
|
45
|
+
active += 1;
|
|
46
|
+
lastStartedAt = Date.now();
|
|
47
|
+
next();
|
|
48
|
+
}
|
|
49
|
+
};
|
|
50
|
+
const acquire = () => new Promise((resolve) => {
|
|
51
|
+
waiters.push(resolve);
|
|
52
|
+
pump();
|
|
53
|
+
});
|
|
54
|
+
const release = () => {
|
|
55
|
+
active = Math.max(0, active - 1);
|
|
56
|
+
pump();
|
|
57
|
+
};
|
|
58
|
+
return definePlugin({
|
|
59
|
+
name: 'rate-limit',
|
|
60
|
+
async generate(request, next) {
|
|
61
|
+
await acquire();
|
|
62
|
+
try {
|
|
63
|
+
return await next(request);
|
|
64
|
+
}
|
|
65
|
+
finally {
|
|
66
|
+
release();
|
|
67
|
+
}
|
|
68
|
+
},
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
function defaultCacheKey(request) {
|
|
72
|
+
return JSON.stringify({
|
|
73
|
+
prompt: request.prompt,
|
|
74
|
+
model: request.model,
|
|
75
|
+
temperature: request.temperature,
|
|
76
|
+
maxOutputTokens: request.maxOutputTokens,
|
|
77
|
+
tools: request.tools,
|
|
78
|
+
toolChoice: request.toolChoice,
|
|
79
|
+
metadata: request.metadata,
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
/** In-memory response cache. Intentionally short-circuits `next` on hit. */
|
|
83
|
+
export function cachePlugin(options = {}) {
|
|
84
|
+
const keyOf = options.key ?? defaultCacheKey;
|
|
85
|
+
const maxEntries = options.maxEntries ?? 128;
|
|
86
|
+
const cache = new Map();
|
|
87
|
+
return definePlugin({
|
|
88
|
+
name: 'cache',
|
|
89
|
+
async generate(request, next) {
|
|
90
|
+
const key = keyOf(request);
|
|
91
|
+
const hit = cache.get(key);
|
|
92
|
+
if (hit) {
|
|
93
|
+
cache.delete(key);
|
|
94
|
+
cache.set(key, hit);
|
|
95
|
+
return hit;
|
|
96
|
+
}
|
|
97
|
+
const result = await next(request);
|
|
98
|
+
cache.set(key, result);
|
|
99
|
+
if (cache.size > maxEntries) {
|
|
100
|
+
const oldest = cache.keys().next().value;
|
|
101
|
+
if (oldest !== undefined)
|
|
102
|
+
cache.delete(oldest);
|
|
103
|
+
}
|
|
104
|
+
return result;
|
|
105
|
+
},
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Fallback middleware: on primary failure, try alternate providers in order.
|
|
110
|
+
* Each alternate receives the same GenerationRequest.
|
|
111
|
+
*/
|
|
112
|
+
export function fallbackPlugin(options) {
|
|
113
|
+
const shouldFallback = options.shouldFallback ?? (() => true);
|
|
114
|
+
return definePlugin({
|
|
115
|
+
name: 'fallback',
|
|
116
|
+
async generate(request, next) {
|
|
117
|
+
try {
|
|
118
|
+
return await next(request);
|
|
119
|
+
}
|
|
120
|
+
catch (error) {
|
|
121
|
+
if (!shouldFallback(error, 0))
|
|
122
|
+
throw error;
|
|
123
|
+
let lastError = error;
|
|
124
|
+
for (let index = 0; index < options.providers.length; index += 1) {
|
|
125
|
+
if (!shouldFallback(lastError, index + 1) && index > 0)
|
|
126
|
+
throw lastError;
|
|
127
|
+
try {
|
|
128
|
+
return await options.providers[index].generate(request);
|
|
129
|
+
}
|
|
130
|
+
catch (fallbackError) {
|
|
131
|
+
lastError = fallbackError;
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
throw lastError;
|
|
135
|
+
}
|
|
136
|
+
},
|
|
137
|
+
});
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Compose multiple providers into one ModelProvider that tries each until one succeeds.
|
|
141
|
+
* Prefer this when there is no single "primary" provider wired through plugins.
|
|
142
|
+
*/
|
|
143
|
+
export function fallbackProvider(providers, name = 'fallback') {
|
|
144
|
+
if (providers.length === 0) {
|
|
145
|
+
throw new Error('fallbackProvider requires at least one provider.');
|
|
146
|
+
}
|
|
147
|
+
const streamProvider = providers.find((provider) => Boolean(provider.stream)) ?? providers[0];
|
|
148
|
+
return {
|
|
149
|
+
name,
|
|
150
|
+
capabilities: {
|
|
151
|
+
streaming: providers.some((provider) => provider.capabilities?.streaming || Boolean(provider.stream)),
|
|
152
|
+
tools: providers.every((provider) => provider.capabilities?.tools !== false),
|
|
153
|
+
systemPrompt: providers.every((provider) => provider.capabilities?.systemPrompt !== false),
|
|
154
|
+
},
|
|
155
|
+
async generate(request) {
|
|
156
|
+
let lastError;
|
|
157
|
+
for (const provider of providers) {
|
|
158
|
+
try {
|
|
159
|
+
return await provider.generate(request);
|
|
160
|
+
}
|
|
161
|
+
catch (error) {
|
|
162
|
+
lastError = error;
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
throw lastError instanceof Error ? lastError : new Error(String(lastError));
|
|
166
|
+
},
|
|
167
|
+
stream(request) {
|
|
168
|
+
// Prefer the first provider with a native stream implementation.
|
|
169
|
+
return providerStream(streamProvider, request);
|
|
170
|
+
},
|
|
171
|
+
};
|
|
172
|
+
}
|
|
173
|
+
//# sourceMappingURL=middleware.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"middleware.js","sourceRoot":"","sources":["../../src/core/middleware.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { GenerationRequest, GenerationResult, ModelProvider, StreamEvent } from './types.js';
|
|
2
|
+
export type GenerateNext = (request?: GenerationRequest) => Promise<GenerationResult>;
|
|
3
|
+
export type StreamNext = (request?: GenerationRequest) => AsyncIterable<StreamEvent>;
|
|
4
|
+
export interface GenAIPlugin {
|
|
5
|
+
readonly name: string;
|
|
6
|
+
generate(request: GenerationRequest, next: GenerateNext): Promise<GenerationResult>;
|
|
7
|
+
/**
|
|
8
|
+
* Optional streaming middleware. When omitted, the stream path passes through
|
|
9
|
+
* to the next plugin / provider unchanged.
|
|
10
|
+
*/
|
|
11
|
+
stream?(request: GenerationRequest, next: StreamNext): AsyncIterable<StreamEvent>;
|
|
12
|
+
}
|
|
13
|
+
export declare function definePlugin(plugin: GenAIPlugin): GenAIPlugin;
|
|
14
|
+
/**
|
|
15
|
+
* Wrap a provider with middleware-style plugins.
|
|
16
|
+
*
|
|
17
|
+
* Plugins run in registration order. Each plugin may modify the request passed
|
|
18
|
+
* to `next`, transform its result, handle an error, or intentionally short-circuit.
|
|
19
|
+
* Streaming uses the same order; plugins without `stream` pass through.
|
|
20
|
+
*/
|
|
21
|
+
export declare function withPlugins(provider: ModelProvider, plugins: readonly GenAIPlugin[]): ModelProvider;
|