@tutti-os/agent-gui 0.0.82 → 0.0.83

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.
Files changed (35) hide show
  1. package/dist/agent-conversation/index.js +5 -5
  2. package/dist/agent-message-center/index.js +7 -7
  3. package/dist/{chunk-AIYGF64O.js → chunk-3355GEBI.js} +2 -2
  4. package/dist/{chunk-PVLUSXH5.js → chunk-6YLA7R4S.js} +2 -2
  5. package/dist/{chunk-Z7KHS6LK.js → chunk-A2JPL5N6.js} +2 -2
  6. package/dist/{chunk-5WZEOARY.js → chunk-AA75BOX3.js} +3 -1
  7. package/dist/chunk-AA75BOX3.js.map +1 -0
  8. package/dist/{chunk-5BFYTHJB.js → chunk-CVPWQHQH.js} +2 -2
  9. package/dist/{chunk-3PB2FL74.js → chunk-CXJEQQR5.js} +2 -2
  10. package/dist/{chunk-FYSYKWN6.js → chunk-HUNUSBQQ.js} +2 -2
  11. package/dist/{chunk-T56L2H2H.js → chunk-MQ6WW3CD.js} +2 -2
  12. package/dist/{chunk-U4F3VJ5C.js → chunk-N7EX6XK3.js} +3 -3
  13. package/dist/{chunk-GE4CCOWC.js → chunk-UNLTQUPO.js} +4 -4
  14. package/dist/{chunk-CCJUGHQQ.js → chunk-XCO6DDLR.js} +4 -4
  15. package/dist/context-mention-palette/index.js +6 -6
  16. package/dist/i18n/index.d.ts +2 -0
  17. package/dist/i18n/index.js +2 -2
  18. package/dist/index.d.ts +1 -0
  19. package/dist/index.js +171 -32
  20. package/dist/index.js.map +1 -1
  21. package/dist/workbench/index.js +3 -3
  22. package/dist/workbench/sessionTitle.js +3 -3
  23. package/dist/workspace-agent-generated-files.js +3 -3
  24. package/package.json +12 -12
  25. package/dist/chunk-5WZEOARY.js.map +0 -1
  26. /package/dist/{chunk-AIYGF64O.js.map → chunk-3355GEBI.js.map} +0 -0
  27. /package/dist/{chunk-PVLUSXH5.js.map → chunk-6YLA7R4S.js.map} +0 -0
  28. /package/dist/{chunk-Z7KHS6LK.js.map → chunk-A2JPL5N6.js.map} +0 -0
  29. /package/dist/{chunk-5BFYTHJB.js.map → chunk-CVPWQHQH.js.map} +0 -0
  30. /package/dist/{chunk-3PB2FL74.js.map → chunk-CXJEQQR5.js.map} +0 -0
  31. /package/dist/{chunk-FYSYKWN6.js.map → chunk-HUNUSBQQ.js.map} +0 -0
  32. /package/dist/{chunk-T56L2H2H.js.map → chunk-MQ6WW3CD.js.map} +0 -0
  33. /package/dist/{chunk-U4F3VJ5C.js.map → chunk-N7EX6XK3.js.map} +0 -0
  34. /package/dist/{chunk-GE4CCOWC.js.map → chunk-UNLTQUPO.js.map} +0 -0
  35. /package/dist/{chunk-CCJUGHQQ.js.map → chunk-XCO6DDLR.js.map} +0 -0
@@ -9,7 +9,7 @@ import {
9
9
  import {
10
10
  translate,
11
11
  useTranslation
12
- } from "./chunk-T56L2H2H.js";
12
+ } from "./chunk-MQ6WW3CD.js";
13
13
 
14
14
  // agent-gui/agentGuiNode/agentRichText/agentFileMentionExtension.ts
15
15
  import { mergeAttributes, Node } from "@tiptap/core";
@@ -1568,4 +1568,4 @@ export {
1568
1568
  mentionItemToAttrs,
1569
1569
  attrsToMentionItem
1570
1570
  };
1571
- //# sourceMappingURL=chunk-3PB2FL74.js.map
1571
+ //# sourceMappingURL=chunk-CXJEQQR5.js.map
@@ -7,7 +7,7 @@ import {
7
7
  import {
8
8
  translate,
9
9
  useTranslation
10
- } from "./chunk-T56L2H2H.js";
10
+ } from "./chunk-MQ6WW3CD.js";
11
11
  import {
12
12
  resolveAgentWorkspaceFileVisualKind
13
13
  } from "./chunk-PJP5BUU6.js";
