@tutti-os/agent-gui 0.0.211 → 0.0.212

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 (64) hide show
  1. package/README.md +2 -0
  2. package/dist/{AgentRichTextReadonly-GEGDM5UJ.js → AgentRichTextReadonly-WWU4ZF7W.js} +5 -5
  3. package/dist/agent-conversation/index.d.ts +1 -1
  4. package/dist/agent-conversation/index.js +8 -8
  5. package/dist/agent-conversation/interactive-answer.d.ts +34 -0
  6. package/dist/agent-conversation/interactive-answer.js +11 -0
  7. package/dist/agent-conversation/interactive-answer.js.map +1 -0
  8. package/dist/agent-gui.d.ts +7 -4
  9. package/dist/agent-gui.js +16 -15
  10. package/dist/agent-message-center/index.js +8 -7
  11. package/dist/agent-message-center/index.js.map +1 -1
  12. package/dist/{agentFileMentionContracts-B0yQizXB.d.ts → agentFileMentionContracts-BeBex-Sf.d.ts} +5 -0
  13. package/dist/{agentGuiNodeTypes-DTeerTzS.d.ts → agentGuiNodeTypes-BMcpfKTn.d.ts} +5 -1
  14. package/dist/app/renderer/agentactivity.css +45 -0
  15. package/dist/{chunk-KY2IYJXK.js → chunk-4DAJ5SVX.js} +11 -5
  16. package/dist/chunk-4DAJ5SVX.js.map +1 -0
  17. package/dist/{chunk-AT4DII34.js → chunk-4IJYTGS2.js} +205 -118
  18. package/dist/chunk-4IJYTGS2.js.map +1 -0
  19. package/dist/{chunk-P4LVBSFC.js → chunk-5UOJCDLE.js} +8 -8
  20. package/dist/{chunk-Y2VQMPUR.js → chunk-62LWOH3P.js} +5 -9
  21. package/dist/chunk-62LWOH3P.js.map +1 -0
  22. package/dist/{chunk-CVGUT36H.js → chunk-7LSLB7CN.js} +2 -2
  23. package/dist/{chunk-3MMKYY6R.js → chunk-BGNYUYLP.js} +2 -2
  24. package/dist/chunk-FMTWYOHM.js +25 -0
  25. package/dist/chunk-FMTWYOHM.js.map +1 -0
  26. package/dist/{chunk-PLAOIDNY.js → chunk-FRSV66P3.js} +171 -36
  27. package/dist/chunk-FRSV66P3.js.map +1 -0
  28. package/dist/{chunk-X2LSVRRX.js → chunk-GXXPUEX6.js} +2 -2
  29. package/dist/{chunk-HH5EWBH2.js → chunk-JUL7J4VN.js} +2 -2
  30. package/dist/{chunk-4VXUWPPZ.js → chunk-JVVLKTLR.js} +18 -32
  31. package/dist/chunk-JVVLKTLR.js.map +1 -0
  32. package/dist/{chunk-7CJEFNHW.js → chunk-POU5WZNH.js} +7 -2
  33. package/dist/chunk-POU5WZNH.js.map +1 -0
  34. package/dist/{chunk-SXZJ3MDI.js → chunk-RNBZBBI7.js} +13 -13
  35. package/dist/{chunk-Z23HCYYR.js → chunk-WSIGQG7C.js} +3 -3
  36. package/dist/{chunk-U5NVLMW2.js → chunk-YJ27WHM3.js} +2 -2
  37. package/dist/context-mention-palette/index.d.ts +1 -1
  38. package/dist/context-mention-palette/index.js +8 -8
  39. package/dist/i18n/index.d.ts +4 -8
  40. package/dist/i18n/index.js +2 -2
  41. package/dist/index.d.ts +19 -13
  42. package/dist/index.js +17 -16
  43. package/dist/index.js.map +1 -1
  44. package/dist/mention-search.d.ts +2 -2
  45. package/dist/mention-search.js +6 -6
  46. package/dist/workbench/contribution.js +3 -3
  47. package/dist/workbench/index.js +6 -6
  48. package/dist/workbench/sessionTitle.js +2 -2
  49. package/package.json +23 -16
  50. package/dist/chunk-4VXUWPPZ.js.map +0 -1
  51. package/dist/chunk-7CJEFNHW.js.map +0 -1
  52. package/dist/chunk-AT4DII34.js.map +0 -1
  53. package/dist/chunk-KY2IYJXK.js.map +0 -1
  54. package/dist/chunk-PLAOIDNY.js.map +0 -1
  55. package/dist/chunk-Y2VQMPUR.js.map +0 -1
  56. /package/dist/{AgentRichTextReadonly-GEGDM5UJ.js.map → AgentRichTextReadonly-WWU4ZF7W.js.map} +0 -0
  57. /package/dist/{chunk-P4LVBSFC.js.map → chunk-5UOJCDLE.js.map} +0 -0
  58. /package/dist/{chunk-CVGUT36H.js.map → chunk-7LSLB7CN.js.map} +0 -0
  59. /package/dist/{chunk-3MMKYY6R.js.map → chunk-BGNYUYLP.js.map} +0 -0
  60. /package/dist/{chunk-X2LSVRRX.js.map → chunk-GXXPUEX6.js.map} +0 -0
  61. /package/dist/{chunk-HH5EWBH2.js.map → chunk-JUL7J4VN.js.map} +0 -0
  62. /package/dist/{chunk-SXZJ3MDI.js.map → chunk-RNBZBBI7.js.map} +0 -0
  63. /package/dist/{chunk-Z23HCYYR.js.map → chunk-WSIGQG7C.js.map} +0 -0
  64. /package/dist/{chunk-U5NVLMW2.js.map → chunk-YJ27WHM3.js.map} +0 -0
@@ -15,10 +15,7 @@ import {
15
15
  resolveAgentGuiSessionProviderFlatIconUrl,
16
16
  resolveNextAgentGUIConversationRailWidthPx,
17
17
  shouldAutoCollapseAgentGUIConversationRail
18
- } from "./chunk-P4LVBSFC.js";
19
- import {
20
- resolveAgentGuiWorkbenchProviderLabel
21
- } from "./chunk-MGSRWYRN.js";
18
+ } from "./chunk-5UOJCDLE.js";
22
19
  import {
23
20
  AGENT_PROVIDERS,
24
21
  AGENT_PROVIDER_LABEL,
@@ -34,7 +31,10 @@ import {
34
31
  resolveAgentGUIFirstUserMessageDisplayPrompt,
35
32
  resolveAgentGUIProviderDisplayLabel,
36
33
  resolveAgentGUIProviderIdentity
37
- } from "./chunk-U5NVLMW2.js";
34
+ } from "./chunk-YJ27WHM3.js";
35
+ import {
36
+ resolveAgentGuiWorkbenchProviderLabel
37
+ } from "./chunk-MGSRWYRN.js";
38
38
  import {
39
39
  AgentCommercePresentationProvider,
40
40
  AgentConversationFlow,
@@ -70,7 +70,7 @@ import {
70
70
  toLocalShortDateTime,
71
71
  updateAgentComposerDraft,
72
72
  useProjectedAgentConversation
73
- } from "./chunk-SXZJ3MDI.js";
73
+ } from "./chunk-RNBZBBI7.js";
74
74
  import {
75
75
  agentRichTextContentToPromptText,
76
76
  createAgentRichTextInputExtensions,
@@ -80,7 +80,7 @@ import {
80
80
  plainTextToAgentRichTextInlineContent,
81
81
  skillDescriptionForDisplay,
82
82
  skillTriggerForPrefix
83
- } from "./chunk-CVGUT36H.js";
83
+ } from "./chunk-7LSLB7CN.js";
84
84
  import {
85
85
  AgentEnvPanelActionProvider
86
86
  } from "./chunk-JZ6KUUDY.js";
