@aiscene/core 9.0.6 → 9.0.8
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/dist/es/agent/agent.mjs +24 -11
- package/dist/es/agent/agent.mjs.map +1 -1
- package/dist/es/agent/cache-config.mjs +19 -0
- package/dist/es/agent/cache-config.mjs.map +1 -0
- package/dist/es/agent/file-chooser.mjs +82 -0
- package/dist/es/agent/file-chooser.mjs.map +1 -0
- package/dist/es/agent/insight.mjs +101 -0
- package/dist/es/agent/insight.mjs.map +1 -0
- package/dist/es/agent/metrics.mjs +81 -0
- package/dist/es/agent/metrics.mjs.map +1 -0
- package/dist/es/agent/progress/ai-act-progress.mjs +199 -0
- package/dist/es/agent/progress/ai-act-progress.mjs.map +1 -0
- package/dist/es/agent/progress/index.mjs +2 -0
- package/dist/es/agent/progress/progress-bus.mjs +52 -0
- package/dist/es/agent/progress/progress-bus.mjs.map +1 -0
- package/dist/es/agent/prompt-context.mjs +25 -0
- package/dist/es/agent/prompt-context.mjs.map +1 -0
- package/dist/es/agent/record-to-report.mjs +14 -0
- package/dist/es/agent/record-to-report.mjs.map +1 -0
- package/dist/es/agent/run-gherkin-scenario.mjs +114 -0
- package/dist/es/agent/run-gherkin-scenario.mjs.map +1 -0
- package/dist/es/agent/run-markdown.mjs +62 -0
- package/dist/es/agent/run-markdown.mjs.map +1 -0
- package/dist/es/agent/screenshot-preparation.mjs +37 -0
- package/dist/es/agent/screenshot-preparation.mjs.map +1 -0
- package/dist/es/agent/ui-observer.mjs +385 -0
- package/dist/es/agent/ui-observer.mjs.map +1 -0
- package/dist/es/agent/utils.mjs +42 -4
- package/dist/es/agent/utils.mjs.map +1 -1
- package/dist/es/ai-model/connectivity/fixture.mjs +8 -0
- package/dist/es/ai-model/connectivity/fixture.mjs.map +1 -0
- package/dist/es/ai-model/connectivity/index.mjs +2 -0
- package/dist/es/ai-model/connectivity/run-connectivity-test.mjs +160 -0
- package/dist/es/ai-model/connectivity/run-connectivity-test.mjs.map +1 -0
- package/dist/es/ai-model/conversation-history.mjs.map +1 -1
- package/dist/es/ai-model/index.mjs +2 -1
- package/dist/es/ai-model/inspect.mjs +1 -1
- package/dist/es/ai-model/inspect.mjs.map +1 -1
- package/dist/es/ai-model/model-adapter/chat-completion.mjs +69 -0
- package/dist/es/ai-model/model-adapter/chat-completion.mjs.map +1 -0
- package/dist/es/ai-model/model-adapter/custom-planning-action.mjs +6 -0
- package/dist/es/ai-model/model-adapter/custom-planning-action.mjs.map +1 -0
- package/dist/es/ai-model/model-adapter/custom-planning-types.mjs +0 -0
- package/dist/es/ai-model/model-adapter/default-insight-protocol.mjs +28 -0
- package/dist/es/ai-model/model-adapter/default-insight-protocol.mjs.map +1 -0
- package/dist/es/ai-model/model-adapter/default-locate-protocol.mjs +145 -0
- package/dist/es/ai-model/model-adapter/default-locate-protocol.mjs.map +1 -0
- package/dist/es/ai-model/model-adapter/default-planning-protocol.mjs +124 -0
- package/dist/es/ai-model/model-adapter/default-planning-protocol.mjs.map +1 -0
- package/dist/es/ai-model/model-adapter/image-preprocess.mjs +27 -0
- package/dist/es/ai-model/model-adapter/image-preprocess.mjs.map +1 -0
- package/dist/es/ai-model/model-adapter/index.mjs +2 -0
- package/dist/es/ai-model/model-adapter/insight-protocol.mjs +0 -0
- package/dist/es/ai-model/model-adapter/insight.mjs +13 -0
- package/dist/es/ai-model/model-adapter/insight.mjs.map +1 -0
- package/dist/es/ai-model/model-adapter/locate-protocol.mjs +0 -0
- package/dist/es/ai-model/model-adapter/locate.mjs +53 -0
- package/dist/es/ai-model/model-adapter/locate.mjs.map +1 -0
- package/dist/es/ai-model/model-adapter/planning-protocol.mjs +0 -0
- package/dist/es/ai-model/model-adapter/planning.mjs +49 -0
- package/dist/es/ai-model/model-adapter/planning.mjs.map +1 -0
- package/dist/es/ai-model/model-adapter/resolve.mjs +54 -0
- package/dist/es/ai-model/model-adapter/resolve.mjs.map +1 -0
- package/dist/es/ai-model/model-adapter/types.mjs +0 -0
- package/dist/es/ai-model/models/auto-glm/actions.mjs +205 -0
- package/dist/es/ai-model/models/auto-glm/actions.mjs.map +1 -0
- package/dist/es/ai-model/models/auto-glm/adapter.mjs +45 -0
- package/dist/es/ai-model/models/auto-glm/adapter.mjs.map +1 -0
- package/dist/es/ai-model/models/auto-glm/locate.mjs +11 -0
- package/dist/es/ai-model/models/auto-glm/locate.mjs.map +1 -0
- package/dist/es/ai-model/models/auto-glm/parser.mjs +217 -0
- package/dist/es/ai-model/models/auto-glm/parser.mjs.map +1 -0
- package/dist/es/ai-model/models/auto-glm/planning.mjs +33 -0
- package/dist/es/ai-model/models/auto-glm/planning.mjs.map +1 -0
- package/dist/es/ai-model/models/auto-glm/prompt.mjs +214 -0
- package/dist/es/ai-model/models/auto-glm/prompt.mjs.map +1 -0
- package/dist/es/ai-model/models/deepseek/adapter.mjs +79 -0
- package/dist/es/ai-model/models/deepseek/adapter.mjs.map +1 -0
- package/dist/es/ai-model/models/deepseek/locate-protocol.mjs +89 -0
- package/dist/es/ai-model/models/deepseek/locate-protocol.mjs.map +1 -0
- package/dist/es/ai-model/models/default.mjs +13 -0
- package/dist/es/ai-model/models/default.mjs.map +1 -0
- package/dist/es/ai-model/models/doubao.mjs +95 -0
- package/dist/es/ai-model/models/doubao.mjs.map +1 -0
- package/dist/es/ai-model/models/gemini.mjs +100 -0
- package/dist/es/ai-model/models/gemini.mjs.map +1 -0
- package/dist/es/ai-model/models/glm.mjs +46 -0
- package/dist/es/ai-model/models/glm.mjs.map +1 -0
- package/dist/es/ai-model/models/gpt.mjs +43 -0
- package/dist/es/ai-model/models/gpt.mjs.map +1 -0
- package/dist/es/ai-model/models/index.mjs +2 -0
- package/dist/es/ai-model/models/kimi.mjs +102 -0
- package/dist/es/ai-model/models/kimi.mjs.map +1 -0
- package/dist/es/ai-model/models/mimo.mjs +36 -0
- package/dist/es/ai-model/models/mimo.mjs.map +1 -0
- package/dist/es/ai-model/models/qwen.mjs +139 -0
- package/dist/es/ai-model/models/qwen.mjs.map +1 -0
- package/dist/es/ai-model/models/registry.mjs +51 -0
- package/dist/es/ai-model/models/registry.mjs.map +1 -0
- package/dist/es/ai-model/models/ui-tars/actions.mjs +147 -0
- package/dist/es/ai-model/models/ui-tars/actions.mjs.map +1 -0
- package/dist/es/ai-model/models/ui-tars/adapter.mjs +102 -0
- package/dist/es/ai-model/models/ui-tars/adapter.mjs.map +1 -0
- package/dist/es/ai-model/models/ui-tars/parser.mjs +40 -0
- package/dist/es/ai-model/models/ui-tars/parser.mjs.map +1 -0
- package/dist/es/ai-model/models/ui-tars/planning.mjs +25 -0
- package/dist/es/ai-model/models/ui-tars/planning.mjs.map +1 -0
- package/dist/es/ai-model/models/ui-tars/prompt.mjs +36 -0
- package/dist/es/ai-model/models/ui-tars/prompt.mjs.map +1 -0
- package/dist/es/ai-model/models/utils/intent.mjs +6 -0
- package/dist/es/ai-model/models/utils/intent.mjs.map +1 -0
- package/dist/es/ai-model/prompt/insight/index.mjs +3 -0
- package/dist/es/ai-model/prompt/insight/system-prompt.mjs +104 -0
- package/dist/es/ai-model/prompt/insight/system-prompt.mjs.map +1 -0
- package/dist/es/ai-model/prompt/insight/user-prompt.mjs +23 -0
- package/dist/es/ai-model/prompt/insight/user-prompt.mjs.map +1 -0
- package/dist/es/ai-model/prompt/locate/element-system-prompt.mjs +12 -0
- package/dist/es/ai-model/prompt/locate/element-system-prompt.mjs.map +1 -0
- package/dist/es/ai-model/prompt/locate/grounding-rules.mjs +13 -0
- package/dist/es/ai-model/prompt/locate/grounding-rules.mjs.map +1 -0
- package/dist/es/ai-model/prompt/locate/index.mjs +4 -0
- package/dist/es/ai-model/prompt/locate/search-area-system-prompt.mjs +9 -0
- package/dist/es/ai-model/prompt/locate/search-area-system-prompt.mjs.map +1 -0
- package/dist/es/ai-model/prompt/planning/action-output-example.mjs +52 -0
- package/dist/es/ai-model/prompt/planning/action-output-example.mjs.map +1 -0
- package/dist/es/ai-model/prompt/planning/action-space-description.mjs +28 -0
- package/dist/es/ai-model/prompt/planning/action-space-description.mjs.map +1 -0
- package/dist/es/ai-model/prompt/planning/index.mjs +6 -0
- package/dist/es/ai-model/prompt/planning/multi-turn-example.mjs +221 -0
- package/dist/es/ai-model/prompt/planning/multi-turn-example.mjs.map +1 -0
- package/dist/es/ai-model/prompt/planning/planning-response-example.mjs +25 -0
- package/dist/es/ai-model/prompt/planning/planning-response-example.mjs.map +1 -0
- package/dist/es/ai-model/prompt/planning/sub-goals-text.mjs +17 -0
- package/dist/es/ai-model/prompt/planning/sub-goals-text.mjs.map +1 -0
- package/dist/es/ai-model/prompt/planning/system-prompt.mjs +293 -0
- package/dist/es/ai-model/prompt/planning/system-prompt.mjs.map +1 -0
- package/dist/es/ai-model/service-caller/codex-app-server.mjs +1 -0
- package/dist/es/ai-model/service-caller/codex-app-server.mjs.map +1 -1
- package/dist/es/ai-model/service-caller/index.mjs +35 -16
- package/dist/es/ai-model/service-caller/index.mjs.map +1 -1
- package/dist/es/ai-model/service-caller/model-call-recorder.mjs +74 -0
- package/dist/es/ai-model/service-caller/model-call-recorder.mjs.map +1 -0
- package/dist/es/ai-model/service-caller/openai-error.mjs +147 -0
- package/dist/es/ai-model/service-caller/openai-error.mjs.map +1 -0
- package/dist/es/ai-model/service-caller/proxy-deps.node.mjs +9 -0
- package/dist/es/ai-model/service-caller/proxy-deps.node.mjs.map +1 -0
- package/dist/es/ai-model/service-caller/proxy-deps.stub.mjs +12 -0
- package/dist/es/ai-model/service-caller/proxy-deps.stub.mjs.map +1 -0
- package/dist/es/ai-model/service-caller/semantic-retry.mjs +33 -0
- package/dist/es/ai-model/service-caller/semantic-retry.mjs.map +1 -0
- package/dist/es/ai-model/service-caller/types.mjs +0 -0
- package/dist/es/ai-model/shared/action-schema.mjs +15 -0
- package/dist/es/ai-model/shared/action-schema.mjs.map +1 -0
- package/dist/es/ai-model/shared/json.mjs +63 -0
- package/dist/es/ai-model/shared/json.mjs.map +1 -0
- package/dist/es/ai-model/shared/model-locate-result/bbox.mjs +60 -0
- package/dist/es/ai-model/shared/model-locate-result/bbox.mjs.map +1 -0
- package/dist/es/ai-model/shared/model-locate-result/coordinate-distance.mjs +10 -0
- package/dist/es/ai-model/shared/model-locate-result/coordinate-distance.mjs.map +1 -0
- package/dist/es/ai-model/shared/model-locate-result/errors.mjs +9 -0
- package/dist/es/ai-model/shared/model-locate-result/errors.mjs.map +1 -0
- package/dist/es/ai-model/shared/model-locate-result/factory.mjs +39 -0
- package/dist/es/ai-model/shared/model-locate-result/factory.mjs.map +1 -0
- package/dist/es/ai-model/shared/model-locate-result/index.mjs +6 -0
- package/dist/es/ai-model/shared/model-locate-result/parse.mjs +45 -0
- package/dist/es/ai-model/shared/model-locate-result/parse.mjs.map +1 -0
- package/dist/es/ai-model/shared/model-locate-result/pixel-bbox-mapper.mjs +67 -0
- package/dist/es/ai-model/shared/model-locate-result/pixel-bbox-mapper.mjs.map +1 -0
- package/dist/es/ai-model/shared/model-locate-result/prompt-spec.mjs +110 -0
- package/dist/es/ai-model/shared/model-locate-result/prompt-spec.mjs.map +1 -0
- package/dist/es/ai-model/shared/model-locate-result/types.mjs +9 -0
- package/dist/es/ai-model/shared/model-locate-result/types.mjs.map +1 -0
- package/dist/es/ai-model/shared/multimodal-prompt.mjs +55 -0
- package/dist/es/ai-model/shared/multimodal-prompt.mjs.map +1 -0
- package/dist/es/ai-model/shared/xml.mjs +42 -0
- package/dist/es/ai-model/shared/xml.mjs.map +1 -0
- package/dist/es/ai-model/workflows/grounding/index.mjs +4 -0
- package/dist/es/ai-model/workflows/grounding/locate-result-rect.mjs +23 -0
- package/dist/es/ai-model/workflows/grounding/locate-result-rect.mjs.map +1 -0
- package/dist/es/ai-model/workflows/grounding/locate.mjs +168 -0
- package/dist/es/ai-model/workflows/grounding/locate.mjs.map +1 -0
- package/dist/es/ai-model/workflows/grounding/planning-action-locate.mjs +97 -0
- package/dist/es/ai-model/workflows/grounding/planning-action-locate.mjs.map +1 -0
- package/dist/es/ai-model/workflows/grounding/search-area-mapping.mjs +18 -0
- package/dist/es/ai-model/workflows/grounding/search-area-mapping.mjs.map +1 -0
- package/dist/es/ai-model/workflows/grounding/search-area.mjs +55 -0
- package/dist/es/ai-model/workflows/grounding/search-area.mjs.map +1 -0
- package/dist/es/ai-model/workflows/grounding/section-locate.mjs +146 -0
- package/dist/es/ai-model/workflows/grounding/section-locate.mjs.map +1 -0
- package/dist/es/ai-model/workflows/grounding/types.mjs +0 -0
- package/dist/es/ai-model/workflows/grounding/utils.mjs +50 -0
- package/dist/es/ai-model/workflows/grounding/utils.mjs.map +1 -0
- package/dist/es/ai-model/workflows/insight/extraction.mjs +101 -0
- package/dist/es/ai-model/workflows/insight/extraction.mjs.map +1 -0
- package/dist/es/ai-model/workflows/insight/index.mjs +3 -0
- package/dist/es/ai-model/workflows/insight/insight-response-parser.mjs +26 -0
- package/dist/es/ai-model/workflows/insight/insight-response-parser.mjs.map +1 -0
- package/dist/es/ai-model/workflows/insight/order-sensitive.mjs +29 -0
- package/dist/es/ai-model/workflows/insight/order-sensitive.mjs.map +1 -0
- package/dist/es/ai-model/workflows/planning/conversation-history.mjs +185 -0
- package/dist/es/ai-model/workflows/planning/conversation-history.mjs.map +1 -0
- package/dist/es/ai-model/workflows/planning/custom-planning.mjs +129 -0
- package/dist/es/ai-model/workflows/planning/custom-planning.mjs.map +1 -0
- package/dist/es/ai-model/workflows/planning/index.mjs +4 -0
- package/dist/es/ai-model/workflows/planning/locate-normalization.mjs +41 -0
- package/dist/es/ai-model/workflows/planning/locate-normalization.mjs.map +1 -0
- package/dist/es/ai-model/workflows/planning/planning-action-log.mjs +22 -0
- package/dist/es/ai-model/workflows/planning/planning-action-log.mjs.map +1 -0
- package/dist/es/ai-model/workflows/planning/standard-planning-parser.mjs +99 -0
- package/dist/es/ai-model/workflows/planning/standard-planning-parser.mjs.map +1 -0
- package/dist/es/ai-model/workflows/planning/standard-planning.mjs +219 -0
- package/dist/es/ai-model/workflows/planning/standard-planning.mjs.map +1 -0
- package/dist/es/ai-model/workflows/planning/types.mjs +0 -0
- package/dist/es/ai-model/workflows/recorder-generation/common.mjs +171 -0
- package/dist/es/ai-model/workflows/recorder-generation/common.mjs.map +1 -0
- package/dist/es/ai-model/workflows/recorder-generation/index.mjs +5 -0
- package/dist/es/ai-model/workflows/recorder-generation/markdown.mjs +253 -0
- package/dist/es/ai-model/workflows/recorder-generation/markdown.mjs.map +1 -0
- package/dist/es/ai-model/workflows/recorder-generation/metadata.mjs +83 -0
- package/dist/es/ai-model/workflows/recorder-generation/metadata.mjs.map +1 -0
- package/dist/es/ai-model/workflows/recorder-generation/playwright.mjs +123 -0
- package/dist/es/ai-model/workflows/recorder-generation/playwright.mjs.map +1 -0
- package/dist/es/ai-model/workflows/recorder-generation/yaml.mjs +162 -0
- package/dist/es/ai-model/workflows/recorder-generation/yaml.mjs.map +1 -0
- package/dist/es/common.mjs +12 -1
- package/dist/es/common.mjs.map +1 -1
- package/dist/es/constants.mjs +4 -0
- package/dist/es/constants.mjs.map +1 -0
- package/dist/es/device/index.mjs.map +1 -1
- package/dist/es/device/input-strategy.mjs +34 -0
- package/dist/es/device/input-strategy.mjs.map +1 -0
- package/dist/es/dump/html-utils.mjs +16 -1
- package/dist/es/dump/html-utils.mjs.map +1 -1
- package/dist/es/dump/image-reference.mjs +63 -0
- package/dist/es/dump/image-reference.mjs.map +1 -0
- package/dist/es/dump/report-action-dump.mjs +244 -0
- package/dist/es/dump/report-action-dump.mjs.map +1 -0
- package/dist/es/dump/report-dump-compactor.mjs +200 -0
- package/dist/es/dump/report-dump-compactor.mjs.map +1 -0
- package/dist/es/dump/screenshot-store.mjs +124 -37
- package/dist/es/dump/screenshot-store.mjs.map +1 -1
- package/dist/es/dump/task-service-dump.mjs +17 -0
- package/dist/es/dump/task-service-dump.mjs.map +1 -0
- package/dist/es/dump/task-status.mjs +18 -0
- package/dist/es/dump/task-status.mjs.map +1 -0
- package/dist/es/element-describer.mjs +198 -0
- package/dist/es/element-describer.mjs.map +1 -0
- package/dist/es/errors.mjs +20 -0
- package/dist/es/errors.mjs.map +1 -0
- package/dist/es/report-html-template.mjs +4 -0
- package/dist/es/report-html-template.mjs.map +1 -0
- package/dist/es/report-stats.mjs +113 -0
- package/dist/es/report-stats.mjs.map +1 -0
- package/dist/es/screenshot-item.mjs +7 -2
- package/dist/es/screenshot-item.mjs.map +1 -1
- package/dist/es/service/index.mjs +10 -5
- package/dist/es/service/index.mjs.map +1 -1
- package/dist/es/task-runner.mjs.map +1 -1
- package/dist/es/types.mjs.map +1 -1
- package/dist/es/utils.mjs +1 -1
- package/dist/es/yaml/cleanup.mjs +13 -0
- package/dist/es/yaml/cleanup.mjs.map +1 -0
- package/dist/lib/agent/agent.js +24 -11
- package/dist/lib/agent/agent.js.map +1 -1
- package/dist/lib/agent/cache-config.js +53 -0
- package/dist/lib/agent/cache-config.js.map +1 -0
- package/dist/lib/agent/file-chooser.js +125 -0
- package/dist/lib/agent/file-chooser.js.map +1 -0
- package/dist/lib/agent/insight.js +135 -0
- package/dist/lib/agent/insight.js.map +1 -0
- package/dist/lib/agent/metrics.js +115 -0
- package/dist/lib/agent/metrics.js.map +1 -0
- package/dist/lib/agent/progress/ai-act-progress.js +239 -0
- package/dist/lib/agent/progress/ai-act-progress.js.map +1 -0
- package/dist/lib/agent/progress/index.js +67 -0
- package/dist/lib/agent/progress/index.js.map +1 -0
- package/dist/lib/agent/progress/progress-bus.js +86 -0
- package/dist/lib/agent/progress/progress-bus.js.map +1 -0
- package/dist/lib/agent/prompt-context.js +62 -0
- package/dist/lib/agent/prompt-context.js.map +1 -0
- package/dist/lib/agent/record-to-report.js +48 -0
- package/dist/lib/agent/record-to-report.js.map +1 -0
- package/dist/lib/agent/run-gherkin-scenario.js +151 -0
- package/dist/lib/agent/run-gherkin-scenario.js.map +1 -0
- package/dist/lib/agent/run-markdown.js +96 -0
- package/dist/lib/agent/run-markdown.js.map +1 -0
- package/dist/lib/agent/screenshot-preparation.js +74 -0
- package/dist/lib/agent/screenshot-preparation.js.map +1 -0
- package/dist/lib/agent/ui-observer.js +425 -0
- package/dist/lib/agent/ui-observer.js.map +1 -0
- package/dist/lib/agent/utils.js +46 -2
- package/dist/lib/agent/utils.js.map +1 -1
- package/dist/lib/ai-model/connectivity/fixture.js +45 -0
- package/dist/lib/ai-model/connectivity/fixture.js.map +1 -0
- package/dist/lib/ai-model/connectivity/index.js +38 -0
- package/dist/lib/ai-model/connectivity/index.js.map +1 -0
- package/dist/lib/ai-model/connectivity/run-connectivity-test.js +204 -0
- package/dist/lib/ai-model/connectivity/run-connectivity-test.js.map +1 -0
- package/dist/lib/ai-model/conversation-history.js.map +1 -1
- package/dist/lib/ai-model/index.js +15 -11
- package/dist/lib/ai-model/inspect.js +1 -1
- package/dist/lib/ai-model/inspect.js.map +1 -1
- package/dist/lib/ai-model/model-adapter/chat-completion.js +103 -0
- package/dist/lib/ai-model/model-adapter/chat-completion.js.map +1 -0
- package/dist/lib/ai-model/model-adapter/custom-planning-action.js +40 -0
- package/dist/lib/ai-model/model-adapter/custom-planning-action.js.map +1 -0
- package/dist/lib/ai-model/model-adapter/custom-planning-types.js +20 -0
- package/dist/lib/ai-model/model-adapter/custom-planning-types.js.map +1 -0
- package/dist/lib/ai-model/model-adapter/default-insight-protocol.js +62 -0
- package/dist/lib/ai-model/model-adapter/default-insight-protocol.js.map +1 -0
- package/dist/lib/ai-model/model-adapter/default-locate-protocol.js +182 -0
- package/dist/lib/ai-model/model-adapter/default-locate-protocol.js.map +1 -0
- package/dist/lib/ai-model/model-adapter/default-planning-protocol.js +170 -0
- package/dist/lib/ai-model/model-adapter/default-planning-protocol.js.map +1 -0
- package/dist/lib/ai-model/model-adapter/image-preprocess.js +61 -0
- package/dist/lib/ai-model/model-adapter/image-preprocess.js.map +1 -0
- package/dist/lib/ai-model/model-adapter/index.js +38 -0
- package/dist/lib/ai-model/model-adapter/index.js.map +1 -0
- package/dist/lib/ai-model/model-adapter/insight-protocol.js +20 -0
- package/dist/lib/ai-model/model-adapter/insight-protocol.js.map +1 -0
- package/dist/lib/ai-model/model-adapter/insight.js +50 -0
- package/dist/lib/ai-model/model-adapter/insight.js.map +1 -0
- package/dist/lib/ai-model/model-adapter/locate-protocol.js +20 -0
- package/dist/lib/ai-model/model-adapter/locate-protocol.js.map +1 -0
- package/dist/lib/ai-model/model-adapter/locate.js +87 -0
- package/dist/lib/ai-model/model-adapter/locate.js.map +1 -0
- package/dist/lib/ai-model/model-adapter/planning-protocol.js +20 -0
- package/dist/lib/ai-model/model-adapter/planning-protocol.js.map +1 -0
- package/dist/lib/ai-model/model-adapter/planning.js +86 -0
- package/dist/lib/ai-model/model-adapter/planning.js.map +1 -0
- package/dist/lib/ai-model/model-adapter/resolve.js +88 -0
- package/dist/lib/ai-model/model-adapter/resolve.js.map +1 -0
- package/dist/lib/ai-model/model-adapter/types.js +20 -0
- package/dist/lib/ai-model/model-adapter/types.js.map +1 -0
- package/dist/lib/ai-model/models/auto-glm/actions.js +239 -0
- package/dist/lib/ai-model/models/auto-glm/actions.js.map +1 -0
- package/dist/lib/ai-model/models/auto-glm/adapter.js +79 -0
- package/dist/lib/ai-model/models/auto-glm/adapter.js.map +1 -0
- package/dist/lib/ai-model/models/auto-glm/locate.js +45 -0
- package/dist/lib/ai-model/models/auto-glm/locate.js.map +1 -0
- package/dist/lib/ai-model/models/auto-glm/parser.js +260 -0
- package/dist/lib/ai-model/models/auto-glm/parser.js.map +1 -0
- package/dist/lib/ai-model/models/auto-glm/planning.js +67 -0
- package/dist/lib/ai-model/models/auto-glm/planning.js.map +1 -0
- package/dist/lib/ai-model/models/auto-glm/prompt.js +257 -0
- package/dist/lib/ai-model/models/auto-glm/prompt.js.map +1 -0
- package/dist/lib/ai-model/models/deepseek/adapter.js +113 -0
- package/dist/lib/ai-model/models/deepseek/adapter.js.map +1 -0
- package/dist/lib/ai-model/models/deepseek/locate-protocol.js +132 -0
- package/dist/lib/ai-model/models/deepseek/locate-protocol.js.map +1 -0
- package/dist/lib/ai-model/models/default.js +47 -0
- package/dist/lib/ai-model/models/default.js.map +1 -0
- package/dist/lib/ai-model/models/doubao.js +132 -0
- package/dist/lib/ai-model/models/doubao.js.map +1 -0
- package/dist/lib/ai-model/models/gemini.js +137 -0
- package/dist/lib/ai-model/models/gemini.js.map +1 -0
- package/dist/lib/ai-model/models/glm.js +80 -0
- package/dist/lib/ai-model/models/glm.js.map +1 -0
- package/dist/lib/ai-model/models/gpt.js +77 -0
- package/dist/lib/ai-model/models/gpt.js.map +1 -0
- package/dist/lib/ai-model/models/index.js +41 -0
- package/dist/lib/ai-model/models/index.js.map +1 -0
- package/dist/lib/ai-model/models/kimi.js +136 -0
- package/dist/lib/ai-model/models/kimi.js.map +1 -0
- package/dist/lib/ai-model/models/mimo.js +70 -0
- package/dist/lib/ai-model/models/mimo.js.map +1 -0
- package/dist/lib/ai-model/models/qwen.js +173 -0
- package/dist/lib/ai-model/models/qwen.js.map +1 -0
- package/dist/lib/ai-model/models/registry.js +91 -0
- package/dist/lib/ai-model/models/registry.js.map +1 -0
- package/dist/lib/ai-model/models/ui-tars/actions.js +181 -0
- package/dist/lib/ai-model/models/ui-tars/actions.js.map +1 -0
- package/dist/lib/ai-model/models/ui-tars/adapter.js +136 -0
- package/dist/lib/ai-model/models/ui-tars/adapter.js.map +1 -0
- package/dist/lib/ai-model/models/ui-tars/parser.js +74 -0
- package/dist/lib/ai-model/models/ui-tars/parser.js.map +1 -0
- package/dist/lib/ai-model/models/ui-tars/planning.js +59 -0
- package/dist/lib/ai-model/models/ui-tars/planning.js.map +1 -0
- package/dist/lib/ai-model/models/ui-tars/prompt.js +73 -0
- package/dist/lib/ai-model/models/ui-tars/prompt.js.map +1 -0
- package/dist/lib/ai-model/models/utils/intent.js +40 -0
- package/dist/lib/ai-model/models/utils/intent.js.map +1 -0
- package/dist/lib/ai-model/prompt/insight/index.js +45 -0
- package/dist/lib/ai-model/prompt/insight/index.js.map +1 -0
- package/dist/lib/ai-model/prompt/insight/system-prompt.js +138 -0
- package/dist/lib/ai-model/prompt/insight/system-prompt.js.map +1 -0
- package/dist/lib/ai-model/prompt/insight/user-prompt.js +60 -0
- package/dist/lib/ai-model/prompt/insight/user-prompt.js.map +1 -0
- package/dist/lib/ai-model/prompt/locate/element-system-prompt.js +46 -0
- package/dist/lib/ai-model/prompt/locate/element-system-prompt.js.map +1 -0
- package/dist/lib/ai-model/prompt/locate/grounding-rules.js +47 -0
- package/dist/lib/ai-model/prompt/locate/grounding-rules.js.map +1 -0
- package/dist/lib/ai-model/prompt/locate/index.js +46 -0
- package/dist/lib/ai-model/prompt/locate/index.js.map +1 -0
- package/dist/lib/ai-model/prompt/locate/search-area-system-prompt.js +43 -0
- package/dist/lib/ai-model/prompt/locate/search-area-system-prompt.js.map +1 -0
- package/dist/lib/ai-model/prompt/planning/action-output-example.js +92 -0
- package/dist/lib/ai-model/prompt/planning/action-output-example.js.map +1 -0
- package/dist/lib/ai-model/prompt/planning/action-space-description.js +75 -0
- package/dist/lib/ai-model/prompt/planning/action-space-description.js.map +1 -0
- package/dist/lib/ai-model/prompt/planning/index.js +63 -0
- package/dist/lib/ai-model/prompt/planning/index.js.map +1 -0
- package/dist/lib/ai-model/prompt/planning/multi-turn-example.js +255 -0
- package/dist/lib/ai-model/prompt/planning/multi-turn-example.js.map +1 -0
- package/dist/lib/ai-model/prompt/planning/planning-response-example.js +59 -0
- package/dist/lib/ai-model/prompt/planning/planning-response-example.js.map +1 -0
- package/dist/lib/ai-model/prompt/planning/sub-goals-text.js +51 -0
- package/dist/lib/ai-model/prompt/planning/sub-goals-text.js.map +1 -0
- package/dist/lib/ai-model/prompt/planning/system-prompt.js +327 -0
- package/dist/lib/ai-model/prompt/planning/system-prompt.js.map +1 -0
- package/dist/lib/ai-model/service-caller/codex-app-server.js +1 -0
- package/dist/lib/ai-model/service-caller/codex-app-server.js.map +1 -1
- package/dist/lib/ai-model/service-caller/index.js +35 -16
- package/dist/lib/ai-model/service-caller/index.js.map +1 -1
- package/dist/lib/ai-model/service-caller/model-call-recorder.js +124 -0
- package/dist/lib/ai-model/service-caller/model-call-recorder.js.map +1 -0
- package/dist/lib/ai-model/service-caller/openai-error.js +184 -0
- package/dist/lib/ai-model/service-caller/openai-error.js.map +1 -0
- package/dist/lib/ai-model/service-caller/proxy-deps.node.js +46 -0
- package/dist/lib/ai-model/service-caller/proxy-deps.node.js.map +1 -0
- package/dist/lib/ai-model/service-caller/proxy-deps.stub.js +49 -0
- package/dist/lib/ai-model/service-caller/proxy-deps.stub.js.map +1 -0
- package/dist/lib/ai-model/service-caller/semantic-retry.js +70 -0
- package/dist/lib/ai-model/service-caller/semantic-retry.js.map +1 -0
- package/dist/lib/ai-model/service-caller/types.js +20 -0
- package/dist/lib/ai-model/service-caller/types.js.map +1 -0
- package/dist/lib/ai-model/shared/action-schema.js +49 -0
- package/dist/lib/ai-model/shared/action-schema.js.map +1 -0
- package/dist/lib/ai-model/shared/json.js +103 -0
- package/dist/lib/ai-model/shared/json.js.map +1 -0
- package/dist/lib/ai-model/shared/model-locate-result/bbox.js +106 -0
- package/dist/lib/ai-model/shared/model-locate-result/bbox.js.map +1 -0
- package/dist/lib/ai-model/shared/model-locate-result/coordinate-distance.js +44 -0
- package/dist/lib/ai-model/shared/model-locate-result/coordinate-distance.js.map +1 -0
- package/dist/lib/ai-model/shared/model-locate-result/errors.js +46 -0
- package/dist/lib/ai-model/shared/model-locate-result/errors.js.map +1 -0
- package/dist/lib/ai-model/shared/model-locate-result/factory.js +76 -0
- package/dist/lib/ai-model/shared/model-locate-result/factory.js.map +1 -0
- package/dist/lib/ai-model/shared/model-locate-result/index.js +66 -0
- package/dist/lib/ai-model/shared/model-locate-result/index.js.map +1 -0
- package/dist/lib/ai-model/shared/model-locate-result/parse.js +88 -0
- package/dist/lib/ai-model/shared/model-locate-result/parse.js.map +1 -0
- package/dist/lib/ai-model/shared/model-locate-result/pixel-bbox-mapper.js +101 -0
- package/dist/lib/ai-model/shared/model-locate-result/pixel-bbox-mapper.js.map +1 -0
- package/dist/lib/ai-model/shared/model-locate-result/prompt-spec.js +156 -0
- package/dist/lib/ai-model/shared/model-locate-result/prompt-spec.js.map +1 -0
- package/dist/lib/ai-model/shared/model-locate-result/types.js +46 -0
- package/dist/lib/ai-model/shared/model-locate-result/types.js.map +1 -0
- package/dist/lib/ai-model/shared/multimodal-prompt.js +95 -0
- package/dist/lib/ai-model/shared/multimodal-prompt.js.map +1 -0
- package/dist/lib/ai-model/shared/xml.js +79 -0
- package/dist/lib/ai-model/shared/xml.js.map +1 -0
- package/dist/lib/ai-model/workflows/grounding/index.js +46 -0
- package/dist/lib/ai-model/workflows/grounding/index.js.map +1 -0
- package/dist/lib/ai-model/workflows/grounding/locate-result-rect.js +60 -0
- package/dist/lib/ai-model/workflows/grounding/locate-result-rect.js.map +1 -0
- package/dist/lib/ai-model/workflows/grounding/locate.js +208 -0
- package/dist/lib/ai-model/workflows/grounding/locate.js.map +1 -0
- package/dist/lib/ai-model/workflows/grounding/planning-action-locate.js +131 -0
- package/dist/lib/ai-model/workflows/grounding/planning-action-locate.js.map +1 -0
- package/dist/lib/ai-model/workflows/grounding/search-area-mapping.js +52 -0
- package/dist/lib/ai-model/workflows/grounding/search-area-mapping.js.map +1 -0
- package/dist/lib/ai-model/workflows/grounding/search-area.js +92 -0
- package/dist/lib/ai-model/workflows/grounding/search-area.js.map +1 -0
- package/dist/lib/ai-model/workflows/grounding/section-locate.js +180 -0
- package/dist/lib/ai-model/workflows/grounding/section-locate.js.map +1 -0
- package/dist/lib/ai-model/workflows/grounding/types.js +20 -0
- package/dist/lib/ai-model/workflows/grounding/types.js.map +1 -0
- package/dist/lib/ai-model/workflows/grounding/utils.js +87 -0
- package/dist/lib/ai-model/workflows/grounding/utils.js.map +1 -0
- package/dist/lib/ai-model/workflows/insight/extraction.js +135 -0
- package/dist/lib/ai-model/workflows/insight/extraction.js.map +1 -0
- package/dist/lib/ai-model/workflows/insight/index.js +42 -0
- package/dist/lib/ai-model/workflows/insight/index.js.map +1 -0
- package/dist/lib/ai-model/workflows/insight/insight-response-parser.js +60 -0
- package/dist/lib/ai-model/workflows/insight/insight-response-parser.js.map +1 -0
- package/dist/lib/ai-model/workflows/insight/order-sensitive.js +63 -0
- package/dist/lib/ai-model/workflows/insight/order-sensitive.js.map +1 -0
- package/dist/lib/ai-model/workflows/planning/conversation-history.js +219 -0
- package/dist/lib/ai-model/workflows/planning/conversation-history.js.map +1 -0
- package/dist/lib/ai-model/workflows/planning/custom-planning.js +166 -0
- package/dist/lib/ai-model/workflows/planning/custom-planning.js.map +1 -0
- package/dist/lib/ai-model/workflows/planning/index.js +49 -0
- package/dist/lib/ai-model/workflows/planning/index.js.map +1 -0
- package/dist/lib/ai-model/workflows/planning/locate-normalization.js +75 -0
- package/dist/lib/ai-model/workflows/planning/locate-normalization.js.map +1 -0
- package/dist/lib/ai-model/workflows/planning/planning-action-log.js +56 -0
- package/dist/lib/ai-model/workflows/planning/planning-action-log.js.map +1 -0
- package/dist/lib/ai-model/workflows/planning/standard-planning-parser.js +142 -0
- package/dist/lib/ai-model/workflows/planning/standard-planning-parser.js.map +1 -0
- package/dist/lib/ai-model/workflows/planning/standard-planning.js +253 -0
- package/dist/lib/ai-model/workflows/planning/standard-planning.js.map +1 -0
- package/dist/lib/ai-model/workflows/planning/types.js +20 -0
- package/dist/lib/ai-model/workflows/planning/types.js.map +1 -0
- package/dist/lib/ai-model/workflows/recorder-generation/common.js +232 -0
- package/dist/lib/ai-model/workflows/recorder-generation/common.js.map +1 -0
- package/dist/lib/ai-model/workflows/recorder-generation/index.js +68 -0
- package/dist/lib/ai-model/workflows/recorder-generation/index.js.map +1 -0
- package/dist/lib/ai-model/workflows/recorder-generation/markdown.js +293 -0
- package/dist/lib/ai-model/workflows/recorder-generation/markdown.js.map +1 -0
- package/dist/lib/ai-model/workflows/recorder-generation/metadata.js +117 -0
- package/dist/lib/ai-model/workflows/recorder-generation/metadata.js.map +1 -0
- package/dist/lib/ai-model/workflows/recorder-generation/playwright.js +184 -0
- package/dist/lib/ai-model/workflows/recorder-generation/playwright.js.map +1 -0
- package/dist/lib/ai-model/workflows/recorder-generation/yaml.js +232 -0
- package/dist/lib/ai-model/workflows/recorder-generation/yaml.js.map +1 -0
- package/dist/lib/common.js +18 -1
- package/dist/lib/common.js.map +1 -1
- package/dist/lib/constants.js +38 -0
- package/dist/lib/constants.js.map +1 -0
- package/dist/lib/device/index.js.map +1 -1
- package/dist/lib/device/input-strategy.js +80 -0
- package/dist/lib/device/input-strategy.js.map +1 -0
- package/dist/lib/dump/html-utils.js +18 -0
- package/dist/lib/dump/html-utils.js.map +1 -1
- package/dist/lib/dump/image-reference.js +115 -0
- package/dist/lib/dump/image-reference.js.map +1 -0
- package/dist/lib/dump/report-action-dump.js +284 -0
- package/dist/lib/dump/report-action-dump.js.map +1 -0
- package/dist/lib/dump/report-dump-compactor.js +234 -0
- package/dist/lib/dump/report-dump-compactor.js.map +1 -0
- package/dist/lib/dump/screenshot-store.js +146 -38
- package/dist/lib/dump/screenshot-store.js.map +1 -1
- package/dist/lib/dump/task-service-dump.js +54 -0
- package/dist/lib/dump/task-service-dump.js.map +1 -0
- package/dist/lib/dump/task-status.js +55 -0
- package/dist/lib/dump/task-status.js.map +1 -0
- package/dist/lib/element-describer.js +238 -0
- package/dist/lib/element-describer.js.map +1 -0
- package/dist/lib/errors.js +54 -0
- package/dist/lib/errors.js.map +1 -0
- package/dist/lib/report-html-template.js +38 -0
- package/dist/lib/report-html-template.js.map +1 -0
- package/dist/lib/report-stats.js +147 -0
- package/dist/lib/report-stats.js.map +1 -0
- package/dist/lib/screenshot-item.js +7 -2
- package/dist/lib/screenshot-item.js.map +1 -1
- package/dist/lib/service/index.js +10 -5
- package/dist/lib/service/index.js.map +1 -1
- package/dist/lib/task-runner.js.map +1 -1
- package/dist/lib/types.js +2 -2
- package/dist/lib/types.js.map +1 -1
- package/dist/lib/utils.js +1 -1
- package/dist/lib/yaml/cleanup.js +47 -0
- package/dist/lib/yaml/cleanup.js.map +1 -0
- package/dist/types/agent/agent.d.ts +5 -9
- package/dist/types/agent/cache-config.d.ts +2 -0
- package/dist/types/agent/file-chooser.d.ts +19 -0
- package/dist/types/agent/insight.d.ts +21 -0
- package/dist/types/agent/metrics.d.ts +48 -0
- package/dist/types/agent/progress/ai-act-progress.d.ts +21 -0
- package/dist/types/agent/progress/index.d.ts +2 -0
- package/dist/types/agent/progress/progress-bus.d.ts +33 -0
- package/dist/types/agent/prompt-context.d.ts +3 -0
- package/dist/types/agent/record-to-report.d.ts +2 -0
- package/dist/types/agent/run-gherkin-scenario.d.ts +26 -0
- package/dist/types/agent/run-markdown.d.ts +6 -0
- package/dist/types/agent/screenshot-preparation.d.ts +20 -0
- package/dist/types/agent/ui-observer.d.ts +103 -0
- package/dist/types/agent/utils.d.ts +12 -1
- package/dist/types/ai-model/connectivity/fixture.d.ts +5 -0
- package/dist/types/ai-model/connectivity/index.d.ts +1 -0
- package/dist/types/ai-model/connectivity/run-connectivity-test.d.ts +11 -0
- package/dist/types/ai-model/index.d.ts +2 -0
- package/dist/types/ai-model/model-adapter/chat-completion.d.ts +2 -0
- package/dist/types/ai-model/model-adapter/custom-planning-action.d.ts +25 -0
- package/dist/types/ai-model/model-adapter/custom-planning-types.d.ts +31 -0
- package/dist/types/ai-model/model-adapter/default-insight-protocol.d.ts +2 -0
- package/dist/types/ai-model/model-adapter/default-locate-protocol.d.ts +7 -0
- package/dist/types/ai-model/model-adapter/default-planning-protocol.d.ts +25 -0
- package/dist/types/ai-model/model-adapter/image-preprocess.d.ts +30 -0
- package/dist/types/ai-model/model-adapter/index.d.ts +2 -0
- package/dist/types/ai-model/model-adapter/insight-protocol.d.ts +24 -0
- package/dist/types/ai-model/model-adapter/insight.d.ts +3 -0
- package/dist/types/ai-model/model-adapter/locate-protocol.d.ts +23 -0
- package/dist/types/ai-model/model-adapter/locate.d.ts +4 -0
- package/dist/types/ai-model/model-adapter/planning-protocol.d.ts +53 -0
- package/dist/types/ai-model/model-adapter/planning.d.ts +6 -0
- package/dist/types/ai-model/model-adapter/resolve.d.ts +12 -0
- package/dist/types/ai-model/model-adapter/types.d.ts +218 -0
- package/dist/types/ai-model/models/auto-glm/actions.d.ts +81 -0
- package/dist/types/ai-model/models/auto-glm/adapter.d.ts +5 -0
- package/dist/types/ai-model/models/auto-glm/locate.d.ts +2 -0
- package/dist/types/ai-model/models/auto-glm/parser.d.ts +14 -0
- package/dist/types/ai-model/models/auto-glm/planning.d.ts +5 -0
- package/dist/types/ai-model/models/auto-glm/prompt.d.ts +4 -0
- package/dist/types/ai-model/models/deepseek/adapter.d.ts +39 -0
- package/dist/types/ai-model/models/deepseek/locate-protocol.d.ts +5 -0
- package/dist/types/ai-model/models/default.d.ts +2 -0
- package/dist/types/ai-model/models/doubao.d.ts +7 -0
- package/dist/types/ai-model/models/gemini.d.ts +37 -0
- package/dist/types/ai-model/models/glm.d.ts +21 -0
- package/dist/types/ai-model/models/gpt.d.ts +20 -0
- package/dist/types/ai-model/models/index.d.ts +2 -0
- package/dist/types/ai-model/models/kimi.d.ts +45 -0
- package/dist/types/ai-model/models/mimo.d.ts +10 -0
- package/dist/types/ai-model/models/qwen.d.ts +33 -0
- package/dist/types/ai-model/models/registry.d.ts +187 -0
- package/dist/types/ai-model/models/ui-tars/actions.d.ts +3 -0
- package/dist/types/ai-model/models/ui-tars/adapter.d.ts +6 -0
- package/dist/types/ai-model/models/ui-tars/parser.d.ts +72 -0
- package/dist/types/ai-model/models/ui-tars/planning.d.ts +4 -0
- package/dist/types/ai-model/models/ui-tars/prompt.d.ts +2 -0
- package/dist/types/ai-model/models/utils/intent.d.ts +2 -0
- package/dist/types/ai-model/prompt/insight/index.d.ts +2 -0
- package/dist/types/ai-model/prompt/insight/system-prompt.d.ts +6 -0
- package/dist/types/ai-model/prompt/insight/user-prompt.d.ts +3 -0
- package/dist/types/ai-model/prompt/locate/element-system-prompt.d.ts +4 -0
- package/dist/types/ai-model/prompt/locate/grounding-rules.d.ts +1 -0
- package/dist/types/ai-model/prompt/locate/index.d.ts +3 -0
- package/dist/types/ai-model/prompt/locate/search-area-system-prompt.d.ts +4 -0
- package/dist/types/ai-model/prompt/planning/action-output-example.d.ts +17 -0
- package/dist/types/ai-model/prompt/planning/action-space-description.d.ts +11 -0
- package/dist/types/ai-model/prompt/planning/index.d.ts +6 -0
- package/dist/types/ai-model/prompt/planning/multi-turn-example.d.ts +10 -0
- package/dist/types/ai-model/prompt/planning/planning-response-example.d.ts +28 -0
- package/dist/types/ai-model/prompt/planning/sub-goals-text.d.ts +2 -0
- package/dist/types/ai-model/prompt/planning/system-prompt.d.ts +18 -0
- package/dist/types/ai-model/service-caller/index.d.ts +21 -6
- package/dist/types/ai-model/service-caller/model-call-recorder.d.ts +12 -0
- package/dist/types/ai-model/service-caller/openai-error.d.ts +26 -0
- package/dist/types/ai-model/service-caller/proxy-deps.node.d.ts +2 -0
- package/dist/types/ai-model/service-caller/proxy-deps.stub.d.ts +2 -0
- package/dist/types/ai-model/service-caller/semantic-retry.d.ts +30 -0
- package/dist/types/ai-model/service-caller/types.d.ts +2 -0
- package/dist/types/ai-model/shared/action-schema.d.ts +4 -0
- package/dist/types/ai-model/shared/json.d.ts +26 -0
- package/dist/types/ai-model/shared/model-locate-result/bbox.d.ts +6 -0
- package/dist/types/ai-model/shared/model-locate-result/coordinate-distance.d.ts +4 -0
- package/dist/types/ai-model/shared/model-locate-result/errors.d.ts +2 -0
- package/dist/types/ai-model/shared/model-locate-result/factory.d.ts +3 -0
- package/dist/types/ai-model/shared/model-locate-result/index.d.ts +7 -0
- package/dist/types/ai-model/shared/model-locate-result/parse.d.ts +8 -0
- package/dist/types/ai-model/shared/model-locate-result/pixel-bbox-mapper.d.ts +7 -0
- package/dist/types/ai-model/shared/model-locate-result/prompt-spec.d.ts +6 -0
- package/dist/types/ai-model/shared/model-locate-result/types.d.ts +150 -0
- package/dist/types/ai-model/shared/multimodal-prompt.d.ts +13 -0
- package/dist/types/ai-model/shared/xml.d.ts +15 -0
- package/dist/types/ai-model/workflows/grounding/index.d.ts +3 -0
- package/dist/types/ai-model/workflows/grounding/locate-result-rect.d.ts +5 -0
- package/dist/types/ai-model/workflows/grounding/locate.d.ts +7 -0
- package/dist/types/ai-model/workflows/grounding/planning-action-locate.d.ts +4 -0
- package/dist/types/ai-model/workflows/grounding/search-area-mapping.d.ts +4 -0
- package/dist/types/ai-model/workflows/grounding/search-area.d.ts +18 -0
- package/dist/types/ai-model/workflows/grounding/section-locate.d.ts +16 -0
- package/dist/types/ai-model/workflows/grounding/types.d.ts +56 -0
- package/dist/types/ai-model/workflows/grounding/utils.d.ts +25 -0
- package/dist/types/ai-model/workflows/insight/extraction.d.ts +18 -0
- package/dist/types/ai-model/workflows/insight/index.d.ts +2 -0
- package/dist/types/ai-model/workflows/insight/insight-response-parser.d.ts +4 -0
- package/dist/types/ai-model/workflows/insight/order-sensitive.d.ts +6 -0
- package/dist/types/ai-model/workflows/planning/conversation-history.d.ts +105 -0
- package/dist/types/ai-model/workflows/planning/custom-planning.d.ts +7 -0
- package/dist/types/ai-model/workflows/planning/index.d.ts +3 -0
- package/dist/types/ai-model/workflows/planning/locate-normalization.d.ts +12 -0
- package/dist/types/ai-model/workflows/planning/planning-action-log.d.ts +2 -0
- package/dist/types/ai-model/workflows/planning/standard-planning-parser.d.ts +31 -0
- package/dist/types/ai-model/workflows/planning/standard-planning.d.ts +4 -0
- package/dist/types/ai-model/workflows/planning/types.d.ts +16 -0
- package/dist/types/ai-model/workflows/recorder-generation/common.d.ts +89 -0
- package/dist/types/ai-model/workflows/recorder-generation/index.d.ts +7 -0
- package/dist/types/ai-model/workflows/recorder-generation/markdown.d.ts +7 -0
- package/dist/types/ai-model/workflows/recorder-generation/metadata.d.ts +13 -0
- package/dist/types/ai-model/workflows/recorder-generation/playwright.d.ts +26 -0
- package/dist/types/ai-model/workflows/recorder-generation/yaml.d.ts +17 -0
- package/dist/types/common.d.ts +2 -0
- package/dist/types/constants.d.ts +1 -0
- package/dist/types/device/index.d.ts +15 -4
- package/dist/types/device/input-strategy.d.ts +44 -0
- package/dist/types/dump/html-utils.d.ts +1 -0
- package/dist/types/dump/image-reference.d.ts +36 -0
- package/dist/types/dump/report-action-dump.d.ts +127 -0
- package/dist/types/dump/report-dump-compactor.d.ts +7 -0
- package/dist/types/dump/screenshot-store.d.ts +32 -15
- package/dist/types/dump/task-service-dump.d.ts +3 -0
- package/dist/types/dump/task-status.d.ts +41 -0
- package/dist/types/element-describer.d.ts +43 -0
- package/dist/types/errors.d.ts +5 -0
- package/dist/types/report-html-template.d.ts +1 -0
- package/dist/types/report-stats.d.ts +39 -0
- package/dist/types/screenshot-item.d.ts +1 -0
- package/dist/types/service/index.d.ts +6 -2
- package/dist/types/task-runner.d.ts +6 -0
- package/dist/types/types.d.ts +98 -5
- package/dist/types/yaml/cleanup.d.ts +2 -0
- package/package.json +2 -2
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { createLocateResultCodec, resolveLocateResultCoordinates, } from './factory';
|
|
2
|
+
export { formatLocateExampleValue } from './prompt-spec';
|
|
3
|
+
export { createCoordinateDistanceToPixels } from './coordinate-distance';
|
|
4
|
+
export { isBboxLocateResultValue, isPointLocateResultValue, } from './types';
|
|
5
|
+
export type { CoordinateDistanceAxis } from './coordinate-distance';
|
|
6
|
+
export { createLocateResultValue, parseCoordinateList, unwrapCoordinateListLikeInput, } from './parse';
|
|
7
|
+
export type { LocateResultBbox, PixelBbox, RawLocateValue, LocateResultCodec, LocateResultFormatDefinition, LocateResultCoordinates, LocateResultContext, LocateResultShape, LocateResultPromptSpec, LocateResultValue, NonEmptyArray, ResolvedLocateResultCoordinates, } from './types';
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { BboxLocateResultCoordinates, BboxLocateResultValue, LocateResultValue, PointLocateResultCoordinates, PointLocateResultValue, ResolvedLocateResultCoordinates } from './types';
|
|
2
|
+
type CoordinateListLikeInput = number[] | string[] | string | (number[] | string[])[];
|
|
3
|
+
export declare function unwrapCoordinateListLikeInput(coordinateList: CoordinateListLikeInput): number[] | string[] | string;
|
|
4
|
+
export declare function parseCoordinateList(input: unknown, label: string): number[];
|
|
5
|
+
export declare function createLocateResultValue(coordinatesMeta: PointLocateResultCoordinates, coordinates: number[]): PointLocateResultValue;
|
|
6
|
+
export declare function createLocateResultValue(coordinatesMeta: BboxLocateResultCoordinates, coordinates: number[]): BboxLocateResultValue;
|
|
7
|
+
export declare function parseNumericLocateResult(resolvedCoordinates: ResolvedLocateResultCoordinates, input: unknown): LocateResultValue;
|
|
8
|
+
export {};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { LocateResultBbox, LocateResultPromptSpec, ResolvedLocateResultCoordinates } from './types';
|
|
2
|
+
export declare function formatLocateExampleValue(value: unknown): string;
|
|
3
|
+
export declare function describeLocateResultValueSchema({ shape, }: ResolvedLocateResultCoordinates): string;
|
|
4
|
+
export declare function locateResultExampleValue(resolvedCoordinates: ResolvedLocateResultCoordinates, region: LocateResultBbox): number[];
|
|
5
|
+
export declare const locateResultExampleRegions: LocateResultBbox[];
|
|
6
|
+
export declare function createLocateResultPromptSpec(resolvedCoordinates: ResolvedLocateResultCoordinates): LocateResultPromptSpec;
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
import type { Bbox } from '../../../types';
|
|
2
|
+
export type { Bbox };
|
|
3
|
+
export type LocateResultBbox = Bbox;
|
|
4
|
+
export type PixelBbox = Bbox;
|
|
5
|
+
export type NonEmptyArray<T> = [T, ...T[]];
|
|
6
|
+
export type RawLocateValue = unknown;
|
|
7
|
+
export type LocateResultPoint = [number, number];
|
|
8
|
+
export type PointLocateResultCoordinates = ResolvedLocateResultCoordinates & {
|
|
9
|
+
shape: 'point';
|
|
10
|
+
};
|
|
11
|
+
export type BboxLocateResultCoordinates = ResolvedLocateResultCoordinates & {
|
|
12
|
+
shape: 'bbox';
|
|
13
|
+
};
|
|
14
|
+
export type LocateResultValue = {
|
|
15
|
+
coordinates: LocateResultPoint;
|
|
16
|
+
coordinatesMeta: PointLocateResultCoordinates;
|
|
17
|
+
} | {
|
|
18
|
+
coordinates: LocateResultBbox;
|
|
19
|
+
coordinatesMeta: BboxLocateResultCoordinates;
|
|
20
|
+
};
|
|
21
|
+
export type PointLocateResultValue = Extract<LocateResultValue, {
|
|
22
|
+
coordinatesMeta: {
|
|
23
|
+
shape: 'point';
|
|
24
|
+
};
|
|
25
|
+
}>;
|
|
26
|
+
export type BboxLocateResultValue = Extract<LocateResultValue, {
|
|
27
|
+
coordinatesMeta: {
|
|
28
|
+
shape: 'bbox';
|
|
29
|
+
};
|
|
30
|
+
}>;
|
|
31
|
+
export declare function isBboxLocateResultValue(result: LocateResultValue): result is BboxLocateResultValue;
|
|
32
|
+
export declare function isPointLocateResultValue(result: LocateResultValue): result is PointLocateResultValue;
|
|
33
|
+
export type LocateResultShape = 'bbox' | 'point';
|
|
34
|
+
export interface LocateResultContext {
|
|
35
|
+
preparedSize: {
|
|
36
|
+
width: number;
|
|
37
|
+
height: number;
|
|
38
|
+
};
|
|
39
|
+
contentSize?: {
|
|
40
|
+
width: number;
|
|
41
|
+
height: number;
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
export interface LocateResultPromptSpec {
|
|
45
|
+
resultKey: string;
|
|
46
|
+
resultValueSchema: string;
|
|
47
|
+
resultValueDescription: string;
|
|
48
|
+
resultNoun: string;
|
|
49
|
+
resultNounPlural: string;
|
|
50
|
+
exampleValues: NonEmptyArray<unknown>;
|
|
51
|
+
}
|
|
52
|
+
export interface LocateResultCodec {
|
|
53
|
+
promptSpec: LocateResultPromptSpec;
|
|
54
|
+
toPixelBbox(input: RawLocateValue, ctx: LocateResultContext): PixelBbox;
|
|
55
|
+
}
|
|
56
|
+
export interface LocateResultCoordinates {
|
|
57
|
+
shape: LocateResultShape;
|
|
58
|
+
order?: 'xy' | 'yx';
|
|
59
|
+
normalizedBy?: number;
|
|
60
|
+
}
|
|
61
|
+
export type ResolvedLocateResultCoordinates = {
|
|
62
|
+
shape: 'point';
|
|
63
|
+
order: 'xy' | 'yx';
|
|
64
|
+
normalizedBy?: number;
|
|
65
|
+
} | {
|
|
66
|
+
shape: 'bbox';
|
|
67
|
+
order: 'xy' | 'yx';
|
|
68
|
+
normalizedBy?: number;
|
|
69
|
+
};
|
|
70
|
+
export type RawLocateValueParser = (input: RawLocateValue) => LocateResultValue;
|
|
71
|
+
export type LocateResultPixelBboxMapper = (result: LocateResultValue, ctx: LocateResultContext) => PixelBbox;
|
|
72
|
+
/**
|
|
73
|
+
* Declarative config for the standard locate workflow.
|
|
74
|
+
*
|
|
75
|
+
* The standard workflow has three steps:
|
|
76
|
+
* 1. `coordinates` is expanded into prompt wording, a default
|
|
77
|
+
* raw result parser, and a default pixel bbox mapper.
|
|
78
|
+
* 2. `parseRawLocateValue` converts that raw result value into Midscene's
|
|
79
|
+
* internal `LocateResultValue` shape:
|
|
80
|
+
* `{ coordinates, coordinatesMeta }`. Omit it when the model returns a
|
|
81
|
+
* plain numeric bbox/point matching `coordinates`; provide it when the
|
|
82
|
+
* model needs repair, fallback handling, or per-result coordinate metadata.
|
|
83
|
+
* 3. `mapLocateResultToPixelBbox` converts the parsed result into a pixel bbox
|
|
84
|
+
* `[left, top, right, bottom]`. Omit it when `coordinates` is enough to describe
|
|
85
|
+
* the coordinate system and order; provide it only for model-specific
|
|
86
|
+
* conversion rules.
|
|
87
|
+
*
|
|
88
|
+
* This format only describes one raw coordinate value. The operation protocol
|
|
89
|
+
* owns the response envelope and identifies target/reference values before the
|
|
90
|
+
* runtime codec converts each value independently.
|
|
91
|
+
*
|
|
92
|
+
* Example 1: a GLM-like model that directly matches the standard coordinates.
|
|
93
|
+
*
|
|
94
|
+
* ```ts
|
|
95
|
+
* resultFormat: {
|
|
96
|
+
* coordinates: { shape: 'bbox', order: 'xy', normalizedBy: 1000 },
|
|
97
|
+
* }
|
|
98
|
+
* ```
|
|
99
|
+
*
|
|
100
|
+
* Example 2: Qwen 2.5 returns pixel coordinates, but may return a point-like
|
|
101
|
+
* value that needs custom parsing/fallback. The default pixel bbox mapper is
|
|
102
|
+
* bypassed only if custom fallback sizing is required.
|
|
103
|
+
*
|
|
104
|
+
* ```ts
|
|
105
|
+
* resultFormat: {
|
|
106
|
+
* coordinates: { shape: 'bbox', order: 'xy' },
|
|
107
|
+
* parseRawLocateValue: parseQwen25RawLocateValue,
|
|
108
|
+
* mapLocateResultToPixelBbox: normalizeQwen25ResultToPixelBbox,
|
|
109
|
+
* }
|
|
110
|
+
* ```
|
|
111
|
+
*
|
|
112
|
+
* Example 3: a model with a custom raw value shape can keep the standard
|
|
113
|
+
* workflow while replacing parsing and mapping.
|
|
114
|
+
*
|
|
115
|
+
* ```ts
|
|
116
|
+
* resultFormat: {
|
|
117
|
+
* coordinates: { shape: 'bbox', order: 'xy' },
|
|
118
|
+
* parseRawLocateValue: (raw) => ({
|
|
119
|
+
* coordinates: [
|
|
120
|
+
* Number((raw as any).left),
|
|
121
|
+
* Number((raw as any).top),
|
|
122
|
+
* Number((raw as any).right),
|
|
123
|
+
* Number((raw as any).bottom),
|
|
124
|
+
* ],
|
|
125
|
+
* coordinatesMeta: { shape: 'bbox', order: 'xy' },
|
|
126
|
+
* }),
|
|
127
|
+
* mapLocateResultToPixelBbox: (result) => result.coordinates,
|
|
128
|
+
* }
|
|
129
|
+
* ```
|
|
130
|
+
*/
|
|
131
|
+
export type LocateResultFormatDefinition = {
|
|
132
|
+
/**
|
|
133
|
+
* Common locate result coordinates shorthand. This is the preferred config surface
|
|
134
|
+
* for normal models because it keeps result type, coordinate system, and
|
|
135
|
+
* coordinate order in one orthogonal field.
|
|
136
|
+
*/
|
|
137
|
+
coordinates: LocateResultCoordinates;
|
|
138
|
+
/**
|
|
139
|
+
* Parses one raw coordinate value into a `LocateResultValue`. This function
|
|
140
|
+
* should handle response repair, bbox-vs-point fallback, and the coordinate
|
|
141
|
+
* metadata that describes the parsed coordinates.
|
|
142
|
+
*/
|
|
143
|
+
parseRawLocateValue?: RawLocateValueParser;
|
|
144
|
+
/**
|
|
145
|
+
* Maps the parsed result into a pixel bbox. Most models should omit this
|
|
146
|
+
* and let `coordinates` drive the default conversion. Provide it only when point
|
|
147
|
+
* fallback size, clipping, or coordinate semantics are model-specific.
|
|
148
|
+
*/
|
|
149
|
+
mapLocateResultToPixelBbox?: LocateResultPixelBboxMapper;
|
|
150
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { type TMultimodalPrompt, type TUserPrompt } from '../../common';
|
|
2
|
+
import type { ChatCompletionUserMessageParam } from 'openai/resources/index';
|
|
3
|
+
export interface PreparedReferenceImage {
|
|
4
|
+
name: string;
|
|
5
|
+
url: string;
|
|
6
|
+
}
|
|
7
|
+
export interface PreparedUserPrompt {
|
|
8
|
+
text: string;
|
|
9
|
+
referenceImages: PreparedReferenceImage[];
|
|
10
|
+
}
|
|
11
|
+
export declare const prepareUserPrompt: (userPrompt: TUserPrompt) => Promise<PreparedUserPrompt>;
|
|
12
|
+
export declare const preparedReferenceImagesToChatMessages: (referenceImages: PreparedReferenceImage[]) => ChatCompletionUserMessageParam[];
|
|
13
|
+
export declare const multimodalPromptToChatMessages: (multimodalPrompt?: TMultimodalPrompt) => Promise<ChatCompletionUserMessageParam[]>;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Extract content from an XML tag in a string, searching from the end.
|
|
3
|
+
* This approach handles cases where models prepend thinking content (like <think>...</think>)
|
|
4
|
+
* before the actual response tags, or when there are incomplete/nested tags.
|
|
5
|
+
*
|
|
6
|
+
* Strategy: Find the LAST closing tag, then search backwards for the nearest opening tag.
|
|
7
|
+
* This ensures we get the last complete tag pair, even if there are incomplete tags before it.
|
|
8
|
+
*
|
|
9
|
+
* @param xmlString - The XML string to parse
|
|
10
|
+
* @param tagName - The name of the tag to extract (case-insensitive)
|
|
11
|
+
* @returns The trimmed content of the tag, or undefined if not found
|
|
12
|
+
*/
|
|
13
|
+
export declare function extractXMLTag(xmlString: string, tagName: string): string | undefined;
|
|
14
|
+
/** Extract raw XML from the first protocol tag through the last protocol tag. */
|
|
15
|
+
export declare function extractRawXMLFragment(content: string, tagNames: readonly [string, ...string[]]): string;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { PixelBbox } from '../../shared/model-locate-result';
|
|
2
|
+
import type { Rect } from '../../../types';
|
|
3
|
+
/** Merge model pixel bboxes into one screenshot rectangle. */
|
|
4
|
+
export declare function mergePixelBboxesToRect(pixelBboxes: PixelBbox[]): Rect;
|
|
5
|
+
export declare function pixelBboxToRect([left, top, right, bottom]: PixelBbox): Rect;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { TUserPrompt } from '../../../common';
|
|
2
|
+
import type { LocateModelResponse, LocateOptions, LocateRequest, LocateResult } from './types';
|
|
3
|
+
export { userPromptToString as extraTextFromUserPrompt } from '../../../common';
|
|
4
|
+
export declare function AiLocateElement(options: LocateOptions & {
|
|
5
|
+
targetElementDescription: TUserPrompt;
|
|
6
|
+
}): Promise<LocateResult>;
|
|
7
|
+
export declare function genericLocate(locateRequest: LocateRequest): Promise<LocateModelResponse>;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { ResolvedCustomPlanningDefinition } from '../../model-adapter/custom-planning-types';
|
|
2
|
+
import type { PlanningTapLocatorDefinition } from '../../model-adapter/types';
|
|
3
|
+
import type { LocateFn } from './types';
|
|
4
|
+
export declare function resolvePlanningTapLocator<TParsed>(definition: PlanningTapLocatorDefinition, planner: ResolvedCustomPlanningDefinition<TParsed>): LocateFn;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { PixelBbox } from '../../shared/model-locate-result';
|
|
2
|
+
import type { SearchAreaImageMapping } from './types';
|
|
3
|
+
/** Map a bbox in the prepared search-area image back to screenshot pixels. */
|
|
4
|
+
export declare function mapSearchAreaPixelBboxToOriginalPixelBbox([left, top, right, bottom]: PixelBbox, mapping?: SearchAreaImageMapping): PixelBbox;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { Rect, Size, UIContext } from '../../../types';
|
|
2
|
+
import type { SearchAreaConfig } from './types';
|
|
3
|
+
/**
|
|
4
|
+
* Expand the search area to at least 400 x 400 pixels
|
|
5
|
+
*
|
|
6
|
+
* Step 1: Extend 100px on each side (top, right, bottom, left)
|
|
7
|
+
* - If the element is near a boundary, expansion on that side will be limited
|
|
8
|
+
* - No compensation is made for boundary limitations (this is intentional)
|
|
9
|
+
*
|
|
10
|
+
* Step 2: Ensure the area is at least 400x400 pixels
|
|
11
|
+
* - Scale up proportionally from the center if needed
|
|
12
|
+
* - Final result is clamped to screen boundaries
|
|
13
|
+
*/
|
|
14
|
+
export declare function expandSearchArea(rect: Rect, screenSize: Size): Rect;
|
|
15
|
+
export declare function buildSearchAreaConfig(options: {
|
|
16
|
+
context: UIContext;
|
|
17
|
+
baseRect: Rect;
|
|
18
|
+
}): Promise<SearchAreaConfig>;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { AIUsageInfo, UIContext } from '../../../types';
|
|
2
|
+
import type { TUserPrompt } from '../../../common';
|
|
3
|
+
import type { ModelRuntime } from '../../models';
|
|
4
|
+
import type { SearchAreaConfig } from './types';
|
|
5
|
+
export declare function AiLocateSection(options: {
|
|
6
|
+
context: UIContext;
|
|
7
|
+
sectionDescription: TUserPrompt;
|
|
8
|
+
modelRuntime: ModelRuntime;
|
|
9
|
+
abortSignal?: AbortSignal;
|
|
10
|
+
}): Promise<{
|
|
11
|
+
searchAreaConfig?: SearchAreaConfig;
|
|
12
|
+
error?: string;
|
|
13
|
+
rawResponse: string;
|
|
14
|
+
rawChoiceMessage?: unknown;
|
|
15
|
+
usage?: AIUsageInfo;
|
|
16
|
+
}>;
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import type { AIUsageInfo, PixelBbox, Rect, UIContext } from '../../../types';
|
|
2
|
+
import type { LocateResultElement } from '@aiscene/shared/types';
|
|
3
|
+
import type { TUserPrompt } from '../../../common';
|
|
4
|
+
import type { ModelRuntime } from '../../models';
|
|
5
|
+
/** Maps coordinates from a prepared search-area image back to the screenshot. */
|
|
6
|
+
export interface SearchAreaImageMapping {
|
|
7
|
+
offset: {
|
|
8
|
+
x: number;
|
|
9
|
+
y: number;
|
|
10
|
+
};
|
|
11
|
+
scale: number;
|
|
12
|
+
}
|
|
13
|
+
export interface SearchAreaConfig {
|
|
14
|
+
sourceRect: Rect;
|
|
15
|
+
image: {
|
|
16
|
+
imageBase64: string;
|
|
17
|
+
width: number;
|
|
18
|
+
height: number;
|
|
19
|
+
};
|
|
20
|
+
mapping: SearchAreaImageMapping;
|
|
21
|
+
}
|
|
22
|
+
export interface LocateOptions {
|
|
23
|
+
context: UIContext;
|
|
24
|
+
searchConfig?: SearchAreaConfig;
|
|
25
|
+
modelRuntime: ModelRuntime;
|
|
26
|
+
abortSignal?: AbortSignal;
|
|
27
|
+
}
|
|
28
|
+
export interface LocateRequest {
|
|
29
|
+
targetElementDescription: TUserPrompt;
|
|
30
|
+
locateImage: {
|
|
31
|
+
imageBase64: string;
|
|
32
|
+
width: number;
|
|
33
|
+
height: number;
|
|
34
|
+
};
|
|
35
|
+
options: LocateOptions;
|
|
36
|
+
}
|
|
37
|
+
export interface LocateResult {
|
|
38
|
+
parseResult: {
|
|
39
|
+
element?: LocateResultElement;
|
|
40
|
+
errors?: string[];
|
|
41
|
+
};
|
|
42
|
+
rect?: Rect;
|
|
43
|
+
rawResponse: string;
|
|
44
|
+
rawChoiceMessage?: unknown;
|
|
45
|
+
usage?: AIUsageInfo;
|
|
46
|
+
reasoning_content?: string;
|
|
47
|
+
}
|
|
48
|
+
export interface LocateModelResponse {
|
|
49
|
+
locatedPixelBbox?: PixelBbox;
|
|
50
|
+
rawResponse: string;
|
|
51
|
+
rawChoiceMessage?: unknown;
|
|
52
|
+
usage?: AIUsageInfo;
|
|
53
|
+
reasoningContent?: string;
|
|
54
|
+
errors?: string[];
|
|
55
|
+
}
|
|
56
|
+
export type LocateFn = (locateRequest: LocateRequest) => Promise<LocateModelResponse>;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { type TUserPrompt } from '../../../common';
|
|
2
|
+
import type { ChatCompletionSystemMessageParam, ChatCompletionUserMessageParam } from 'openai/resources/index';
|
|
3
|
+
import { type ImagePreprocessPolicy, type PreparedModelImage } from '../../model-adapter/image-preprocess';
|
|
4
|
+
import type { LocateUserMessageContentOrder } from '../../model-adapter/types';
|
|
5
|
+
import type { ModelRuntime } from '../../models';
|
|
6
|
+
export type GroundingAIArgs = [
|
|
7
|
+
ChatCompletionSystemMessageParam,
|
|
8
|
+
...ChatCompletionUserMessageParam[]
|
|
9
|
+
];
|
|
10
|
+
export declare function prepareLocateModelInput({ locateImage, targetDescription, systemPrompt, userPrompt, imagePreprocess, userMessageContentOrder, }: {
|
|
11
|
+
locateImage: {
|
|
12
|
+
imageBase64: string;
|
|
13
|
+
width: number;
|
|
14
|
+
height: number;
|
|
15
|
+
};
|
|
16
|
+
targetDescription: TUserPrompt;
|
|
17
|
+
systemPrompt: string;
|
|
18
|
+
userPrompt: string;
|
|
19
|
+
imagePreprocess: ImagePreprocessPolicy;
|
|
20
|
+
userMessageContentOrder: LocateUserMessageContentOrder;
|
|
21
|
+
}): Promise<{
|
|
22
|
+
messages: GroundingAIArgs;
|
|
23
|
+
preparedImage: PreparedModelImage;
|
|
24
|
+
}>;
|
|
25
|
+
export declare function formatLocateModelContext(modelRuntime: ModelRuntime): string;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { ServiceExtractOption, UIContext } from '../../../types';
|
|
2
|
+
import type { TMultimodalPrompt } from '../../../common';
|
|
3
|
+
import type { ModelRuntime } from '../../models';
|
|
4
|
+
export declare function AiExtractElementInfo<T>(options: {
|
|
5
|
+
dataQuery: string | Record<string, string>;
|
|
6
|
+
multimodalPrompt?: TMultimodalPrompt;
|
|
7
|
+
context: UIContext;
|
|
8
|
+
pageDescription?: string;
|
|
9
|
+
extractOption?: ServiceExtractOption;
|
|
10
|
+
modelRuntime: ModelRuntime;
|
|
11
|
+
abortSignal?: AbortSignal;
|
|
12
|
+
}): Promise<{
|
|
13
|
+
parseResult: import("../../../types").AIDataExtractionResponse<T>;
|
|
14
|
+
rawResponse: string;
|
|
15
|
+
rawChoiceMessage: unknown;
|
|
16
|
+
usage: import("../../../types").AIUsageInfo | undefined;
|
|
17
|
+
reasoning_content: string | undefined;
|
|
18
|
+
}>;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { AIDataExtractionResponse } from '../../../types';
|
|
2
|
+
import type { InsightDataOutputProtocol } from '../../model-adapter/insight-protocol';
|
|
3
|
+
import type { JsonParser } from '../../shared/json';
|
|
4
|
+
export declare function parseInsightResponse<T>(content: string, dataOutputProtocol: InsightDataOutputProtocol, jsonParser: JsonParser): AIDataExtractionResponse<T>;
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import type { SubGoal } from '../../../types';
|
|
2
|
+
import type { ChatCompletionMessageParam } from 'openai/resources/index';
|
|
3
|
+
export interface ConversationHistoryOptions {
|
|
4
|
+
initialMessages?: ChatCompletionMessageParam[];
|
|
5
|
+
}
|
|
6
|
+
export declare class ConversationHistory {
|
|
7
|
+
private readonly messages;
|
|
8
|
+
private subGoals;
|
|
9
|
+
private memories;
|
|
10
|
+
private historicalLogs;
|
|
11
|
+
pendingFeedbackMessage: string;
|
|
12
|
+
constructor(options?: ConversationHistoryOptions);
|
|
13
|
+
resetPendingFeedbackMessageIfExists(): void;
|
|
14
|
+
append(message: ChatCompletionMessageParam): void;
|
|
15
|
+
seed(messages: ChatCompletionMessageParam[]): void;
|
|
16
|
+
reset(): void;
|
|
17
|
+
/**
|
|
18
|
+
* Snapshot the conversation history, and replace the images with text if the number of images exceeds the limit.
|
|
19
|
+
* @param maxImages - The maximum number of images to include in the snapshot. Undefined means no limit.
|
|
20
|
+
* @returns The snapshot of the conversation history.
|
|
21
|
+
*/
|
|
22
|
+
snapshot(maxImages?: number): ChatCompletionMessageParam[];
|
|
23
|
+
get length(): number;
|
|
24
|
+
[Symbol.iterator](): IterableIterator<ChatCompletionMessageParam>;
|
|
25
|
+
toJSON(): ChatCompletionMessageParam[];
|
|
26
|
+
/**
|
|
27
|
+
* Set all sub-goals, replacing any existing ones.
|
|
28
|
+
* Automatically marks the first pending goal as running.
|
|
29
|
+
*/
|
|
30
|
+
setSubGoals(subGoals: SubGoal[]): void;
|
|
31
|
+
/**
|
|
32
|
+
* Merge sub-goals from update-plan-content.
|
|
33
|
+
* Preserves existing descriptions when incoming description is empty.
|
|
34
|
+
*
|
|
35
|
+
* This handles compact XML updates like:
|
|
36
|
+
* <sub-goal index="1" status="finished" />
|
|
37
|
+
*/
|
|
38
|
+
mergeSubGoals(subGoals: SubGoal[]): void;
|
|
39
|
+
/**
|
|
40
|
+
* Update a single sub-goal by index.
|
|
41
|
+
* Clears logs if status or description actually changes.
|
|
42
|
+
* @returns true if the sub-goal was found and updated, false otherwise
|
|
43
|
+
*/
|
|
44
|
+
updateSubGoal(index: number, updates: Partial<Omit<SubGoal, 'index'>>): boolean;
|
|
45
|
+
/**
|
|
46
|
+
* Mark the first pending sub-goal as running.
|
|
47
|
+
* Clears logs since status changes.
|
|
48
|
+
*/
|
|
49
|
+
markFirstPendingAsRunning(): void;
|
|
50
|
+
/**
|
|
51
|
+
* Mark a sub-goal as finished.
|
|
52
|
+
* Automatically marks the next pending goal as running.
|
|
53
|
+
* @returns true if the sub-goal was found and updated, false otherwise
|
|
54
|
+
*/
|
|
55
|
+
markSubGoalFinished(index: number): boolean;
|
|
56
|
+
/**
|
|
57
|
+
* Mark all sub-goals as finished.
|
|
58
|
+
* Clears logs for any goal whose status actually changes.
|
|
59
|
+
*/
|
|
60
|
+
markAllSubGoalsFinished(): void;
|
|
61
|
+
/**
|
|
62
|
+
* Append a log entry to the currently running sub-goal.
|
|
63
|
+
* The log describes an action performed while working on the sub-goal.
|
|
64
|
+
*/
|
|
65
|
+
appendSubGoalLog(log: string): void;
|
|
66
|
+
/**
|
|
67
|
+
* Convert sub-goals to text representation.
|
|
68
|
+
* Includes actions performed (logs) for the current sub-goal.
|
|
69
|
+
*/
|
|
70
|
+
subGoalsToText(): string;
|
|
71
|
+
/**
|
|
72
|
+
* Append a log entry to the historical logs list.
|
|
73
|
+
* Used in non-deepThink mode to track executed steps across planning rounds.
|
|
74
|
+
*/
|
|
75
|
+
appendHistoricalLog(log: string): void;
|
|
76
|
+
/**
|
|
77
|
+
* Convert historical logs to text representation.
|
|
78
|
+
* Provides context about previously executed steps to the model.
|
|
79
|
+
*/
|
|
80
|
+
historicalLogsToText(): string;
|
|
81
|
+
/**
|
|
82
|
+
* Append a memory to the memories list
|
|
83
|
+
*/
|
|
84
|
+
appendMemory(memory: string): void;
|
|
85
|
+
/**
|
|
86
|
+
* Get all memories
|
|
87
|
+
*/
|
|
88
|
+
getMemories(): string[];
|
|
89
|
+
/**
|
|
90
|
+
* Convert memories to text representation
|
|
91
|
+
*/
|
|
92
|
+
memoriesToText(): string;
|
|
93
|
+
/**
|
|
94
|
+
* Clear all memories
|
|
95
|
+
*/
|
|
96
|
+
clearMemories(): void;
|
|
97
|
+
/**
|
|
98
|
+
* Compress the conversation history if it exceeds the threshold.
|
|
99
|
+
* Removes the oldest messages and replaces them with a single placeholder message.
|
|
100
|
+
* @param threshold - The number of messages that triggers compression.
|
|
101
|
+
* @param keepCount - The number of recent messages to keep after compression.
|
|
102
|
+
* @returns true if compression was performed, false otherwise.
|
|
103
|
+
*/
|
|
104
|
+
compressHistory(threshold: number, keepCount: number): boolean;
|
|
105
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { PlanningAIResponse } from '../../../types';
|
|
2
|
+
import type { ChatCompletionMessageParam } from 'openai/resources/index';
|
|
3
|
+
import type { CustomPlanningInput, CustomPlanningMessageConfig, ResolvedCustomPlanningDefinition } from '../../model-adapter/custom-planning-types';
|
|
4
|
+
import { type PreparedUserPrompt } from '../../shared/multimodal-prompt';
|
|
5
|
+
import type { PlanOptions } from './types';
|
|
6
|
+
export declare function buildCustomPlanningMessages<TParsed>(input: CustomPlanningInput, config: CustomPlanningMessageConfig<TParsed>): ChatCompletionMessageParam[];
|
|
7
|
+
export declare function runCustomPlanning<TParsed>(userInstruction: PreparedUserPrompt, options: PlanOptions, config: ResolvedCustomPlanningDefinition<TParsed>): Promise<PlanningAIResponse>;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { DeviceAction } from '../../../device';
|
|
2
|
+
import type { PlanningAction } from '../../../types';
|
|
3
|
+
import type { ParsedPlanningLocateParameter } from '../../model-adapter/planning-protocol';
|
|
4
|
+
import type { LocateResultCodec, LocateResultContext } from '../../shared/model-locate-result/types';
|
|
5
|
+
export declare function normalizePlanningActionLocateFields(actions: PlanningAction[], { actionSpace, includeLocateInPlanning, locateResultCodec, locateResultContext, acceptBbox2dAlias, parseRawLocateParameter, }: {
|
|
6
|
+
actionSpace: DeviceAction[];
|
|
7
|
+
includeLocateInPlanning: boolean;
|
|
8
|
+
locateResultCodec?: LocateResultCodec;
|
|
9
|
+
locateResultContext: LocateResultContext;
|
|
10
|
+
acceptBbox2dAlias?: boolean;
|
|
11
|
+
parseRawLocateParameter: (value: unknown) => ParsedPlanningLocateParameter;
|
|
12
|
+
}): void;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { DeviceAction, RawResponsePlanningAIResponse, SubGoal } from '../../../types';
|
|
2
|
+
import type { PlanningActionOutputProtocol } from '../../model-adapter/planning-protocol';
|
|
3
|
+
/**
|
|
4
|
+
* Parse sub-goals from XML content.
|
|
5
|
+
* Handles both formats:
|
|
6
|
+
* - <sub-goal index="1" status="pending">description</sub-goal>
|
|
7
|
+
* - <sub-goal index="1" status="finished" />
|
|
8
|
+
*/
|
|
9
|
+
export declare function parseSubGoalsFromXML(xmlContent: string): SubGoal[];
|
|
10
|
+
/**
|
|
11
|
+
* Extract indexes of sub-goals marked as finished from
|
|
12
|
+
* <mark-sub-goal-done> content.
|
|
13
|
+
*/
|
|
14
|
+
export declare function parseMarkFinishedIndexes(xmlContent: string): number[];
|
|
15
|
+
type XMLPlanningResponse = Omit<RawResponsePlanningAIResponse, 'action'>;
|
|
16
|
+
type XMLPlanningResponseParseResult = {
|
|
17
|
+
parsed: XMLPlanningResponse;
|
|
18
|
+
rawActionOutput: string;
|
|
19
|
+
};
|
|
20
|
+
/** Parse common XML fields and retain the raw action-protocol XML. */
|
|
21
|
+
export declare function parseXMLPlanningResponse(xmlString: string, actionOutputTagNames: PlanningActionOutputProtocol['actionOutputTagNames'], options: {
|
|
22
|
+
includeThought: boolean;
|
|
23
|
+
}): XMLPlanningResponseParseResult;
|
|
24
|
+
type ParseStandardPlanningResponseOptions = {
|
|
25
|
+
includeThought: boolean;
|
|
26
|
+
actionOutputProtocol: PlanningActionOutputProtocol;
|
|
27
|
+
actionSpace: DeviceAction<any>[];
|
|
28
|
+
logSource?: 'model' | 'action';
|
|
29
|
+
};
|
|
30
|
+
export declare function parseStandardPlanningResponse(xmlString: string, options: ParseStandardPlanningResponseOptions): RawResponsePlanningAIResponse;
|
|
31
|
+
export {};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { PlanningAIResponse } from '../../../types';
|
|
2
|
+
import { type PreparedUserPrompt } from '../../shared/multimodal-prompt';
|
|
3
|
+
import type { PlanOptions } from './types';
|
|
4
|
+
export declare function standardPlan(userInstruction: PreparedUserPrompt, opts: PlanOptions): Promise<PlanningAIResponse>;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { AiActEffort, DeviceAction, PlanningAIResponse, UIContext } from '../../../types';
|
|
2
|
+
import type { ModelRuntime } from '../../models';
|
|
3
|
+
import type { PreparedUserPrompt } from '../../shared/multimodal-prompt';
|
|
4
|
+
import type { ConversationHistory } from './conversation-history';
|
|
5
|
+
export interface PlanOptions {
|
|
6
|
+
context: UIContext;
|
|
7
|
+
actionSpace: DeviceAction<any>[];
|
|
8
|
+
actionContext?: string;
|
|
9
|
+
modelRuntime: ModelRuntime;
|
|
10
|
+
conversationHistory: ConversationHistory;
|
|
11
|
+
includeLocateInPlanning: boolean;
|
|
12
|
+
imagesIncludeCount?: number;
|
|
13
|
+
effort: AiActEffort;
|
|
14
|
+
abortSignal?: AbortSignal;
|
|
15
|
+
}
|
|
16
|
+
export type PlanFn = (userInstruction: PreparedUserPrompt, options: PlanOptions) => Promise<PlanningAIResponse>;
|