@@ -3845,4 +3845,4 @@ export {
3845
3845
  CustomScrollArea,
3846
3846
  MessageSquareMoreIcon
3847
3847
  };
3848
- //# sourceMappingURL=chunk-FYSYKWN6.js.map
3848
+ //# sourceMappingURL=chunk-HUNUSBQQ.js.map
@@ -6,7 +6,7 @@ import {
6
6
  setCurrentAgentGuiI18nRuntime,
7
7
  translate,
8
8
  translateInUiLanguage
9
- } from "./chunk-5WZEOARY.js";
9
+ } from "./chunk-AA75BOX3.js";
10
10
 
11
11
  // i18n/index.ts
12
12
  import React, {
@@ -68,4 +68,4 @@ export {
68
68
  AgentGuiI18nProvider,
69
69
  useTranslation
70
70
  };
71
- //# sourceMappingURL=chunk-T56L2H2H.js.map
71
+ //# sourceMappingURL=chunk-MQ6WW3CD.js.map
@@ -7,14 +7,14 @@ import {
7
7
  AgentGUIConversation_styles_default,
8
8
  MessageSquareMoreIcon,
9
9
  extractAgentMcpToolTarget
10
- } from "./chunk-FYSYKWN6.js";
10
+ } from "./chunk-HUNUSBQQ.js";
11
11
  import {
12
12
  getOptionalAgentHostApi,
13
13
  useOptionalAgentHostApi
14
14
  } from "./chunk-LR4FA5X6.js";
15
15
  import {
16
16
  translate
17
- } from "./chunk-T56L2H2H.js";
17
+ } from "./chunk-MQ6WW3CD.js";
18
18
 
19
19
  // shared/agentConversation/approvalOptionPresentation.ts
20
20
  function approvalOptionDisplayLabel(option, intent = {}) {
@@ -1172,4 +1172,4 @@ export {
1172
1172
  isPromptRequestIdTitle,
1173
1173
  AgentInteractivePromptSurface
1174
1174
  };
1175
- //# sourceMappingURL=chunk-U4F3VJ5C.js.map
1175
+ //# sourceMappingURL=chunk-N7EX6XK3.js.map
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  userAvatarPlaceholderUrl,
3
3
  workspaceAgentActivityStatusLabel
4
- } from "./chunk-5BFYTHJB.js";
4
+ } from "./chunk-CVPWQHQH.js";
5
5
  import {
6
6
  normalizeAgentSessionMentionTitle
7
- } from "./chunk-3PB2FL74.js";
7
+ } from "./chunk-CXJEQQR5.js";
8
8
  import {
9
9
  resolveAgentMentionFileThumbnailUrl,
10
10
  resolveAgentMentionFileVisualKind
@@ -15,7 +15,7 @@ import {
15
15
  } from "./chunk-LR4FA5X6.js";
16
16
  import {
17
17
  translate
18
- } from "./chunk-T56L2H2H.js";
18
+ } from "./chunk-MQ6WW3CD.js";
19
19
  import {
20
20
  AGENT_CONTEXT_MENTION_PROVIDER_IDS
21
21
  } from "./chunk-JM24HADP.js";
@@ -2195,4 +2195,4 @@ export {
2195
2195
  AgentFileMentionPalette,
2196
2196
  AgentContextMentionPalette
2197
2197
  };