@@ -95,7 +95,7 @@ import {
95
95
  AgentFileMentionPalette,
96
96
  agentMentionItemKey,
97
97
  isAgentMentionItemDisabled
98
- } from "./chunk-KY2IYJXK.js";
98
+ } from "./chunk-4DAJ5SVX.js";
99
99
  import {
100
100
  normalizeAgentGUIAgents,
101
101
  projectAgentGUIAgentsToTargets
@@ -106,7 +106,7 @@ import {
106
106
  DEFAULT_AGENT_MENTION_FILTER,
107
107
  agentGuiScheduler,
108
108
  buildWorkspaceAgentActivityListViewModel
109
- } from "./chunk-PLAOIDNY.js";
109
+ } from "./chunk-FRSV66P3.js";
110
110
  import {
111
111
  AGENT_RICH_TEXT_CARET_ANCHOR,
112
112
  agentComposerFileMentionReferences,
@@ -123,7 +123,7 @@ import {
123
123
  parseMentionItemFromHref,
124
124
  remainingAgentComposerPromptAssetSlots,
125
125
  updateAgentComposerFileMentions
126
- } from "./chunk-7CJEFNHW.js";
126
+ } from "./chunk-POU5WZNH.js";
127
127
  import {
128
128
  AgentInteractivePromptSurface,
129
129
  PLAN_IMPLEMENTATION_ACTION_FEEDBACK,
@@ -135,7 +135,7 @@ import {
135
135
  normalizePlanIssueBudgetPreset,
136
136
  planImplementationPromptFromPlanTurn,
137
137
  planIssueBudgetPresetsEqual
138
- } from "./chunk-4VXUWPPZ.js";
138
+ } from "./chunk-JVVLKTLR.js";
139
139
  import {
140
140
  useEngineSelector
141
141
  } from "./chunk-EVQ4JY3N.js";
