@superblocksteam/vite-plugin-file-sync 2.0.96 → 2.0.97-next.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/ai-service/agent/middleware.d.ts.map +1 -1
- package/dist/ai-service/agent/middleware.js +8 -2
- package/dist/ai-service/agent/middleware.js.map +1 -1
- package/dist/ai-service/agent/prompts/api-prompts.d.ts.map +1 -1
- package/dist/ai-service/agent/prompts/api-prompts.js +84 -91
- package/dist/ai-service/agent/prompts/api-prompts.js.map +1 -1
- package/dist/ai-service/agent/prompts/build-base-system-prompt.d.ts +1 -1
- package/dist/ai-service/agent/prompts/build-base-system-prompt.d.ts.map +1 -1
- package/dist/ai-service/agent/prompts/build-base-system-prompt.js +7 -23
- package/dist/ai-service/agent/prompts/build-base-system-prompt.js.map +1 -1
- package/dist/ai-service/agent/tool-message-utils.d.ts.map +1 -1
- package/dist/ai-service/agent/tool-message-utils.js +32 -0
- package/dist/ai-service/agent/tool-message-utils.js.map +1 -1
- package/dist/ai-service/agent/tools/apis/api-testing-state.d.ts +28 -0
- package/dist/ai-service/agent/tools/apis/api-testing-state.d.ts.map +1 -0
- package/dist/ai-service/agent/tools/apis/api-testing-state.js +141 -0
- package/dist/ai-service/agent/tools/apis/api-testing-state.js.map +1 -0
- package/dist/ai-service/agent/tools/apis/sdk-registry.d.ts +4 -0
- package/dist/ai-service/agent/tools/apis/sdk-registry.d.ts.map +1 -0
- package/dist/ai-service/agent/tools/apis/sdk-registry.js +23 -0
- package/dist/ai-service/agent/tools/apis/sdk-registry.js.map +1 -0
- package/dist/ai-service/agent/tools/apis/test-api.d.ts +1 -63
- package/dist/ai-service/agent/tools/apis/test-api.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/apis/test-api.js +12 -5
- package/dist/ai-service/agent/tools/apis/test-api.js.map +1 -1
- package/dist/ai-service/agent/tools/apis/write-api.d.ts +2 -2
- package/dist/ai-service/agent/tools/build-capture-screenshot.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-capture-screenshot.js +2 -0
- package/dist/ai-service/agent/tools/build-capture-screenshot.js.map +1 -1
- package/dist/ai-service/agent/tools/build-edit-file.d.ts +1 -1
- package/dist/ai-service/agent/tools/build-edit-file.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-edit-file.js +15 -0
- package/dist/ai-service/agent/tools/build-edit-file.js.map +1 -1
- package/dist/ai-service/agent/tools/build-finalize.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-finalize.js +1 -0
- package/dist/ai-service/agent/tools/build-finalize.js.map +1 -1
- package/dist/ai-service/agent/tools/build-manage-checklist.d.ts +1 -1
- package/dist/ai-service/agent/tools/build-multi-edit-file.d.ts +1 -1
- package/dist/ai-service/agent/tools/build-multi-edit-file.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-multi-edit-file.js +8 -0
- package/dist/ai-service/agent/tools/build-multi-edit-file.js.map +1 -1
- package/dist/ai-service/agent/tools/build-write-file.d.ts +1 -1
- package/dist/ai-service/agent/tools/build-write-file.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-write-file.js +8 -0
- package/dist/ai-service/agent/tools/build-write-file.js.map +1 -1
- package/dist/ai-service/agent/tools/get-logs.d.ts +2 -0
- package/dist/ai-service/agent/tools/get-logs.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/get-logs.js +49 -35
- package/dist/ai-service/agent/tools/get-logs.js.map +1 -1
- package/dist/ai-service/agent/tools/integrations/execute-request.d.ts +1 -1
- package/dist/ai-service/agent/tools/integrations/internal.d.ts +4 -0
- package/dist/ai-service/agent/tools/integrations/internal.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/integrations/internal.js +1 -1
- package/dist/ai-service/agent/tools/integrations/internal.js.map +1 -1
- package/dist/ai-service/agent/tools.d.ts.map +1 -1
- package/dist/ai-service/agent/tools.js +78 -21
- package/dist/ai-service/agent/tools.js.map +1 -1
- package/dist/ai-service/agent/tools2/access-control.d.ts.map +1 -1
- package/dist/ai-service/agent/tools2/access-control.js +0 -3
- package/dist/ai-service/agent/tools2/access-control.js.map +1 -1
- package/dist/ai-service/agent/tools2/tools/ask-multi-choice.d.ts.map +1 -1
- package/dist/ai-service/agent/tools2/tools/ask-multi-choice.js +1 -0
- package/dist/ai-service/agent/tools2/tools/ask-multi-choice.js.map +1 -1
- package/dist/ai-service/agent/tools2/tools/end-test-run.d.ts +2 -2
- package/dist/ai-service/agent/tools2/tools/git.d.ts +50 -0
- package/dist/ai-service/agent/tools2/tools/git.d.ts.map +1 -0
- package/dist/ai-service/agent/tools2/tools/git.js +465 -0
- package/dist/ai-service/agent/tools2/tools/git.js.map +1 -0
- package/dist/ai-service/agent/tools2/tools/glob.d.ts.map +1 -1
- package/dist/ai-service/agent/tools2/tools/glob.js +3 -1
- package/dist/ai-service/agent/tools2/tools/glob.js.map +1 -1
- package/dist/ai-service/agent/tools2/tools/grep.d.ts.map +1 -1
- package/dist/ai-service/agent/tools2/tools/grep.js +9 -2
- package/dist/ai-service/agent/tools2/tools/grep.js.map +1 -1
- package/dist/ai-service/agent/tools2/tools/index.d.ts +1 -7
- package/dist/ai-service/agent/tools2/tools/index.d.ts.map +1 -1
- package/dist/ai-service/agent/tools2/tools/index.js +2 -8
- package/dist/ai-service/agent/tools2/tools/index.js.map +1 -1
- package/dist/ai-service/agent/tools2/tools/ls.d.ts.map +1 -1
- package/dist/ai-service/agent/tools2/tools/ls.js +5 -1
- package/dist/ai-service/agent/tools2/tools/ls.js.map +1 -1
- package/dist/ai-service/agent/tools2/tools/read.d.ts +1 -1
- package/dist/ai-service/agent/tools2/tools/remember-knowledge.d.ts +10 -6
- package/dist/ai-service/agent/tools2/tools/remember-knowledge.d.ts.map +1 -1
- package/dist/ai-service/agent/tools2/tools/remember-knowledge.js +25 -18
- package/dist/ai-service/agent/tools2/tools/remember-knowledge.js.map +1 -1
- package/dist/ai-service/agent/tools2/tools/update-test-case-status.d.ts +2 -2
- package/dist/ai-service/agent/tools2/types.d.ts +6 -2
- package/dist/ai-service/agent/tools2/types.d.ts.map +1 -1
- package/dist/ai-service/agent/tools2/types.js.map +1 -1
- package/dist/ai-service/agent/utils.d.ts.map +1 -1
- package/dist/ai-service/agent/utils.js +46 -0
- package/dist/ai-service/agent/utils.js.map +1 -1
- package/dist/ai-service/app-interface/constants.d.ts +10 -3
- package/dist/ai-service/app-interface/constants.d.ts.map +1 -1
- package/dist/ai-service/app-interface/constants.js +16 -8
- package/dist/ai-service/app-interface/constants.js.map +1 -1
- package/dist/ai-service/app-interface/filesystem/handlers/skill-handler.d.ts +11 -4
- package/dist/ai-service/app-interface/filesystem/handlers/skill-handler.d.ts.map +1 -1
- package/dist/ai-service/app-interface/filesystem/handlers/skill-handler.js +152 -11
- package/dist/ai-service/app-interface/filesystem/handlers/skill-handler.js.map +1 -1
- package/dist/ai-service/app-interface/filesystem/validation.d.ts +4 -4
- package/dist/ai-service/app-interface/filesystem/validation.d.ts.map +1 -1
- package/dist/ai-service/app-interface/filesystem/validation.js +14 -11
- package/dist/ai-service/app-interface/filesystem/validation.js.map +1 -1
- package/dist/ai-service/app-interface/filesystem/virtual-file-system.d.ts +1 -0
- package/dist/ai-service/app-interface/filesystem/virtual-file-system.d.ts.map +1 -1
- package/dist/ai-service/app-interface/filesystem/virtual-file-system.js +2 -2
- package/dist/ai-service/app-interface/filesystem/virtual-file-system.js.map +1 -1
- package/dist/ai-service/app-interface/shell.d.ts +10 -1
- package/dist/ai-service/app-interface/shell.d.ts.map +1 -1
- package/dist/ai-service/app-interface/shell.js +62 -16
- package/dist/ai-service/app-interface/shell.js.map +1 -1
- package/dist/ai-service/app-skills/build-knowledge-feedback-message.d.ts +3 -0
- package/dist/ai-service/app-skills/build-knowledge-feedback-message.d.ts.map +1 -0
- package/dist/ai-service/app-skills/build-knowledge-feedback-message.js +47 -0
- package/dist/ai-service/app-skills/build-knowledge-feedback-message.js.map +1 -0
- package/dist/ai-service/app-skills/helpers.d.ts +6 -11
- package/dist/ai-service/app-skills/helpers.d.ts.map +1 -1
- package/dist/ai-service/app-skills/helpers.js +282 -75
- package/dist/ai-service/app-skills/helpers.js.map +1 -1
- package/dist/ai-service/attachment-upload.d.ts +9 -1
- package/dist/ai-service/attachment-upload.d.ts.map +1 -1
- package/dist/ai-service/attachment-upload.js +82 -62
- package/dist/ai-service/attachment-upload.js.map +1 -1
- package/dist/ai-service/attachments/store.d.ts +12 -1
- package/dist/ai-service/attachments/store.d.ts.map +1 -1
- package/dist/ai-service/attachments/store.js +35 -0
- package/dist/ai-service/attachments/store.js.map +1 -1
- package/dist/ai-service/attachments/uploaded-content-part.d.ts +28 -0
- package/dist/ai-service/attachments/uploaded-content-part.d.ts.map +1 -0
- package/dist/ai-service/attachments/uploaded-content-part.js +88 -0
- package/dist/ai-service/attachments/uploaded-content-part.js.map +1 -0
- package/dist/ai-service/chat/chat-session-store.d.ts +4 -2
- package/dist/ai-service/chat/chat-session-store.d.ts.map +1 -1
- package/dist/ai-service/chat/chat-session-store.js +150 -19
- package/dist/ai-service/chat/chat-session-store.js.map +1 -1
- package/dist/ai-service/chat/utils.d.ts +12 -0
- package/dist/ai-service/chat/utils.d.ts.map +1 -1
- package/dist/ai-service/chat/utils.js +128 -2
- package/dist/ai-service/chat/utils.js.map +1 -1
- package/dist/ai-service/clark-provider/attachment-service.d.ts +56 -0
- package/dist/ai-service/clark-provider/attachment-service.d.ts.map +1 -0
- package/dist/ai-service/clark-provider/attachment-service.js +295 -0
- package/dist/ai-service/clark-provider/attachment-service.js.map +1 -0
- package/dist/ai-service/clark-provider/clark-language-model.d.ts +3 -0
- package/dist/ai-service/clark-provider/clark-language-model.d.ts.map +1 -1
- package/dist/ai-service/clark-provider/clark-language-model.js +15 -5
- package/dist/ai-service/clark-provider/clark-language-model.js.map +1 -1
- package/dist/ai-service/clark-provider/clark-provider.d.ts +9 -0
- package/dist/ai-service/clark-provider/clark-provider.d.ts.map +1 -1
- package/dist/ai-service/clark-provider/clark-provider.js +2 -0
- package/dist/ai-service/clark-provider/clark-provider.js.map +1 -1
- package/dist/ai-service/context-upload.d.ts +2 -1
- package/dist/ai-service/context-upload.d.ts.map +1 -1
- package/dist/ai-service/context-upload.js +63 -26
- package/dist/ai-service/context-upload.js.map +1 -1
- package/dist/ai-service/features.d.ts +12 -1
- package/dist/ai-service/features.d.ts.map +1 -1
- package/dist/ai-service/features.js +12 -1
- package/dist/ai-service/features.js.map +1 -1
- package/dist/ai-service/index.d.ts +19 -2
- package/dist/ai-service/index.d.ts.map +1 -1
- package/dist/ai-service/index.js +129 -21
- package/dist/ai-service/index.js.map +1 -1
- package/dist/ai-service/judge/judge-eval-service-runner.js +1 -0
- package/dist/ai-service/judge/judge-eval-service-runner.js.map +1 -1
- package/dist/ai-service/judge/tools/playwright-action.d.ts +1 -1
- package/dist/ai-service/llm/impl/clark.d.ts.map +1 -1
- package/dist/ai-service/llm/impl/clark.js +18 -2
- package/dist/ai-service/llm/impl/clark.js.map +1 -1
- package/dist/ai-service/llm/interaction/adapters/vercel.d.ts.map +1 -1
- package/dist/ai-service/llm/interaction/adapters/vercel.js +4 -0
- package/dist/ai-service/llm/interaction/adapters/vercel.js.map +1 -1
- package/dist/ai-service/llm/provider.d.ts +2 -1
- package/dist/ai-service/llm/provider.d.ts.map +1 -1
- package/dist/ai-service/llm/provider.js +11 -2
- package/dist/ai-service/llm/provider.js.map +1 -1
- package/dist/ai-service/llm/stream/config.d.ts +3 -1
- package/dist/ai-service/llm/stream/config.d.ts.map +1 -1
- package/dist/ai-service/llm/stream/config.js +1 -0
- package/dist/ai-service/llm/stream/config.js.map +1 -1
- package/dist/ai-service/llm/stream/observers/logging.js +1 -1
- package/dist/ai-service/llm/stream/observers/logging.js.map +1 -1
- package/dist/ai-service/llm/stream/retry-engine.d.ts +8 -8
- package/dist/ai-service/llm/stream/retry-engine.d.ts.map +1 -1
- package/dist/ai-service/llm/stream/retry-engine.js +42 -24
- package/dist/ai-service/llm/stream/retry-engine.js.map +1 -1
- package/dist/ai-service/llm/types.d.ts +11 -0
- package/dist/ai-service/llm/types.d.ts.map +1 -1
- package/dist/ai-service/skills/system/materialized.d.ts +6 -0
- package/dist/ai-service/skills/system/materialized.d.ts.map +1 -0
- package/dist/ai-service/skills/system/materialized.js +33 -0
- package/dist/ai-service/skills/system/materialized.js.map +1 -0
- package/dist/ai-service/skills/system/superblocks-frontend/skill.generated.d.ts +1 -1
- package/dist/ai-service/skills/system/superblocks-frontend/skill.generated.d.ts.map +1 -1
- package/dist/ai-service/skills/system/superblocks-frontend/skill.generated.js +42 -54
- package/dist/ai-service/skills/system/superblocks-frontend/skill.generated.js.map +1 -1
- package/dist/ai-service/skills/system/tool-paths.d.ts +3 -0
- package/dist/ai-service/skills/system/tool-paths.d.ts.map +1 -0
- package/dist/ai-service/skills/system/tool-paths.js +16 -0
- package/dist/ai-service/skills/system/tool-paths.js.map +1 -0
- package/dist/ai-service/state-machine/clark-fsm.d.ts +29 -5
- package/dist/ai-service/state-machine/clark-fsm.d.ts.map +1 -1
- package/dist/ai-service/state-machine/clark-fsm.js +47 -1
- package/dist/ai-service/state-machine/clark-fsm.js.map +1 -1
- package/dist/ai-service/state-machine/handlers/agent-planning.d.ts.map +1 -1
- package/dist/ai-service/state-machine/handlers/agent-planning.js +57 -36
- package/dist/ai-service/state-machine/handlers/agent-planning.js.map +1 -1
- package/dist/ai-service/state-machine/handlers/awaiting-user.d.ts.map +1 -1
- package/dist/ai-service/state-machine/handlers/awaiting-user.js +21 -3
- package/dist/ai-service/state-machine/handlers/awaiting-user.js.map +1 -1
- package/dist/ai-service/state-machine/handlers/llm-generating.d.ts.map +1 -1
- package/dist/ai-service/state-machine/handlers/llm-generating.js +74 -27
- package/dist/ai-service/state-machine/handlers/llm-generating.js.map +1 -1
- package/dist/ai-service/transform/api-builder/to-yaml-transformer.d.ts.map +1 -1
- package/dist/ai-service/transform/api-builder/to-yaml-transformer.js +94 -1
- package/dist/ai-service/transform/api-builder/to-yaml-transformer.js.map +1 -1
- package/dist/ai-service/util/mode-message.d.ts.map +1 -1
- package/dist/ai-service/util/mode-message.js +0 -3
- package/dist/ai-service/util/mode-message.js.map +1 -1
- package/dist/file-sync-vite-plugin.d.ts.map +1 -1
- package/dist/file-sync-vite-plugin.js +7 -0
- package/dist/file-sync-vite-plugin.js.map +1 -1
- package/dist/git-operation-lock.d.ts +22 -0
- package/dist/git-operation-lock.d.ts.map +1 -0
- package/dist/git-operation-lock.js +25 -0
- package/dist/git-operation-lock.js.map +1 -0
- package/dist/git-service/errors.d.ts +4 -0
- package/dist/git-service/errors.d.ts.map +1 -1
- package/dist/git-service/errors.js +6 -0
- package/dist/git-service/errors.js.map +1 -1
- package/dist/git-service/github-workflow.d.ts +6 -0
- package/dist/git-service/github-workflow.d.ts.map +1 -0
- package/dist/git-service/github-workflow.js +40 -0
- package/dist/git-service/github-workflow.js.map +1 -0
- package/dist/git-service/index.d.ts +2 -2
- package/dist/git-service/index.d.ts.map +1 -1
- package/dist/git-service/index.js +54 -12
- package/dist/git-service/index.js.map +1 -1
- package/dist/git-service/live-branch.d.ts.map +1 -1
- package/dist/git-service/live-branch.js +81 -5
- package/dist/git-service/live-branch.js.map +1 -1
- package/dist/inject-index-vite-plugin.d.ts.map +1 -1
- package/dist/inject-index-vite-plugin.js +37 -6
- package/dist/inject-index-vite-plugin.js.map +1 -1
- package/dist/injected-index.d.ts.map +1 -1
- package/dist/injected-index.js +23 -3
- package/dist/injected-index.js.map +1 -1
- package/dist/lock-service/index.d.ts.map +1 -1
- package/dist/lock-service/index.js +38 -0
- package/dist/lock-service/index.js.map +1 -1
- package/dist/parsing/index.d.ts +1 -0
- package/dist/parsing/index.d.ts.map +1 -1
- package/dist/parsing/index.js +1 -0
- package/dist/parsing/index.js.map +1 -1
- package/dist/parsing/sdk-registry.d.ts +5 -0
- package/dist/parsing/sdk-registry.d.ts.map +1 -0
- package/dist/parsing/sdk-registry.js +128 -0
- package/dist/parsing/sdk-registry.js.map +1 -0
- package/dist/socket-manager.d.ts +3 -1
- package/dist/socket-manager.d.ts.map +1 -1
- package/dist/socket-manager.js +192 -45
- package/dist/socket-manager.js.map +1 -1
- package/package.json +7 -6
- package/dist/ai-service/agent/tools2/tools/git-commit.d.ts +0 -15
- package/dist/ai-service/agent/tools2/tools/git-commit.d.ts.map +0 -1
- package/dist/ai-service/agent/tools2/tools/git-commit.js +0 -105
- package/dist/ai-service/agent/tools2/tools/git-commit.js.map +0 -1
- package/dist/ai-service/agent/tools2/tools/git-diff.d.ts +0 -9
- package/dist/ai-service/agent/tools2/tools/git-diff.d.ts.map +0 -1
- package/dist/ai-service/agent/tools2/tools/git-diff.js +0 -23
- package/dist/ai-service/agent/tools2/tools/git-diff.js.map +0 -1
- package/dist/ai-service/agent/tools2/tools/git-log.d.ts +0 -12
- package/dist/ai-service/agent/tools2/tools/git-log.d.ts.map +0 -1
- package/dist/ai-service/agent/tools2/tools/git-log.js +0 -27
- package/dist/ai-service/agent/tools2/tools/git-log.js.map +0 -1
- package/dist/ai-service/agent/tools2/tools/git-merge-abort.d.ts +0 -7
- package/dist/ai-service/agent/tools2/tools/git-merge-abort.d.ts.map +0 -1
- package/dist/ai-service/agent/tools2/tools/git-merge-abort.js +0 -42
- package/dist/ai-service/agent/tools2/tools/git-merge-abort.js.map +0 -1
- package/dist/ai-service/agent/tools2/tools/git-pull.d.ts +0 -20
- package/dist/ai-service/agent/tools2/tools/git-pull.d.ts.map +0 -1
- package/dist/ai-service/agent/tools2/tools/git-pull.js +0 -80
- package/dist/ai-service/agent/tools2/tools/git-pull.js.map +0 -1
- package/dist/ai-service/agent/tools2/tools/git-stage.d.ts +0 -9
- package/dist/ai-service/agent/tools2/tools/git-stage.d.ts.map +0 -1
- package/dist/ai-service/agent/tools2/tools/git-stage.js +0 -34
- package/dist/ai-service/agent/tools2/tools/git-stage.js.map +0 -1
- package/dist/ai-service/agent/tools2/tools/git-status.d.ts +0 -9
- package/dist/ai-service/agent/tools2/tools/git-status.d.ts.map +0 -1
- package/dist/ai-service/agent/tools2/tools/git-status.js +0 -18
- package/dist/ai-service/agent/tools2/tools/git-status.js.map +0 -1
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import type { AutoConnectingRpcClient } from "../../server-rpc/index.js";
|
|
2
|
+
import type { LanguageModelV3Prompt } from "@ai-sdk/provider";
|
|
3
|
+
/**
|
|
4
|
+
* Service for resolving attachment leases, materializing file URLs to bytes,
|
|
5
|
+
* normalizing media types, and caching signed URLs.
|
|
6
|
+
*
|
|
7
|
+
* This service runs in the ai-service and calls the server via WebSocket RPC
|
|
8
|
+
* to refresh attachment leases before sending to the LLM.
|
|
9
|
+
*/
|
|
10
|
+
export declare class AttachmentService {
|
|
11
|
+
private cache;
|
|
12
|
+
private rpcClient;
|
|
13
|
+
private superblocksBaseUrl;
|
|
14
|
+
private applicationId;
|
|
15
|
+
private getJwt;
|
|
16
|
+
/**
|
|
17
|
+
* Buffer time in milliseconds before actual expiry to trigger refresh.
|
|
18
|
+
* Default: 5 minutes (300000ms)
|
|
19
|
+
*/
|
|
20
|
+
private readonly expiryBufferMs;
|
|
21
|
+
constructor(params: {
|
|
22
|
+
rpcClient: AutoConnectingRpcClient;
|
|
23
|
+
superblocksBaseUrl: string;
|
|
24
|
+
applicationId: string;
|
|
25
|
+
getJwt: () => string | undefined;
|
|
26
|
+
maxCacheSize?: number;
|
|
27
|
+
});
|
|
28
|
+
/**
|
|
29
|
+
* Prepare a prompt for sending to the LLM in a single pass:
|
|
30
|
+
* 1. Resolve attachment leases (batch RPC to get fresh signed URLs)
|
|
31
|
+
* 2. Fetch signed URLs and materialize as inline bytes
|
|
32
|
+
* 3. Normalize media types
|
|
33
|
+
*/
|
|
34
|
+
preparePrompt(prompt: LanguageModelV3Prompt): Promise<LanguageModelV3Prompt>;
|
|
35
|
+
private extractUrl;
|
|
36
|
+
private callResolveLeases;
|
|
37
|
+
/**
|
|
38
|
+
* Clear the cache. Useful for testing or when tokens change.
|
|
39
|
+
*/
|
|
40
|
+
clearCache(): void;
|
|
41
|
+
/**
|
|
42
|
+
* Get current cache size for monitoring.
|
|
43
|
+
*/
|
|
44
|
+
getCacheSize(): number;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Factory function to create an AttachmentService.
|
|
48
|
+
*/
|
|
49
|
+
export declare function createAttachmentService(params: {
|
|
50
|
+
rpcClient: AutoConnectingRpcClient;
|
|
51
|
+
superblocksBaseUrl: string;
|
|
52
|
+
applicationId: string;
|
|
53
|
+
getJwt: () => string | undefined;
|
|
54
|
+
maxCacheSize?: number;
|
|
55
|
+
}): AttachmentService;
|
|
56
|
+
//# sourceMappingURL=attachment-service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"attachment-service.d.ts","sourceRoot":"","sources":["../../../src/ai-service/clark-provider/attachment-service.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACzE,OAAO,KAAK,EACV,qBAAqB,EAEtB,MAAM,kBAAkB,CAAC;AAsJ1B;;;;;;GAMG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,KAAK,CAAwC;IACrD,OAAO,CAAC,SAAS,CAA0B;IAC3C,OAAO,CAAC,kBAAkB,CAAS;IACnC,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,MAAM,CAA2B;IAEzC;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAiB;gBAEpC,MAAM,EAAE;QAClB,SAAS,EAAE,uBAAuB,CAAC;QACnC,kBAAkB,EAAE,MAAM,CAAC;QAC3B,aAAa,EAAE,MAAM,CAAC;QACtB,MAAM,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;QACjC,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB;IAUD;;;;;OAKG;IACG,aAAa,CACjB,MAAM,EAAE,qBAAqB,GAC5B,OAAO,CAAC,qBAAqB,CAAC;IAmJjC,OAAO,CAAC,UAAU;YAkBJ,iBAAiB;IAS/B;;OAEG;IACH,UAAU,IAAI,IAAI;IAIlB;;OAEG;IACH,YAAY,IAAI,MAAM;CAGvB;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE;IAC9C,SAAS,EAAE,uBAAuB,CAAC;IACnC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;IACjC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,GAAG,iBAAiB,CAEpB"}
|
|
@@ -0,0 +1,295 @@
|
|
|
1
|
+
import { LRUCache } from "lru-cache";
|
|
2
|
+
import { getCanonicalAttachmentUrl, getResolvableAttachmentUrl, } from "../attachments/uploaded-content-part.js";
|
|
3
|
+
import { getScopedToken } from "../util/scoped-token-utils.js";
|
|
4
|
+
function isLeaseResolvableFilePart(part) {
|
|
5
|
+
return part.type === "file";
|
|
6
|
+
}
|
|
7
|
+
function isLeaseResolvableImagePart(part) {
|
|
8
|
+
return part.type === "image";
|
|
9
|
+
}
|
|
10
|
+
function inferMediaTypeFromPath(pathOrName) {
|
|
11
|
+
if (!pathOrName) {
|
|
12
|
+
return "text/plain";
|
|
13
|
+
}
|
|
14
|
+
const lower = pathOrName.toLowerCase();
|
|
15
|
+
if (lower.endsWith(".pdf")) {
|
|
16
|
+
return "application/pdf";
|
|
17
|
+
}
|
|
18
|
+
if (lower.endsWith(".png")) {
|
|
19
|
+
return "image/png";
|
|
20
|
+
}
|
|
21
|
+
if (lower.endsWith(".jpg") || lower.endsWith(".jpeg")) {
|
|
22
|
+
return "image/jpeg";
|
|
23
|
+
}
|
|
24
|
+
if (lower.endsWith(".webp")) {
|
|
25
|
+
return "image/webp";
|
|
26
|
+
}
|
|
27
|
+
if (lower.endsWith(".gif")) {
|
|
28
|
+
return "image/gif";
|
|
29
|
+
}
|
|
30
|
+
return "text/plain";
|
|
31
|
+
}
|
|
32
|
+
function inferMediaTypeFromFilePart(part) {
|
|
33
|
+
const filename = typeof part.filename === "string" && part.filename.trim().length > 0
|
|
34
|
+
? part.filename
|
|
35
|
+
: undefined;
|
|
36
|
+
if (filename) {
|
|
37
|
+
return inferMediaTypeFromPath(filename);
|
|
38
|
+
}
|
|
39
|
+
if (part.data instanceof URL) {
|
|
40
|
+
return inferMediaTypeFromPath(part.data.pathname);
|
|
41
|
+
}
|
|
42
|
+
if (typeof part.data === "string") {
|
|
43
|
+
try {
|
|
44
|
+
const parsed = new URL(part.data);
|
|
45
|
+
return inferMediaTypeFromPath(parsed.pathname);
|
|
46
|
+
}
|
|
47
|
+
catch {
|
|
48
|
+
// Ignore invalid URL strings and fall through to default.
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
return "text/plain";
|
|
52
|
+
}
|
|
53
|
+
function getNormalizedMediaType(part) {
|
|
54
|
+
const mediaType = typeof part.mediaType === "string" && part.mediaType.trim().length > 0
|
|
55
|
+
? part.mediaType.trim()
|
|
56
|
+
: inferMediaTypeFromFilePart(part);
|
|
57
|
+
if (mediaType.startsWith("text/")) {
|
|
58
|
+
return "text/plain";
|
|
59
|
+
}
|
|
60
|
+
return mediaType;
|
|
61
|
+
}
|
|
62
|
+
function getImagePartMediaType(part) {
|
|
63
|
+
const metadata = part.superblocksAttachmentMetadata;
|
|
64
|
+
if (metadata?.mediaType?.trim()) {
|
|
65
|
+
return metadata.mediaType.trim();
|
|
66
|
+
}
|
|
67
|
+
if (part.image instanceof URL) {
|
|
68
|
+
return inferMediaTypeFromPath(part.image.pathname);
|
|
69
|
+
}
|
|
70
|
+
if (typeof part.image === "string") {
|
|
71
|
+
try {
|
|
72
|
+
return inferMediaTypeFromPath(new URL(part.image).pathname);
|
|
73
|
+
}
|
|
74
|
+
catch {
|
|
75
|
+
return inferMediaTypeFromPath(part.image);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
return "image/png";
|
|
79
|
+
}
|
|
80
|
+
function getPartLeaseReference(part, url) {
|
|
81
|
+
const metadata = part.superblocksAttachmentMetadata;
|
|
82
|
+
if (metadata) {
|
|
83
|
+
return {
|
|
84
|
+
...metadata,
|
|
85
|
+
url: getCanonicalAttachmentUrl(metadata.url),
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
if (part.type === "file") {
|
|
89
|
+
return {
|
|
90
|
+
url,
|
|
91
|
+
mediaType: getNormalizedMediaType(part),
|
|
92
|
+
fileName: typeof part.filename === "string" && part.filename.trim().length > 0
|
|
93
|
+
? part.filename
|
|
94
|
+
: "attachment",
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
return {
|
|
98
|
+
url,
|
|
99
|
+
mediaType: getImagePartMediaType(part),
|
|
100
|
+
fileName: "attachment",
|
|
101
|
+
};
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Service for resolving attachment leases, materializing file URLs to bytes,
|
|
105
|
+
* normalizing media types, and caching signed URLs.
|
|
106
|
+
*
|
|
107
|
+
* This service runs in the ai-service and calls the server via WebSocket RPC
|
|
108
|
+
* to refresh attachment leases before sending to the LLM.
|
|
109
|
+
*/
|
|
110
|
+
export class AttachmentService {
|
|
111
|
+
cache;
|
|
112
|
+
rpcClient;
|
|
113
|
+
superblocksBaseUrl;
|
|
114
|
+
applicationId;
|
|
115
|
+
getJwt;
|
|
116
|
+
/**
|
|
117
|
+
* Buffer time in milliseconds before actual expiry to trigger refresh.
|
|
118
|
+
* Default: 5 minutes (300000ms)
|
|
119
|
+
*/
|
|
120
|
+
expiryBufferMs = 5 * 60 * 1000;
|
|
121
|
+
constructor(params) {
|
|
122
|
+
this.rpcClient = params.rpcClient;
|
|
123
|
+
this.superblocksBaseUrl = params.superblocksBaseUrl;
|
|
124
|
+
this.applicationId = params.applicationId;
|
|
125
|
+
this.getJwt = params.getJwt;
|
|
126
|
+
this.cache = new LRUCache({
|
|
127
|
+
max: params.maxCacheSize ?? 100,
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Prepare a prompt for sending to the LLM in a single pass:
|
|
132
|
+
* 1. Resolve attachment leases (batch RPC to get fresh signed URLs)
|
|
133
|
+
* 2. Fetch signed URLs and materialize as inline bytes
|
|
134
|
+
* 3. Normalize media types
|
|
135
|
+
*/
|
|
136
|
+
async preparePrompt(prompt) {
|
|
137
|
+
// First pass: collect file parts with URLs that need lease resolution
|
|
138
|
+
const leaseRequests = [];
|
|
139
|
+
for (const message of prompt) {
|
|
140
|
+
if (message.role !== "user" || !Array.isArray(message.content)) {
|
|
141
|
+
continue;
|
|
142
|
+
}
|
|
143
|
+
for (const part of message.content) {
|
|
144
|
+
const leasePart = isLeaseResolvableFilePart(part)
|
|
145
|
+
? part
|
|
146
|
+
: isLeaseResolvableImagePart(part)
|
|
147
|
+
? part
|
|
148
|
+
: undefined;
|
|
149
|
+
if (!leasePart) {
|
|
150
|
+
continue;
|
|
151
|
+
}
|
|
152
|
+
const url = this.extractUrl(leasePart);
|
|
153
|
+
if (!url) {
|
|
154
|
+
continue;
|
|
155
|
+
}
|
|
156
|
+
const cached = this.cache.get(url);
|
|
157
|
+
if (cached && Date.now() < cached.expiresAt - this.expiryBufferMs) {
|
|
158
|
+
continue;
|
|
159
|
+
}
|
|
160
|
+
leaseRequests.push({ url, part: leasePart });
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
if (leaseRequests.length > 0) {
|
|
164
|
+
try {
|
|
165
|
+
const jwt = this.getJwt();
|
|
166
|
+
if (!jwt) {
|
|
167
|
+
throw new Error("No JWT available for scoped token");
|
|
168
|
+
}
|
|
169
|
+
const scopedToken = await getScopedToken({
|
|
170
|
+
applicationId: this.applicationId,
|
|
171
|
+
superblocksBaseUrl: this.superblocksBaseUrl,
|
|
172
|
+
jwt,
|
|
173
|
+
});
|
|
174
|
+
const request = {
|
|
175
|
+
attachments: leaseRequests.map((item) => getPartLeaseReference(item.part, item.url)),
|
|
176
|
+
scopedToken,
|
|
177
|
+
superblocksBaseUrl: this.superblocksBaseUrl,
|
|
178
|
+
};
|
|
179
|
+
const response = await this.callResolveLeases(request);
|
|
180
|
+
if (response?.attachments) {
|
|
181
|
+
for (const resolved of response.attachments) {
|
|
182
|
+
const expiresAt = new Date(resolved.expiresAt).getTime();
|
|
183
|
+
const ttl = Math.max(0, expiresAt - Date.now());
|
|
184
|
+
this.cache.set(resolved.url, {
|
|
185
|
+
url: resolved.signedUrl,
|
|
186
|
+
mediaType: resolved.mimeType,
|
|
187
|
+
expiresAt,
|
|
188
|
+
}, { ttl });
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
catch {
|
|
193
|
+
// If lease resolution fails, continue without signed URLs.
|
|
194
|
+
// The original URLs will be used as-is.
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
return Promise.all(prompt.map(async (message) => {
|
|
198
|
+
if (message.role !== "user" || !Array.isArray(message.content)) {
|
|
199
|
+
return message;
|
|
200
|
+
}
|
|
201
|
+
const preparedContent = await Promise.all(message.content.map(async (part) => {
|
|
202
|
+
const leasePart = isLeaseResolvableFilePart(part)
|
|
203
|
+
? part
|
|
204
|
+
: isLeaseResolvableImagePart(part)
|
|
205
|
+
? part
|
|
206
|
+
: undefined;
|
|
207
|
+
if (!leasePart) {
|
|
208
|
+
return part;
|
|
209
|
+
}
|
|
210
|
+
const originalUrl = this.extractUrl(leasePart);
|
|
211
|
+
if (!originalUrl) {
|
|
212
|
+
return part;
|
|
213
|
+
}
|
|
214
|
+
const cached = this.cache.get(originalUrl);
|
|
215
|
+
const fetchUrl = cached?.url ?? originalUrl;
|
|
216
|
+
if ("image" in leasePart) {
|
|
217
|
+
const metadata = leasePart.superblocksAttachmentMetadata;
|
|
218
|
+
return {
|
|
219
|
+
image: new URL(fetchUrl),
|
|
220
|
+
type: "image",
|
|
221
|
+
...(metadata
|
|
222
|
+
? { superblocksAttachmentMetadata: metadata }
|
|
223
|
+
: {}),
|
|
224
|
+
};
|
|
225
|
+
}
|
|
226
|
+
if (!("data" in leasePart)) {
|
|
227
|
+
return part;
|
|
228
|
+
}
|
|
229
|
+
// we need to used the server's media type to make sure its correct
|
|
230
|
+
// since sometimes the sdk liked to do image/* and infers the wrong file
|
|
231
|
+
// type to send to claude. but we need to make sure we try to normalize on
|
|
232
|
+
// the
|
|
233
|
+
const metadata = leasePart.superblocksAttachmentMetadata;
|
|
234
|
+
const filePart = {
|
|
235
|
+
data: new URL(fetchUrl),
|
|
236
|
+
filename: leasePart.filename,
|
|
237
|
+
mediaType: cached?.mediaType ?? leasePart.mediaType,
|
|
238
|
+
type: "file",
|
|
239
|
+
...(metadata ? { superblocksAttachmentMetadata: metadata } : {}),
|
|
240
|
+
};
|
|
241
|
+
return {
|
|
242
|
+
type: "file",
|
|
243
|
+
data: new URL(fetchUrl),
|
|
244
|
+
filename: leasePart.filename,
|
|
245
|
+
mediaType: getNormalizedMediaType(filePart),
|
|
246
|
+
...(metadata ? { superblocksAttachmentMetadata: metadata } : {}),
|
|
247
|
+
};
|
|
248
|
+
}));
|
|
249
|
+
return {
|
|
250
|
+
...message,
|
|
251
|
+
content: preparedContent,
|
|
252
|
+
};
|
|
253
|
+
}));
|
|
254
|
+
}
|
|
255
|
+
extractUrl(part) {
|
|
256
|
+
if (part.type === "file" && typeof part.data === "string") {
|
|
257
|
+
return getResolvableAttachmentUrl(part.data);
|
|
258
|
+
}
|
|
259
|
+
if (part.type === "file" && part.data instanceof URL) {
|
|
260
|
+
return getResolvableAttachmentUrl(part.data);
|
|
261
|
+
}
|
|
262
|
+
if (part.type === "image" && typeof part.image === "string") {
|
|
263
|
+
return getResolvableAttachmentUrl(part.image);
|
|
264
|
+
}
|
|
265
|
+
if (part.type === "image" && part.image instanceof URL) {
|
|
266
|
+
return getResolvableAttachmentUrl(part.image);
|
|
267
|
+
}
|
|
268
|
+
return undefined;
|
|
269
|
+
}
|
|
270
|
+
async callResolveLeases(request) {
|
|
271
|
+
const response = await this.rpcClient.call(async (client) => {
|
|
272
|
+
return client.call.v1.ai.resolveAttachmentLeases(request);
|
|
273
|
+
});
|
|
274
|
+
return response.data;
|
|
275
|
+
}
|
|
276
|
+
/**
|
|
277
|
+
* Clear the cache. Useful for testing or when tokens change.
|
|
278
|
+
*/
|
|
279
|
+
clearCache() {
|
|
280
|
+
this.cache.clear();
|
|
281
|
+
}
|
|
282
|
+
/**
|
|
283
|
+
* Get current cache size for monitoring.
|
|
284
|
+
*/
|
|
285
|
+
getCacheSize() {
|
|
286
|
+
return this.cache.size;
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
/**
|
|
290
|
+
* Factory function to create an AttachmentService.
|
|
291
|
+
*/
|
|
292
|
+
export function createAttachmentService(params) {
|
|
293
|
+
return new AttachmentService(params);
|
|
294
|
+
}
|
|
295
|
+
//# sourceMappingURL=attachment-service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"attachment-service.js","sourceRoot":"","sources":["../../../src/ai-service/clark-provider/attachment-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { type LanguageModelV3 } from "@ai-sdk/provider";
|
|
2
|
+
import type { AttachmentService } from "./attachment-service.js";
|
|
2
3
|
import type { ClarkChatModelId } from "./clark-chat-settings.js";
|
|
3
4
|
import type { FetchFunction } from "@ai-sdk/provider-utils";
|
|
4
5
|
type ClarkChatConfig = {
|
|
@@ -6,6 +7,7 @@ type ClarkChatConfig = {
|
|
|
6
7
|
baseURL: string;
|
|
7
8
|
headers: () => Record<string, string | undefined>;
|
|
8
9
|
fetch?: FetchFunction;
|
|
10
|
+
attachmentService?: AttachmentService;
|
|
9
11
|
};
|
|
10
12
|
export declare class ClarkChatLanguageModel implements LanguageModelV3 {
|
|
11
13
|
readonly specificationVersion = "v3";
|
|
@@ -17,6 +19,7 @@ export declare class ClarkChatLanguageModel implements LanguageModelV3 {
|
|
|
17
19
|
constructor(modelId: ClarkChatModelId, config: ClarkChatConfig);
|
|
18
20
|
get provider(): string;
|
|
19
21
|
supportsUrl(url: URL): boolean;
|
|
22
|
+
private preparePrompt;
|
|
20
23
|
private getArgs;
|
|
21
24
|
doGenerate(options: Parameters<LanguageModelV3["doGenerate"]>[0]): Promise<Awaited<ReturnType<LanguageModelV3["doGenerate"]>>>;
|
|
22
25
|
doStream(options: Parameters<LanguageModelV3["doStream"]>[0]): Promise<Awaited<ReturnType<LanguageModelV3["doStream"]>>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clark-language-model.d.ts","sourceRoot":"","sources":["../../../src/ai-service/clark-provider/clark-language-model.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,eAAe,
|
|
1
|
+
{"version":3,"file":"clark-language-model.d.ts","sourceRoot":"","sources":["../../../src/ai-service/clark-provider/clark-language-model.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,eAAe,EAOrB,MAAM,kBAAkB,CAAC;AAW1B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EACV,aAAa,EAGd,MAAM,wBAAwB,CAAC;AAIhC,KAAK,eAAe,GAAG;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IAClD,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;CACvC,CAAC;AA8DF,qBAAa,sBAAuB,YAAW,eAAe;IAC5D,QAAQ,CAAC,oBAAoB,QAAQ;IACrC,QAAQ,CAAC,2BAA2B,UAAU;IAC9C,QAAQ,CAAC,iBAAiB,SAAS;IAGnC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAwB;IAExE,QAAQ,CAAC,OAAO,EAAE,gBAAgB,CAAC;IAEnC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;gBAE7B,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,eAAe;IAK9D,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED,WAAW,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO;YAIhB,aAAa;YASb,OAAO;IAiHf,UAAU,CACd,OAAO,EAAE,UAAU,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,GACpD,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IA6ExD,QAAQ,CACZ,OAAO,EAAE,UAAU,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,GAClD,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;CAsK7D"}
|
|
@@ -41,7 +41,9 @@ export class ClarkChatLanguageModel {
|
|
|
41
41
|
specificationVersion = "v3";
|
|
42
42
|
defaultObjectGenerationMode = "json";
|
|
43
43
|
supportsImageUrls = false;
|
|
44
|
-
|
|
44
|
+
// AI SDK's URL support map is keyed by media type (or '*'), not URL protocol.
|
|
45
|
+
// Using '*' avoids SDK-side URL downloads and lets the Clark proxy resolve leases.
|
|
46
|
+
supportedUrls = { "*": [/^https:/] };
|
|
45
47
|
modelId;
|
|
46
48
|
config;
|
|
47
49
|
constructor(modelId, config) {
|
|
@@ -54,7 +56,13 @@ export class ClarkChatLanguageModel {
|
|
|
54
56
|
supportsUrl(url) {
|
|
55
57
|
return url.protocol === "https:";
|
|
56
58
|
}
|
|
57
|
-
|
|
59
|
+
async preparePrompt(prompt) {
|
|
60
|
+
if (!this.config.attachmentService) {
|
|
61
|
+
return prompt;
|
|
62
|
+
}
|
|
63
|
+
return this.config.attachmentService.preparePrompt(prompt);
|
|
64
|
+
}
|
|
65
|
+
async getArgs({ prompt, maxOutputTokens, temperature, topP, topK, frequencyPenalty, presencePenalty, stopSequences, responseFormat, seed, tools, toolChoice, providerOptions, }) {
|
|
58
66
|
const warnings = [];
|
|
59
67
|
// v5: unsupported settings warnings
|
|
60
68
|
if (topP != null) {
|
|
@@ -109,10 +117,12 @@ export class ClarkChatLanguageModel {
|
|
|
109
117
|
});
|
|
110
118
|
}
|
|
111
119
|
const unifiedOptions = providerOptions?.unified;
|
|
120
|
+
// Resolve attachment leases and normalize media types
|
|
121
|
+
const normalizedPrompt = await this.preparePrompt(prompt);
|
|
112
122
|
const baseArgs = {
|
|
113
123
|
model: this.modelId,
|
|
114
124
|
max_tokens: maxOutputTokens,
|
|
115
|
-
messages:
|
|
125
|
+
messages: normalizedPrompt,
|
|
116
126
|
temperature: temperature,
|
|
117
127
|
providerOptions,
|
|
118
128
|
// Fallback control options
|
|
@@ -136,7 +146,7 @@ export class ClarkChatLanguageModel {
|
|
|
136
146
|
};
|
|
137
147
|
}
|
|
138
148
|
async doGenerate(options) {
|
|
139
|
-
const { args } = this.getArgs(options);
|
|
149
|
+
const { args } = await this.getArgs(options);
|
|
140
150
|
const optionsWithMetadata = options;
|
|
141
151
|
const { value } = await postJsonToApi({
|
|
142
152
|
url: `${this.config.baseURL}/generate`,
|
|
@@ -203,7 +213,7 @@ export class ClarkChatLanguageModel {
|
|
|
203
213
|
};
|
|
204
214
|
}
|
|
205
215
|
async doStream(options) {
|
|
206
|
-
const { args } = this.getArgs(options);
|
|
216
|
+
const { args } = await this.getArgs(options);
|
|
207
217
|
const optionsWithMetadata = options;
|
|
208
218
|
const body = {
|
|
209
219
|
...args,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clark-language-model.js","sourceRoot":"","sources":["../../../src/ai-service/clark-provider/clark-language-model.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"clark-language-model.js","sourceRoot":"","sources":["../../../src/ai-service/clark-provider/clark-language-model.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { AttachmentService } from "./attachment-service.js";
|
|
1
2
|
import type { ClarkChatModelId } from "./clark-chat-settings.js";
|
|
2
3
|
import type { LanguageModelV3, ProviderV3 } from "@ai-sdk/provider";
|
|
3
4
|
import type { FetchFunction } from "@ai-sdk/provider-utils";
|
|
@@ -33,6 +34,12 @@ export interface ClarkProviderSettings {
|
|
|
33
34
|
*/
|
|
34
35
|
upstreamProvider?: "vertex" | "bedrock" | "unified";
|
|
35
36
|
path?: string;
|
|
37
|
+
/**
|
|
38
|
+
* Service for resolving attachment leases and caching signed URLs.
|
|
39
|
+
* If provided, the provider will resolve attachment leases via WebSocket RPC
|
|
40
|
+
* before sending requests to the LLM.
|
|
41
|
+
*/
|
|
42
|
+
attachmentService?: AttachmentService;
|
|
36
43
|
}
|
|
37
44
|
/**
|
|
38
45
|
Create a Clark AI provider instance.
|
|
@@ -42,4 +49,6 @@ export declare function createClark(options?: ClarkProviderSettings): ClarkProvi
|
|
|
42
49
|
Default Clark provider instance.
|
|
43
50
|
*/
|
|
44
51
|
export declare const clark: ClarkProvider;
|
|
52
|
+
export type { AttachmentService } from "./attachment-service.js";
|
|
53
|
+
export { createAttachmentService } from "./attachment-service.js";
|
|
45
54
|
//# sourceMappingURL=clark-provider.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clark-provider.d.ts","sourceRoot":"","sources":["../../../src/ai-service/clark-provider/clark-provider.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAE5D,MAAM,WAAW,aAAc,SAAQ,UAAU;IAC/C,CAAC,OAAO,EAAE,gBAAgB,GAAG,eAAe,CAAC;IAE7C;;IAEA;IACA,aAAa,CAAC,OAAO,EAAE,gBAAgB,GAAG,eAAe,CAAC;IAE1D;;IAEA;IACA,IAAI,CAAC,OAAO,EAAE,gBAAgB,GAAG,eAAe,CAAC;CAClD;AAED,MAAM,WAAW,qBAAqB;IACpC;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;SAEK;IACL,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEjC;;;QAGI;IACJ,KAAK,CAAC,EAAE,aAAa,CAAC;IAEtB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC;IAEpD,IAAI,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"clark-provider.d.ts","sourceRoot":"","sources":["../../../src/ai-service/clark-provider/clark-provider.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAE5D,MAAM,WAAW,aAAc,SAAQ,UAAU;IAC/C,CAAC,OAAO,EAAE,gBAAgB,GAAG,eAAe,CAAC;IAE7C;;IAEA;IACA,aAAa,CAAC,OAAO,EAAE,gBAAgB,GAAG,eAAe,CAAC;IAE1D;;IAEA;IACA,IAAI,CAAC,OAAO,EAAE,gBAAgB,GAAG,eAAe,CAAC;CAClD;AAED,MAAM,WAAW,qBAAqB;IACpC;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;SAEK;IACL,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEjC;;;QAGI;IACJ,KAAK,CAAC,EAAE,aAAa,CAAC;IAEtB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC;IAEpD,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;CACvC;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,OAAO,GAAE,qBAER,GACA,aAAa,CAoDf;AAED;;GAEG;AACH,eAAO,MAAM,KAAK,eAAgB,CAAC;AAGnC,YAAY,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC"}
|
|
@@ -21,6 +21,7 @@ export function createClark(options = {
|
|
|
21
21
|
baseURL: `${baseURL}/${options.upstreamProvider}`,
|
|
22
22
|
headers: getHeaders,
|
|
23
23
|
fetch: options.fetch,
|
|
24
|
+
attachmentService: options.attachmentService,
|
|
24
25
|
});
|
|
25
26
|
const provider = function (modelId) {
|
|
26
27
|
if (new.target) {
|
|
@@ -47,4 +48,5 @@ export function createClark(options = {
|
|
|
47
48
|
Default Clark provider instance.
|
|
48
49
|
*/
|
|
49
50
|
export const clark = createClark();
|
|
51
|
+
export { createAttachmentService } from "./attachment-service.js";
|
|
50
52
|
//# sourceMappingURL=clark-provider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clark-provider.js","sourceRoot":"","sources":["../../../src/ai-service/clark-provider/clark-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"clark-provider.js","sourceRoot":"","sources":["../../../src/ai-service/clark-provider/clark-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAsDnE;;GAEG;AACH,MAAM,UAAU,WAAW,CACzB,UAAiC;IAC/B,gBAAgB,EAAE,SAAS;CAC5B;IAED,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAC1B,IAAI,OAAO,GACT,oBAAoB,CAAC,OAAO,CAAC,OAAO,CAAC;QACrC,iDAAiD,CAAC;IAEpD,IAAI,IAAI,EAAE,CAAC;QACT,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;QAC3D,OAAO,GAAG,GAAG,OAAO,GAAG,oBAAoB,CAAC,SAAS,CAAC,EAAE,CAAC;IAC3D,CAAC;IAED,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC,CAAC;QACxB,GAAG,OAAO,CAAC,OAAO;KACnB,CAAC,CAAC;IAEH,MAAM,eAAe,GAAG,CAAC,OAAyB,EAAE,EAAE,CACpD,IAAI,sBAAsB,CAAC,OAAO,EAAE;QAClC,QAAQ,EAAE,YAAY;QACtB,OAAO,EAAE,GAAG,OAAO,IAAI,OAAO,CAAC,gBAAgB,EAAE;QACjD,OAAO,EAAE,UAAU;QACnB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;KAC7C,CAAC,CAAC;IAEL,MAAM,QAAQ,GAAG,UAAU,OAAyB;QAClD,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CACb,iEAAiE,CAClE,CAAC;QACJ,CAAC;QAED,OAAO,eAAe,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC,CAAC;IAEF,QAAQ,CAAC,aAAa,GAAG,eAAe,CAAC;IACzC,QAAQ,CAAC,IAAI,GAAG,eAAe,CAAC;IAChC,QAAQ,CAAC,oBAAoB,GAAG,IAAa,CAAC;IAE9C,MAAM,cAAc,GAAG,GAAG,EAAE;QAC1B,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAC1D,CAAC,CAAC;IAEF,QAAQ,CAAC,SAAS,GAAG,cAAc,CAAC;IACpC,QAAQ,CAAC,cAAc,GAAG,cAAc,CAAC;IACzC,QAAQ,CAAC,kBAAkB,GAAG,cAAc,CAAC;IAE7C,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;IACjE,CAAC,CAAC;IACF,QAAQ,CAAC,UAAU,GAAG,UAAU,CAAC;IAEjC,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,WAAW,EAAE,CAAC;AAInC,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC"}
|
|
@@ -4,12 +4,13 @@ import type { Logger } from "../util/logger.js";
|
|
|
4
4
|
* Reads all files from .superblocks/context/{userId}/ and uploads them
|
|
5
5
|
* Dynamically detects MIME types for any file type
|
|
6
6
|
*/
|
|
7
|
-
export declare function uploadContextToBucketeer({ applicationId, commitId, branchName, appRootDirPath, userId, superblocksBaseUrl, logger, jwt, }: {
|
|
7
|
+
export declare function uploadContextToBucketeer({ applicationId, commitId, branchName, appRootDirPath, userId, useServerUpload, superblocksBaseUrl, logger, jwt, }: {
|
|
8
8
|
applicationId: string;
|
|
9
9
|
commitId: string;
|
|
10
10
|
branchName: string;
|
|
11
11
|
appRootDirPath: string;
|
|
12
12
|
userId: string;
|
|
13
|
+
useServerUpload?: boolean;
|
|
13
14
|
superblocksBaseUrl: string;
|
|
14
15
|
logger: Logger;
|
|
15
16
|
jwt: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-upload.d.ts","sourceRoot":"","sources":["../../src/ai-service/context-upload.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAEhD;;;;GAIG;AACH,wBAAsB,wBAAwB,CAAC,EAC7C,aAAa,EACb,QAAQ,EACR,UAAU,EACV,cAAc,EACd,MAAM,EACN,kBAAkB,EAClB,MAAM,EACN,GAAG,GACJ,EAAE;IACD,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,kBAAkB,EAAE,MAAM,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;CACb,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"context-upload.d.ts","sourceRoot":"","sources":["../../src/ai-service/context-upload.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAEhD;;;;GAIG;AACH,wBAAsB,wBAAwB,CAAC,EAC7C,aAAa,EACb,QAAQ,EACR,UAAU,EACV,cAAc,EACd,MAAM,EACN,eAAuB,EACvB,kBAAkB,EAClB,MAAM,EACN,GAAG,GACJ,EAAE;IACD,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;CACb,GAAG,OAAO,CAAC,IAAI,CAAC,CAuKhB"}
|