2198
- //# sourceMappingURL=chunk-GE4CCOWC.js.map
2198
+ //# sourceMappingURL=chunk-UNLTQUPO.js.map
@@ -15,7 +15,7 @@ import {
15
15
  resolveWorkspaceFilePathCandidate,
16
16
  resolveWorkspaceLinkAction,
17
17
  useAgentTargetPresentations
18
- } from "./chunk-FYSYKWN6.js";
18
+ } from "./chunk-HUNUSBQQ.js";
19
19
  import {
20
20
  classifyFailedAgentMessage,
21
21
  openAgentEnvPanel,
@@ -28,7 +28,7 @@ import {
28
28
  formatAgentMentionMarkdown,
29
29
  mentionItemToAttrs,
30
30
  parseAgentMentionMarkdown
31
- } from "./chunk-3PB2FL74.js";
31
+ } from "./chunk-CXJEQQR5.js";
32
32
  import {
33
33
  fileChangeCountFromChanges,
34
34
  fileChangeEntriesFromChanges,
@@ -45,7 +45,7 @@ import {
45
45
  import {
46
46
  getActiveUiLanguage,
47
47
  translate
48
- } from "./chunk-T56L2H2H.js";
48
+ } from "./chunk-MQ6WW3CD.js";
49
49
 
50
50
  // agent-gui/agentGuiNode/model/agentGuiNodeTypes.ts
51
51
  var AGENT_PASTED_TEXT_BLOCK_KIND = "pasted-text";
@@ -15479,4 +15479,4 @@ export {
15479
15479
  AgentConversationFlow,
15480
15480
  useProjectedAgentConversation
15481
15481
  };
15482
- //# sourceMappingURL=chunk-CCJUGHQQ.js.map
15482
+ //# sourceMappingURL=chunk-XCO6DDLR.js.map
@@ -4,19 +4,19 @@ import {
4
4
  AgentMentionSearchController,
5
5
  flattenAgentMentionPaletteEntries,
6
6
  groupStartKeys
7
- } from "../chunk-GE4CCOWC.js";
8
- import "../chunk-Z7KHS6LK.js";
9
- import "../chunk-5BFYTHJB.js";
7
+ } from "../chunk-UNLTQUPO.js";
8
+ import "../chunk-A2JPL5N6.js";
9
+ import "../chunk-CVPWQHQH.js";
10
10
  import "../chunk-IBIMGLCD.js";
11
- import "../chunk-3PB2FL74.js";
11
+ import "../chunk-CXJEQQR5.js";
12
12
  import "../chunk-Y35GDLP2.js";
13
13
  import "../chunk-LUGELG5V.js";
14
14
  import "../chunk-LR4FA5X6.js";
15
15
  import "../chunk-4HP6V2YA.js";
16
- import "../chunk-T56L2H2H.js";
16
+ import "../chunk-MQ6WW3CD.js";
17
17
  import "../chunk-PJP5BUU6.js";
18
18
  import "../chunk-XDV4ZRVK.js";
19
- import "../chunk-5WZEOARY.js";
19
+ import "../chunk-AA75BOX3.js";
20
20
  import {
21
21
  AGENT_CONTEXT_MENTION_PROVIDER_IDS
22
22
  } from "../chunk-JM24HADP.js";
