libre-webui 0.38.0 → 0.39.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/README.md +1 -0
- package/backend/dist/persistence/postgresMigrationRegistry.d.ts.map +1 -1
- package/backend/dist/persistence/postgresMigrationRegistry.js +2 -0
- package/backend/dist/persistence/postgresMigrationRegistry.js.map +1 -1
- package/backend/dist/persistence/postgresWorkRunThinkMigration.d.ts +9 -0
- package/backend/dist/persistence/postgresWorkRunThinkMigration.d.ts.map +1 -0
- package/backend/dist/persistence/postgresWorkRunThinkMigration.js +39 -0
- package/backend/dist/persistence/postgresWorkRunThinkMigration.js.map +1 -0
- package/backend/dist/persistence/sqliteMigrations.d.ts.map +1 -1
- package/backend/dist/persistence/sqliteMigrations.js +20 -0
- package/backend/dist/persistence/sqliteMigrations.js.map +1 -1
- package/backend/dist/persistence/sqliteToPostgresMigration.d.ts.map +1 -1
- package/backend/dist/persistence/sqliteToPostgresMigration.js +1 -0
- package/backend/dist/persistence/sqliteToPostgresMigration.js.map +1 -1
- package/backend/dist/platform/workPersistence/postgresWorkPersistence.d.ts.map +1 -1
- package/backend/dist/platform/workPersistence/postgresWorkPersistence.js +3 -2
- package/backend/dist/platform/workPersistence/postgresWorkPersistence.js.map +1 -1
- package/backend/dist/platform/workPersistence/sqliteWorkPersistence.d.ts.map +1 -1
- package/backend/dist/platform/workPersistence/sqliteWorkPersistence.js +3 -3
- package/backend/dist/platform/workPersistence/sqliteWorkPersistence.js.map +1 -1
- package/backend/dist/platform/workPersistence/types.d.ts +5 -0
- package/backend/dist/platform/workPersistence/types.d.ts.map +1 -1
- package/backend/dist/platform/workPersistence/types.js.map +1 -1
- package/backend/dist/routes/work.d.ts.map +1 -1
- package/backend/dist/routes/work.js +17 -2
- package/backend/dist/routes/work.js.map +1 -1
- package/backend/dist/services/agentCliService.d.ts.map +1 -1
- package/backend/dist/services/agentCliService.js +1 -0
- package/backend/dist/services/agentCliService.js.map +1 -1
- package/backend/dist/services/followUpService.d.ts +4 -1
- package/backend/dist/services/followUpService.d.ts.map +1 -1
- package/backend/dist/services/followUpService.js +23 -2
- package/backend/dist/services/followUpService.js.map +1 -1
- package/backend/dist/services/pluginService.d.ts.map +1 -1
- package/backend/dist/services/pluginService.js +10 -6
- package/backend/dist/services/pluginService.js.map +1 -1
- package/backend/dist/services/workAgentService.d.ts.map +1 -1
- package/backend/dist/services/workAgentService.js +3 -0
- package/backend/dist/services/workAgentService.js.map +1 -1
- package/backend/dist/services/workModelProviderService.d.ts.map +1 -1
- package/backend/dist/services/workModelProviderService.js +43 -13
- package/backend/dist/services/workModelProviderService.js.map +1 -1
- package/backend/dist/services/workTaskService.d.ts +3 -2
- package/backend/dist/services/workTaskService.d.ts.map +1 -1
- package/backend/dist/services/workTaskService.js +10 -6
- package/backend/dist/services/workTaskService.js.map +1 -1
- package/backend/dist/types/work.d.ts +3 -0
- package/backend/dist/types/work.d.ts.map +1 -1
- package/backend/dist/types/work.js.map +1 -1
- package/backend/dist/utils/bedrockMantle.d.ts +46 -0
- package/backend/dist/utils/bedrockMantle.d.ts.map +1 -0
- package/backend/dist/utils/bedrockMantle.js +206 -0
- package/backend/dist/utils/bedrockMantle.js.map +1 -0
- package/backend/dist/utils/pluginChatAdapter.d.ts +36 -0
- package/backend/dist/utils/pluginChatAdapter.d.ts.map +1 -1
- package/backend/dist/utils/pluginChatAdapter.js +122 -47
- package/backend/dist/utils/pluginChatAdapter.js.map +1 -1
- package/backend/dist/utils/pluginDefinitionTrust.d.ts.map +1 -1
- package/backend/dist/utils/pluginDefinitionTrust.js +3 -2
- package/backend/dist/utils/pluginDefinitionTrust.js.map +1 -1
- package/backend/dist/utils/pluginValidation.d.ts +1 -1
- package/backend/dist/utils/pluginValidation.d.ts.map +1 -1
- package/backend/dist/utils/pluginValidation.js +11 -0
- package/backend/dist/utils/pluginValidation.js.map +1 -1
- package/backend/package.json +3 -3
- package/frontend/dist/artifact-runtime/.build-fingerprint +1 -1
- package/frontend/dist/artifact-runtime/babel.js +170 -170
- package/frontend/dist/artifact-runtime/framer-motion.js +3 -3
- package/frontend/dist/artifact-runtime/lucide-react.js +1 -1
- package/frontend/dist/artifact-runtime/mathjs.js +1 -1
- package/frontend/dist/artifact-runtime/mermaid.js +1 -1
- package/frontend/dist/artifact-runtime/plotly.js +1 -1
- package/frontend/dist/artifact-runtime/react.js +3 -3
- package/frontend/dist/assets/index-D99DS5c6.js +57 -0
- package/frontend/dist/assets/index-Dz1JufgZ.css +1 -0
- package/frontend/dist/assets/{markdown-math-D1Bj3pDB.css → markdown-math-DzFXvcrH.css} +1 -1
- package/frontend/dist/index.html +32 -32
- package/frontend/dist/js/{ArtifactContainer-BWTN4QSW.js → ArtifactContainer-Cn7X9HGm.js} +1 -1
- package/frontend/dist/js/{ArtifactDemoPage-CCh7lQEw.js → ArtifactDemoPage-Ddpy2O_v.js} +1 -1
- package/frontend/dist/js/{ArtifactSandboxFrame-D1ntMsqe.js → ArtifactSandboxFrame-CdsAqv8H.js} +1 -1
- package/frontend/dist/js/{ArtifactSlideOutPanel-zPEBPoMh.js → ArtifactSlideOutPanel-cVd9X80o.js} +1 -1
- package/frontend/dist/js/{AutomationModal-DN98Eyym.js → AutomationModal-B4UaWjkk.js} +1 -1
- package/frontend/dist/js/{AutomationsPage-3DBwRKME.js → AutomationsPage-huCrvLUp.js} +1 -1
- package/frontend/dist/js/{AvatarUpload-D5_wGUb5.js → AvatarUpload-CG-w6Mpt.js} +1 -1
- package/frontend/dist/js/{Button-CTwi9N3d.js → Button-j68Q8KVh.js} +1 -1
- package/frontend/dist/js/{CalendarPage-CUbGH3Tl.js → CalendarPage-CZXT1w99.js} +1 -1
- package/frontend/dist/js/ChannelsPage-DbtdHnSL.js +1 -0
- package/frontend/dist/js/ChatPage-BZE65kiq.js +14 -0
- package/frontend/dist/js/ConnectModels-DD4bLgdq.js +1 -0
- package/frontend/dist/js/{EvaluationsPage-BaND2qQM.js → EvaluationsPage-Dq53LaXd.js} +1 -1
- package/frontend/dist/js/{FirstTimeSetup-D8ktLJKO.js → FirstTimeSetup-BoJIfuQT.js} +1 -1
- package/frontend/dist/js/{GalleryPage-DXQLoU0l.js → GalleryPage-DKwqeB2A.js} +1 -1
- package/frontend/dist/js/{HomePage-WVug1vWc.js → HomePage-C8bCJfls.js} +1 -1
- package/frontend/dist/js/{LanguageSwitcher-DHHTrDBR.js → LanguageSwitcher-B_YyU5JG.js} +1 -1
- package/frontend/dist/js/{Logo-D1o5k_wt.js → Logo-DnfVtjgj.js} +1 -1
- package/frontend/dist/js/{LogoMark-lnmc98jv.js → LogoMark-BzObGdA9.js} +1 -1
- package/frontend/dist/js/{ModelManagerModals-BPALNMDH.js → ModelManagerModals-BzjZ-QwL.js} +1 -1
- package/frontend/dist/js/{NotesPage-CRzX2Wa8.js → NotesPage-CnaAp_w_.js} +1 -1
- package/frontend/dist/js/{OptimizedSyntaxHighlighter-CzzV6ONG.js → OptimizedSyntaxHighlighter-B0g8cxZQ.js} +1 -1
- package/frontend/dist/js/OptimizedSyntaxHighlighter-B_BbHeO1.js +1 -0
- package/frontend/dist/js/{PasswordStrengthMeter-BGrHWG0B.js → PasswordStrengthMeter-DI4RDv67.js} +1 -1
- package/frontend/dist/js/{PersonasPage-BRU9151f.js → PersonasPage-CH3GUKph.js} +1 -1
- package/frontend/dist/js/{PluginUsagePage-BlhYZq1l.js → PluginUsagePage-d54K2gAj.js} +1 -1
- package/frontend/dist/js/{RichMessageContent-OGBLO64L.js → RichMessageContent-BfYbVBFz.js} +2 -2
- package/frontend/dist/js/RichMessageContent-CDxxs3Tt.js +1 -0
- package/frontend/dist/js/SettingsModal-BvtJcvow.js +19 -0
- package/frontend/dist/js/{SettingsToggle-Du2FSUPO.js → SettingsToggle-DrJ0Bapi.js} +1 -1
- package/frontend/dist/js/{ShareDialog-DEhxnLfn.js → ShareDialog-DaSxkTKS.js} +1 -1
- package/frontend/dist/js/{StrandsPage-DWnUKSb0.js → StrandsPage-BQwz0mWq.js} +1 -1
- package/frontend/dist/js/{SystemPage-cqq8lSxB.js → SystemPage-BqNZoFxR.js} +1 -1
- package/frontend/dist/js/{TurnstileWidget-CVepEMEQ.js → TurnstileWidget-tI50c7Kc.js} +1 -1
- package/frontend/dist/js/{UserManagementPage-2yHv89ZA.js → UserManagementPage-UvPjA9RP.js} +1 -1
- package/frontend/dist/js/{UserManagementPanel-NZmoTk6V.js → UserManagementPanel-C3T1ReJJ.js} +1 -1
- package/frontend/dist/js/{WhatsNewModal-5SwIdmU1.js → WhatsNewModal-CLcU2Ugk.js} +1 -1
- package/frontend/dist/js/WorkPage-BpjGn--1.js +8 -0
- package/frontend/dist/js/{api-CnJYEbRz.js → api-BrHW-VGd.js} +1 -1
- package/frontend/dist/js/api-K_hhqPdx.js +1 -0
- package/frontend/dist/js/{appNavigation-BXNRwrN-.js → appNavigation-B6xYIgLi.js} +1 -1
- package/frontend/dist/js/appStore-DkRdQQeY.js +2 -0
- package/frontend/dist/js/appVersion-BVtSqLVj.js +1 -0
- package/frontend/dist/js/{ar-Bp843BgG.js → ar-XTZGEtBr.js} +1 -1
- package/frontend/dist/js/authStore-DBS6Kbvh.js +1 -0
- package/frontend/dist/js/{authStore-DwaPsICv.js → authStore-DjAsRpNL.js} +3 -3
- package/frontend/dist/js/{bn-DmSGkklY.js → bn-JiK7ZWmy.js} +1 -1
- package/frontend/dist/js/{chatStore-j8bGpkeT.js → chatStore-DpVxt9VX.js} +3 -3
- package/frontend/dist/js/{client-DQy1iGRM.js → client-DppLngAs.js} +2 -2
- package/frontend/dist/js/{config-BbrsmDn2.js → config-4_s8hdqO.js} +1 -1
- package/frontend/dist/js/{cs-BcauIRyG.js → cs-D8ju18CO.js} +1 -1
- package/frontend/dist/js/{da-CJ14DPJ_.js → da-BJWcAoUc.js} +1 -1
- package/frontend/dist/js/{de-ajswyAhq.js → de-CLJLmy69.js} +1 -1
- package/frontend/dist/js/{es-rlf8FsMZ.js → es-BvqHEL-3.js} +1 -1
- package/frontend/dist/js/{evaluationsApi-KVsH7yXe.js → evaluationsApi-DyuW7IJ_.js} +1 -1
- package/frontend/dist/js/{fr-BwkM1wie.js → fr-B8ZoZomI.js} +1 -1
- package/frontend/dist/js/{hi-B3eId9-I.js → hi-AzJLALo-.js} +1 -1
- package/frontend/dist/js/{id-BcgPFJh2.js → id-DZYGQhvC.js} +1 -1
- package/frontend/dist/js/{is-Crvd3K7f.js → is-Da_kvtzW.js} +1 -1
- package/frontend/dist/js/{it-DrLx24hb.js → it-B90zSlqn.js} +1 -1
- package/frontend/dist/js/{ja-DZMcf-oB.js → ja-DU_K1GOr.js} +1 -1
- package/frontend/dist/js/{ko-Cm0NiOE8.js → ko-DicfoO-e.js} +1 -1
- package/frontend/dist/js/{markdown-CZ1tYEW8.js → markdown-DU84620G.js} +1 -1
- package/frontend/dist/js/{markdown-core-KjS96SYW.js → markdown-core-Cyql92Hg.js} +1 -1
- package/frontend/dist/js/{markdown-html-DQEwrWcf.js → markdown-html-CUc2fCgY.js} +1 -1
- package/frontend/dist/js/{markdown-math-CKi32S5d.js → markdown-math-DxPfMKvO.js} +1 -1
- package/frontend/dist/js/{markdownHtml-lrXhxBhK.js → markdownHtml-KhS0cFNH.js} +1 -1
- package/frontend/dist/js/markdownMath-CsfRQAcz.js +1 -0
- package/frontend/dist/js/{messageCodeStyles-CDnMKLgo.js → messageCodeStyles-CuQPkfEK.js} +1 -1
- package/frontend/dist/js/{ms-ymaG59hx.js → ms-CfH7wjUY.js} +1 -1
- package/frontend/dist/js/{nl-CdIdeA9d.js → nl-ELlOz-B3.js} +1 -1
- package/frontend/dist/js/{pl-CuO0b605.js → pl-33dayyUk.js} +1 -1
- package/frontend/dist/js/{pt-Vy413FG5.js → pt-aIXSQPCT.js} +1 -1
- package/frontend/dist/js/react-vendor-CR5VJ85Q.js +9 -0
- package/frontend/dist/js/{router-vendor-HZm4FR0A.js → router-vendor-DqMnEJWK.js} +1 -1
- package/frontend/dist/js/{ru-D0zOEVrL.js → ru-BSvGtBtW.js} +1 -1
- package/frontend/dist/js/{standalone-DbyFjvTU.js → standalone-D_lg5NC9.js} +1 -1
- package/frontend/dist/js/{strandsApi-SeoX_IsY.js → strandsApi-BFbeEpAY.js} +1 -1
- package/frontend/dist/js/{sv-JoS4krpk.js → sv-B7KOz81W.js} +1 -1
- package/frontend/dist/js/{syntax-highlight-DNc3FFCa.js → syntax-highlight-D7dQ5s5-.js} +1 -1
- package/frontend/dist/js/{teamEventStream-CZYdpbVw.js → teamEventStream-DsAS6P4m.js} +1 -1
- package/frontend/dist/js/{th-afhelaqR.js → th-DgpjGxvA.js} +1 -1
- package/frontend/dist/js/{tr-BhSy9UrR.js → tr-BQTbl2h-.js} +1 -1
- package/frontend/dist/js/{ui-CW3gJ4Kl.js → ui-Aq8MP7Ph.js} +2 -2
- package/frontend/dist/js/{ui-vendor-_fvLnmDx.js → ui-vendor-DVTj_sKN.js} +1 -1
- package/frontend/dist/js/{uk-CibXypnZ.js → uk-JLymloot.js} +1 -1
- package/frontend/dist/js/{useChat-CBySqLqR.js → useChat-D3ZAGz70.js} +1 -1
- package/frontend/dist/js/{useDialogFocus-DbW0oA9H.js → useDialogFocus-zSGHkpE4.js} +1 -1
- package/frontend/dist/js/useDictation-B6l8QzeM.js +1 -0
- package/frontend/dist/js/{useQuery-hWmQjdLu.js → useQuery-BTKpXudI.js} +1 -1
- package/frontend/dist/js/{useTranslation-UHEMTEHd.js → useTranslation-Boi0fB1B.js} +1 -1
- package/frontend/dist/js/{utils-DaXuqmQm.js → utils-B-Bhh1pF.js} +1 -1
- package/frontend/dist/js/{utils-vendor-CvhktdS_.js → utils-vendor-DPJG-EG_.js} +1 -1
- package/frontend/dist/js/{vi-Cg0WKHtb.js → vi-BXdLOJ8q.js} +1 -1
- package/frontend/dist/js/workApi-D1xtiG3Q.js +1 -0
- package/frontend/dist/js/{workApi-BqkCbCLQ.js → workApi-UPxumrEF.js} +1 -1
- package/frontend/dist/js/{zh-DTqys9TE.js → zh-gdUf9sXa.js} +1 -1
- package/package.json +3 -3
- package/plugins/anthropic.json +3 -1
- package/plugins/bedrock.json +86 -0
- package/plugins/openrouter.json +2 -0
- package/frontend/dist/assets/index-CJHJxwjA.js +0 -68
- package/frontend/dist/assets/index-DSHdOZRK.css +0 -1
- package/frontend/dist/js/ChannelsPage-B1hC1rRS.js +0 -1
- package/frontend/dist/js/ChatPage-B7mEg5z2.js +0 -14
- package/frontend/dist/js/ConnectModels-Cby89_Mc.js +0 -1
- package/frontend/dist/js/OptimizedSyntaxHighlighter-ajqwyBQm.js +0 -1
- package/frontend/dist/js/RichMessageContent-FiuPwDG7.js +0 -1
- package/frontend/dist/js/SettingsModal-sLkxG-lW.js +0 -19
- package/frontend/dist/js/WorkPage-BIuaVNEC.js +0 -8
- package/frontend/dist/js/api-C2k0OqEk.js +0 -1
- package/frontend/dist/js/appStore-DULGAJnH.js +0 -2
- package/frontend/dist/js/appVersion-DooVk4c_.js +0 -1
- package/frontend/dist/js/authStore-CaLdzyAr.js +0 -1
- package/frontend/dist/js/markdownMath-B0BpyFBS.js +0 -1
- package/frontend/dist/js/react-vendor-wiHys0m2.js +0 -9
- package/frontend/dist/js/useDictation-DEAp64eu.js +0 -1
- package/frontend/dist/js/workApi-gpxrWwCm.js +0 -1
|
@@ -14,10 +14,12 @@
|
|
|
14
14
|
* See the License for the specific language governing permissions and
|
|
15
15
|
* limitations under the License.
|
|
16
16
|
*/
|
|
17
|
+
import { fetchPluginChat, pluginChatProtocol, requestPluginChat, } from '../utils/bedrockMantle.js';
|
|
17
18
|
import { createHash } from 'crypto';
|
|
18
19
|
import { isWorkStrandsModel, workProviderModel, } from '../strands/work-model.js';
|
|
19
20
|
import { userIdHasStrandsAccess } from './strandsAccessService.js';
|
|
20
|
-
import { getOpenAICompatibleSamplingParameters, resolvePluginChatParameters, } from '../utils/pluginChatAdapter.js';
|
|
21
|
+
import { getOpenAICompatibleSamplingParameters, openAICompatibleReasoningFields, resolveAnthropicThinking, resolveGeminiThinking, resolvePluginChatParameters, } from '../utils/pluginChatAdapter.js';
|
|
22
|
+
import { normalizeThinkingPreference, thinkingBudgetTokens, thinkingEffort, } from '../utils/thinkingOptions.js';
|
|
21
23
|
import { OPENAI_RESPONSES_OUTPUT_ITEMS_METADATA_KEY, OPENAI_RESPONSES_STATE_SCOPE_METADATA_KEY, createOpenAIResponsesStateScope, createPluginCredentialFingerprint, normalizeOpenAIResponsesResponse, toOpenAIResponsesInput, toOpenAIResponsesTools, } from '../utils/openAIResponsesAdapter.js';
|
|
22
24
|
import { streamAnthropicResponse, streamOpenAICompatibleResponse, streamOpenAIResponsesResponse, } from '../utils/pluginStreamAdapter.js';
|
|
23
25
|
import { applyModelEndpointTemplate, assertSafePluginEndpoint, buildPluginAuthHeaders, inferPluginApiMode, pluginRequiresApiKey, resolvePluginApiConfig, validatePluginModel, } from '../utils/pluginValidation.js';
|
|
@@ -240,11 +242,11 @@ export class WorkModelProviderService {
|
|
|
240
242
|
Object.assign(headers, extraHeaders);
|
|
241
243
|
const startedAt = Date.now();
|
|
242
244
|
try {
|
|
243
|
-
const response = await this.dependencies.post(
|
|
245
|
+
const response = await requestPluginChat(plugin, endpoint, request.model, url => this.dependencies.post(url, payload, {
|
|
244
246
|
headers,
|
|
245
247
|
signal,
|
|
246
248
|
timeout: 300000,
|
|
247
|
-
});
|
|
249
|
+
}));
|
|
248
250
|
const normalized = normalizePluginWorkResponse(plugin, (response.data ?? {}), request.model, apiConfig.apiMode, providerStateScope);
|
|
249
251
|
this.recordPluginUsage(plugin, userId, request.model, 'success', startedAt, normalized, normalizeProviderTokenUsage(response.data));
|
|
250
252
|
return normalized;
|
|
@@ -358,7 +360,7 @@ export class WorkModelProviderService {
|
|
|
358
360
|
: timeoutSignal;
|
|
359
361
|
const startedAt = Date.now();
|
|
360
362
|
try {
|
|
361
|
-
const response = await
|
|
363
|
+
const response = await fetchPluginChat(plugin, endpoint, request.model, {
|
|
362
364
|
method: 'POST',
|
|
363
365
|
headers,
|
|
364
366
|
body: JSON.stringify(payload),
|
|
@@ -382,7 +384,7 @@ export class WorkModelProviderService {
|
|
|
382
384
|
this.recordPluginUsage(plugin, userId, request.model, 'success', startedAt, normalized);
|
|
383
385
|
return normalized;
|
|
384
386
|
}
|
|
385
|
-
const chunks = plugin.
|
|
387
|
+
const chunks = pluginChatProtocol(plugin, request.model) === 'anthropic'
|
|
386
388
|
? streamAnthropicResponse(response)
|
|
387
389
|
: plugin.id === 'gemini'
|
|
388
390
|
? streamGeminiWorkResponse(response)
|
|
@@ -433,15 +435,15 @@ export class WorkModelProviderService {
|
|
|
433
435
|
export function buildPluginWorkPayload(plugin, request, variables = {}, apiMode = resolvePluginApiConfig(plugin, variables).apiMode, providerStateScope) {
|
|
434
436
|
const options = (request.options || {});
|
|
435
437
|
const params = resolvePluginChatParameters(options, variables);
|
|
436
|
-
if (plugin.
|
|
438
|
+
if (pluginChatProtocol(plugin, request.model) === 'anthropic') {
|
|
437
439
|
return {
|
|
438
|
-
payload: buildAnthropicWorkPayload(request.model, request.messages, request.tools || [], params.maxTokens, Boolean(request.stream)),
|
|
440
|
+
payload: buildAnthropicWorkPayload(request.model, request.messages, request.tools || [], params.maxTokens, Boolean(request.stream), options.think),
|
|
439
441
|
extraHeaders: { 'anthropic-version': '2023-06-01' },
|
|
440
442
|
};
|
|
441
443
|
}
|
|
442
444
|
if (plugin.id === 'gemini') {
|
|
443
445
|
return {
|
|
444
|
-
payload: buildGeminiWorkPayload(request.messages, request.tools || [], params),
|
|
446
|
+
payload: buildGeminiWorkPayload(request.messages, request.tools || [], params, options.think),
|
|
445
447
|
extraHeaders: {},
|
|
446
448
|
};
|
|
447
449
|
}
|
|
@@ -450,6 +452,7 @@ export function buildPluginWorkPayload(plugin, request, variables = {}, apiMode
|
|
|
450
452
|
const tools = toOpenAIResponsesTools(request.tools || []);
|
|
451
453
|
// The ChatGPT-backed codex endpoint rejects sampling parameters outright.
|
|
452
454
|
const supportsSampling = plugin.id !== CODEX_OAUTH_PLUGIN_ID;
|
|
455
|
+
const reasoningEffort = thinkingEffort(options.think);
|
|
453
456
|
return {
|
|
454
457
|
payload: {
|
|
455
458
|
model: request.model,
|
|
@@ -464,6 +467,9 @@ export function buildPluginWorkPayload(plugin, request, variables = {}, apiMode
|
|
|
464
467
|
: {}),
|
|
465
468
|
// The codex endpoint rejects non-streaming requests outright.
|
|
466
469
|
stream: supportsSampling ? Boolean(request.stream) : true,
|
|
470
|
+
...(reasoningEffort
|
|
471
|
+
? { reasoning: { effort: reasoningEffort, summary: 'auto' } }
|
|
472
|
+
: {}),
|
|
467
473
|
store: false,
|
|
468
474
|
include: ['reasoning.encrypted_content'],
|
|
469
475
|
},
|
|
@@ -478,6 +484,7 @@ export function buildPluginWorkPayload(plugin, request, variables = {}, apiMode
|
|
|
478
484
|
tool_choice: request.tools?.length ? 'auto' : undefined,
|
|
479
485
|
...getOpenAICompatibleSamplingParameters(plugin, params),
|
|
480
486
|
max_tokens: params.maxTokens,
|
|
487
|
+
...openAICompatibleReasoningFields(plugin, options.think),
|
|
481
488
|
stream: Boolean(request.stream),
|
|
482
489
|
},
|
|
483
490
|
extraHeaders: {},
|
|
@@ -485,7 +492,7 @@ export function buildPluginWorkPayload(plugin, request, variables = {}, apiMode
|
|
|
485
492
|
}
|
|
486
493
|
export function normalizePluginWorkResponse(plugin, response, model, apiMode = plugin.api_mode ||
|
|
487
494
|
inferPluginApiMode(plugin.endpoint), providerStateScope) {
|
|
488
|
-
if (plugin
|
|
495
|
+
if (pluginChatProtocol(plugin, model) === 'anthropic') {
|
|
489
496
|
return normalizeAnthropicWorkResponse(response, model);
|
|
490
497
|
}
|
|
491
498
|
if (plugin.id === 'gemini') {
|
|
@@ -680,7 +687,19 @@ export function toOpenAIResponsesWorkInput(messages, expectedStateScope) {
|
|
|
680
687
|
flushImages();
|
|
681
688
|
return input;
|
|
682
689
|
}
|
|
683
|
-
|
|
690
|
+
/** Work's output ceiling when the user set none: room for a large tool call. */
|
|
691
|
+
const WORK_DEFAULT_MAX_TOKENS = 4096;
|
|
692
|
+
/**
|
|
693
|
+
* The ceiling for a run that asked for a thinking budget and set no limit of
|
|
694
|
+
* its own: the budget plus Work's usual answer room.
|
|
695
|
+
*/
|
|
696
|
+
const workCeilingForThinking = (think, withoutBudget) => {
|
|
697
|
+
const budget = thinkingBudgetTokens(think);
|
|
698
|
+
return budget === undefined
|
|
699
|
+
? withoutBudget
|
|
700
|
+
: WORK_DEFAULT_MAX_TOKENS + budget;
|
|
701
|
+
};
|
|
702
|
+
function buildAnthropicWorkPayload(model, messages, tools, maxTokens, stream = false, think) {
|
|
684
703
|
const system = messages
|
|
685
704
|
.filter(message => message.role === 'system')
|
|
686
705
|
.map(message => message.content)
|
|
@@ -761,16 +780,24 @@ function buildAnthropicWorkPayload(model, messages, tools, maxTokens, stream = f
|
|
|
761
780
|
});
|
|
762
781
|
appendToolResult = false;
|
|
763
782
|
}
|
|
783
|
+
// An unset level keeps Work's own output ceiling. A chosen one sizes the
|
|
784
|
+
// request as Chat does, with Work's answer room on top of the budget so a
|
|
785
|
+
// large tool call is not squeezed out by thinking.
|
|
786
|
+
const thinking = normalizeThinkingPreference(think) === undefined
|
|
787
|
+
? undefined
|
|
788
|
+
: resolveAnthropicThinking(model, think, maxTokens ?? workCeilingForThinking(think, undefined), WORK_DEFAULT_MAX_TOKENS);
|
|
764
789
|
return {
|
|
765
790
|
model,
|
|
766
791
|
system: system || undefined,
|
|
767
792
|
messages: providerMessages,
|
|
768
793
|
tools: toAnthropicTools(tools),
|
|
769
|
-
|
|
794
|
+
...(thinking
|
|
795
|
+
? { max_tokens: thinking.maxTokens, ...thinking.fields }
|
|
796
|
+
: { max_tokens: maxTokens ?? WORK_DEFAULT_MAX_TOKENS }),
|
|
770
797
|
stream,
|
|
771
798
|
};
|
|
772
799
|
}
|
|
773
|
-
function buildGeminiWorkPayload(messages, tools, params) {
|
|
800
|
+
function buildGeminiWorkPayload(messages, tools, params, think) {
|
|
774
801
|
const system = messages
|
|
775
802
|
.filter(message => message.role === 'system')
|
|
776
803
|
.map(message => message.content)
|
|
@@ -857,8 +884,11 @@ function buildGeminiWorkPayload(messages, tools, params) {
|
|
|
857
884
|
: {}),
|
|
858
885
|
generationConfig: {
|
|
859
886
|
temperature: params.temperature,
|
|
860
|
-
maxOutputTokens: params.maxTokens ?? 4096,
|
|
861
887
|
topP: params.topP,
|
|
888
|
+
...(normalizeThinkingPreference(think) === undefined
|
|
889
|
+
? { maxOutputTokens: params.maxTokens ?? WORK_DEFAULT_MAX_TOKENS }
|
|
890
|
+
: resolveGeminiThinking(think, params.maxTokens ??
|
|
891
|
+
workCeilingForThinking(think, WORK_DEFAULT_MAX_TOKENS))),
|
|
862
892
|
},
|
|
863
893
|
};
|
|
864
894
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workModelProviderService.js","sourceRoot":"","sources":["../../src/services/workModelProviderService.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"workModelProviderService.js","sourceRoot":"","sources":["../../src/services/workModelProviderService.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { WorkMessage, WorkMessagePage, WorkPreviewStatus, WorkProviderSelection, WorkProviderType, WorkRun, WorkRunStatus, WorkAgentIdentityInput, WorkTaskDetail, WorkTaskRecord, WorkTaskSummary, WorkTaskStatus } from '../types/work.js';
|
|
2
|
+
import { type ThinkingPreference } from '../utils/thinkingOptions.js';
|
|
2
3
|
export declare const WORK_MESSAGE_PAGE_SIZE = 200;
|
|
3
4
|
/** Hard ceiling on a run-history page, whatever the caller asks for. */
|
|
4
5
|
export declare const WORK_RUN_LIST_MAX = 100;
|
|
@@ -18,9 +19,9 @@ export declare class WorkTaskService {
|
|
|
18
19
|
private networkPolicyChanges;
|
|
19
20
|
private resolveExecutionPublication;
|
|
20
21
|
withUserLifecycleLease<T>(userId: string, operation: (assertHeld: () => Promise<void>) => Promise<T>): Promise<T>;
|
|
21
|
-
createTaskWithRun(userId: string, message: string, model: string, networkEnabled: boolean, provider?: WorkProviderSelection, hostPath?: string, policyId?: string, identity?: WorkAgentIdentityInput): Promise<WorkTaskDetail>;
|
|
22
|
+
createTaskWithRun(userId: string, message: string, model: string, networkEnabled: boolean, provider?: WorkProviderSelection, hostPath?: string, policyId?: string, identity?: WorkAgentIdentityInput, think?: ThinkingPreference): Promise<WorkTaskDetail>;
|
|
22
23
|
private createTaskWithRunWithLeaseHeld;
|
|
23
|
-
createRun(taskId: string, userId: string, message: string, model?: string, provider?: WorkProviderSelection, messageMetadata?: Record<string, unknown
|
|
24
|
+
createRun(taskId: string, userId: string, message: string, model?: string, provider?: WorkProviderSelection, messageMetadata?: Record<string, unknown>, think?: ThinkingPreference): Promise<WorkTaskDetail>;
|
|
24
25
|
private createRunWithLeaseHeld;
|
|
25
26
|
listTasks(userId: string): Promise<WorkTaskSummary[]>;
|
|
26
27
|
listTaskRecords(userId: string): Promise<WorkTaskRecord[]>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workTaskService.d.ts","sourceRoot":"","sources":["../../src/services/workTaskService.ts"],"names":[],"mappings":"AAiCA,OAAO,EACL,WAAW,EACX,eAAe,EACf,iBAAiB,EACjB,qBAAqB,EACrB,gBAAgB,EAChB,OAAO,EACP,aAAa,EACb,sBAAsB,EACtB,cAAc,EACd,cAAc,EACd,eAAe,EACf,cAAc,EACf,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"workTaskService.d.ts","sourceRoot":"","sources":["../../src/services/workTaskService.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,6 +21,7 @@ import { WORK_EXECUTE_IDEMPOTENCY_SCOPE, WORK_EXECUTE_JOB_TYPE, } from '../platf
|
|
|
21
21
|
import { getDurableJobRuntime } from '../platform/jobs/durableJobRuntime.js';
|
|
22
22
|
import { isFinishedWorkStatus } from '../types/work.js';
|
|
23
23
|
import { createLogger } from '../utils/logger.js';
|
|
24
|
+
import { normalizeThinkingPreference, } from '../utils/thinkingOptions.js';
|
|
24
25
|
import { getCoordinator } from '../platform/coordination/service.js';
|
|
25
26
|
import { randomUUID } from 'node:crypto';
|
|
26
27
|
const logger = createLogger('services:work-task');
|
|
@@ -162,10 +163,10 @@ export class WorkTaskService {
|
|
|
162
163
|
await lease.release().catch(() => false);
|
|
163
164
|
}
|
|
164
165
|
}
|
|
165
|
-
async createTaskWithRun(userId, message, model, networkEnabled, provider = { providerType: 'ollama' }, hostPath, policyId, identity) {
|
|
166
|
-
return this.withUserLifecycleLease(userId, assertHeld => this.createTaskWithRunWithLeaseHeld(userId, message, model, networkEnabled, provider, hostPath, policyId, identity, assertHeld));
|
|
166
|
+
async createTaskWithRun(userId, message, model, networkEnabled, provider = { providerType: 'ollama' }, hostPath, policyId, identity, think) {
|
|
167
|
+
return this.withUserLifecycleLease(userId, assertHeld => this.createTaskWithRunWithLeaseHeld(userId, message, model, networkEnabled, provider, hostPath, policyId, identity, assertHeld, think));
|
|
167
168
|
}
|
|
168
|
-
async createTaskWithRunWithLeaseHeld(userId, message, model, networkEnabled, provider, hostPath, policyId, identity, assertHeld = async () => undefined) {
|
|
169
|
+
async createTaskWithRunWithLeaseHeld(userId, message, model, networkEnabled, provider, hostPath, policyId, identity, assertHeld = async () => undefined, think) {
|
|
169
170
|
await this.assertUserIsActive(userId);
|
|
170
171
|
const selectedProvider = normalizeProvider(provider);
|
|
171
172
|
const taskId = randomUUID();
|
|
@@ -212,6 +213,7 @@ export class WorkTaskService {
|
|
|
212
213
|
summary: null,
|
|
213
214
|
changed_files: null,
|
|
214
215
|
exit_state: null,
|
|
216
|
+
think: think === undefined ? null : String(think),
|
|
215
217
|
created_at: now,
|
|
216
218
|
started_at: null,
|
|
217
219
|
finished_at: null,
|
|
@@ -248,10 +250,10 @@ export class WorkTaskService {
|
|
|
248
250
|
}
|
|
249
251
|
return this.requireTaskDetail(taskId, userId);
|
|
250
252
|
}
|
|
251
|
-
async createRun(taskId, userId, message, model, provider, messageMetadata) {
|
|
252
|
-
return this.withUserLifecycleLease(userId, assertHeld => this.createRunWithLeaseHeld(taskId, userId, message, model, provider, assertHeld, messageMetadata));
|
|
253
|
+
async createRun(taskId, userId, message, model, provider, messageMetadata, think) {
|
|
254
|
+
return this.withUserLifecycleLease(userId, assertHeld => this.createRunWithLeaseHeld(taskId, userId, message, model, provider, assertHeld, messageMetadata, think));
|
|
253
255
|
}
|
|
254
|
-
async createRunWithLeaseHeld(taskId, userId, message, model, provider, assertHeld = async () => undefined, messageMetadata) {
|
|
256
|
+
async createRunWithLeaseHeld(taskId, userId, message, model, provider, assertHeld = async () => undefined, messageMetadata, think) {
|
|
255
257
|
const task = await this.requireMutableTaskRecord(taskId, userId);
|
|
256
258
|
if (await this.getActiveRun(taskId)) {
|
|
257
259
|
throw new WorkConflictError('This Work task already has an active run.');
|
|
@@ -275,6 +277,7 @@ export class WorkTaskService {
|
|
|
275
277
|
summary: null,
|
|
276
278
|
changed_files: null,
|
|
277
279
|
exit_state: null,
|
|
280
|
+
think: think === undefined ? null : String(think),
|
|
278
281
|
created_at: now,
|
|
279
282
|
started_at: null,
|
|
280
283
|
finished_at: null,
|
|
@@ -977,6 +980,7 @@ const mapRun = (row) => ({
|
|
|
977
980
|
summary: row.summary || undefined,
|
|
978
981
|
changedFiles: parseChangedFiles(row.changed_files ?? null),
|
|
979
982
|
exitState: row.exit_state || undefined,
|
|
983
|
+
think: normalizeThinkingPreference(row.think ?? undefined),
|
|
980
984
|
createdAt: row.created_at,
|
|
981
985
|
startedAt: row.started_at || undefined,
|
|
982
986
|
finishedAt: row.finished_at || undefined,
|