@roackb2/heddle 1.5.0 → 1.6.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/dist/examples/conversation-engine.js +10 -10
- package/dist/examples/conversation-engine.js.map +1 -1
- package/dist/examples/heartbeat-scheduler.js +2 -2
- package/dist/examples/heartbeat-scheduler.js.map +1 -1
- package/dist/examples/heartbeat.js +2 -2
- package/dist/examples/heartbeat.js.map +1 -1
- package/dist/examples/programmatic-loop.js +2 -2
- package/dist/examples/programmatic-loop.js.map +1 -1
- package/dist/examples/repo-investigator.js +3 -3
- package/dist/examples/repo-investigator.js.map +1 -1
- package/dist/src/cli/ask.js +2 -2
- package/dist/src/cli/ask.js.map +1 -1
- package/dist/src/cli/auth.d.ts +14 -7
- package/dist/src/cli/auth.d.ts.map +1 -1
- package/dist/src/cli/auth.js +75 -70
- package/dist/src/cli/auth.js.map +1 -1
- package/dist/src/cli/chat/adapters/conversation-activity-adapter.d.ts +1 -1
- package/dist/src/cli/chat/adapters/conversation-activity-adapter.d.ts.map +1 -1
- package/dist/src/cli/chat/adapters/conversation-activity-adapter.js +29 -19
- package/dist/src/cli/chat/adapters/conversation-activity-adapter.js.map +1 -1
- package/dist/src/cli/chat/adapters/slash-command-context.js +4 -4
- package/dist/src/cli/chat/adapters/slash-command-context.js.map +1 -1
- package/dist/src/cli/chat/components/ModelPickerPanel.d.ts +1 -1
- package/dist/src/cli/chat/components/ModelPickerPanel.js +1 -1
- package/dist/src/cli/chat/debug/tui-debug-snapshot.d.ts +1 -1
- package/dist/src/cli/chat/debug/tui-debug-snapshot.js +1 -1
- package/dist/src/cli/chat/hooks/controllers/run/tui-direct-shell-result.js +3 -3
- package/dist/src/cli/chat/hooks/controllers/run/tui-direct-shell-result.js.map +1 -1
- package/dist/src/cli/chat/hooks/controllers/run/tui-direct-shell.js +2 -2
- package/dist/src/cli/chat/hooks/controllers/run/tui-direct-shell.js.map +1 -1
- package/dist/src/cli/chat/hooks/controllers/run/tui-run-loop-events.d.ts.map +1 -1
- package/dist/src/cli/chat/hooks/controllers/run/tui-run-loop-events.js +3 -3
- package/dist/src/cli/chat/hooks/controllers/run/tui-run-loop-events.js.map +1 -1
- package/dist/src/cli/chat/hooks/controllers/useAgentRunController.d.ts.map +1 -1
- package/dist/src/cli/chat/hooks/controllers/useAgentRunController.js +16 -6
- package/dist/src/cli/chat/hooks/controllers/useAgentRunController.js.map +1 -1
- package/dist/src/cli/chat/hooks/controllers/useChatAppController.d.ts.map +1 -1
- package/dist/src/cli/chat/hooks/controllers/useChatAppController.js +9 -10
- package/dist/src/cli/chat/hooks/controllers/useChatAppController.js.map +1 -1
- package/dist/src/cli/chat/hooks/controllers/usePromptSubmissionController.d.ts +1 -1
- package/dist/src/cli/chat/hooks/useChatPickers.d.ts +1 -1
- package/dist/src/cli/chat/hooks/useChatPickers.d.ts.map +1 -1
- package/dist/src/cli/chat/hooks/useChatPickers.js +7 -8
- package/dist/src/cli/chat/hooks/useChatPickers.js.map +1 -1
- package/dist/src/cli/chat/hooks/useChatStatusSummary.d.ts.map +1 -1
- package/dist/src/cli/chat/hooks/useChatStatusSummary.js +3 -4
- package/dist/src/cli/chat/hooks/useChatStatusSummary.js.map +1 -1
- package/dist/src/cli/chat/state/local-commands.d.ts +1 -1
- package/dist/src/cli/chat/state/local-commands.d.ts.map +1 -1
- package/dist/src/cli/chat/utils/format.d.ts +0 -1
- package/dist/src/cli/chat/utils/format.d.ts.map +1 -1
- package/dist/src/cli/chat/utils/format.js +0 -1
- package/dist/src/cli/chat/utils/format.js.map +1 -1
- package/dist/src/cli/chat/utils/runtime.js +4 -4
- package/dist/src/cli/chat/utils/runtime.js.map +1 -1
- package/dist/src/cli/main.js +10 -7
- package/dist/src/cli/main.js.map +1 -1
- package/dist/src/cli/remote/control-plane-client.d.ts +2 -2
- package/dist/src/core/approvals/remembered-rules/schemas.d.ts +3 -3
- package/dist/src/core/auth/index.d.ts +4 -0
- package/dist/src/core/auth/index.d.ts.map +1 -0
- package/dist/src/core/auth/index.js +3 -0
- package/dist/src/core/auth/index.js.map +1 -0
- package/dist/src/core/auth/openai-oauth.d.ts +41 -61
- package/dist/src/core/auth/openai-oauth.d.ts.map +1 -1
- package/dist/src/core/auth/openai-oauth.js +264 -258
- package/dist/src/core/auth/openai-oauth.js.map +1 -1
- package/dist/src/core/auth/provider-credentials.d.ts +23 -51
- package/dist/src/core/auth/provider-credentials.d.ts.map +1 -1
- package/dist/src/core/auth/provider-credentials.js +69 -134
- package/dist/src/core/auth/provider-credentials.js.map +1 -1
- package/dist/src/core/auth/schemas.d.ts +54 -0
- package/dist/src/core/auth/schemas.d.ts.map +1 -0
- package/dist/src/core/auth/schemas.js +63 -0
- package/dist/src/core/auth/schemas.js.map +1 -0
- package/dist/src/core/auth/types.d.ts +80 -0
- package/dist/src/core/auth/types.d.ts.map +1 -0
- package/dist/src/core/auth/types.js +2 -0
- package/dist/src/core/auth/types.js.map +1 -0
- package/dist/src/core/chat/engine/compaction/service.js +2 -2
- package/dist/src/core/chat/engine/compaction/service.js.map +1 -1
- package/dist/src/core/chat/engine/compaction/summarizer/service.d.ts.map +1 -1
- package/dist/src/core/chat/engine/compaction/summarizer/service.js +9 -6
- package/dist/src/core/chat/engine/compaction/summarizer/service.js.map +1 -1
- package/dist/src/core/chat/engine/compaction/transcript-renderer.js +2 -2
- package/dist/src/core/chat/engine/compaction/transcript-renderer.js.map +1 -1
- package/dist/src/core/chat/engine/config.d.ts +2 -2
- package/dist/src/core/chat/engine/config.d.ts.map +1 -1
- package/dist/src/core/chat/engine/sessions/preferences/service.js +3 -3
- package/dist/src/core/chat/engine/sessions/preferences/service.js.map +1 -1
- package/dist/src/core/chat/engine/sessions/records/records.js +3 -3
- package/dist/src/core/chat/engine/sessions/records/records.js.map +1 -1
- package/dist/src/core/chat/engine/sessions/records/types.d.ts +2 -2
- package/dist/src/core/chat/engine/sessions/records/types.d.ts.map +1 -1
- package/dist/src/core/chat/engine/turns/host/host-normalizer.d.ts.map +1 -1
- package/dist/src/core/chat/engine/turns/host/host-normalizer.js +4 -4
- package/dist/src/core/chat/engine/turns/host/host-normalizer.js.map +1 -1
- package/dist/src/core/chat/engine/turns/memory/turn-memory-maintenance.js +2 -2
- package/dist/src/core/chat/engine/turns/memory/turn-memory-maintenance.js.map +1 -1
- package/dist/src/core/chat/engine/turns/persistence/types.d.ts +3 -3
- package/dist/src/core/chat/engine/turns/persistence/types.d.ts.map +1 -1
- package/dist/src/core/chat/engine/turns/runtime/runtime-resolver.d.ts.map +1 -1
- package/dist/src/core/chat/engine/turns/runtime/runtime-resolver.js +10 -7
- package/dist/src/core/chat/engine/turns/runtime/runtime-resolver.js.map +1 -1
- package/dist/src/core/chat/engine/turns/types.d.ts +2 -3
- package/dist/src/core/chat/engine/turns/types.d.ts.map +1 -1
- package/dist/src/core/chat/engine/types.d.ts +4 -5
- package/dist/src/core/chat/engine/types.d.ts.map +1 -1
- package/dist/src/core/commands/slash/modules/model/model-commands.d.ts.map +1 -1
- package/dist/src/core/commands/slash/modules/model/model-commands.js +6 -7
- package/dist/src/core/commands/slash/modules/model/model-commands.js.map +1 -1
- package/dist/src/core/llm/adapters/anthropic/anthropic-adapter.d.ts +21 -0
- package/dist/src/core/llm/adapters/anthropic/anthropic-adapter.d.ts.map +1 -0
- package/dist/src/core/llm/adapters/anthropic/anthropic-adapter.js +66 -0
- package/dist/src/core/llm/adapters/anthropic/anthropic-adapter.js.map +1 -0
- package/dist/src/core/llm/adapters/anthropic/anthropic-codec.d.ts +16 -0
- package/dist/src/core/llm/adapters/anthropic/anthropic-codec.d.ts.map +1 -0
- package/dist/src/core/llm/adapters/anthropic/anthropic-codec.js +64 -0
- package/dist/src/core/llm/adapters/anthropic/anthropic-codec.js.map +1 -0
- package/dist/src/core/llm/adapters/anthropic/anthropic-provider-adapter.d.ts +17 -0
- package/dist/src/core/llm/adapters/anthropic/anthropic-provider-adapter.d.ts.map +1 -0
- package/dist/src/core/llm/adapters/anthropic/anthropic-provider-adapter.js +20 -0
- package/dist/src/core/llm/adapters/anthropic/anthropic-provider-adapter.js.map +1 -0
- package/dist/src/core/llm/adapters/anthropic/index.d.ts +4 -0
- package/dist/src/core/llm/adapters/anthropic/index.d.ts.map +1 -0
- package/dist/src/core/llm/adapters/anthropic/index.js +3 -0
- package/dist/src/core/llm/adapters/anthropic/index.js.map +1 -0
- package/dist/src/core/llm/adapters/openai/index.d.ts +4 -0
- package/dist/src/core/llm/adapters/openai/index.d.ts.map +1 -0
- package/dist/src/core/llm/adapters/openai/index.js +3 -0
- package/dist/src/core/llm/adapters/openai/index.js.map +1 -0
- package/dist/src/core/llm/adapters/openai/openai-adapter.d.ts +53 -0
- package/dist/src/core/llm/adapters/openai/openai-adapter.d.ts.map +1 -0
- package/dist/src/core/llm/adapters/openai/openai-adapter.js +266 -0
- package/dist/src/core/llm/adapters/openai/openai-adapter.js.map +1 -0
- package/dist/src/core/llm/adapters/openai/openai-codec.d.ts +41 -0
- package/dist/src/core/llm/adapters/openai/openai-codec.d.ts.map +1 -0
- package/dist/src/core/llm/adapters/openai/openai-codec.js +169 -0
- package/dist/src/core/llm/adapters/openai/openai-codec.js.map +1 -0
- package/dist/src/core/llm/adapters/openai/openai-provider-adapter.d.ts +17 -0
- package/dist/src/core/llm/adapters/openai/openai-provider-adapter.d.ts.map +1 -0
- package/dist/src/core/llm/adapters/openai/openai-provider-adapter.js +20 -0
- package/dist/src/core/llm/adapters/openai/openai-provider-adapter.js.map +1 -0
- package/dist/src/core/llm/index.d.ts +9 -0
- package/dist/src/core/llm/index.d.ts.map +1 -0
- package/dist/src/core/llm/index.js +5 -0
- package/dist/src/core/llm/index.js.map +1 -0
- package/dist/src/core/llm/models/index.d.ts +5 -0
- package/dist/src/core/llm/models/index.d.ts.map +1 -0
- package/dist/src/core/llm/models/index.js +3 -0
- package/dist/src/core/llm/models/index.js.map +1 -0
- package/dist/src/core/llm/models/model-catalog.d.ts +23 -0
- package/dist/src/core/llm/models/model-catalog.d.ts.map +1 -0
- package/dist/src/core/llm/models/model-catalog.js +132 -0
- package/dist/src/core/llm/models/model-catalog.js.map +1 -0
- package/dist/src/core/llm/models/model-policy-service.d.ts +70 -0
- package/dist/src/core/llm/models/model-policy-service.d.ts.map +1 -0
- package/dist/src/core/llm/models/model-policy-service.js +137 -0
- package/dist/src/core/llm/models/model-policy-service.js.map +1 -0
- package/dist/src/core/llm/registry/builtin-llm-providers.d.ts +5 -0
- package/dist/src/core/llm/registry/builtin-llm-providers.d.ts.map +1 -0
- package/dist/src/core/llm/registry/builtin-llm-providers.js +16 -0
- package/dist/src/core/llm/registry/builtin-llm-providers.js.map +1 -0
- package/dist/src/core/llm/registry/index.d.ts +5 -0
- package/dist/src/core/llm/registry/index.d.ts.map +1 -0
- package/dist/src/core/llm/registry/index.js +4 -0
- package/dist/src/core/llm/registry/index.js.map +1 -0
- package/dist/src/core/llm/registry/llm-provider-registry.d.ts +17 -0
- package/dist/src/core/llm/registry/llm-provider-registry.d.ts.map +1 -0
- package/dist/src/core/llm/registry/llm-provider-registry.js +51 -0
- package/dist/src/core/llm/registry/llm-provider-registry.js.map +1 -0
- package/dist/src/core/llm/registry/provider-inference.d.ts +18 -0
- package/dist/src/core/llm/registry/provider-inference.d.ts.map +1 -0
- package/dist/src/core/llm/registry/provider-inference.js +41 -0
- package/dist/src/core/llm/registry/provider-inference.js.map +1 -0
- package/dist/src/core/llm/registry/types.d.ts +16 -0
- package/dist/src/core/llm/registry/types.d.ts.map +1 -0
- package/dist/src/core/llm/registry/types.js +2 -0
- package/dist/src/core/llm/registry/types.js.map +1 -0
- package/dist/src/core/llm/service.d.ts +15 -0
- package/dist/src/core/llm/service.d.ts.map +1 -0
- package/dist/src/core/llm/service.js +44 -0
- package/dist/src/core/llm/service.js.map +1 -0
- package/dist/src/core/llm/types.d.ts +18 -1
- package/dist/src/core/llm/types.d.ts.map +1 -1
- package/dist/src/core/observability/activity/conversation-activity-projector.d.ts +24 -0
- package/dist/src/core/observability/activity/conversation-activity-projector.d.ts.map +1 -0
- package/dist/src/core/observability/activity/conversation-activity-projector.js +146 -0
- package/dist/src/core/observability/activity/conversation-activity-projector.js.map +1 -0
- package/dist/src/core/observability/activity/index.d.ts +4 -0
- package/dist/src/core/observability/activity/index.d.ts.map +1 -0
- package/dist/src/core/observability/activity/index.js +3 -0
- package/dist/src/core/observability/activity/index.js.map +1 -0
- package/dist/src/core/observability/activity/tool-activity-summarizer.d.ts +15 -0
- package/dist/src/core/observability/activity/tool-activity-summarizer.d.ts.map +1 -0
- package/dist/src/core/observability/activity/tool-activity-summarizer.js +92 -0
- package/dist/src/core/observability/activity/tool-activity-summarizer.js.map +1 -0
- package/dist/src/core/observability/activity/types.d.ts +87 -0
- package/dist/src/core/observability/activity/types.d.ts.map +1 -0
- package/dist/src/core/observability/activity/types.js +2 -0
- package/dist/src/core/observability/activity/types.js.map +1 -0
- package/dist/src/core/observability/index.d.ts +6 -0
- package/dist/src/core/observability/index.d.ts.map +1 -0
- package/dist/src/core/observability/index.js +4 -0
- package/dist/src/core/observability/index.js.map +1 -0
- package/dist/src/core/observability/semantics/index.d.ts +2 -0
- package/dist/src/core/observability/semantics/index.d.ts.map +1 -0
- package/dist/src/core/observability/semantics/index.js +2 -0
- package/dist/src/core/observability/semantics/index.js.map +1 -0
- package/dist/src/core/observability/{semantic-conventions.d.ts → semantics/trace-semantics.d.ts} +1 -1
- package/dist/src/core/observability/semantics/trace-semantics.d.ts.map +1 -0
- package/dist/src/core/observability/{semantic-conventions.js → semantics/trace-semantics.js} +1 -1
- package/dist/src/core/observability/semantics/trace-semantics.js.map +1 -0
- package/dist/src/core/observability/summaries/default-trace-summarizers.d.ts +3 -0
- package/dist/src/core/observability/summaries/default-trace-summarizers.d.ts.map +1 -0
- package/dist/src/core/observability/summaries/default-trace-summarizers.js +29 -0
- package/dist/src/core/observability/summaries/default-trace-summarizers.js.map +1 -0
- package/dist/src/core/observability/summaries/index.d.ts +4 -0
- package/dist/src/core/observability/summaries/index.d.ts.map +1 -0
- package/dist/src/core/observability/summaries/index.js +3 -0
- package/dist/src/core/observability/summaries/index.js.map +1 -0
- package/dist/src/core/observability/summaries/trace-summary-service.d.ts +17 -0
- package/dist/src/core/observability/summaries/trace-summary-service.d.ts.map +1 -0
- package/dist/src/core/observability/summaries/trace-summary-service.js +32 -0
- package/dist/src/core/observability/summaries/trace-summary-service.js.map +1 -0
- package/dist/src/core/observability/summaries/types.d.ts +15 -0
- package/dist/src/core/observability/summaries/types.d.ts.map +1 -0
- package/dist/src/core/observability/summaries/types.js +2 -0
- package/dist/src/core/observability/summaries/types.js.map +1 -0
- package/dist/src/core/runtime/credentials/service.d.ts +1 -1
- package/dist/src/core/runtime/credentials/service.d.ts.map +1 -1
- package/dist/src/core/runtime/credentials/service.js +8 -6
- package/dist/src/core/runtime/credentials/service.js.map +1 -1
- package/dist/src/core/runtime/loop/service.d.ts.map +1 -1
- package/dist/src/core/runtime/loop/service.js +14 -6
- package/dist/src/core/runtime/loop/service.js.map +1 -1
- package/dist/src/core/tools/toolkits/external-context/view-image.d.ts.map +1 -1
- package/dist/src/core/tools/toolkits/external-context/view-image.js +15 -9
- package/dist/src/core/tools/toolkits/external-context/view-image.js.map +1 -1
- package/dist/src/core/tools/toolkits/external-context/web-search.d.ts.map +1 -1
- package/dist/src/core/tools/toolkits/external-context/web-search.js +15 -9
- package/dist/src/core/tools/toolkits/external-context/web-search.js.map +1 -1
- package/dist/src/index.d.ts +8 -14
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +4 -7
- package/dist/src/index.js.map +1 -1
- package/dist/src/server/features/control-plane/controllers/ask.d.ts.map +1 -1
- package/dist/src/server/features/control-plane/controllers/ask.js +5 -2
- package/dist/src/server/features/control-plane/controllers/ask.js.map +1 -1
- package/dist/src/server/features/control-plane/controllers/chat-sessions-controller.js +5 -5
- package/dist/src/server/features/control-plane/controllers/chat-sessions-controller.js.map +1 -1
- package/dist/src/server/features/control-plane/router.d.ts +2 -2
- package/dist/src/server/features/control-plane/router.d.ts.map +1 -1
- package/dist/src/server/features/control-plane/router.js +5 -6
- package/dist/src/server/features/control-plane/router.js.map +1 -1
- package/dist/src/server/router.d.ts +2 -2
- package/dist/src/web/assets/{MonacoDiffViewer-F3AOHIps.js → MonacoDiffViewer-D_Fh9ndN.js} +1 -1
- package/dist/src/web/assets/index-B1wQ0pS4.js +87 -0
- package/dist/src/web/index.html +1 -1
- package/package.json +1 -1
- package/dist/src/core/llm/anthropic.d.ts +0 -7
- package/dist/src/core/llm/anthropic.d.ts.map +0 -1
- package/dist/src/core/llm/anthropic.js +0 -115
- package/dist/src/core/llm/anthropic.js.map +0 -1
- package/dist/src/core/llm/factory.d.ts +0 -14
- package/dist/src/core/llm/factory.d.ts.map +0 -1
- package/dist/src/core/llm/factory.js +0 -46
- package/dist/src/core/llm/factory.js.map +0 -1
- package/dist/src/core/llm/model-policy.d.ts +0 -63
- package/dist/src/core/llm/model-policy.d.ts.map +0 -1
- package/dist/src/core/llm/model-policy.js +0 -131
- package/dist/src/core/llm/model-policy.js.map +0 -1
- package/dist/src/core/llm/openai-models.d.ts +0 -17
- package/dist/src/core/llm/openai-models.d.ts.map +0 -1
- package/dist/src/core/llm/openai-models.js +0 -127
- package/dist/src/core/llm/openai-models.js.map +0 -1
- package/dist/src/core/llm/openai.d.ts +0 -31
- package/dist/src/core/llm/openai.d.ts.map +0 -1
- package/dist/src/core/llm/openai.js +0 -405
- package/dist/src/core/llm/openai.js.map +0 -1
- package/dist/src/core/llm/providers.d.ts +0 -3
- package/dist/src/core/llm/providers.d.ts.map +0 -1
- package/dist/src/core/llm/providers.js +0 -21
- package/dist/src/core/llm/providers.js.map +0 -1
- package/dist/src/core/observability/conversation-activity.d.ts +0 -116
- package/dist/src/core/observability/conversation-activity.d.ts.map +0 -1
- package/dist/src/core/observability/conversation-activity.js +0 -255
- package/dist/src/core/observability/conversation-activity.js.map +0 -1
- package/dist/src/core/observability/semantic-conventions.d.ts.map +0 -1
- package/dist/src/core/observability/semantic-conventions.js.map +0 -1
- package/dist/src/core/observability/trace-summarizers.d.ts +0 -23
- package/dist/src/core/observability/trace-summarizers.d.ts.map +0 -1
- package/dist/src/core/observability/trace-summarizers.js +0 -60
- package/dist/src/core/observability/trace-summarizers.js.map +0 -1
- package/dist/src/web/assets/index-D6aK1OFb.js +0 -81
package/dist/src/web/index.html
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover" />
|
|
6
6
|
<link rel="icon" type="image/svg+xml" href="/favicon.svg" />
|
|
7
7
|
<title>Heddle Control Plane</title>
|
|
8
|
-
<script type="module" crossorigin src="/assets/index-
|
|
8
|
+
<script type="module" crossorigin src="/assets/index-B1wQ0pS4.js"></script>
|
|
9
9
|
<link rel="modulepreload" crossorigin href="/assets/chunk-DECur_0Z.js">
|
|
10
10
|
<link rel="stylesheet" crossorigin href="/assets/index-ab0mDLmz.css">
|
|
11
11
|
</head>
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@roackb2/heddle",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.6.0",
|
|
4
4
|
"description": "An open-source AI coding agent runtime and terminal CLI for real repositories, with persistent memory, sessions, approvals, heartbeat, and a browser control plane",
|
|
5
5
|
"author": "Jay / Fienna Liang <roackb2@gmail.com>",
|
|
6
6
|
"license": "MIT",
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import type { LlmAdapter } from './types.js';
|
|
2
|
-
export type AnthropicAdapterOptions = {
|
|
3
|
-
apiKey?: string;
|
|
4
|
-
model?: string;
|
|
5
|
-
};
|
|
6
|
-
export declare function createAnthropicAdapter(options?: AnthropicAdapterOptions): LlmAdapter;
|
|
7
|
-
//# sourceMappingURL=anthropic.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"anthropic.d.ts","sourceRoot":"","sources":["../../../../src/core/llm/anthropic.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAA8D,MAAM,YAAY,CAAC;AAIzG,MAAM,MAAM,uBAAuB,GAAG;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,wBAAgB,sBAAsB,CAAC,OAAO,GAAE,uBAA4B,GAAG,UAAU,CA2DxF"}
|
|
@@ -1,115 +0,0 @@
|
|
|
1
|
-
import Anthropic from '@anthropic-ai/sdk';
|
|
2
|
-
import { DEFAULT_ANTHROPIC_MODEL } from '../config.js';
|
|
3
|
-
export function createAnthropicAdapter(options = {}) {
|
|
4
|
-
const client = new Anthropic({
|
|
5
|
-
apiKey: firstDefinedNonEmpty(options.apiKey, process.env.ANTHROPIC_API_KEY, process.env.PERSONAL_ANTHROPIC_API_KEY),
|
|
6
|
-
});
|
|
7
|
-
const model = options.model ?? DEFAULT_ANTHROPIC_MODEL;
|
|
8
|
-
const capabilities = {
|
|
9
|
-
toolCalls: true,
|
|
10
|
-
systemMessages: true,
|
|
11
|
-
reasoningSummaries: false,
|
|
12
|
-
parallelToolCalls: false,
|
|
13
|
-
};
|
|
14
|
-
return {
|
|
15
|
-
info: {
|
|
16
|
-
provider: 'anthropic',
|
|
17
|
-
model,
|
|
18
|
-
capabilities,
|
|
19
|
-
},
|
|
20
|
-
async chat(messages, tools, signal) {
|
|
21
|
-
const system = messages
|
|
22
|
-
.filter((message) => message.role === 'system')
|
|
23
|
-
.map((message) => message.content)
|
|
24
|
-
.join('\n\n');
|
|
25
|
-
const anthropicMessages = toAnthropicMessages(messages);
|
|
26
|
-
const response = await client.messages.create({
|
|
27
|
-
model,
|
|
28
|
-
system: system || undefined,
|
|
29
|
-
messages: anthropicMessages,
|
|
30
|
-
tools: tools.length > 0 ? tools.map(toAnthropicTool) : undefined,
|
|
31
|
-
max_tokens: 4096,
|
|
32
|
-
}, { signal });
|
|
33
|
-
const text = response.content
|
|
34
|
-
.flatMap((block) => (block.type === 'text' ? [block.text] : []))
|
|
35
|
-
.join('')
|
|
36
|
-
.trim();
|
|
37
|
-
const toolCalls = response.content.flatMap((block) => {
|
|
38
|
-
if (block.type !== 'tool_use') {
|
|
39
|
-
return [];
|
|
40
|
-
}
|
|
41
|
-
return [{
|
|
42
|
-
id: block.id,
|
|
43
|
-
tool: block.name,
|
|
44
|
-
input: block.input,
|
|
45
|
-
}];
|
|
46
|
-
});
|
|
47
|
-
return {
|
|
48
|
-
content: text || undefined,
|
|
49
|
-
toolCalls: toolCalls.length > 0 ? toolCalls : undefined,
|
|
50
|
-
usage: extractUsage(response.usage),
|
|
51
|
-
};
|
|
52
|
-
},
|
|
53
|
-
};
|
|
54
|
-
}
|
|
55
|
-
function firstDefinedNonEmpty(...values) {
|
|
56
|
-
return values.find((value) => typeof value === 'string' && value.trim().length > 0);
|
|
57
|
-
}
|
|
58
|
-
function toAnthropicMessages(messages) {
|
|
59
|
-
const result = [];
|
|
60
|
-
for (const message of messages) {
|
|
61
|
-
switch (message.role) {
|
|
62
|
-
case 'system':
|
|
63
|
-
break;
|
|
64
|
-
case 'user':
|
|
65
|
-
result.push({ role: 'user', content: message.content });
|
|
66
|
-
break;
|
|
67
|
-
case 'assistant': {
|
|
68
|
-
const content = [];
|
|
69
|
-
if (message.content) {
|
|
70
|
-
content.push({ type: 'text', text: message.content });
|
|
71
|
-
}
|
|
72
|
-
for (const call of message.toolCalls ?? []) {
|
|
73
|
-
content.push({
|
|
74
|
-
type: 'tool_use',
|
|
75
|
-
id: call.id,
|
|
76
|
-
name: call.tool,
|
|
77
|
-
input: call.input,
|
|
78
|
-
});
|
|
79
|
-
}
|
|
80
|
-
result.push({ role: 'assistant', content });
|
|
81
|
-
break;
|
|
82
|
-
}
|
|
83
|
-
case 'tool':
|
|
84
|
-
result.push({
|
|
85
|
-
role: 'user',
|
|
86
|
-
content: [{
|
|
87
|
-
type: 'tool_result',
|
|
88
|
-
tool_use_id: message.toolCallId,
|
|
89
|
-
content: message.content,
|
|
90
|
-
}],
|
|
91
|
-
});
|
|
92
|
-
break;
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
return result;
|
|
96
|
-
}
|
|
97
|
-
function toAnthropicTool(tool) {
|
|
98
|
-
return {
|
|
99
|
-
name: tool.name,
|
|
100
|
-
description: tool.description,
|
|
101
|
-
input_schema: tool.parameters,
|
|
102
|
-
};
|
|
103
|
-
}
|
|
104
|
-
function extractUsage(usage) {
|
|
105
|
-
if (!usage) {
|
|
106
|
-
return undefined;
|
|
107
|
-
}
|
|
108
|
-
return {
|
|
109
|
-
inputTokens: usage.input_tokens,
|
|
110
|
-
outputTokens: usage.output_tokens,
|
|
111
|
-
totalTokens: usage.input_tokens + usage.output_tokens,
|
|
112
|
-
requests: 1,
|
|
113
|
-
};
|
|
114
|
-
}
|
|
115
|
-
//# sourceMappingURL=anthropic.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../../../src/core/llm/anthropic.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import type { LlmAdapter, LlmProvider, ReasoningEffort } from './types.js';
|
|
2
|
-
import type { StoredProviderCredential } from '../auth/provider-credentials.js';
|
|
3
|
-
export type CreateLlmAdapterOptions = {
|
|
4
|
-
provider?: LlmProvider;
|
|
5
|
-
model?: string;
|
|
6
|
-
apiKey?: string;
|
|
7
|
-
credential?: StoredProviderCredential;
|
|
8
|
-
credentialStorePath?: string;
|
|
9
|
-
reasoningEffort?: ReasoningEffort;
|
|
10
|
-
};
|
|
11
|
-
export declare function createLlmAdapter(options?: CreateLlmAdapterOptions): LlmAdapter;
|
|
12
|
-
export declare function resolveLlmProvider(options?: CreateLlmAdapterOptions): LlmProvider;
|
|
13
|
-
export { inferProviderFromModel } from './providers.js';
|
|
14
|
-
//# sourceMappingURL=factory.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../../src/core/llm/factory.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE3E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAGhF,MAAM,MAAM,uBAAuB,GAAG;IACpC,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,wBAAwB,CAAC;IACtC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,OAAO,GAAE,uBAA4B,GAAG,UAAU,CA8BlF;AAED,wBAAgB,kBAAkB,CAAC,OAAO,GAAE,uBAA4B,GAAG,WAAW,CAUrF;AAED,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC"}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
// ---------------------------------------------------------------------------
|
|
2
|
-
// LLM Adapter Factory
|
|
3
|
-
// Provider-neutral adapter selection and capability metadata.
|
|
4
|
-
// ---------------------------------------------------------------------------
|
|
5
|
-
import { DEFAULT_ANTHROPIC_MODEL, DEFAULT_LLM_PROVIDER, DEFAULT_OPENAI_MODEL } from '../config.js';
|
|
6
|
-
import { createAnthropicAdapter } from './anthropic.js';
|
|
7
|
-
import { createOpenAiAdapter } from './openai.js';
|
|
8
|
-
import { inferProviderFromModel } from './providers.js';
|
|
9
|
-
import { RuntimeCredentialService } from '../runtime/credentials/index.js';
|
|
10
|
-
export function createLlmAdapter(options = {}) {
|
|
11
|
-
const provider = resolveLlmProvider(options);
|
|
12
|
-
const model = options.model
|
|
13
|
-
?? (provider === 'anthropic' ? DEFAULT_ANTHROPIC_MODEL : DEFAULT_OPENAI_MODEL);
|
|
14
|
-
const credential = options.credential
|
|
15
|
-
?? (!options.apiKey && provider === 'openai' ? RuntimeCredentialService.resolveOAuthCredentialForModel(model, {
|
|
16
|
-
storePath: options.credentialStorePath,
|
|
17
|
-
}) : undefined);
|
|
18
|
-
switch (provider) {
|
|
19
|
-
case 'openai':
|
|
20
|
-
return createOpenAiAdapter({
|
|
21
|
-
apiKey: options.apiKey,
|
|
22
|
-
model,
|
|
23
|
-
credential,
|
|
24
|
-
credentialStorePath: options.credentialStorePath,
|
|
25
|
-
reasoningEffort: options.reasoningEffort,
|
|
26
|
-
});
|
|
27
|
-
case 'anthropic':
|
|
28
|
-
return createAnthropicAdapter({
|
|
29
|
-
apiKey: options.apiKey,
|
|
30
|
-
model,
|
|
31
|
-
});
|
|
32
|
-
case 'google':
|
|
33
|
-
throw new Error(`Model provider "google" is not wired yet. Add a Gemini adapter before using model ${JSON.stringify(options.model ?? 'gemini')}.`);
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
export function resolveLlmProvider(options = {}) {
|
|
37
|
-
if (options.provider) {
|
|
38
|
-
return options.provider;
|
|
39
|
-
}
|
|
40
|
-
if (options.model) {
|
|
41
|
-
return inferProviderFromModel(options.model);
|
|
42
|
-
}
|
|
43
|
-
return DEFAULT_LLM_PROVIDER;
|
|
44
|
-
}
|
|
45
|
-
export { inferProviderFromModel } from './providers.js';
|
|
46
|
-
//# sourceMappingURL=factory.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"factory.js","sourceRoot":"","sources":["../../../../src/core/llm/factory.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,sBAAsB;AACtB,8DAA8D;AAC9D,8EAA8E;AAE9E,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACnG,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAElD,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAExD,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAW3E,MAAM,UAAU,gBAAgB,CAAC,UAAmC,EAAE;IACpE,MAAM,QAAQ,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAC7C,MAAM,KAAK,GACT,OAAO,CAAC,KAAK;WACV,CAAC,QAAQ,KAAK,WAAW,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC;IACjF,MAAM,UAAU,GACd,OAAO,CAAC,UAAU;WACf,CAAC,CAAC,OAAO,CAAC,MAAM,IAAI,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,wBAAwB,CAAC,8BAA8B,CAAC,KAAK,EAAE;YAC5G,SAAS,EAAE,OAAO,CAAC,mBAAmB;SACvC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAElB,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,QAAQ;YACX,OAAO,mBAAmB,CAAC;gBACzB,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,KAAK;gBACL,UAAU;gBACV,mBAAmB,EAAE,OAAO,CAAC,mBAAmB;gBAChD,eAAe,EAAE,OAAO,CAAC,eAAe;aACzC,CAAC,CAAC;QACL,KAAK,WAAW;YACd,OAAO,sBAAsB,CAAC;gBAC5B,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,KAAK;aACN,CAAC,CAAC;QACL,KAAK,QAAQ;YACX,MAAM,IAAI,KAAK,CACb,qFAAqF,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,IAAI,QAAQ,CAAC,GAAG,CAClI,CAAC;IACN,CAAC;AACH,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,UAAmC,EAAE;IACtE,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QACrB,OAAO,OAAO,CAAC,QAAQ,CAAC;IAC1B,CAAC;IAED,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QAClB,OAAO,sBAAsB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC/C,CAAC;IAED,OAAO,oBAAoB,CAAC;AAC9B,CAAC;AAED,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC"}
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
import type { ProviderCredentialSource } from '../runtime/credentials/index.js';
|
|
2
|
-
import type { LlmProvider, ReasoningEffort } from './types.js';
|
|
3
|
-
export type SystemModelPurpose = 'chat-compaction' | 'session-title';
|
|
4
|
-
export type ModelCredentialMode = 'api-key' | 'oauth' | 'missing';
|
|
5
|
-
export type CredentialAwareModelOption = {
|
|
6
|
-
id: string;
|
|
7
|
-
label?: string;
|
|
8
|
-
disabled: boolean;
|
|
9
|
-
disabledReason?: string;
|
|
10
|
-
};
|
|
11
|
-
export declare const OPENAI_API_KEY_COMPACTION_MODEL = "gpt-5.1-codex-mini";
|
|
12
|
-
export declare const OPENAI_OAUTH_SYSTEM_MODEL = "gpt-5.4";
|
|
13
|
-
export declare const ANTHROPIC_COMPACTION_MODEL = "claude-haiku-4-5";
|
|
14
|
-
export declare const OPENAI_OAUTH_MODE_DESCRIPTION = "OAuth mode supports a smaller OpenAI allowlist.";
|
|
15
|
-
export declare function credentialModeFromSource(source: ProviderCredentialSource | undefined): ModelCredentialMode;
|
|
16
|
-
export declare function resolveSystemSelectedModel(args: {
|
|
17
|
-
purpose: SystemModelPurpose;
|
|
18
|
-
provider: LlmProvider;
|
|
19
|
-
activeModel?: string;
|
|
20
|
-
credentialMode?: ModelCredentialMode;
|
|
21
|
-
}): string;
|
|
22
|
-
export declare function validateModelCredentialCompatibility(args: {
|
|
23
|
-
model: string;
|
|
24
|
-
provider: LlmProvider;
|
|
25
|
-
credentialMode?: ModelCredentialMode;
|
|
26
|
-
usageLabel?: string;
|
|
27
|
-
}): {
|
|
28
|
-
ok: true;
|
|
29
|
-
} | {
|
|
30
|
-
ok: false;
|
|
31
|
-
error: string;
|
|
32
|
-
};
|
|
33
|
-
export declare function assertModelCredentialCompatibility(args: {
|
|
34
|
-
model: string;
|
|
35
|
-
provider: LlmProvider;
|
|
36
|
-
credentialMode?: ModelCredentialMode;
|
|
37
|
-
usageLabel?: string;
|
|
38
|
-
}): void;
|
|
39
|
-
export declare function resolveOpenAiOAuthImageCandidateModels(activeModel: string): string[];
|
|
40
|
-
export declare function buildCredentialAwareModelOption(args: {
|
|
41
|
-
model: string;
|
|
42
|
-
provider: LlmProvider;
|
|
43
|
-
credentialMode?: ModelCredentialMode;
|
|
44
|
-
label?: string;
|
|
45
|
-
}): CredentialAwareModelOption;
|
|
46
|
-
export declare function summarizeCredentialCompatibilityError(args: {
|
|
47
|
-
model: string;
|
|
48
|
-
provider: LlmProvider;
|
|
49
|
-
credentialMode?: ModelCredentialMode;
|
|
50
|
-
}): string | undefined;
|
|
51
|
-
export declare function resolveCompatibleActiveModel(args: {
|
|
52
|
-
activeModel: string;
|
|
53
|
-
provider: LlmProvider;
|
|
54
|
-
credentialMode?: ModelCredentialMode;
|
|
55
|
-
}): {
|
|
56
|
-
model: string;
|
|
57
|
-
warning?: string;
|
|
58
|
-
};
|
|
59
|
-
export declare function supportsReasoningEffort(model: string): boolean;
|
|
60
|
-
export declare function supportsOpenAiRequestReasoningEffort(model: string): boolean;
|
|
61
|
-
export declare function resolveDefaultReasoningEffort(model: string): ReasoningEffort | undefined;
|
|
62
|
-
export declare function formatOpenAiAccountSignInModels(): string;
|
|
63
|
-
//# sourceMappingURL=model-policy.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"model-policy.d.ts","sourceRoot":"","sources":["../../../../src/core/llm/model-policy.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAEhF,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE/D,MAAM,MAAM,kBAAkB,GAAG,iBAAiB,GAAG,eAAe,CAAC;AACrE,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC;AAElE,MAAM,MAAM,0BAA0B,GAAG;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,eAAO,MAAM,+BAA+B,uBAAuB,CAAC;AACpE,eAAO,MAAM,yBAAyB,YAAY,CAAC;AACnD,eAAO,MAAM,0BAA0B,qBAAqB,CAAC;AAE7D,eAAO,MAAM,6BAA6B,oDAAoD,CAAC;AA2B/F,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,wBAAwB,GAAG,SAAS,GAAG,mBAAmB,CAU1G;AAED,wBAAgB,0BAA0B,CAAC,IAAI,EAAE;IAC/C,OAAO,EAAE,kBAAkB,CAAC;IAC5B,QAAQ,EAAE,WAAW,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,mBAAmB,CAAC;CACtC,GAAG,MAAM,CAcT;AAED,wBAAgB,oCAAoC,CAAC,IAAI,EAAE;IACzD,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,WAAW,CAAC;IACtB,cAAc,CAAC,EAAE,mBAAmB,CAAC;IACrC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,GAAG;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAS9C;AAED,wBAAgB,kCAAkC,CAAC,IAAI,EAAE;IACvD,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,WAAW,CAAC;IACtB,cAAc,CAAC,EAAE,mBAAmB,CAAC;IACrC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,QAKA;AAED,wBAAgB,sCAAsC,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,CAEpF;AAED,wBAAgB,+BAA+B,CAAC,IAAI,EAAE;IACpD,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,WAAW,CAAC;IACtB,cAAc,CAAC,EAAE,mBAAmB,CAAC;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GAAG,0BAA0B,CAa7B;AAED,wBAAgB,qCAAqC,CAAC,IAAI,EAAE;IAC1D,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,WAAW,CAAC;IACtB,cAAc,CAAC,EAAE,mBAAmB,CAAC;CACtC,GAAG,MAAM,GAAG,SAAS,CAMrB;AAED,wBAAgB,4BAA4B,CAAC,IAAI,EAAE;IACjD,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,WAAW,CAAC;IACtB,cAAc,CAAC,EAAE,mBAAmB,CAAC;CACtC,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CA4BtC;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAE9D;AAED,wBAAgB,oCAAoC,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAE3E;AAED,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS,CAExF;AAED,wBAAgB,+BAA+B,IAAI,MAAM,CAExD"}
|
|
@@ -1,131 +0,0 @@
|
|
|
1
|
-
import { DEFAULT_ANTHROPIC_MODEL, DEFAULT_OPENAI_MODEL } from '../config.js';
|
|
2
|
-
import { isOpenAiAccountSignInModel, OPENAI_ACCOUNT_SIGN_IN_MODELS } from './openai-models.js';
|
|
3
|
-
export const OPENAI_API_KEY_COMPACTION_MODEL = 'gpt-5.1-codex-mini';
|
|
4
|
-
export const OPENAI_OAUTH_SYSTEM_MODEL = 'gpt-5.4';
|
|
5
|
-
export const ANTHROPIC_COMPACTION_MODEL = 'claude-haiku-4-5';
|
|
6
|
-
const OPENAI_OAUTH_DISABLED_REASON = 'Not supported';
|
|
7
|
-
export const OPENAI_OAUTH_MODE_DESCRIPTION = 'OAuth mode supports a smaller OpenAI allowlist.';
|
|
8
|
-
const OPENAI_OAUTH_IMAGE_MODEL_PREFERENCES = ['gpt-5.4', 'gpt-5.4-mini'];
|
|
9
|
-
const REASONING_EFFORT_CAPABLE_OPENAI_MODELS = [
|
|
10
|
-
'gpt-5.4',
|
|
11
|
-
'gpt-5.4-pro',
|
|
12
|
-
'gpt-5.4-mini',
|
|
13
|
-
'gpt-5.4-nano',
|
|
14
|
-
'gpt-5.5',
|
|
15
|
-
'gpt-5.5-pro',
|
|
16
|
-
];
|
|
17
|
-
const OPENAI_REQUEST_REASONING_EFFORT_COMPATIBLE_MODELS = [
|
|
18
|
-
'gpt-5.4',
|
|
19
|
-
'gpt-5.4-pro',
|
|
20
|
-
'gpt-5.4-mini',
|
|
21
|
-
'gpt-5.5',
|
|
22
|
-
'gpt-5.5-pro',
|
|
23
|
-
];
|
|
24
|
-
const DEFAULT_OPENAI_REASONING_EFFORT = {
|
|
25
|
-
'gpt-5.4': 'medium',
|
|
26
|
-
'gpt-5.4-pro': 'medium',
|
|
27
|
-
'gpt-5.4-mini': 'medium',
|
|
28
|
-
'gpt-5.4-nano': 'low',
|
|
29
|
-
'gpt-5.5': 'medium',
|
|
30
|
-
'gpt-5.5-pro': 'medium',
|
|
31
|
-
};
|
|
32
|
-
export function credentialModeFromSource(source) {
|
|
33
|
-
if (source?.type === 'oauth') {
|
|
34
|
-
return 'oauth';
|
|
35
|
-
}
|
|
36
|
-
if (source?.type === 'missing') {
|
|
37
|
-
return 'missing';
|
|
38
|
-
}
|
|
39
|
-
return 'api-key';
|
|
40
|
-
}
|
|
41
|
-
export function resolveSystemSelectedModel(args) {
|
|
42
|
-
if (args.provider === 'anthropic') {
|
|
43
|
-
return args.purpose === 'chat-compaction' ? ANTHROPIC_COMPACTION_MODEL : DEFAULT_ANTHROPIC_MODEL;
|
|
44
|
-
}
|
|
45
|
-
if (args.provider === 'openai') {
|
|
46
|
-
if (args.credentialMode === 'oauth') {
|
|
47
|
-
return args.activeModel && isOpenAiAccountSignInModel(args.activeModel) ? args.activeModel : OPENAI_OAUTH_SYSTEM_MODEL;
|
|
48
|
-
}
|
|
49
|
-
return args.purpose === 'chat-compaction' ? OPENAI_API_KEY_COMPACTION_MODEL : DEFAULT_OPENAI_MODEL;
|
|
50
|
-
}
|
|
51
|
-
return DEFAULT_OPENAI_MODEL;
|
|
52
|
-
}
|
|
53
|
-
export function validateModelCredentialCompatibility(args) {
|
|
54
|
-
if (args.provider === 'openai' && args.credentialMode === 'oauth' && !isOpenAiAccountSignInModel(args.model)) {
|
|
55
|
-
return {
|
|
56
|
-
ok: false,
|
|
57
|
-
error: `OpenAI account sign-in is not enabled for model ${args.model}. Use one of ${formatOpenAiAccountSignInModels()}, or set OPENAI_API_KEY to use Platform API-key mode${args.usageLabel ? ` for ${args.usageLabel}` : ''}.`,
|
|
58
|
-
};
|
|
59
|
-
}
|
|
60
|
-
return { ok: true };
|
|
61
|
-
}
|
|
62
|
-
export function assertModelCredentialCompatibility(args) {
|
|
63
|
-
const result = validateModelCredentialCompatibility(args);
|
|
64
|
-
if (!result.ok) {
|
|
65
|
-
throw new Error(result.error);
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
export function resolveOpenAiOAuthImageCandidateModels(activeModel) {
|
|
69
|
-
return uniqueModels([activeModel, ...OPENAI_OAUTH_IMAGE_MODEL_PREFERENCES, ...OPENAI_ACCOUNT_SIGN_IN_MODELS]);
|
|
70
|
-
}
|
|
71
|
-
export function buildCredentialAwareModelOption(args) {
|
|
72
|
-
const compatibility = validateModelCredentialCompatibility({
|
|
73
|
-
model: args.model,
|
|
74
|
-
provider: args.provider,
|
|
75
|
-
credentialMode: args.credentialMode,
|
|
76
|
-
});
|
|
77
|
-
return {
|
|
78
|
-
id: args.model,
|
|
79
|
-
label: args.label,
|
|
80
|
-
disabled: !compatibility.ok,
|
|
81
|
-
disabledReason: compatibility.ok ? undefined : summarizeCredentialCompatibilityError(args),
|
|
82
|
-
};
|
|
83
|
-
}
|
|
84
|
-
export function summarizeCredentialCompatibilityError(args) {
|
|
85
|
-
if (args.provider === 'openai' && args.credentialMode === 'oauth' && !isOpenAiAccountSignInModel(args.model)) {
|
|
86
|
-
return OPENAI_OAUTH_DISABLED_REASON;
|
|
87
|
-
}
|
|
88
|
-
return undefined;
|
|
89
|
-
}
|
|
90
|
-
export function resolveCompatibleActiveModel(args) {
|
|
91
|
-
const compatibility = validateModelCredentialCompatibility({
|
|
92
|
-
model: args.activeModel,
|
|
93
|
-
provider: args.provider,
|
|
94
|
-
credentialMode: args.credentialMode,
|
|
95
|
-
});
|
|
96
|
-
if (compatibility.ok) {
|
|
97
|
-
return { model: args.activeModel };
|
|
98
|
-
}
|
|
99
|
-
const fallback = resolveSystemSelectedModel({
|
|
100
|
-
purpose: 'session-title',
|
|
101
|
-
provider: args.provider,
|
|
102
|
-
activeModel: args.activeModel,
|
|
103
|
-
credentialMode: args.credentialMode,
|
|
104
|
-
});
|
|
105
|
-
if (fallback === args.activeModel) {
|
|
106
|
-
return {
|
|
107
|
-
model: args.activeModel,
|
|
108
|
-
warning: `Model ${args.activeModel} is not supported with OpenAI account sign-in. Pick a supported OAuth model with /model set or use API-key mode.`,
|
|
109
|
-
};
|
|
110
|
-
}
|
|
111
|
-
return {
|
|
112
|
-
model: fallback,
|
|
113
|
-
warning: `Model ${args.activeModel} is not supported with OpenAI account sign-in. Switched to ${fallback} for this session.`,
|
|
114
|
-
};
|
|
115
|
-
}
|
|
116
|
-
export function supportsReasoningEffort(model) {
|
|
117
|
-
return REASONING_EFFORT_CAPABLE_OPENAI_MODELS.includes(model);
|
|
118
|
-
}
|
|
119
|
-
export function supportsOpenAiRequestReasoningEffort(model) {
|
|
120
|
-
return OPENAI_REQUEST_REASONING_EFFORT_COMPATIBLE_MODELS.includes(model);
|
|
121
|
-
}
|
|
122
|
-
export function resolveDefaultReasoningEffort(model) {
|
|
123
|
-
return DEFAULT_OPENAI_REASONING_EFFORT[model];
|
|
124
|
-
}
|
|
125
|
-
export function formatOpenAiAccountSignInModels() {
|
|
126
|
-
return OPENAI_ACCOUNT_SIGN_IN_MODELS.join(', ');
|
|
127
|
-
}
|
|
128
|
-
function uniqueModels(models) {
|
|
129
|
-
return [...new Set(models)];
|
|
130
|
-
}
|
|
131
|
-
//# sourceMappingURL=model-policy.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"model-policy.js","sourceRoot":"","sources":["../../../../src/core/llm/model-policy.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
export type BuiltInModelGroup = {
|
|
2
|
-
label: string;
|
|
3
|
-
models: string[];
|
|
4
|
-
};
|
|
5
|
-
export declare const BUILT_IN_MODEL_GROUPS: BuiltInModelGroup[];
|
|
6
|
-
export declare const OPENAI_MODEL_GROUPS: BuiltInModelGroup[];
|
|
7
|
-
export declare const COMMON_BUILT_IN_MODELS: string[];
|
|
8
|
-
export declare const COMMON_OPENAI_MODELS: string[];
|
|
9
|
-
export declare const OPENAI_ACCOUNT_SIGN_IN_MODELS: string[];
|
|
10
|
-
export declare function formatOpenAiModelGroups(): string;
|
|
11
|
-
export declare function formatBuiltInModelGroups(): string;
|
|
12
|
-
export declare function filterOpenAiModels(query: string): string[];
|
|
13
|
-
export declare function isOpenAiAccountSignInModel(model: string): boolean;
|
|
14
|
-
export declare function filterBuiltInModels(query: string): string[];
|
|
15
|
-
export declare function estimateOpenAiContextWindow(model: string): number | undefined;
|
|
16
|
-
export declare function estimateBuiltInContextWindow(model: string): number | undefined;
|
|
17
|
-
//# sourceMappingURL=openai-models.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"openai-models.d.ts","sourceRoot":"","sources":["../../../../src/core/llm/openai-models.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,iBAAiB,GAAG;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,iBAAiB,EA6CpD,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,iBAAiB,EAElD,CAAC;AAEF,eAAO,MAAM,sBAAsB,UAAyD,CAAC;AAC7F,eAAO,MAAM,oBAAoB,UAAuD,CAAC;AACzF,eAAO,MAAM,6BAA6B,UAUzC,CAAC;AAMF,wBAAgB,uBAAuB,IAAI,MAAM,CAOhD;AAED,wBAAgB,wBAAwB,IAAI,MAAM,CAOjD;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAO1D;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEjE;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAO3D;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAE7E;AAED,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAO9E"}
|
|
@@ -1,127 +0,0 @@
|
|
|
1
|
-
// ---------------------------------------------------------------------------
|
|
2
|
-
// Built-in model shortlist used by Heddle's current UI and local commands.
|
|
3
|
-
// Keep this curated rather than mirroring the entire provider catalog.
|
|
4
|
-
// ---------------------------------------------------------------------------
|
|
5
|
-
export const BUILT_IN_MODEL_GROUPS = [
|
|
6
|
-
{
|
|
7
|
-
label: 'OpenAI · GPT-5.5',
|
|
8
|
-
models: ['gpt-5.5', 'gpt-5.5-pro'],
|
|
9
|
-
},
|
|
10
|
-
{
|
|
11
|
-
label: 'OpenAI · GPT-5.4',
|
|
12
|
-
models: ['gpt-5.4', 'gpt-5.4-pro', 'gpt-5.4-mini', 'gpt-5.4-nano'],
|
|
13
|
-
},
|
|
14
|
-
{
|
|
15
|
-
label: 'OpenAI · GPT-5 family',
|
|
16
|
-
models: ['gpt-5', 'gpt-5-pro', 'gpt-5-mini', 'gpt-5-nano'],
|
|
17
|
-
},
|
|
18
|
-
{
|
|
19
|
-
label: 'OpenAI · Earlier GPT-5 releases',
|
|
20
|
-
models: ['gpt-5.2', 'gpt-5.2-pro', 'gpt-5.1'],
|
|
21
|
-
},
|
|
22
|
-
{
|
|
23
|
-
label: 'OpenAI · GPT-4.1',
|
|
24
|
-
models: ['gpt-4.1', 'gpt-4.1-mini', 'gpt-4.1-nano'],
|
|
25
|
-
},
|
|
26
|
-
{
|
|
27
|
-
label: 'OpenAI · Reasoning series',
|
|
28
|
-
models: ['o3-pro', 'o3', 'o3-mini', 'o4-mini'],
|
|
29
|
-
},
|
|
30
|
-
{
|
|
31
|
-
label: 'OpenAI · Coding-optimized',
|
|
32
|
-
models: ['gpt-5.3-codex', 'gpt-5.3-codex-spark', 'gpt-5.2-codex', 'gpt-5.1-codex', 'gpt-5.1-codex-max', 'gpt-5.1-codex-mini'],
|
|
33
|
-
},
|
|
34
|
-
{
|
|
35
|
-
label: 'Anthropic · Claude 4',
|
|
36
|
-
models: ['claude-opus-4-6', 'claude-sonnet-4-6', 'claude-haiku-4-5'],
|
|
37
|
-
},
|
|
38
|
-
{
|
|
39
|
-
label: 'Anthropic · Earlier Claude 4',
|
|
40
|
-
models: ['claude-opus-4-1', 'claude-opus-4-0', 'claude-sonnet-4-0'],
|
|
41
|
-
},
|
|
42
|
-
{
|
|
43
|
-
label: 'Anthropic · Claude 3.7',
|
|
44
|
-
models: ['claude-3-7-sonnet-latest'],
|
|
45
|
-
},
|
|
46
|
-
{
|
|
47
|
-
label: 'Anthropic · Claude 3.5',
|
|
48
|
-
models: ['claude-3-5-sonnet-latest', 'claude-3-5-haiku-latest'],
|
|
49
|
-
},
|
|
50
|
-
];
|
|
51
|
-
export const OPENAI_MODEL_GROUPS = BUILT_IN_MODEL_GROUPS.filter((group) => group.label.startsWith('OpenAI · '));
|
|
52
|
-
export const COMMON_BUILT_IN_MODELS = BUILT_IN_MODEL_GROUPS.flatMap((group) => group.models);
|
|
53
|
-
export const COMMON_OPENAI_MODELS = OPENAI_MODEL_GROUPS.flatMap((group) => group.models);
|
|
54
|
-
export const OPENAI_ACCOUNT_SIGN_IN_MODELS = [
|
|
55
|
-
'gpt-5.5',
|
|
56
|
-
'gpt-5.4',
|
|
57
|
-
'gpt-5.4-mini',
|
|
58
|
-
'gpt-5.1-codex',
|
|
59
|
-
'gpt-5.1-codex-max',
|
|
60
|
-
'gpt-5.2',
|
|
61
|
-
'gpt-5.2-codex',
|
|
62
|
-
'gpt-5.3-codex',
|
|
63
|
-
'gpt-5.3-codex-spark',
|
|
64
|
-
];
|
|
65
|
-
const BUILT_IN_CONTEXT_WINDOW_ESTIMATES = new Map(COMMON_BUILT_IN_MODELS.map((model) => [model, inferContextWindowEstimate(model)]));
|
|
66
|
-
export function formatOpenAiModelGroups() {
|
|
67
|
-
return OPENAI_MODEL_GROUPS
|
|
68
|
-
.map((group) => [
|
|
69
|
-
group.label.replace(/^OpenAI · /, ''),
|
|
70
|
-
...group.models.map((model) => ` - ${model}`),
|
|
71
|
-
].join('\n'))
|
|
72
|
-
.join('\n\n');
|
|
73
|
-
}
|
|
74
|
-
export function formatBuiltInModelGroups() {
|
|
75
|
-
return BUILT_IN_MODEL_GROUPS
|
|
76
|
-
.map((group) => [
|
|
77
|
-
`${group.label}`,
|
|
78
|
-
...group.models.map((model) => ` - ${model}`),
|
|
79
|
-
].join('\n'))
|
|
80
|
-
.join('\n\n');
|
|
81
|
-
}
|
|
82
|
-
export function filterOpenAiModels(query) {
|
|
83
|
-
const normalized = query.trim().toLowerCase();
|
|
84
|
-
if (!normalized) {
|
|
85
|
-
return COMMON_OPENAI_MODELS;
|
|
86
|
-
}
|
|
87
|
-
return COMMON_OPENAI_MODELS.filter((model) => model.toLowerCase().includes(normalized));
|
|
88
|
-
}
|
|
89
|
-
export function isOpenAiAccountSignInModel(model) {
|
|
90
|
-
return OPENAI_ACCOUNT_SIGN_IN_MODELS.includes(model.trim());
|
|
91
|
-
}
|
|
92
|
-
export function filterBuiltInModels(query) {
|
|
93
|
-
const normalized = query.trim().toLowerCase();
|
|
94
|
-
if (!normalized) {
|
|
95
|
-
return COMMON_BUILT_IN_MODELS;
|
|
96
|
-
}
|
|
97
|
-
return COMMON_BUILT_IN_MODELS.filter((model) => model.toLowerCase().includes(normalized));
|
|
98
|
-
}
|
|
99
|
-
export function estimateOpenAiContextWindow(model) {
|
|
100
|
-
return estimateBuiltInContextWindow(model);
|
|
101
|
-
}
|
|
102
|
-
export function estimateBuiltInContextWindow(model) {
|
|
103
|
-
const normalized = model.trim();
|
|
104
|
-
if (!normalized) {
|
|
105
|
-
return undefined;
|
|
106
|
-
}
|
|
107
|
-
return BUILT_IN_CONTEXT_WINDOW_ESTIMATES.get(normalized) ?? inferContextWindowEstimate(normalized);
|
|
108
|
-
}
|
|
109
|
-
function inferContextWindowEstimate(model) {
|
|
110
|
-
if (model.startsWith('gpt-5.5')) {
|
|
111
|
-
return 400_000;
|
|
112
|
-
}
|
|
113
|
-
if (model === 'gpt-5.4' || model === 'gpt-5.4-pro') {
|
|
114
|
-
return 400_000;
|
|
115
|
-
}
|
|
116
|
-
if (model === 'gpt-5.4-mini') {
|
|
117
|
-
return 400_000;
|
|
118
|
-
}
|
|
119
|
-
if (model.startsWith('gpt-5.1') || model.startsWith('gpt-5.2') || model.startsWith('gpt-5.3') || model.startsWith('gpt-5-') || model === 'gpt-5') {
|
|
120
|
-
return 400_000;
|
|
121
|
-
}
|
|
122
|
-
if (model.startsWith('gpt-4.1')) {
|
|
123
|
-
return 128_000;
|
|
124
|
-
}
|
|
125
|
-
return 200_000;
|
|
126
|
-
}
|
|
127
|
-
//# sourceMappingURL=openai-models.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"openai-models.js","sourceRoot":"","sources":["../../../../src/core/llm/openai-models.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import type { Fetch as OpenAiFetch } from 'openai/core.js';
|
|
2
|
-
import type { LlmAdapter, ReasoningEffort } from './types.js';
|
|
3
|
-
import { type OpenAiOAuthCredential } from '../auth/openai-oauth.js';
|
|
4
|
-
import { type StoredProviderCredential } from '../auth/provider-credentials.js';
|
|
5
|
-
export type OpenAiAdapterOptions = {
|
|
6
|
-
apiKey?: string;
|
|
7
|
-
model?: string;
|
|
8
|
-
credential?: StoredProviderCredential;
|
|
9
|
-
credentialStorePath?: string;
|
|
10
|
-
fetchImpl?: CompatibleFetch;
|
|
11
|
-
reasoningEffort?: ReasoningEffort;
|
|
12
|
-
};
|
|
13
|
-
type CompatibleFetch = (url: unknown, init?: unknown) => Promise<globalThis.Response>;
|
|
14
|
-
/**
|
|
15
|
-
* Create an LLM adapter backed by the OpenAI chat completions API.
|
|
16
|
-
*/
|
|
17
|
-
export declare function createOpenAiAdapter(options?: OpenAiAdapterOptions): LlmAdapter;
|
|
18
|
-
export declare function createOpenAiOAuthFetch(initialCredential: OpenAiOAuthCredential, options?: {
|
|
19
|
-
storePath?: string;
|
|
20
|
-
fetchImpl?: CompatibleFetch;
|
|
21
|
-
refreshBeforeMs?: number;
|
|
22
|
-
}): OpenAiFetch;
|
|
23
|
-
export declare function executeOpenAiOAuthCodexSse(args: {
|
|
24
|
-
oauthFetch: ReturnType<typeof createOpenAiOAuthFetch> | undefined;
|
|
25
|
-
body: unknown;
|
|
26
|
-
endpoint?: string;
|
|
27
|
-
}): Promise<string>;
|
|
28
|
-
export declare function extractOpenAiCodexOutputTextFromSse(text: string): string;
|
|
29
|
-
export declare function extractOpenAiCodexSseItems<T>(text: string, predicate: (item: unknown) => item is T): T[];
|
|
30
|
-
export {};
|
|
31
|
-
//# sourceMappingURL=openai.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../../../src/core/llm/openai.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,KAAK,EAAE,UAAU,EAA8E,eAAe,EAAE,MAAM,YAAY,CAAC;AAG1I,OAAO,EAGL,KAAK,qBAAqB,EAC3B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAEL,KAAK,wBAAwB,EAC9B,MAAM,iCAAiC,CAAC;AAOzC,MAAM,MAAM,oBAAoB,GAAG;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,wBAAwB,CAAC;IACtC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC,CAAC;AAEF,KAAK,eAAe,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;AAEtF;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,GAAE,oBAAyB,GAAG,UAAU,CA6JlF;AAuCD,wBAAgB,sBAAsB,CACpC,iBAAiB,EAAE,qBAAqB,EACxC,OAAO,GAAE;IACP,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,eAAe,CAAC,EAAE,MAAM,CAAC;CACrB,GACL,WAAW,CA+Bb;AAgBD,wBAAsB,0BAA0B,CAAC,IAAI,EAAE;IACrD,UAAU,EAAE,UAAU,CAAC,OAAO,sBAAsB,CAAC,GAAG,SAAS,CAAC;IAClE,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,GAAG,OAAO,CAAC,MAAM,CAAC,CAmBlB;AAED,wBAAgB,mCAAmC,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAmBxE;AAED,wBAAgB,0BAA0B,CAAC,CAAC,EAC1C,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,IAAI,CAAC,GACtC,CAAC,EAAE,CAqBL"}
|