@@ -370,6 +370,7 @@ declare const agentGuiI18nResources: {
370
370
  readonly reasoningOptionHigh: "High";
371
371
  readonly reasoningOptionXHigh: "X-High";
372
372
  readonly reasoningOptionMax: "Max";
373
+ readonly reasoningOptionUltra: "Ultra";
373
374
  readonly speedLabel: "Speed";
374
375
  readonly speedSelectionLabel: "Speed";
375
376
  readonly speedOptionStandard: "Standard";
@@ -2835,6 +2836,7 @@ declare const agentGuiI18nResources: {
2835
2836
  readonly reasoningOptionHigh: "高";
2836
2837
  readonly reasoningOptionXHigh: "超高";
2837
2838
  readonly reasoningOptionMax: "最高";
2839
+ readonly reasoningOptionUltra: "极致";
2838
2840
  readonly speedLabel: "速度";
2839
2841
  readonly speedSelectionLabel: "速度";
2840
2842
  readonly speedOptionStandard: "标准";
@@ -6,8 +6,8 @@ import {
6
6
  translate,
7
7
  translateInUiLanguage,
8
8
  useTranslation
9
- } from "../chunk-T56L2H2H.js";
10
- import "../chunk-5WZEOARY.js";
9
+ } from "../chunk-MQ6WW3CD.js";
10
+ import "../chunk-AA75BOX3.js";
11
11
  export {
12
12
  AgentGuiI18nProvider,
13
13
  agentGuiI18nModule,
package/dist/index.d.ts CHANGED
@@ -691,6 +691,7 @@ interface AgentComposerProps {
691
691
  reasoningOptionHigh: string;
692
692
  reasoningOptionXHigh: string;
693
693
  reasoningOptionMax: string;
694
+ reasoningOptionUltra: string;
694
695
  speedLabel: string;
695
696
  speedSelectionLabel: string;
696
697
  speedOptionStandard: string;
package/dist/index.js CHANGED
@@ -32,7 +32,7 @@ import {
32
32
  import {
33
33
  AgentInteractivePromptSurface,
34
34
  approvalOptionDisplayLabel
35
- } from "./chunk-U4F3VJ5C.js";
35
+ } from "./chunk-N7EX6XK3.js";
36
36
  import {
37
37
  PLAN_IMPLEMENTATION_ACTION_FEEDBACK,
38
38
  PLAN_IMPLEMENTATION_ACTION_IMPLEMENT,
@@ -51,7 +51,7 @@ import {
51
51
  resolveAgentGUIExplicitConversationTitle,
52
52
  resolveAgentGUIProviderDisplayLabel,
53
53
  resolveAgentGUIProviderIdentity
54
- } from "./chunk-AIYGF64O.js";
54
+ } from "./chunk-3355GEBI.js";
55
55
  import {
56
56
  AGENT_PASTED_TEXT_BLOCK_KIND,
57
57
  AGENT_PASTED_TEXT_MENTION_KIND,
@@ -88,14 +88,14 @@ import {
88
88
  textPromptContent,
89
89
  toLocalShortDateTime,
90
90
  useProjectedAgentConversation
91
- } from "./chunk-CCJUGHQQ.js";
91
+ } from "./chunk-XCO6DDLR.js";
92
92
  import {
93
93
  AgentMessageMarkdown,
94
94
  AgentTargetPresentationProvider,
95
95
  ZoomableImage,
96
96
  cn,
97
97
  resolveWorkspaceLinkAction
98
- } from "./chunk-FYSYKWN6.js";
98
+ } from "./chunk-HUNUSBQQ.js";
99
99
  import {
100
100
  openAgentEnvPanel
101
101
  } from "./chunk-PSLAWU25.js";
@@ -106,12 +106,12 @@ import {
106
106
  DEFAULT_AGENT_MENTION_FILTER,
107
107
  agentMentionItemKey,
108
108
  preloadAgentMentionBrowse
109
- } from "./chunk-GE4CCOWC.js";
109
+ } from "./chunk-UNLTQUPO.js";
110
110
  import {
111
111
  buildWorkspaceAgentActivityListViewModel,
112
112
  isWorkspaceAgentUntitledTask
113
- } from "./chunk-Z7KHS6LK.js";
114
- import "./chunk-5BFYTHJB.js";
113
+ } from "./chunk-A2JPL5N6.js";
114
+ import "./chunk-CVPWQHQH.js";
115
115
  import {
116
116
  resolveWorkspaceAgentSessionSortTimeUnixMs
117
117
  } from "./chunk-IBIMGLCD.js";
@@ -125,7 +125,7 @@ import {
125
125
  mentionItemToAttrs,
126
126
  normalizeAgentSessionMentionTitle,
127
127
  parseMentionItemFromHref
128
- } from "./chunk-3PB2FL74.js";
128
+ } from "./chunk-CXJEQQR5.js";
129
129
  import "./chunk-Y35GDLP2.js";
130
130
  import "./chunk-LUGELG5V.js";
131
131
  import {
@@ -166,14 +166,14 @@ import {
166
166
  agentGuiI18nResources,
167
167
  translate,
168
168
  useTranslation
169
- } from "./chunk-T56L2H2H.js";
169
+ } from "./chunk-MQ6WW3CD.js";
170
170
  import "./chunk-PJP5BUU6.js";
171
171
  import {
172
172
  agentColorfulUrl,
173
173
  cursorColorfulUrl,
174
174
  normalizeManagedAgentProvider
175
175
  } from "./chunk-XDV4ZRVK.js";
176
- import "./chunk-5WZEOARY.js";
176
+ import "./chunk-AA75BOX3.js";
177
177
  import {
178
178
  AGENT_CONTEXT_MENTION_PROVIDER_IDS
179
179
  } from "./chunk-JM24HADP.js";