@@ -145,7 +145,7 @@ import {
145
145
  blobToBase64,
146
146
  normalizeAgentApprovalPurpose,
147
147
  resolveWorkspaceLinkAction
148
- } from "./chunk-Z23HCYYR.js";
148
+ } from "./chunk-WSIGQG7C.js";
149
149
  import {
150
150
  AgentTargetPresentationProvider,
151
151
  cn,
@@ -163,7 +163,7 @@ import {
163
163
  useAgentHostApi,
164
164
  useOptionalAgentActivityRuntime,
165
165
  useOptionalAgentHostApi
166
- } from "./chunk-HH5EWBH2.js";
166
+ } from "./chunk-JUL7J4VN.js";
167
167
  import {
168
168
  MANAGED_AGENT_ICON_FALLBACK_URL,
169
169
  MANAGED_AGENT_ICON_URLS,
@@ -173,7 +173,7 @@ import {
173
173
  AgentGuiI18nProvider,
174
174
  translate,
175
175
  useTranslation
176
- } from "./chunk-X2LSVRRX.js";
176
+ } from "./chunk-GXXPUEX6.js";
177
177
  import {
178
178
  isBetaAgentProvider,
179
179
  normalizeManagedAgentProvider
@@ -4777,11 +4777,8 @@ function useAgentConversationMessagePaging(input) {
4777
4777
  if (!normalized) return;
4778
4778
  const ref = current.sessionViewRef(normalized);
4779
4779
  const view = current.view.get(ref);
4780
- const canonicalOldestVersion = current.projection.minVersion(
4781
- current.getCanonicalMessages(normalized)
4782
- );
4783
- const oldestLoadedVersion = view?.oldestLoadedVersion ?? canonicalOldestVersion;
4784
- const hasOlderMessages = view?.hasOlderMessages === true || view?.oldestLoadedVersion == null && canonicalOldestVersion !== null && canonicalOldestVersion > 1;
4780
+ const oldestLoadedVersion = view?.oldestLoadedVersion ?? current.projection.minVersion(current.getCanonicalMessages(normalized));
4781
+ const hasOlderMessages = view?.hasOlderMessages === true;
4785
4782
  if (!hasOlderMessages || view?.isLoadingOlderMessages === true || oldestLoadedVersion === null || current.getActiveSessionId() !== normalized) {
4786
4783
  current.diagnostics.page({
4787
4784
  agentSessionId: normalized,
@@ -4871,7 +4868,8 @@ function useAgentConversationMessagePaging(input) {
4871
4868
  return;
4872
4869
  }
4873
4870
  current.view.mergeOlder(ref, page.messages, {
4874
- hasOlderMessages: page.hasMore && page.messages.length > 0
4871
+ hasOlderMessages: page.hasMore && page.messages.length > 0,
4872
+ oldestLoadedVersion: current.projection.minVersion(page.messages) ?? oldestLoadedVersion
4875
4873
  });
4876
4874
  current.view.setOlderMessagesLoading(ref, false);
4877
4875
  } catch (error) {
@@ -7485,6 +7483,16 @@ function useAgentGUIComposerOptionsSync(input) {
7485
7483
  settings: requestSettings
7486
7484
  })
7487
7485
  ).then(() => {
7486
+ const loadedOptions = composerOptionsForTarget({
7487
+ snapshot: input.agentActivityRuntime.getSnapshot(input.workspaceId),
7488
+ target: targetData
7489
+ });
7490
+ if (loadedOptions) {
7491
+ input.onComposerDefaultsAuthorityReloadedRef.current.reconcileHomeDefaults(
7492
+ targetData,
7493
+ loadedOptions
7494
+ );
7495
+ }
7488
7496
  if (options?.reconcileAcknowledgedDefaults) {
7489
7497
  input.onComposerDefaultsAuthorityReloadedRef.current.reloaded(
7490
7498
  authorityRead.receipt
@@ -7686,6 +7694,8 @@ function useAgentGUIControllerRefs(input) {
7686
7694
  receipt: null,
7687
7695
  settings
7688
7696
  }),
7697
+ reconcileHomeDefaults: () => {
7698
+ },
7689
7699
  reloaded: () => {
7690
7700
  }
7691
7701
  });
@@ -7945,6 +7955,51 @@ function useAgentGUIComposerSettingsActions(input) {
7945
7955
  );
7946
7956
  onComposerDefaultsAuthorityReloadedRef.current = {
7947
7957
  prepareRead: prepareComposerDefaultsAuthorityRead,
7958
+ reconcileHomeDefaults: (target, options) => {
7959
+ if (!isMountedRef.current || activeConversationIdRef.current !== null || !nodeDataMatchesComposerTarget(
7960
+ selectedComposerTargetDataRef.current.data,
7961
+ target
7962
+ )) {
7963
+ return;
7964
+ }
7965
+ const draftKey = nodeDefaultDraftKey(
7966
+ target.provider,
7967
+ target.agentTargetId
7968
+ );
7969
+ const currentDraft = draftSettingsBySessionIdRef.current[draftKey];
7970
+ if (!currentDraft) {
7971
+ return;
7972
+ }
7973
+ const reconciledDraft = enforceComposerModelBindingForHomeDefaults(
7974
+ sanitizeComposerSettingsForTarget({
7975
+ settings: currentDraft,
7976
+ target,
7977
+ options
7978
+ }),
7979
+ options
7980
+ );
7981
+ if (sameComposerSettings(currentDraft, reconciledDraft)) {
7982
+ return;
7983
+ }
7984
+ draftSettingsBySessionIdRef.current = {
7985
+ ...draftSettingsBySessionIdRef.current,
7986
+ [draftKey]: reconciledDraft
7987
+ };
7988
+ setDraftSettingsBySessionId((current) => ({
7989
+ ...current,
7990
+ [draftKey]: reconciledDraft
7991
+ }));
7992
+ onDataChangeRef.current(
7993
+ (current) => nodeDataFromComposerSettings(
7994
+ {
7995
+ ...current,
7996
+ provider: target.provider,
7997
+ agentTargetId: target.agentTargetId
7998
+ },
7999
+ reconciledDraft
8000
+ )
8001
+ );
8002
+ },
7948
8003
  reloaded: retireAcknowledgedDefaultsForRead
7949
8004
  };
7950
8005
  const updateComposerSettings = useCallback9(
@@ -10613,7 +10668,8 @@ function useAgentGUIViewModel(candidate) {
10613
10668
  candidate.readiness.activeConversationBusy,
10614
10669
  candidate.readiness.activeLiveState,
10615
10670
  candidate.readiness.providerReadinessGate,
10616
- candidate.readiness.sessionRuntimeBlocked
10671
+ candidate.readiness.sessionRuntimeBlocked,
10672
+ candidate.readiness.sessionRuntimeBlockedReason
10617
10673
  ]
10618
10674
  );
10619
10675
  const operations = useMemo8(
@@ -12367,7 +12423,8 @@ function useAgentGUISessionPresentation(input) {
12367
12423
  input.activeConversationId && input.activeLatestPendingSubmitTurnId
12368
12424
  );
12369
12425
  const activeSubmitBlocked = input.activeEngineAvailability === "blocked";
12370
- const sessionRuntimeBlocked = input.activeEngineRuntimeAvailability?.state === "blocked";
12426
+ const sessionRuntimeBlockedReason = input.activeEngineRuntimeAvailability?.state === "blocked" ? input.activeEngineRuntimeAvailability.reason : null;
12427
+ const sessionRuntimeBlocked = sessionRuntimeBlockedReason !== null;
12371
12428
  const targetConnection = useAgentGUITargetConnectionState({
12372
12429
  agentTargetId: input.targetConnectionAgentTargetId,
12373
12430
  source: input.targetConnectionSource
@@ -12543,6 +12600,7 @@ function useAgentGUISessionPresentation(input) {
12543
12600
  isRespondingApproval,
12544
12601
  pendingInteractivePrompt,
12545
12602
  sessionRuntimeBlocked,
12603
+ sessionRuntimeBlockedReason,
12546
12604
  targetConnectionBlocked: targetConnection.blocked,
12547
12605
  sessionChrome
12548
12606
  };
@@ -12749,6 +12807,7 @@ function useAgentGUIViewAssembly(input) {
12749
12807
  activationError: detail.activationError,
12750
12808
  activeConversationBusy: session.activeConversationBusy,
12751
12809
  sessionRuntimeBlocked: session.sessionRuntimeBlocked,
12810
+ sessionRuntimeBlockedReason: session.sessionRuntimeBlockedReason,
12752
12811
  targetConnectionBlocked: session.targetConnectionBlocked,
12753
12812
  providerReadinessGate
12754
12813
  },
@@ -13306,7 +13365,7 @@ function oldestVersion(messages) {
13306
13365
  }
13307
13366
 
13308
13367
  // contexts/workspace/presentation/renderer/agentSessions/useAgentSessionControllerState.ts
13309
- function useAgentSessionControllerState(activeRef, canonicalMessages = []) {
13368
+ function useAgentSessionControllerState(activeRef, canonicalMessages = [], canonicalWindow = null) {
13310
13369
  const transport = useAgentSessionTransport();
13311
13370
  const paging = useAgentSessionPagingState();
13312
13371
  const getAgentSessionView = useCallback24(
@@ -13346,17 +13405,18 @@ function useAgentSessionControllerState(activeRef, canonicalMessages = []) {
13346
13405
  void transport.entries;
13347
13406
  void paging.entries;
13348
13407
  const storedActiveView = getAgentSessionView(activeRef);
13349
- const canonicalOldestVersion = oldestVersion2(canonicalMessages);
13408
+ const canonicalOldestVersion = canonicalWindow?.oldestLoadedVersion ?? oldestVersion2(canonicalMessages);
13409
+ const storedBoundaryIsAtLeastAsComplete = storedActiveView !== null && storedActiveView.oldestLoadedVersion !== null && (canonicalOldestVersion === null || storedActiveView.oldestLoadedVersion <= canonicalOldestVersion);
13350
13410
  const activeSessionView = storedActiveView ? {
13351
13411
  ...storedActiveView,
13352
- hasOlderMessages: storedActiveView.hasOlderMessages || storedActiveView.oldestLoadedVersion === null && canonicalOldestVersion !== null && canonicalOldestVersion > 1,
13412
+ hasOlderMessages: storedBoundaryIsAtLeastAsComplete ? storedActiveView.hasOlderMessages : canonicalWindow?.hasOlderMessages ?? false,
13353
13413
  oldestLoadedVersion: storedActiveView.oldestLoadedVersion === null ? canonicalOldestVersion : canonicalOldestVersion === null ? storedActiveView.oldestLoadedVersion : Math.min(
13354
13414
  storedActiveView.oldestLoadedVersion,
13355
13415
  canonicalOldestVersion
13356
13416
  )
13357
13417
  } : canonicalOldestVersion === null ? null : {
13358
13418
  error: null,
13359
- hasOlderMessages: canonicalOldestVersion > 1,
13419
+ hasOlderMessages: canonicalWindow?.hasOlderMessages ?? false,
13360
13420
  isLoadingMessages: false,
13361
13421
  isLoadingOlderMessages: false,
13362
13422
  olderMessages: [],
@@ -13404,7 +13464,8 @@ function useAgentGUISessionDetailTransport(input) {
13404
13464
  );
13405
13465
  const state = useAgentSessionControllerState(
13406
13466
  sessionViewRef(activeConversationId),
13407
- activeConversationId ? agentActivitySnapshot.sessionMessagesById[activeConversationId] ?? [] : []
13467
+ activeConversationId ? agentActivitySnapshot.sessionMessagesById[activeConversationId] ?? [] : [],
13468
+ activeConversationId ? agentActivitySnapshot.sessionMessageWindowsById?.[activeConversationId] ?? null : null
13408
13469
  );
13409
13470
  const resolveSessionMessages = useCallback25(
13410
13471
  (agentSessionId) => {
@@ -13479,7 +13540,7 @@ function useAgentGUISessionDetailTransport(input) {
13479
13540
  runtime: agentActivityRuntime,
13480
13541
  sessionViewRef,
13481
13542
  view: {
13482
- get: state.getAgentSessionView,
13543
+ get: (ref) => ref.agentSessionId?.trim() === activeConversationIdRef.current ? state.activeSessionView : state.getAgentSessionView(ref),
13483
13544
  mergeOlder: state.mergeAgentSessionViewOlderMessages,
13484
13545
  setOlderMessagesLoading: state.setAgentSessionViewOlderMessagesLoading
13485
13546
  },
@@ -15401,19 +15462,28 @@ function AgentUsageMeter({
15401
15462
  }
15402
15463
 
15403
15464
  // agent-gui/agentGuiNode/AccountMembershipBadge.tsx
15404
- import { Crown } from "lucide-react";
15405
15465
  import { jsx as jsx13, jsxs as jsxs6 } from "react/jsx-runtime";
15406
15466
  function AccountMembershipBadge({
15407
15467
  label,
15468
+ iconUrl = null,
15408
15469
  className = ""
15409
15470
  }) {
15410
15471
  return /* @__PURE__ */ jsxs6(
15411
15472
  "span",
15412
15473
  {
15413
- className: `inline-flex max-w-full items-center gap-1 rounded-[5px] bg-[color-mix(in_srgb,var(--tutti-purple)_18%,transparent)] px-1.5 py-0.5 text-[11px] font-semibold leading-3 text-[var(--tutti-purple)] ${className}`,
15474
+ className: `inline-flex max-w-full items-center gap-1 text-[12px] font-semibold leading-4 text-[var(--text-secondary)] ${className}`,
15414
15475
  "data-account-membership-badge": "true",
15415
15476
  children: [
15416
- /* @__PURE__ */ jsx13(Crown, { "aria-hidden": "true", size: 11, strokeWidth: 1.9 }),
15477
+ iconUrl ? /* @__PURE__ */ jsx13(
15478
+ "img",
15479
+ {
15480
+ alt: "",
15481
+ "aria-hidden": "true",
15482
+ draggable: false,
15483
+ src: iconUrl,
15484
+ className: "size-3.5 shrink-0 object-contain"
15485
+ }
15486
+ ) : null,
15417
15487
  /* @__PURE__ */ jsx13("span", { className: "min-w-0 truncate", children: label })
15418
15488
  ]
15419
15489
  }
@@ -15462,7 +15532,7 @@ import { useCallback as useCallback31 } from "react";
15462
15532
  import {
15463
15533
  Coins,
15464
15534
  Copy,
15465
- Crown as Crown2,
15535
+ Crown,
15466
15536
  ExternalLink,
15467
15537
  LogIn,
15468
15538
  LogOut,
@@ -15513,8 +15583,8 @@ function AgentGUIAccountMenu({
15513
15583
  "data-testid": testId,
15514
15584
  onOpenAutoFocus: (event) => event.preventDefault(),
15515
15585
  children: /* @__PURE__ */ jsxs8("div", { className: "flex min-w-0 flex-col", children: [
15516
- /* @__PURE__ */ jsxs8("div", { className: "flex min-w-0 items-center gap-2 px-2 py-2", children: [
15517
- /* @__PURE__ */ jsx15(AgentGUIAccountAvatar, { state, label: labels.copyUserId, children: /* @__PURE__ */ jsx15("span", { className: "grid size-8 shrink-0 place-items-center overflow-hidden rounded-full bg-[var(--background-fronted)] text-[13px] font-semibold text-[var(--text-primary)]", children: state.user?.avatar ? /* @__PURE__ */ jsx15(
15586
+ /* @__PURE__ */ jsxs8("div", { className: "flex min-w-0 items-center gap-2 px-2 pt-2", children: [
15587
+ /* @__PURE__ */ jsx15(AgentGUIAccountAvatar, { state, label: labels.copyUserId, children: /* @__PURE__ */ jsx15("span", { className: "grid size-9 shrink-0 place-items-center overflow-hidden rounded-full bg-[var(--background-fronted)] text-[13px] font-semibold text-[var(--text-primary)]", children: state.user?.avatar ? /* @__PURE__ */ jsx15(
15518
15588
  "img",
15519
15589
  {
15520
15590
  alt: "",
@@ -15528,12 +15598,19 @@ function AgentGUIAccountMenu({
15528
15598
  AccountMembershipBadge,
15529
15599
  {
15530
15600
  className: "mt-1",
15601
+ iconUrl: state.membershipIconUrl ?? null,
15531
15602
  label: membershipLabel
15532
15603
  }
15533
15604
  )
15534
15605
  ] })
15535
15606
  ] }),
15536
- /* @__PURE__ */ jsx15("span", { "aria-hidden": "true", className: "mx-2 h-px bg-[var(--border-1)]" }),
15607
+ /* @__PURE__ */ jsx15(
15608
+ "span",
15609
+ {
15610
+ "aria-hidden": "true",
15611
+ className: "mx-2 mb-1 mt-3 h-px bg-[var(--border-1)]"
15612
+ }
15613
+ ),
15537
15614
  state.user ? /* @__PURE__ */ jsxs8(Fragment2, { children: [
15538
15615
  /* @__PURE__ */ jsxs8(
15539
15616
  "button",
@@ -15543,7 +15620,7 @@ function AgentGUIAccountMenu({
15543
15620
  disabled: !state.links.planUrl.trim(),
15544
15621
  onClick: () => openExternal(state.links.planUrl),
15545
15622
  children: [
15546
- /* @__PURE__ */ jsx15(Crown2, { "aria-hidden": "true", size: 15, strokeWidth: 1.8 }),
15623
+ /* @__PURE__ */ jsx15(Crown, { "aria-hidden": "true", size: 15, strokeWidth: 1.8 }),
15547
15624
  /* @__PURE__ */ jsx15("span", { className: "min-w-0 flex-1 truncate text-left", children: labels.member }),
15548
15625
  /* @__PURE__ */ jsx15("span", { className: "shrink-0 text-[12px] text-[var(--tutti-purple)]", children: membershipActionLabel })
15549
15626
  ]
@@ -15808,6 +15885,7 @@ var AgentGUIAccountRailMenu = memo(function AgentGUIAccountRailMenu2({
15808
15885
  AccountMembershipBadge,
15809
15886
  {
15810
15887
  className: "mt-0.5",
15888
+ iconUrl: accountMenuState.membershipIconUrl ?? null,
15811
15889
  label: membershipLabel
15812
15890
  }
15813
15891
  )
@@ -17732,7 +17810,9 @@ var styles2 = {
17732
17810
  composerDisclosureChevron: "agent-gui-chrome__composer-disclosure-chevron",
17733
17811
  composerDisclosureChevronExpanded: "agent-gui-chrome__composer-disclosure-chevron--expanded",
17734
17812
  composerDisclosurePanel: "agent-gui-chrome__composer-disclosure-panel",
17735
- composerDisclosureTrigger: "agent-gui-chrome__composer-disclosure-trigger"
17813
+ composerDisclosureTrigger: "agent-gui-chrome__composer-disclosure-trigger",
17814
+ tuttiWorkflowBanner: "agent-gui-chrome__tutti-workflow-banner",
17815
+ tuttiWorkflowPanel: "agent-gui-chrome__tutti-workflow-panel"
17736
17816
  };
17737
17817
  var AgentGUIChrome_styles_default = styles2;
17738
17818
 
@@ -36858,6 +36938,9 @@ function resolveAgentGUIStopControl(input) {
36858
36938
  visible: shouldShowAgentGUIStopButton(input)
36859
36939
  };
36860
36940
  }
36941
+ function resolveAgentGUIComposerDisabled(input) {
36942
+ return input.isCollaboratorConversation || input.runtimeBlocked || input.hasNonRetryableRecoveryFailure || !input.canQueueWhileBusy && (input.pendingApproval || input.pendingInteractivePrompt || input.isSubmitting || input.isInterrupting || input.isCreatingConversation);
36943
+ }
36861
36944
  function buildAgentConversationHandoffPrompt(input) {
36862
36945
  const conversation = input.activeConversation;
36863
36946
  if (!conversation) {
@@ -37450,7 +37533,7 @@ function TuttiModePlanTaskAssignmentEditor({
37450
37533
  return /* @__PURE__ */ jsxs51(
37451
37534
  "div",
37452
37535
  {
37453
- className: "tutti-plan-task-assignment-row mt-3 flex flex-wrap items-center gap-1 border-t border-[var(--line-2)] pt-2",
37536
+ className: "tutti-plan-task-assignment-row mt-3 flex flex-wrap items-center gap-3 border-t border-[var(--line-2)] pt-2",
37454
37537
  "data-testid": `tutti-plan-task-assignment-${task.id}`,
37455
37538
  children: [
37456
37539
  /* @__PURE__ */ jsxs51(
@@ -37541,7 +37624,7 @@ function TuttiModePlanTaskAssignmentEditor({
37541
37624
  "label",
37542
37625
  {
37543
37626
  className: cn9(
37544
- "flex min-h-[28px] w-auto shrink-0 items-center gap-1.5 px-1 text-[13px]",
37627
+ "flex min-h-[28px] w-auto shrink-0 items-center gap-1.5 text-[13px]",
37545
37628
  disabled ? "cursor-not-allowed text-[var(--agent-gui-text-tertiary)]" : "cursor-pointer text-[var(--agent-gui-text-secondary)]"
37546
37629
  ),
37547
37630
  htmlFor: `tutti-plan-task-parallel-${task.id}`,
@@ -37568,7 +37651,7 @@ function TuttiModePlanTaskAssignmentEditor({
37568
37651
  "label",
37569
37652
  {
37570
37653
  className: cn9(
37571
- "flex min-h-[28px] w-auto shrink-0 items-center gap-1.5 px-1 text-[13px]",
37654
+ "flex min-h-[28px] w-auto shrink-0 items-center gap-1.5 text-[13px]",
37572
37655
  disabled ? "cursor-not-allowed text-[var(--agent-gui-text-tertiary)]" : "cursor-pointer text-[var(--agent-gui-text-secondary)]"
37573
37656
  ),
37574
37657
  htmlFor: `tutti-plan-task-auto-accept-${task.id}`,
@@ -37619,7 +37702,7 @@ function AssignmentSelectTrigger({
37619
37702
  {
37620
37703
  className: cn9(
37621
37704
  "truncate",
37622
- value === null && "text-[var(--agent-gui-text-tertiary)]"
37705
+ value === null && "text-[var(--agent-gui-text-secondary)]"
37623
37706
  ),
37624
37707
  children: value ?? placeholder
37625
37708
  }
@@ -37786,7 +37869,7 @@ function TaskAssignmentSummary({
37786
37869
  if (chips.length === 0) {
37787
37870
  return null;
37788
37871
  }
37789
- return /* @__PURE__ */ jsx72("div", { className: "mt-3 flex flex-wrap items-center gap-0.5 border-t border-[var(--line-2)] pt-2", children: chips.map((chip) => /* @__PURE__ */ jsx72(
37872
+ return /* @__PURE__ */ jsx72("div", { className: "tutti-plan-task-assignment-row mt-3 flex flex-wrap items-center gap-3 border-t border-[var(--line-2)] pt-2", children: chips.map((chip) => /* @__PURE__ */ jsx72(
37790
37873
  "span",
37791
37874
  {
37792
37875
  title: chip.label,
@@ -38619,11 +38702,13 @@ import { ChevronDown as ChevronDown4 } from "lucide-react";
38619
38702
  import { jsx as jsx74, jsxs as jsxs54 } from "react/jsx-runtime";
38620
38703
  function AgentComposerDisclosureCard({
38621
38704
  actions,
38705
+ bannerClassName,
38622
38706
  children,
38623
38707
  expanded,
38624
38708
  icon,
38625
38709
  labels,
38626
38710
  onExpandedChange,
38711
+ panelClassName,
38627
38712
  summary,
38628
38713
  testId,
38629
38714
  title
@@ -38641,7 +38726,7 @@ function AgentComposerDisclosureCard({
38641
38726
  "div",
38642
38727
  {
38643
38728
  id: panelId,
38644
- className: AgentGUIChrome_styles_default.composerDisclosurePanel,
38729
+ className: cn(AgentGUIChrome_styles_default.composerDisclosurePanel, panelClassName),
38645
38730
  "data-testid": `${testId}-panel`,
38646
38731
  children
38647
38732
  }
@@ -38652,7 +38737,8 @@ function AgentComposerDisclosureCard({
38652
38737
  className: cn(
38653
38738
  AgentGUIChrome_styles_default.chromeCard,
38654
38739
  AgentGUIChrome_styles_default.chromeCardMuted,
38655
- AgentGUIChrome_styles_default.composerDisclosureBanner
38740
+ AgentGUIChrome_styles_default.composerDisclosureBanner,
38741
+ bannerClassName
38656
38742
  ),
38657
38743
  children: [
38658
38744
  /* @__PURE__ */ jsxs54(
@@ -38710,14 +38796,21 @@ function AgentComposerDisclosureCard({
38710
38796
  // agent-gui/agentGuiNode/composer/TuttiBudgetPopover.tsx
38711
38797
  import { useState as useState42 } from "react";
38712
38798
  import {
38713
- Badge as Badge2,
38714
- Button as Button10,
38715
38799
  Popover as Popover6,
38716
38800
  PopoverContent as PopoverContent5,
38717
38801
  PopoverTrigger as PopoverTrigger4,
38718
38802
  Slider
38719
38803
  } from "@tutti-os/ui-system";
38720
38804
 
38805
+ // app/renderer/assets/icons/tutti-intensity-handle-balance.png
38806
+ var tutti_intensity_handle_balance_default = "data:image/png;base64,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";
38807
+
38808
+ // app/renderer/assets/icons/tutti-intensity-handle-cost.png
38809
+ var tutti_intensity_handle_cost_default = "data:image/png;base64,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";
38810
+
38811
+ // app/renderer/assets/icons/tutti-intensity-handle-powerful.png
38812
+ var tutti_intensity_handle_powerful_default = "data:image/png;base64,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";
38813
+
38721
38814
  // agent-gui/agentGuiNode/composer/tuttiIntensityPreview.ts
38722
38815
  function projectTuttiIntensityPreview(intensity) {
38723
38816
  const normalized = Number.isFinite(intensity) ? Math.min(100, Math.max(0, Math.round(intensity))) : 50;
@@ -38734,33 +38827,28 @@ function projectTuttiIntensityPreview(intensity) {
38734
38827
  import { jsx as jsx75, jsxs as jsxs55 } from "react/jsx-runtime";
38735
38828
  var tierTone = {
38736
38829
  cost: {
38737
- badgeVariant: "success",
38738
- sliderClassName: "[&_[data-slot=slider-thumb]]:border-[var(--state-success)]"
38830
+ sliderHandleUrl: tutti_intensity_handle_cost_default,
38831
+ valueClassName: "text-[var(--state-success)]"
38739
38832
  },
38740
38833
  balance: {
38741
- badgeVariant: "warning",
38742
- sliderClassName: "[&_[data-slot=slider-thumb]]:border-[var(--state-warning)]"
38834
+ sliderHandleUrl: tutti_intensity_handle_balance_default,
38835
+ valueClassName: "text-[var(--accent-codex)]"
38743
38836
  },
38744
38837
  powerful: {
38745
- badgeVariant: "pending",
38746
- sliderClassName: "[&_[data-slot=slider-thumb]]:border-[var(--tutti-purple)]"
38838
+ sliderHandleUrl: tutti_intensity_handle_powerful_default,
38839
+ valueClassName: "text-[var(--tutti-purple)]"
38747
38840
  }
38748
38841
  };
38749
38842
  function TuttiBudgetPopover({
38750
38843
  children,
38751
38844
  intensity,
38752
38845
  labels,
38753
- onConfirm
38846
+ onChange
38754
38847
  }) {
38755
38848
  const [open, setOpen] = useState42(false);
38756
38849
  const [draftIntensity, setDraftIntensity] = useState42(intensity);
38757
38850
  const preview = projectTuttiIntensityPreview(draftIntensity);
38758
38851
  const previewTone = tierTone[preview.tier];
38759
- const previewLabel = {
38760
- cost: labels.previewCost,
38761
- balance: labels.previewBalance,
38762
- powerful: labels.previewPowerful
38763
- }[preview.tier];
38764
38852
  const modelStrength = {
38765
38853
  economical: labels.modelStrengthCost,
38766
38854
  balanced: labels.modelStrengthBalance,
@@ -38793,8 +38881,6 @@ function TuttiBudgetPopover({
38793
38881
  event.preventDefault();
38794
38882
  setOpen(false);
38795
38883
  },
38796
- onInteractOutside: (event) => event.preventDefault(),
38797
- onPointerDownOutside: (event) => event.preventDefault(),
38798
38884
  children: [
38799
38885
  /* @__PURE__ */ jsx75("div", { className: "text-[13px] font-semibold text-[var(--text-primary)]", children: labels.title }),
38800
38886
  /* @__PURE__ */ jsxs55(
@@ -38814,45 +38900,49 @@ function TuttiBudgetPopover({
38814
38900
  }
38815
38901
  )
38816
38902
  ] }),
38817
- /* @__PURE__ */ jsxs55("div", { className: "mt-2", children: [
38903
+ /* @__PURE__ */ jsxs55("div", { className: "mt-3", children: [
38818
38904
  /* @__PURE__ */ jsx75(
38819
38905
  Slider,
38820
38906
  {
38821
38907
  "aria-label": labels.intensityLabel,
38822
- className: `[&_[data-slot=slider-range]]:bg-transparent [&_[data-slot=slider-track]]:bg-[linear-gradient(90deg,var(--state-success)_0%,var(--state-warning)_50%,var(--tutti-purple)_100%)] ${previewTone.sliderClassName} [&_[data-slot=slider-thumb]]:cursor-grab [&_[data-slot=slider-thumb]]:active:cursor-grabbing`,
38908
+ className: `-mx-1 w-[calc(100%_+_8px)] [&_[data-slot=slider-range]]:bg-transparent [&_[data-slot=slider-track]]:mx-1 [&_[data-slot=slider-track]]:h-5 [&_[data-slot=slider-track]]:bg-[linear-gradient(90deg,var(--state-success)_0%,var(--accent-codex)_50%,var(--tutti-purple)_100%)] [&_[data-slot=slider-thumb]]:size-10 [&_[data-slot=slider-thumb]]:border-transparent [&_[data-slot=slider-thumb]]:bg-transparent [&_[data-slot=slider-thumb]]:bg-[image:var(--tutti-intensity-handle-url)] [&_[data-slot=slider-thumb]]:bg-contain [&_[data-slot=slider-thumb]]:bg-center [&_[data-slot=slider-thumb]]:bg-no-repeat [&_[data-slot=slider-thumb]]:shadow-none [&_[data-slot=slider-thumb]]:hover:ring-0 [&_[data-slot=slider-thumb]]:focus-visible:ring-0 [&_[data-slot=slider-thumb]]:-translate-y-1 [&_[data-slot=slider-thumb]]:cursor-grab [&_[data-slot=slider-thumb]]:active:cursor-grabbing`,
38909
+ style: {
38910
+ "--tutti-intensity-handle-url": `url("${previewTone.sliderHandleUrl}")`
38911
+ },
38823
38912
  "data-agent-tutti-budget-intensity-slider": "true",
38824
38913
  "data-agent-tutti-budget-slider-tone": preview.tier,
38825
38914
  max: 100,
38826
38915
  min: 0,
38827
38916
  step: 1,
38828
38917
  value: [draftIntensity],
38829
- onValueChange: (values) => setDraftIntensity(values[0] ?? draftIntensity)
38918
+ onValueChange: (values) => {
38919
+ const next = values[0] ?? draftIntensity;
38920
+ setDraftIntensity(next);
38921
+ onChange(next);
38922
+ }
38830
38923
  }
38831
38924
  ),
38832
- /* @__PURE__ */ jsxs55("div", { className: "mt-1 flex items-center justify-between gap-2 text-[10px] font-medium", children: [
38925
+ /* @__PURE__ */ jsxs55("div", { className: "mt-3 flex items-center justify-between gap-2 text-[11px] font-medium", children: [
38833
38926
  /* @__PURE__ */ jsx75("span", { className: "text-[var(--state-success)]", children: labels.previewCost }),
38834
- /* @__PURE__ */ jsx75("span", { className: "text-[var(--state-warning)]", children: labels.previewBalance }),
38927
+ /* @__PURE__ */ jsx75("span", { className: "text-[var(--accent-codex)]", children: labels.previewBalance }),
38835
38928
  /* @__PURE__ */ jsx75("span", { className: "text-[var(--tutti-purple)]", children: labels.previewPowerful })
38836
38929
  ] })
38837
38930
  ] }),
38838
- /* @__PURE__ */ jsxs55(
38931
+ /* @__PURE__ */ jsx75(
38839
38932
  "div",
38840
38933
  {
38841
38934
  "aria-live": "polite",
38842
- className: "mt-2 flex items-center justify-between gap-2 border-t border-[var(--line-2)] pt-2",
38843
- children: [
38844
- /* @__PURE__ */ jsx75("span", { className: "text-[11px] font-medium text-[var(--text-secondary)]", children: labels.previewTitle }),
38845
- /* @__PURE__ */ jsx75(Badge2, { size: "sm", variant: previewTone.badgeVariant, children: previewLabel })
38846
- ]
38935
+ className: "mt-2 border-t border-[var(--line-2)] pt-2",
38936
+ children: /* @__PURE__ */ jsx75("span", { className: "text-[12px] font-medium text-[var(--text-secondary)]", children: labels.previewTitle })
38847
38937
  }
38848
38938
  ),
38849
- /* @__PURE__ */ jsxs55("div", { className: "mt-2 grid grid-cols-2 gap-2 text-[10px]", children: [
38939
+ /* @__PURE__ */ jsxs55("div", { className: "mt-2 grid grid-cols-2 gap-2 text-[11px]", children: [
38850
38940
  /* @__PURE__ */ jsxs55("div", { className: "min-w-0", children: [
38851
38941
  /* @__PURE__ */ jsx75("div", { className: "text-[var(--text-tertiary)]", children: labels.modelStrengthLabel }),
38852
38942
  /* @__PURE__ */ jsx75(
38853
38943
  "div",
38854
38944
  {
38855
- className: "truncate font-medium text-[var(--text-primary)]",
38945
+ className: `truncate text-[13px] font-medium ${previewTone.valueClassName}`,
38856
38946
  "data-agent-tutti-budget-model-strength": "true",
38857
38947
  children: modelStrength
38858
38948
  }
@@ -38863,43 +38953,17 @@ function TuttiBudgetPopover({
38863
38953
  /* @__PURE__ */ jsx75(
38864
38954
  "div",
38865
38955
  {
38866
- className: "truncate font-medium text-[var(--text-primary)]",
38956
+ className: "truncate text-[13px] font-medium text-[var(--text-primary)]",
38867
38957
  "data-agent-tutti-budget-agent-count": "true",
38868
38958
  children: agentCount
38869
38959
  }
38870
38960
  )
38871
38961
  ] })
38872
38962
  ] }),
38873
- /* @__PURE__ */ jsx75("p", { className: "mt-2 mb-0 text-[10px] leading-[1.35] text-[var(--text-tertiary)]", children: labels.previewHint })
38963
+ /* @__PURE__ */ jsx75("p", { className: "mt-2 mb-0 text-[11px] leading-[1.35] text-[var(--text-tertiary)]", children: labels.previewHint })
38874
38964
  ]
38875
38965
  }
38876
- ),
38877
- /* @__PURE__ */ jsxs55("div", { className: "flex items-center justify-end gap-2", children: [
38878
- /* @__PURE__ */ jsx75(
38879
- Button10,
38880
- {
38881
- "data-agent-tutti-budget-cancel": "true",
38882
- size: "sm",
38883
- type: "button",
38884
- variant: "secondary",
38885
- onClick: () => setOpen(false),
38886
- children: labels.cancel
38887
- }
38888
- ),
38889
- /* @__PURE__ */ jsx75(
38890
- Button10,
38891
- {
38892
- "data-agent-tutti-budget-confirm": "true",
38893
- size: "sm",
38894
- type: "button",
38895
- onClick: () => {
38896
- onConfirm(draftIntensity);
38897
- setOpen(false);
38898
- },
38899
- children: labels.confirm
38900
- }
38901
- )
38902
- ] })
38966
+ )
38903
38967
  ]
38904
38968
  }
38905
38969
  )
@@ -38952,6 +39016,15 @@ function TuttiWorkflowDock({
38952
39016
  expanded: reviewPanelId !== null,
38953
39017
  reviewPanelId
38954
39018
  }));
39019
+ const [echoedIntensity, setEchoedIntensity] = useState43(null);
39020
+ if (echoedIntensity !== null && review?.intensity === echoedIntensity) {
39021
+ setEchoedIntensity(null);
39022
+ }
39023
+ const reviewDisplayIntensity = review !== null ? echoedIntensity ?? review.intensity : null;
39024
+ const handleIntensityChange = (value) => {
39025
+ setEchoedIntensity(value);
39026
+ onIntensityChange(value);
39027
+ };
38955
39028
  if (reviewPanelId !== null && reviewPanelId !== disclosure.reviewPanelId) {
38956
39029
  setDisclosure({ expanded: true, reviewPanelId });
38957
39030
  }
@@ -38963,13 +39036,19 @@ function TuttiWorkflowDock({
38963
39036
  const title = review !== null ? labels.reviewTitle : phase.kind === "materializing" ? labels.materializingTitle : execution !== null ? execution.issue.title : labels.errorTitle;
38964
39037
  const summary = review !== null ? `${review.panel.title} \xB7 ${review.intensityDiverged ? labels.reviewHintReplan : labels.reviewHint}` : phase.kind === "materializing" ? `${phase.title} \xB7 ${labels.materializingHint}` : execution !== null ? issueSummary(labels, execution.issue) : failure?.message ?? "";
38965
39038
  const icon = review !== null ? /* @__PURE__ */ jsx76(TaskIcon, { "aria-hidden": true, className: "size-3.5" }) : phase.kind === "materializing" ? /* @__PURE__ */ jsx76(LoaderCircle, { "aria-hidden": true, className: "size-3.5 animate-spin" }) : execution !== null ? countIssueTasks(execution.issue, "running") > 0 ? /* @__PURE__ */ jsx76(LoaderCircle, { "aria-hidden": true, className: "size-3.5 animate-spin" }) : /* @__PURE__ */ jsx76(ListChecks4, { "aria-hidden": true, className: "size-3.5" }) : /* @__PURE__ */ jsx76(AlertTriangle, { "aria-hidden": true, className: "size-3.5" });
39039
+ const reviewTier = reviewDisplayIntensity !== null ? projectTuttiIntensityPreview(reviewDisplayIntensity).tier : null;
39040
+ const reviewTierLabel = reviewTier !== null ? {
39041
+ cost: intensityPopoverLabels.previewCost,
39042
+ balance: intensityPopoverLabels.previewBalance,
39043
+ powerful: intensityPopoverLabels.previewPowerful
39044
+ }[reviewTier] : null;
38966
39045
  const actions = review !== null ? /* @__PURE__ */ jsxs56(Fragment23, { children: [
38967
39046
  /* @__PURE__ */ jsx76(
38968
39047
  TuttiBudgetPopover,
38969
39048
  {
38970
- intensity: review.intensity,
39049
+ intensity: reviewDisplayIntensity ?? review.intensity,
38971
39050
  labels: intensityPopoverLabels,
38972
- onConfirm: onIntensityChange,
39051
+ onChange: handleIntensityChange,
38973
39052
  children: /* @__PURE__ */ jsxs56(
38974
39053
  "button",
38975
39054
  {
@@ -38977,16 +39056,19 @@ function TuttiWorkflowDock({
38977
39056
  disabled: review.submitting,
38978
39057
  title: intensityPopoverLabels.title,
38979
39058
  "aria-label": intensityPopoverLabels.intensityLabel,
39059
+ "data-agent-tutti-tier": reviewTier ?? void 0,
38980
39060
  "data-testid": "agent-gui-tutti-workflow-intensity",
38981
39061
  className: cn(
38982
39062
  "flex items-center gap-1 rounded-md px-1.5 py-0.5 transition-colors",
38983
39063
  "hover:bg-[var(--transparency-hover)]",
38984
- "data-[state=open]:bg-[color-mix(in_srgb,var(--tutti-purple)_12%,transparent)] data-[state=open]:text-[var(--tutti-purple)]",
38985
- review.intensityDiverged && "text-[var(--tutti-purple)]"
39064
+ "data-[state=open]:bg-[color-mix(in_srgb,var(--tutti-purple)_12%,transparent)] data-[state=open]:text-[var(--tutti-purple)]"
38986
39065
  ),
38987
39066
  children: [
38988
39067
  /* @__PURE__ */ jsx76(Gauge2, { "aria-hidden": true, className: "size-3.5" }),
38989
- /* @__PURE__ */ jsx76("span", { className: "text-[11px] tabular-nums", children: review.intensity })
39068
+ /* @__PURE__ */ jsxs56("span", { className: "flex items-center gap-0.5", children: [
39069
+ reviewTierLabel !== null ? /* @__PURE__ */ jsx76("span", { className: "text-[11px]", children: reviewTierLabel }) : null,
39070
+ /* @__PURE__ */ jsx76("span", { className: "inline-block w-[3ch] text-left text-[11px] tabular-nums", children: reviewDisplayIntensity ?? review.intensity })
39071
+ ] })
38990
39072
  ]
38991
39073
  }
38992
39074
  )
@@ -39001,6 +39083,7 @@ function TuttiWorkflowDock({
39001
39083
  title: labels.cancel,
39002
39084
  "aria-label": labels.cancel,
39003
39085
  "data-testid": "agent-gui-tutti-workflow-cancel",
39086
+ className: "flex size-5 items-center justify-center rounded-md transition-colors hover:bg-[var(--transparency-hover)]",
39004
39087
  children: /* @__PURE__ */ jsx76(X7, { "aria-hidden": true, className: "size-3.5" })
39005
39088
  }
39006
39089
  )
@@ -39022,9 +39105,11 @@ function TuttiWorkflowDock({
39022
39105
  AgentComposerDisclosureCard,
39023
39106
  {
39024
39107
  actions,
39108
+ bannerClassName: AgentGUIChrome_styles_default.tuttiWorkflowBanner,
39025
39109
  expanded: disclosure.expanded,
39026
39110
  icon,
39027
39111
  labels: { collapse: labels.collapse, expand: labels.expand },
39112
+ panelClassName: AgentGUIChrome_styles_default.tuttiWorkflowPanel,
39028
39113
  onExpandedChange: setExpanded,
39029
39114
  summary,
39030
39115
  testId: "agent-gui-tutti-workflow-dock",
@@ -39220,9 +39305,7 @@ var AgentGUIBottomDockPane = memo10(function AgentGUIBottomDockPane2({
39220
39305
  agentCountLabel: composerProps.labels.tuttiBudgetAgentCountLabel,
39221
39306
  agentCountCost: composerProps.labels.tuttiBudgetAgentCountCost,
39222
39307
  agentCountBalance: composerProps.labels.tuttiBudgetAgentCountBalance,
39223
- agentCountPowerful: composerProps.labels.tuttiBudgetAgentCountPowerful,
39224
- confirm: composerProps.labels.tuttiBudgetConfirm,
39225
- cancel: composerProps.labels.tuttiBudgetCancel
39308
+ agentCountPowerful: composerProps.labels.tuttiBudgetAgentCountPowerful
39226
39309
  },
39227
39310
  labels: tuttiWorkflowDockLabels,
39228
39311
  phase: workflowPhase,
@@ -40045,7 +40128,17 @@ function useAgentGUIDetailModel(input) {
40045
40128
  const hasNonRetryableRecoveryFailure = sessionChrome.recovery?.kind === "failed" && sessionChrome.recovery.canRetry === false || sessionChrome.recovery?.kind === "resume-unavailable";
40046
40129
  const runtimeBlocked = viewModel.readiness.sessionRuntimeBlocked || viewModel.readiness.targetConnectionBlocked;
40047
40130
  const submitDisabled = hasNonRetryableRecoveryFailure || isCollaboratorConversation || runtimeBlocked || !viewModel.composer.canSubmit && !canQueueWhileBusy;
40048
- const composerDisabled = isCollaboratorConversation || !runtimeBlocked && (hasNonRetryableRecoveryFailure || !canQueueWhileBusy && (viewModel.interaction.pendingApproval !== null || viewModel.interaction.pendingInteractivePrompt !== null || viewModel.composer.isSubmitting || viewModel.composer.isInterrupting || viewModel.composer.isCreatingConversation));
40131
+ const composerDisabled = resolveAgentGUIComposerDisabled({
40132
+ canQueueWhileBusy,
40133
+ hasNonRetryableRecoveryFailure,
40134
+ isCollaboratorConversation,
40135
+ isCreatingConversation: viewModel.composer.isCreatingConversation,
40136
+ isInterrupting: viewModel.composer.isInterrupting,
40137
+ isSubmitting: viewModel.composer.isSubmitting,
40138
+ pendingApproval: viewModel.interaction.pendingApproval !== null,
40139
+ pendingInteractivePrompt: viewModel.interaction.pendingInteractivePrompt !== null,
40140
+ runtimeBlocked
40141
+ });
40049
40142
  const stopControl = resolveAgentGUIStopControl({
40050
40143
  hasPendingApproval: viewModel.interaction.pendingApproval !== null,
40051
40144
  hasPendingInteractivePrompt: viewModel.interaction.pendingInteractivePrompt !== null,
@@ -40237,8 +40330,6 @@ function useAgentGUIDetailModel(input) {
40237
40330
  tuttiBudgetAgentCountCost: labels.tuttiBudgetAgentCountCost,
40238
40331
  tuttiBudgetAgentCountBalance: labels.tuttiBudgetAgentCountBalance,
40239
40332
  tuttiBudgetAgentCountPowerful: labels.tuttiBudgetAgentCountPowerful,
40240
- tuttiBudgetConfirm: labels.tuttiBudgetConfirm,
40241
- tuttiBudgetCancel: labels.tuttiBudgetCancel,
40242
40333
  planModeDescription: labels.planModeDescription,
40243
40334
  planModeOnLabel: labels.planModeOnLabel,
40244
40335
  planModeOffLabel: labels.planModeOffLabel,
@@ -40396,8 +40487,6 @@ function useAgentGUIDetailModel(input) {
40396
40487
  labels.tuttiBudgetAgentCountCost,
40397
40488
  labels.tuttiBudgetAgentCountBalance,
40398
40489
  labels.tuttiBudgetAgentCountPowerful,
40399
- labels.tuttiBudgetConfirm,
40400
- labels.tuttiBudgetCancel,
40401
40490
  labels.planModeDescription,
40402
40491
  labels.planModeOffLabel,
40403
40492
  labels.planModeOnLabel,
@@ -43558,8 +43647,6 @@ function agentGUITuttiModeLabels(t) {
43558
43647
  tuttiBudgetAgentCountPowerful: t(
43559
43648
  "agentHost.agentGui.tuttiBudgetAgentCountPowerful"
43560
43649
  ),
43561
- tuttiBudgetConfirm: t("agentHost.agentGui.tuttiBudgetConfirm"),
43562
- tuttiBudgetCancel: t("agentHost.agentGui.tuttiBudgetCancel"),
43563
43650
  tuttiModeUpdateFailed: t("agentHost.agentGui.tuttiModeUpdateFailed"),
43564
43651
  tuttiModeUpdateUncertain: t("agentHost.agentGui.tuttiModeUpdateUncertain"),
43565
43652
  tuttiModePlanPanel: {
@@ -44922,4 +45009,4 @@ export {
44922
45009
  AgentHandoffMenu,
44923
45010
  AgentGUI
44924
45011
  };
44925
- //# sourceMappingURL=chunk-AT4DII34.js.map
45012
+ //# sourceMappingURL=chunk-4IJYTGS2.js.map