@@ -6463,6 +6463,86 @@ function reasoningConfigOptionIdForProvider(provider) {
6463
6463
  function speedConfigOptionIdForProvider(provider) {
6464
6464
  return provider === "codex" ? "service_tier" : "fast";
6465
6465
  }
6466
+ function composerSettingOptionsFromActivity(options) {
6467
+ return options.map((option) => ({ ...option }));
6468
+ }
6469
+ function reasoningOptionsFromRuntimeConfig(runtimeContext) {
6470
+ const configOptions = runtimeContext?.configOptions;
6471
+ if (!Array.isArray(configOptions)) {
6472
+ return null;
6473
+ }
6474
+ for (const rawOption of configOptions) {
6475
+ const option = recordValue(rawOption);
6476
+ const id = normalizeConfigOptionValue(option?.id);
6477
+ if (!option || !id || !["reasoning_effort", "model_reasoning_effort", "effort"].includes(id)) {
6478
+ continue;
6479
+ }
6480
+ const rawEntries = option.options;
6481
+ if (!Array.isArray(rawEntries)) {
6482
+ return null;
6483
+ }
6484
+ const options = [];
6485
+ for (const rawEntry of rawEntries) {
6486
+ const entry = recordValue(rawEntry);
6487
+ const value = normalizeConfigOptionValue(entry?.value);
6488
+ if (!entry || !value || options.some((candidate) => candidate.value === value)) {
6489
+ continue;
6490
+ }
6491
+ const label = normalizeConfigOptionValue(entry.name) ?? normalizeConfigOptionValue(entry.label) ?? value;
6492
+ const description = normalizeConfigOptionValue(entry.description);
6493
+ options.push({
6494
+ value,
6495
+ label,
6496
+ ...description ? { description } : {}
6497
+ });
6498
+ }
6499
+ return {
6500
+ currentValue: normalizeConfigOptionValue(
6501
+ option.currentValue ?? option.current_value
6502
+ ),
6503
+ options
6504
+ };
6505
+ }
6506
+ return null;
6507
+ }
6508
+ function reasoningProfileForModel(options, model) {
6509
+ if (!options || !model) {
6510
+ return null;
6511
+ }
6512
+ const profiles = recordValue(
6513
+ options.runtimeContext?.modelReasoningOptionsByModel
6514
+ );
6515
+ const profile = recordValue(profiles?.[model]);
6516
+ if (!profile || !Array.isArray(profile.options)) {
6517
+ return null;
6518
+ }
6519
+ const runtime = reasoningOptionsFromRuntimeConfig({
6520
+ configOptions: [
6521
+ {
6522
+ id: "reasoning_effort",
6523
+ currentValue: profile.defaultValue,
6524
+ options: profile.options
6525
+ }
6526
+ ]
6527
+ });
6528
+ return runtime ? {
6529
+ defaultValue: normalizeConfigOptionValue(profile.defaultValue),
6530
+ options: runtime.options
6531
+ } : null;
6532
+ }
6533
+ function reasoningSelectionForModelFromComposerOptions(options, currentValue, selectedModel) {
6534
+ const modelProfile = reasoningProfileForModel(options, selectedModel);
6535
+ if (!modelProfile) {
6536
+ return null;
6537
+ }
6538
+ const supportedValues = new Set(
6539
+ modelProfile.options.map((option) => option.value)
6540
+ );
6541
+ return {
6542
+ options: modelProfile.options,
6543
+ currentValue: (currentValue && supportedValues.has(currentValue) ? currentValue : null) ?? modelProfile.defaultValue ?? modelProfile.options[0]?.value ?? null
6544
+ };
6545
+ }
6466
6546
  function liveModelOptionValuesFromRuntimeContext(runtimeContext) {
6467
6547
  const configOptions = runtimeContext?.configOptions;
6468
6548
  if (!Array.isArray(configOptions)) {
@@ -6503,6 +6583,25 @@ function composerOptionsMissingLiveModelValues(options, liveValues) {
6503
6583
  const known = new Set(options.models.map((option) => option.value));
6504
6584
  return liveValues.some((value) => !known.has(value));
6505
6585
  }
6586
+ function reasoningSelectionFromComposerOptions(options, currentValue, selectedModel = null, sessionRuntimeContext = null) {
6587
+ const liveConfig = reasoningOptionsFromRuntimeConfig(sessionRuntimeContext);
6588
+ const modelSelection = reasoningSelectionForModelFromComposerOptions(
6589
+ options,
6590
+ currentValue,
6591
+ selectedModel
6592
+ );
6593
+ const sourceOptions = liveConfig ? liveConfig.options : modelSelection ? modelSelection.options : options ? composerSettingOptionsFromActivity(options.reasoningEfforts) : [];
6594
+ if (!options && !liveConfig && !modelSelection) {
6595
+ return null;
6596
+ }
6597
+ const supportedValues = new Set(sourceOptions.map((option) => option.value));
6598
+ const supportedValue = (value) => value && supportedValues.has(value) ? value : null;
6599
+ const resolvedCurrentValue = supportedValue(currentValue) ?? supportedValue(liveConfig?.currentValue) ?? supportedValue(modelSelection?.currentValue) ?? sourceOptions[0]?.value ?? null;
6600
+ return {
6601
+ options: sourceOptions,
6602
+ currentValue: resolvedCurrentValue
6603
+ };
6604
+ }
6506
6605
  function resolveEffectiveComposerSettings(input) {
6507
6606
  return {
6508
6607
  model: normalizeOptionalText(input.settings.model) ?? null,
@@ -6852,20 +6951,29 @@ function sanitizeComposerSettingsForOptions(settings, options) {
6852
6951
  return settings;
6853
6952
  }
6854
6953
  const modelValues = composerOptionValues(options.models);
6855
- const reasoningValues = composerOptionValues(options.reasoningEfforts);
6954
+ const model = normalizeOptionalText2(settings.model);
6955
+ const reasoningEffort = normalizeOptionalText2(
6956
+ settings.reasoningEffort
6957
+ );
6958
+ const modelReasoningSelection = reasoningSelectionForModelFromComposerOptions(
6959
+ options,
6960
+ reasoningEffort,
6961
+ model
6962
+ );
6963
+ const reasoningValues = composerOptionValues(
6964
+ modelReasoningSelection?.options ?? options.reasoningEfforts
6965
+ );
6856
6966
  const speedValues = composerOptionValues(options.speeds ?? []);
6857
6967
  const permissionValues = new Set(
6858
6968
  options.permissionConfig?.modes.map((mode) => mode.id) ?? []
6859
6969
  );
6860
- const model = normalizeOptionalText2(settings.model);
6861
- const reasoningEffort = normalizeOptionalText2(settings.reasoningEffort);
6862
6970
  const speed = normalizeOptionalText2(settings.speed);
6863
6971
  const permissionModeId = normalizePermissionModeId(settings.permissionModeId);
6864
6972
  const modelOptionsAreAuthoritative = options.provider === "claude-code";
6865
6973
  return {
6866
6974
  ...settings,
6867
6975
  model: modelOptionsAreAuthoritative && model && modelValues.size > 0 && !modelValues.has(model) ? null : model,
6868
- reasoningEffort: reasoningEffort && reasoningValues.size > 0 && !reasoningValues.has(reasoningEffort) ? null : reasoningEffort,
6976
+ reasoningEffort: reasoningEffort && reasoningValues.size > 0 && !reasoningValues.has(reasoningEffort) ? modelReasoningSelection?.currentValue ?? null : reasoningEffort,
6869
6977
  speed: speed && speedValues.size > 0 && !speedValues.has(speed) ? null : speed,
6870
6978
  permissionModeId: permissionModeId && permissionValues.size > 0 && !permissionValues.has(permissionModeId) ? null : permissionModeId
6871
6979
  };
@@ -8126,7 +8234,7 @@ function draftAgentSessionIdFromComposerOptions(options) {
8126
8234
  options?.runtimeContext?.draftAgentSessionId
8127
8235
  );
8128
8236
  }
8129
- function composerSettingOptionsFromActivity(options) {
8237
+ function composerSettingOptionsFromActivity2(options) {
8130
8238
  return options.map((option) => ({ ...option }));
8131
8239
  }
8132
8240
  function modelSelectionFromComposerOptions(options, currentValue) {
@@ -8134,7 +8242,7 @@ function modelSelectionFromComposerOptions(options, currentValue) {
8134
8242
  return null;
8135
8243
  }
8136
8244
  return {
8137
- options: composerSettingOptionsFromActivity(options.models),
8245
+ options: composerSettingOptionsFromActivity2(options.models),
8138
8246
  currentValue
8139
8247
  };
8140
8248
  }
@@ -8156,21 +8264,12 @@ function configOptionCurrentValue(runtimeContext, ids) {
8156
8264
  }
8157
8265
  return null;
8158
8266
  }
8159
- function reasoningSelectionFromComposerOptions(options, currentValue) {
8160
- if (!options) {
8161
- return null;
8162
- }
8163
- return {
8164
- options: composerSettingOptionsFromActivity(options.reasoningEfforts),
8165
- currentValue
8166
- };
8167
- }
8168
8267
  function speedSelectionFromComposerOptions(options, currentValue) {
8169
8268
  if (!options) {
8170
8269
  return null;
8171
8270
  }
8172
8271
  return {
8173
- options: composerSettingOptionsFromActivity(options.speeds ?? []),
8272
+ options: composerSettingOptionsFromActivity2(options.speeds ?? []),
8174
8273
  currentValue
8175
8274
  };
8176
8275
  }
@@ -9275,6 +9374,10 @@ function useAgentGUINodeController({
9275
9374
  composerOptions: providerComposerOptions,
9276
9375
  sessionRuntimeContext: activeSessionState?.runtimeContext
9277
9376
  }) ?? false;
9377
+ const activeSessionRuntimeModel = configOptionCurrentValue(
9378
+ activeSessionRuntimeContext,
9379
+ ["model"]
9380
+ );
9278
9381
  const backgroundAgentCount = useMemo3(
9279
9382
  () => activeBackgroundAgentCount(activeSessionRuntimeContext),
9280
9383
  [activeSessionRuntimeContext]
@@ -11142,11 +11245,22 @@ function useAgentGUINodeController({
11142
11245
  if (isCreatingConversationRef.current) {
11143
11246
  return;
11144
11247
  }
11145
- const settings = readNodeDefaultDraftSettings({
11248
+ const defaultDraftSettings = readNodeDefaultDraftSettings({
11146
11249
  data: targetData.data,
11147
11250
  defaultReasoningEffort,
11148
11251
  drafts: draftSettingsBySessionIdRef.current
11149
11252
  });
11253
+ const activeAgentSessionId = activeConversationIdRef.current;
11254
+ const activeControlState = activeAgentSessionId ? getAgentSessionView(sessionViewRef(activeAgentSessionId))?.controlState ?? null : null;
11255
+ const activeSessionSettings = activeControlState?.settings ?? null;
11256
+ const activeRuntimeModel = configOptionCurrentValue(
11257
+ activeControlState?.runtimeContext,
11258
+ ["model"]
11259
+ );
11260
+ const settings = activeSessionSettings ? {
11261
+ ...activeSessionSettings,
11262
+ ...activeRuntimeModel ? { model: activeRuntimeModel } : {}
11263
+ } : defaultDraftSettings;
11150
11264
  const composerOptionsCwd = selectedProjectPathRef.current?.trim() || workspacePath.trim() || "";
11151
11265
  void Promise.resolve(
11152
11266
  agentActivityRuntime.getComposerOptions({
@@ -11159,7 +11273,13 @@ function useAgentGUINodeController({
11159
11273
  })
11160
11274
  ).catch(() => void 0);
11161
11275
  },
11162
- [agentActivityRuntime, defaultReasoningEffort, workspaceId, workspacePath]
11276
+ [
11277
+ agentActivityRuntime,
11278
+ defaultReasoningEffort,
11279
+ sessionViewRef,
11280
+ workspaceId,
11281
+ workspacePath
11282
+ ]
11163
11283
  );
11164
11284
  const loadDraftComposerOptions = useCallback4(
11165
11285
  (options) => {
@@ -11275,6 +11395,12 @@ function useAgentGUINodeController({
11275
11395
  );
11276
11396
  }, [
11277
11397
  activeConversationId,
11398
+ activeSessionRuntimeModel,
11399
+ activeSessionState?.settings?.model,
11400
+ activeSessionState?.settings?.permissionModeId,
11401
+ activeSessionState?.settings?.planMode,
11402
+ activeSessionState?.settings?.reasoningEffort,
11403
+ activeSessionState?.settings?.speed,
11278
11404
  composerTargetData.agentTargetId,
11279
11405
  composerTargetData.provider,
11280
11406
  isComposerHome,
@@ -15316,9 +15442,16 @@ function useAgentGUINodeController({
15316
15442
  const activeSessionReasoningSelection = useMemo3(
15317
15443
  () => reasoningSelectionFromComposerOptions(
15318
15444
  providerComposerOptions,
15319
- draftReasoningEffort
15445
+ draftReasoningEffort,
15446
+ draftModel,
15447
+ activeSessionRuntimeContext ?? null
15320
15448
  ),
15321
- [draftReasoningEffort, providerComposerOptions]
15449
+ [
15450
+ activeSessionRuntimeContext,
15451
+ draftModel,
15452
+ draftReasoningEffort,
15453
+ providerComposerOptions
15454
+ ]
15322
15455
  );
15323
15456
  const activeSessionModelSelection = useMemo3(
15324
15457
  () => modelSelectionFromComposerOptions(providerComposerOptions, draftModel),
@@ -15347,7 +15480,7 @@ function useAgentGUINodeController({
15347
15480
  composerTargetData.provider
15348
15481
  );
15349
15482
  const selectedModelValue = draftModel;
15350
- const selectedReasoningEffortValue = draftReasoningEffort;
15483
+ const selectedReasoningEffortValue = activeSessionReasoningSelection?.currentValue ?? draftReasoningEffort;
15351
15484
  const selectedSpeedValue = draftSpeed;
15352
15485
  const selectedPermissionModeValue = normalizePermissionModeId(draftSettings.permissionModeId) ?? normalizePermissionModeId(permissionConfig?.defaultValue);
15353
15486
  return {
@@ -18954,7 +19087,7 @@ function titleFromDescriptionPrefix(firstPart, contextText) {
18954
19087
  return void 0;
18955
19088
  }
18956
19089
  function effortFromText(text) {
18957
- const effortMatch = text.toLowerCase().match(/\b(minimal|low|medium|high|x[-\s]?high)\s+effort\b/);
19090
+ const effortMatch = text.toLowerCase().match(/\b(minimal|low|medium|high|x[-\s]?high|max|ultra)\s+effort\b/);
18958
19091
  if (!effortMatch?.[1]) {
18959
19092
  return void 0;
18960
19093
  }
@@ -19064,6 +19197,8 @@ function resolveReasoningOptionLabel(value, labels) {
19064
19197
  return labels.reasoningOptionXHigh;
19065
19198
  case "max":
19066
19199
  return labels.reasoningOptionMax;
19200
+ case "ultra":
19201
+ return labels.reasoningOptionUltra;
19067
19202
  default:
19068
19203
  return value;
19069
19204
  }
@@ -25138,6 +25273,7 @@ ${normalizedText}` : normalizedText;
25138
25273
  reasoningOptionHigh: labels.reasoningOptionHigh,
25139
25274
  reasoningOptionXHigh: labels.reasoningOptionXHigh,
25140
25275
  reasoningOptionMax: labels.reasoningOptionMax,
25276
+ reasoningOptionUltra: labels.reasoningOptionUltra,
25141
25277
  speedLabel: labels.speedLabel,
25142
25278
  speedSelectionLabel: labels.speedSelectionLabel,
25143
25279
  speedOptionStandard: labels.speedOptionStandard,
@@ -27321,6 +27457,7 @@ var AgentGUIDetailPane = memo2(function AgentGUIDetailPane2({
27321
27457
  reasoningOptionHigh: labels.reasoningOptionHigh,
27322
27458
  reasoningOptionXHigh: labels.reasoningOptionXHigh,
27323
27459
  reasoningOptionMax: labels.reasoningOptionMax,
27460
+ reasoningOptionUltra: labels.reasoningOptionUltra,
27324
27461
  speedLabel: labels.speedLabel,
27325
27462
  speedSelectionLabel: labels.speedSelectionLabel,
27326
27463
  speedOptionStandard: labels.speedOptionStandard,
@@ -27471,6 +27608,7 @@ var AgentGUIDetailPane = memo2(function AgentGUIDetailPane2({
27471
27608
  labels.reasoningOptionMax,
27472
27609
  labels.reasoningOptionMedium,
27473
27610
  labels.reasoningOptionMinimal,
27611
+ labels.reasoningOptionUltra,
27474
27612
  labels.reasoningOptionXHigh,
27475
27613
  labels.speedLabel,
27476
27614
  labels.speedSelectionLabel,
@@ -33076,6 +33214,7 @@ var AgentGUINode = memo3(function AgentGUINode2({
33076
33214
  reasoningOptionHigh: t("agentHost.agentGui.reasoningOptionHigh"),
33077
33215
  reasoningOptionXHigh: t("agentHost.agentGui.reasoningOptionXHigh"),
33078
33216
  reasoningOptionMax: t("agentHost.agentGui.reasoningOptionMax"),
33217
+ reasoningOptionUltra: t("agentHost.agentGui.reasoningOptionUltra"),
33079
33218
  speedLabel: t("agentHost.agentGui.speedLabel"),
33080
33219
  speedSelectionLabel: t("agentHost.agentGui.speedSelectionLabel"),
33081
33220
  speedOptionStandard: t("agentHost.agentGui.speedOptionStandard"),