@tutti-os/agent-gui 0.0.171 → 0.0.173

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 (54) hide show
  1. package/dist/{AgentRichTextReadonly-WOIEQ673.js → AgentRichTextReadonly-ZEMFCKVR.js} +5 -5
  2. package/dist/agent-conversation/index.d.ts +1 -1
  3. package/dist/agent-conversation/index.js +7 -7
  4. package/dist/agent-gui.d.ts +54 -16
  5. package/dist/agent-gui.js +15 -15
  6. package/dist/agent-message-center/index.d.ts +1 -1
  7. package/dist/agent-message-center/index.js +7 -7
  8. package/dist/{agentGuiNodeTypes-CXL3ISqC.d.ts → agentGuiNodeTypes-CLU6X2Hk.d.ts} +1 -1
  9. package/dist/{chunk-Y3K2YTLD.js → chunk-3QPFTVLN.js} +4 -4
  10. package/dist/{chunk-42KTGN4W.js → chunk-5UTK6FDH.js} +2 -2
  11. package/dist/{chunk-OUOVA353.js → chunk-5VUHTRRS.js} +4 -4
  12. package/dist/{chunk-EZ6E3LVP.js → chunk-CAZ7NYUE.js} +2 -2
  13. package/dist/{chunk-2RQM7PJN.js → chunk-EVQ4JY3N.js} +1 -1
  14. package/dist/{chunk-2RQM7PJN.js.map → chunk-EVQ4JY3N.js.map} +1 -1
  15. package/dist/{chunk-C7RY5XMJ.js → chunk-I27O33CO.js} +6 -6
  16. package/dist/{chunk-7M6STXDS.js → chunk-K57GJTVC.js} +2 -2
  17. package/dist/{chunk-GMALB4L6.js → chunk-NNBJT5DD.js} +5 -5
  18. package/dist/{chunk-BHLX4ZFU.js → chunk-OKBVGNH7.js} +2 -2
  19. package/dist/{chunk-42W6JENH.js → chunk-UPX5IC2U.js} +2 -2
  20. package/dist/{chunk-5EHKHIFG.js → chunk-UXSYGLY3.js} +3 -3
  21. package/dist/{chunk-QEOAZW53.js → chunk-V7V7PU7Z.js} +2 -2
  22. package/dist/chunk-V7V7PU7Z.js.map +1 -0
  23. package/dist/{chunk-J4RQ2RTM.js → chunk-VGUKS6JR.js} +7 -7
  24. package/dist/chunk-VGUKS6JR.js.map +1 -0
  25. package/dist/{chunk-KDRU3NBW.js → chunk-ZPZD5XTH.js} +4 -4
  26. package/dist/{chunk-LQ6CK4GS.js → chunk-ZRZVJR3M.js} +1215 -741
  27. package/dist/chunk-ZRZVJR3M.js.map +1 -0
  28. package/dist/context-mention-palette/index.js +7 -7
  29. package/dist/i18n/index.d.ts +4 -4
  30. package/dist/i18n/index.js +2 -2
  31. package/dist/index.d.ts +96 -21
  32. package/dist/index.js +20 -16
  33. package/dist/index.js.map +1 -1
  34. package/dist/mention-search.js +5 -5
  35. package/dist/workbench/browser-element-context/index.js +1 -1
  36. package/dist/workbench/contribution.js +4 -4
  37. package/dist/workbench/index.js +4 -4
  38. package/dist/workbench/sessionTitle.js +2 -2
  39. package/package.json +15 -15
  40. package/dist/chunk-J4RQ2RTM.js.map +0 -1
  41. package/dist/chunk-LQ6CK4GS.js.map +0 -1
  42. package/dist/chunk-QEOAZW53.js.map +0 -1
  43. /package/dist/{AgentRichTextReadonly-WOIEQ673.js.map → AgentRichTextReadonly-ZEMFCKVR.js.map} +0 -0
  44. /package/dist/{chunk-Y3K2YTLD.js.map → chunk-3QPFTVLN.js.map} +0 -0
  45. /package/dist/{chunk-42KTGN4W.js.map → chunk-5UTK6FDH.js.map} +0 -0
  46. /package/dist/{chunk-OUOVA353.js.map → chunk-5VUHTRRS.js.map} +0 -0
  47. /package/dist/{chunk-EZ6E3LVP.js.map → chunk-CAZ7NYUE.js.map} +0 -0
  48. /package/dist/{chunk-C7RY5XMJ.js.map → chunk-I27O33CO.js.map} +0 -0
  49. /package/dist/{chunk-7M6STXDS.js.map → chunk-K57GJTVC.js.map} +0 -0
  50. /package/dist/{chunk-GMALB4L6.js.map → chunk-NNBJT5DD.js.map} +0 -0
  51. /package/dist/{chunk-BHLX4ZFU.js.map → chunk-OKBVGNH7.js.map} +0 -0
  52. /package/dist/{chunk-42W6JENH.js.map → chunk-UPX5IC2U.js.map} +0 -0
  53. /package/dist/{chunk-5EHKHIFG.js.map → chunk-UXSYGLY3.js.map} +0 -0
  54. /package/dist/{chunk-KDRU3NBW.js.map → chunk-ZPZD5XTH.js.map} +0 -0
@@ -1,19 +1,19 @@
1
1
  import {
2
2
  AgentRichTextReadonly
3
- } from "./chunk-42W6JENH.js";
4
- import "./chunk-7M6STXDS.js";
3
+ } from "./chunk-UPX5IC2U.js";
4
+ import "./chunk-K57GJTVC.js";
5
5
  import "./chunk-5QPOMKMQ.js";
6
6
  import "./chunk-FGLQZ6I4.js";
7
7
  import "./chunk-ZVYUTXQJ.js";
8
8
  import "./chunk-ZWLWT3TZ.js";
9
- import "./chunk-EZ6E3LVP.js";
9
+ import "./chunk-CAZ7NYUE.js";
10
10
  import "./chunk-PJP5BUU6.js";
11
11
  import "./chunk-AODSTIED.js";
12
- import "./chunk-J4RQ2RTM.js";
12
+ import "./chunk-VGUKS6JR.js";
13
13
  import "./chunk-D2JUDUYY.js";
14
14
  import "./chunk-LCFMJPNA.js";
15
15
  import "./chunk-5CLSJWUN.js";
16
16
  export {
17
17
  AgentRichTextReadonly
18
18
  };
19
- //# sourceMappingURL=AgentRichTextReadonly-WOIEQ673.js.map
19
+ //# sourceMappingURL=AgentRichTextReadonly-ZEMFCKVR.js.map
@@ -2,7 +2,7 @@ import * as react from 'react';
2
2
  import { ReactNode, JSX } from 'react';
3
3
  import { c as AgentConversationVM, g as WorkspaceLinkAction, f as WorkspaceAgentSessionDetailViewModel } from '../agentConversationVM-DWEy7jzx.js';
4
4
  export { B as BuildWorkspaceAgentSessionDetailInput, W as WorkspaceAgentActivityCard, e as WorkspaceAgentActivityTimelineItem, h as buildWorkspaceAgentSessionDetailViewModel } from '../agentConversationVM-DWEy7jzx.js';
5
- import { d as AgentGUIProviderSkillOption, h as AgentMessageMarkdownWorkspaceAppIcon } from '../agentGuiNodeTypes-CXL3ISqC.js';
5
+ import { d as AgentGUIProviderSkillOption, h as AgentMessageMarkdownWorkspaceAppIcon } from '../agentGuiNodeTypes-CLU6X2Hk.js';
6
6
  import { AgentActivityMessage } from '@tutti-os/agent-activity-core';
7
7
  import '@tutti-os/workspace-issue-manager/core';
8
8
  import '../types-CWFDZVkv.js';
@@ -7,25 +7,25 @@ import {
7
7
  reconcileProjectedAgentConversationVM,
8
8
  serializeAgentConversationForClipboard,
9
9
  useProjectedAgentConversation
10
- } from "../chunk-C7RY5XMJ.js";
11
- import "../chunk-42W6JENH.js";
10
+ } from "../chunk-I27O33CO.js";
11
+ import "../chunk-UPX5IC2U.js";
12
12
  import "../chunk-THBCAUBR.js";
13
13
  import "../chunk-XJ34OIEQ.js";
14
14
  import "../chunk-JDVP33S5.js";
15
- import "../chunk-7M6STXDS.js";
15
+ import "../chunk-K57GJTVC.js";
16
16
  import "../chunk-5QPOMKMQ.js";
17
17
  import "../chunk-FGLQZ6I4.js";
18
- import "../chunk-5EHKHIFG.js";
18
+ import "../chunk-UXSYGLY3.js";
19
19
  import "../chunk-ZVYUTXQJ.js";
20
- import "../chunk-QEOAZW53.js";
20
+ import "../chunk-V7V7PU7Z.js";
21
21
  import "../chunk-F5UR6EJG.js";
22
22
  import "../chunk-ZWLWT3TZ.js";
23
23
  import {
24
24
  translate
25
- } from "../chunk-EZ6E3LVP.js";
25
+ } from "../chunk-CAZ7NYUE.js";
26
26
  import "../chunk-PJP5BUU6.js";
27
27
  import "../chunk-AODSTIED.js";
28
- import "../chunk-J4RQ2RTM.js";
28
+ import "../chunk-VGUKS6JR.js";
29
29
  import "../chunk-MIJXEELH.js";
30
30
  import "../chunk-D2JUDUYY.js";
31
31
  import "../chunk-LCFMJPNA.js";
@@ -3,7 +3,7 @@ import { ReactNode } from 'react';
3
3
  import { I18nRuntime } from '@tutti-os/ui-i18n-runtime';
4
4
  import { AgentActivityGoalControlInput, AgentActivityGoalControlResult, AgentActivityCreateSessionInput, AgentActivitySession, AgentActivityDeleteSessionInput, AgentActivityDeleteSessionResult, AgentActivitySendInput, AgentActivitySessionSettings, AgentActivityActivateSessionResult, AgentActivitySnapshot, AgentSessionEngine, AgentActivityMessageOrder, AgentActivityMessagePage, AgentActivitySendInputResult, AgentActivityRenameSessionInput, AgentActivitySubmitInteractiveInput, AgentActivitySubmitInteractiveResult, AgentActivitySnapshotListener, AgentActivitySubmitSettingsPatch } from '@tutti-os/agent-activity-core';
5
5
  import { k as AgentHostAgentSessionComposerSettings, o as AgentHostUnactivateAgentSessionResult, b as AgentGUIAgentTarget, f as AgentGUIProvider, p as AgentPromptContentBlock, e as AgentGUINodeData, P as Point, g as AgentGUIProviderRailAllPresentation, h as AgentGUIProviderRailMode, i as AgentGUIProviderReadinessGate, d as AgentGUIHomeSuggestionId, N as NodeFrame, a as AgentGUIAgentDirectorySnapshot, c as AgentGUIAllAgentsPresentation } from './types-CWFDZVkv.js';
6
- import { A as AgentComposerDraft, j as AgentSessionCommand, d as AgentGUIProviderSkillOption, b as AgentGUIComposerSettingsVM, e as AgentGUIQueueStatus, f as AgentGUIQueuedPromptVM, h as AgentMessageMarkdownWorkspaceAppIcon, k as AgentSlashCommandCapability, c as AgentGUINodeViewModel, i as AgentProbeSnapshot, a as AgentComposerDraftFile, g as AgentHostInputApi } from './agentGuiNodeTypes-CXL3ISqC.js';
6
+ import { A as AgentComposerDraft, i as AgentSessionCommand, d as AgentGUIProviderSkillOption, b as AgentGUIComposerSettingsVM, e as AgentGUIQueueStatus, f as AgentGUIQueuedPromptVM, h as AgentMessageMarkdownWorkspaceAppIcon, j as AgentSlashCommandCapability, c as AgentGUINodeViewModel, a as AgentComposerDraftFile, k as AgentUsageQuota, g as AgentHostInputApi } from './agentGuiNodeTypes-CLU6X2Hk.js';
7
7
  import { WorkspaceFileReference, ReferenceLocateTarget, WorkspaceFileReferenceAdapter, ReferenceProvenanceCatalog } from '@tutti-os/workspace-file-reference/contracts';
8
8
  export { ReferenceProvenanceCatalog as AgentGUIReferenceProvenanceFilterCatalog } from '@tutti-os/workspace-file-reference/contracts';
9
9
  import { A as AgentContextMentionItem } from './agentFileMentionContracts-B0yQizXB.js';
@@ -271,6 +271,7 @@ interface AgentActivityRuntimeDeleteSessionsBatchInput {
271
271
  workspaceId: string;
272
272
  }
273
273
  interface AgentActivityRuntimeDeleteSessionsBatchResult {
274
+ cleanupFailedSessionIds: string[];
274
275
  removedMessages: number;
275
276
  removedSessionIds: string[];
276
277
  removedSessions: number;
@@ -793,6 +794,13 @@ interface AgentComposerProps {
793
794
  }) => string;
794
795
  slashStatusContextUnavailable: string;
795
796
  slashStatusLimitsUnavailable: string;
797
+ slashStatusEmptyValue: string;
798
+ slashStatusUsageJustUpdated: string;
799
+ slashStatusUsageMinutesAgo: (count: number) => string;
800
+ slashStatusUsageHoursAgo: (count: number) => string;
801
+ slashStatusUsageUpdating: string;
802
+ slashStatusUsageRefreshFailed: string;
803
+ slashStatusUsageRefreshAria: string;
796
804
  usageChipLabel: (input: {
797
805
  percent: number;
798
806
  }) => string;
@@ -879,6 +887,8 @@ interface AgentComposerProps {
879
887
  capabilityMenuState?: AgentComposerCapabilityMenuState;
880
888
  onCapabilitySettingsRequest?: (capability: AgentComposerCapabilitySettingsTarget) => void;
881
889
  onSlashStatusOpen?: () => void;
890
+ onSlashStatusClose?: () => void;
891
+ onSlashStatusRefresh?: () => void;
882
892
  onSubmit: (content: AgentPromptContentBlock[], displayPrompt?: string, options?: AgentComposerSubmitOptions) => void;
883
893
  onSubmitGuidance?: (content: AgentPromptContentBlock[], displayPrompt?: string) => void;
884
894
  onSendQueuedPromptNext: (queuedPromptId: string) => void;
@@ -937,6 +947,10 @@ interface AgentComposerSlashStatus {
937
947
  limits?: readonly AgentComposerSlashStatusLimit[];
938
948
  limitsLoading?: boolean;
939
949
  limitsUnavailable?: boolean;
950
+ limitsResolvedEmpty?: boolean;
951
+ limitsCapturedAtUnixMs?: number | null;
952
+ refreshFailed?: boolean;
953
+ isRefreshing?: boolean;
940
954
  }
941
955
  interface AgentComposerSlashStatusLimit {
942
956
  id: string;
@@ -1001,18 +1015,6 @@ interface DesktopSize {
1001
1015
  height: number;
1002
1016
  bottomInset?: number;
1003
1017
  }
1004
- /** Workspace-scoped agent probes for currently visible Agent GUI windows. */
1005
- interface WorkspaceDesktopAgentProbesState {
1006
- snapshot: AgentProbeSnapshot | null;
1007
- isLoadingAvailability: boolean;
1008
- isLoadingUsage: boolean;
1009
- /** True when the most recent usage probe fetch failed (the retained snapshot,
1010
- * if any, is stale). Lets surfaces show a refresh/retry affordance instead of
1011
- * silently displaying old numbers. Absent is treated as "no failure". */
1012
- usageLoadFailed?: boolean;
1013
- }
1014
- type WorkspaceDesktopAgentProbeDemandChange = (provider: AgentProvider | null, sourceId?: string) => void;
1015
- type WorkspaceDesktopAgentProbeRefreshRequest = (provider: AgentProvider, sourceId?: string) => void;
1016
1018
 
1017
1019
  interface AgentGUIComposerDefaults {
1018
1020
  model?: string | null;
@@ -1056,6 +1058,43 @@ interface AgentGUIPrefillPromptRequest {
1056
1058
  userProjectPath?: string | null;
1057
1059
  }
1058
1060
 
1061
+ type AgentStatusSectionState = "available" | "unavailable" | "error";
1062
+ type AgentStatusRequestReason = "slash-status" | "agent-info" | "agent-config";
1063
+ interface AgentStatusQuery {
1064
+ /** Exact host-owned execution target identity. AgentGUI treats it as opaque. */
1065
+ scopeKey: string;
1066
+ agentSessionId?: string | null;
1067
+ reason: AgentStatusRequestReason;
1068
+ forceRefresh?: boolean;
1069
+ }
1070
+ interface AgentStatusValue {
1071
+ agentSessionId?: string | null;
1072
+ contextWindow?: {
1073
+ usedTokens?: number | null;
1074
+ totalTokens?: number | null;
1075
+ } | null;
1076
+ contextState: AgentStatusSectionState;
1077
+ quotas: readonly AgentUsageQuota[];
1078
+ limitsState: AgentStatusSectionState;
1079
+ limitsCapturedAtUnixMs?: number | null;
1080
+ limitsStale?: boolean;
1081
+ }
1082
+ type AgentStatusRequestPhase = "idle" | "loading" | "ready" | "error";
1083
+ interface AgentStatusControllerSnapshot {
1084
+ query: AgentStatusQuery | null;
1085
+ value: AgentStatusValue | null;
1086
+ phase: AgentStatusRequestPhase;
1087
+ isRefreshing: boolean;
1088
+ errorCode: string | null;
1089
+ }
1090
+ interface AgentStatusController {
1091
+ getSnapshot(): AgentStatusControllerSnapshot;
1092
+ subscribe(listener: () => void): () => void;
1093
+ open(query: AgentStatusQuery): void;
1094
+ close(): void;
1095
+ invalidate(scopeKey?: string): void;
1096
+ }
1097
+
1059
1098
  interface AgentGUINodeIdentity {
1060
1099
  nodeId: string;
1061
1100
  workspaceId: string;
@@ -1109,9 +1148,8 @@ interface AgentGUINodeRuntimeRequests {
1109
1148
  sessionAction?: AgentGUISessionActionRequest | null;
1110
1149
  openSession?: AgentGUIOpenSessionRequest | null;
1111
1150
  prefillPrompt?: AgentGUIPrefillPromptRequest | null;
1112
- agentProbes?: WorkspaceDesktopAgentProbesState | null;
1113
- onProbeDemandChange?: WorkspaceDesktopAgentProbeDemandChange;
1114
- onProbeRefreshRequest?: WorkspaceDesktopAgentProbeRefreshRequest;
1151
+ /** On-demand status capability. Transport and owner resolution stay host-owned. */
1152
+ agentStatusController?: AgentStatusController | null;
1115
1153
  }
1116
1154
  interface AgentGUINodeHostCapabilities {
1117
1155
  /**
package/dist/agent-gui.js CHANGED
@@ -1,42 +1,42 @@
1
1
  import {
2
2
  AgentGUI
3
- } from "./chunk-LQ6CK4GS.js";
3
+ } from "./chunk-ZRZVJR3M.js";
4
4
  import "./chunk-A4WCTHWS.js";
5
- import "./chunk-Y3K2YTLD.js";
5
+ import "./chunk-3QPFTVLN.js";
6
6
  import "./chunk-6II57C72.js";
7
7
  import "./chunk-YSA4MXR5.js";
8
8
  import "./chunk-MHOYBRCY.js";
9
9
  import "./chunk-SZVHT57M.js";
10
- import "./chunk-42KTGN4W.js";
11
- import "./chunk-C7RY5XMJ.js";
12
- import "./chunk-42W6JENH.js";
10
+ import "./chunk-5UTK6FDH.js";
11
+ import "./chunk-I27O33CO.js";
12
+ import "./chunk-UPX5IC2U.js";
13
13
  import "./chunk-THBCAUBR.js";
14
14
  import "./chunk-UP3ZDYTN.js";
15
15
  import "./chunk-GUFEHWUX.js";
16
- import "./chunk-KDRU3NBW.js";
16
+ import "./chunk-ZPZD5XTH.js";
17
17
  import "./chunk-CX6XXG6R.js";
18
18
  import "./chunk-PQPNDL4A.js";
19
- import "./chunk-GMALB4L6.js";
19
+ import "./chunk-NNBJT5DD.js";
20
20
  import "./chunk-VMPA46ET.js";
21
21
  import "./chunk-XJ34OIEQ.js";
22
22
  import "./chunk-JDVP33S5.js";
23
- import "./chunk-7M6STXDS.js";
23
+ import "./chunk-K57GJTVC.js";
24
24
  import "./chunk-5QPOMKMQ.js";
25
25
  import "./chunk-RMQREVJY.js";
26
26
  import "./chunk-FGLQZ6I4.js";
27
- import "./chunk-OUOVA353.js";
28
- import "./chunk-2RQM7PJN.js";
29
- import "./chunk-5EHKHIFG.js";
27
+ import "./chunk-5VUHTRRS.js";
28
+ import "./chunk-EVQ4JY3N.js";
29
+ import "./chunk-UXSYGLY3.js";
30
30
  import "./chunk-ZVYUTXQJ.js";
31
- import "./chunk-BHLX4ZFU.js";
31
+ import "./chunk-OKBVGNH7.js";
32
32
  import "./chunk-YMXYBG7U.js";
33
- import "./chunk-QEOAZW53.js";
33
+ import "./chunk-V7V7PU7Z.js";
34
34
  import "./chunk-F5UR6EJG.js";
35
35
  import "./chunk-ZWLWT3TZ.js";
36
- import "./chunk-EZ6E3LVP.js";
36
+ import "./chunk-CAZ7NYUE.js";
37
37
  import "./chunk-PJP5BUU6.js";
38
38
  import "./chunk-AODSTIED.js";
39
- import "./chunk-J4RQ2RTM.js";
39
+ import "./chunk-VGUKS6JR.js";
40
40
  import "./chunk-MIJXEELH.js";
41
41
  import "./chunk-D2JUDUYY.js";
42
42
  import "./chunk-LCFMJPNA.js";
@@ -460,7 +460,7 @@ declare function dispatchAgentPlanPromptAction(input: {
460
460
  */
461
461
  interface EngineStateStore<TState> {
462
462
  getSnapshot(): TState;
463
- subscribe(listener: (state: TState) => void): () => void;
463
+ subscribe(listener: () => void): () => void;
464
464
  }
465
465
  declare function useEngineSelector<TState, TSelected>(engine: EngineStateStore<TState>, selector: (state: TState) => TSelected, isEqual?: (a: TSelected, b: TSelected) => boolean): TSelected;
466
466
 
@@ -8,10 +8,10 @@ import {
8
8
  isPromptRequestIdTitle,
9
9
  latestPlanTurnId,
10
10
  planImplementationPromptFromPlanTurn
11
- } from "../chunk-OUOVA353.js";
11
+ } from "../chunk-5VUHTRRS.js";
12
12
  import {
13
13
  useEngineSelector
14
- } from "../chunk-2RQM7PJN.js";
14
+ } from "../chunk-EVQ4JY3N.js";
15
15
  import {
16
16
  AgentMessageMarkdown,
17
17
  CustomScrollArea,
@@ -21,20 +21,20 @@ import {
21
21
  isExitPlanSwitchModeInput,
22
22
  normalizeAgentApprovalPurpose,
23
23
  normalizeAskUserQuestions
24
- } from "../chunk-5EHKHIFG.js";
24
+ } from "../chunk-UXSYGLY3.js";
25
25
  import {
26
26
  cn
27
27
  } from "../chunk-ZVYUTXQJ.js";
28
28
  import {
29
29
  userAvatarPlaceholderUrl,
30
30
  workspaceAgentActivityStatusLabel
31
- } from "../chunk-BHLX4ZFU.js";
31
+ } from "../chunk-OKBVGNH7.js";
32
32
  import {
33
33
  resolveWorkspaceAgentSessionSortTimeUnixMs
34
34
  } from "../chunk-YMXYBG7U.js";
35
35
  import {
36
36
  workspaceAgentProviderLabel
37
- } from "../chunk-QEOAZW53.js";
37
+ } from "../chunk-V7V7PU7Z.js";
38
38
  import "../chunk-F5UR6EJG.js";
39
39
  import {
40
40
  managedAgentRoundedIconUrl
@@ -43,10 +43,10 @@ import {
43
43
  AgentGuiI18nProvider,
44
44
  getActiveUiLanguage,
45
45
  useTranslation
46
- } from "../chunk-EZ6E3LVP.js";
46
+ } from "../chunk-CAZ7NYUE.js";
47
47
  import "../chunk-PJP5BUU6.js";
48
48
  import "../chunk-AODSTIED.js";
49
- import "../chunk-J4RQ2RTM.js";
49
+ import "../chunk-VGUKS6JR.js";
50
50
  import {
51
51
  normalizeAgentTitleText
52
52
  } from "../chunk-MIJXEELH.js";
@@ -781,4 +781,4 @@ interface AgentGUINodeViewModel {
781
781
  operations: AgentGUIOperationsViewModel;
782
782
  }
783
783
 
784
- export type { AgentComposerDraft as A, AgentComposerDraftFile as a, AgentGUIComposerSettingsVM as b, AgentGUINodeViewModel as c, AgentGUIProviderSkillOption as d, AgentGUIQueueStatus as e, AgentGUIQueuedPromptVM as f, AgentHostInputApi as g, AgentMessageMarkdownWorkspaceAppIcon as h, AgentProbeSnapshot as i, AgentSessionCommand as j, AgentSlashCommandCapability as k };
784
+ export type { AgentComposerDraft as A, AgentComposerDraftFile as a, AgentGUIComposerSettingsVM as b, AgentGUINodeViewModel as c, AgentGUIProviderSkillOption as d, AgentGUIQueueStatus as e, AgentGUIQueuedPromptVM as f, AgentHostInputApi as g, AgentMessageMarkdownWorkspaceAppIcon as h, AgentSessionCommand as i, AgentSlashCommandCapability as j, AgentUsageQuota as k };
@@ -20,7 +20,7 @@ import {
20
20
  resolveAgentGUIConversationTitleDisplayPrompt,
21
21
  resolveAgentGuiWorkbenchHeaderTitle,
22
22
  resolveAgentGuiWorkbenchSessionTitle
23
- } from "./chunk-42KTGN4W.js";
23
+ } from "./chunk-5UTK6FDH.js";
24
24
  import {
25
25
  normalizeAgentGUIAgents,
26
26
  projectAgentGUIAgentsToTargets
@@ -30,7 +30,7 @@ import {
30
30
  } from "./chunk-PQPNDL4A.js";
31
31
  import {
32
32
  useEngineSelector
33
- } from "./chunk-2RQM7PJN.js";
33
+ } from "./chunk-EVQ4JY3N.js";
34
34
  import {
35
35
  normalizeManagedAgentProvider
36
36
  } from "./chunk-AODSTIED.js";
@@ -400,7 +400,7 @@ function stopPointerPropagation(event) {
400
400
 
401
401
  // workbench/header.ts
402
402
  var LazyAgentRichTextReadonly = lazy(
403
- () => import("./AgentRichTextReadonly-WOIEQ673.js").then((module) => ({
403
+ () => import("./AgentRichTextReadonly-ZEMFCKVR.js").then((module) => ({
404
404
  default: module.AgentRichTextReadonly
405
405
  }))
406
406
  );
@@ -1665,4 +1665,4 @@ export {
1665
1665
  AGENT_GUI_WORKBENCH_OPEN_EXTERNAL_IMPORT_EVENT,
1666
1666
  createAgentGuiWorkbenchContribution
1667
1667
  };
1668
- //# sourceMappingURL=chunk-Y3K2YTLD.js.map
1668
+ //# sourceMappingURL=chunk-3QPFTVLN.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  translateInUiLanguage
3
- } from "./chunk-J4RQ2RTM.js";
3
+ } from "./chunk-VGUKS6JR.js";
4
4
  import {
5
5
  normalizeAgentTitleText
6
6
  } from "./chunk-MIJXEELH.js";
@@ -374,4 +374,4 @@ export {
374
374
  resolveAgentGuiWorkbenchHeaderTitle,
375
375
  resolveAgentGuiWorkbenchSessionTitle
376
376
  };
377
- //# sourceMappingURL=chunk-42KTGN4W.js.map
377
+ //# sourceMappingURL=chunk-5UTK6FDH.js.map
@@ -2,17 +2,17 @@ import {
2
2
  AgentGUIConversation_styles_default,
3
3
  MessageSquareMoreIcon,
4
4
  extractAgentMcpToolTarget
5
- } from "./chunk-5EHKHIFG.js";
5
+ } from "./chunk-UXSYGLY3.js";
6
6
  import {
7
7
  getOptionalAgentHostApi,
8
8
  useOptionalAgentHostApi
9
- } from "./chunk-QEOAZW53.js";
9
+ } from "./chunk-V7V7PU7Z.js";
10
10
  import {
11
11
  fileChangePathsFromChanges
12
12
  } from "./chunk-F5UR6EJG.js";
13
13
  import {
14
14
  translate
15
- } from "./chunk-EZ6E3LVP.js";
15
+ } from "./chunk-CAZ7NYUE.js";
16
16
 
17
17
  // shared/agentConversation/planImplementationPresentation.ts
18
18
  var PLAN_IMPLEMENTATION_PROMPT = "Implement the plan.";
@@ -1471,4 +1471,4 @@ export {
1471
1471
  isPromptRequestIdTitle,
1472
1472
  AgentInteractivePromptSurface
1473
1473
  };
1474
- //# sourceMappingURL=chunk-OUOVA353.js.map
1474
+ //# sourceMappingURL=chunk-5VUHTRRS.js.map
@@ -6,7 +6,7 @@ import {
6
6
  setCurrentAgentGuiI18nRuntime,
7
7
  translate,
8
8
  translateInUiLanguage
9
- } from "./chunk-J4RQ2RTM.js";
9
+ } from "./chunk-VGUKS6JR.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-EZ6E3LVP.js.map
71
+ //# sourceMappingURL=chunk-CAZ7NYUE.js.map
@@ -13,4 +13,4 @@ function useEngineSelector(engine, selector, isEqual) {
13
13
  export {
14
14
  useEngineSelector
15
15
  };
16
- //# sourceMappingURL=chunk-2RQM7PJN.js.map
16
+ //# sourceMappingURL=chunk-EVQ4JY3N.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../shared/engine/useEngineSelector.ts"],"sourcesContent":["import { useSyncExternalStoreWithSelector } from \"use-sync-external-store/with-selector.js\";\n\n// Single React binding for workspace session engine subscriptions\n// (docs/architecture/agent-gui-refactor-plan.md, sections 3.5 and 4.1).\n//\n// This is the only file in the package allowed to touch useSyncExternalStore\n// (enforced by tools/scripts/check-agent-gui-degradation.mjs). Components\n// subscribe through useEngineSelector so selector memoization and equality\n// comparison are implemented exactly once, via React's official with-selector\n// shim; hand-rolled subscriptions returning fresh references are the classic\n// infinite re-render trap this file exists to contain.\n\n/**\n * Structural surface the binding needs from an engine instance. Matches\n * AgentSessionEngine from @tutti-os/agent-activity-core, but stays structural\n * so focused tests and future engine slices can bind without the full engine.\n *\n * Contract: `subscribe` and `getSnapshot` must be stable, this-free function\n * references for the lifetime of the instance (the engine factory returns\n * closures, satisfying this by construction). A fresh `subscribe` identity per\n * render would force useSyncExternalStore to resubscribe on every render.\n */\nexport interface EngineStateStore<TState> {\n getSnapshot(): TState;\n subscribe(listener: (state: TState) => void): () => void;\n}\n\nexport function useEngineSelector<TState, TSelected>(\n engine: EngineStateStore<TState>,\n selector: (state: TState) => TSelected,\n isEqual?: (a: TSelected, b: TSelected) => boolean\n): TSelected {\n return useSyncExternalStoreWithSelector(\n engine.subscribe,\n engine.getSnapshot,\n engine.getSnapshot,\n selector,\n isEqual\n );\n}\n"],"mappings":";AAAA,SAAS,wCAAwC;AA2B1C,SAAS,kBACd,QACA,UACA,SACW;AACX,SAAO;AAAA,IACL,OAAO;AAAA,IACP,OAAO;AAAA,IACP,OAAO;AAAA,IACP;AAAA,IACA;AAAA,EACF;AACF;","names":[]}
1
+ {"version":3,"sources":["../shared/engine/useEngineSelector.ts"],"sourcesContent":["import { useSyncExternalStoreWithSelector } from \"use-sync-external-store/with-selector.js\";\n\n// Single React binding for workspace session engine subscriptions\n// (docs/architecture/agent-gui-refactor-plan.md, sections 3.5 and 4.1).\n//\n// This is the only file in the package allowed to touch useSyncExternalStore\n// (enforced by tools/scripts/check-agent-gui-degradation.mjs). Components\n// subscribe through useEngineSelector so selector memoization and equality\n// comparison are implemented exactly once, via React's official with-selector\n// shim; hand-rolled subscriptions returning fresh references are the classic\n// infinite re-render trap this file exists to contain.\n\n/**\n * Structural surface the binding needs from an engine instance. Matches\n * AgentSessionEngine from @tutti-os/agent-activity-core, but stays structural\n * so focused tests and future engine slices can bind without the full engine.\n *\n * Contract: `subscribe` and `getSnapshot` must be stable, this-free function\n * references for the lifetime of the instance (the engine factory returns\n * closures, satisfying this by construction). A fresh `subscribe` identity per\n * render would force useSyncExternalStore to resubscribe on every render.\n */\nexport interface EngineStateStore<TState> {\n getSnapshot(): TState;\n subscribe(listener: () => void): () => void;\n}\n\nexport function useEngineSelector<TState, TSelected>(\n engine: EngineStateStore<TState>,\n selector: (state: TState) => TSelected,\n isEqual?: (a: TSelected, b: TSelected) => boolean\n): TSelected {\n return useSyncExternalStoreWithSelector(\n engine.subscribe,\n engine.getSnapshot,\n engine.getSnapshot,\n selector,\n isEqual\n );\n}\n"],"mappings":";AAAA,SAAS,wCAAwC;AA2B1C,SAAS,kBACd,QACA,UACA,SACW;AACX,SAAO;AAAA,IACL,OAAO;AAAA,IACP,OAAO;AAAA,IACP,OAAO;AAAA,IACP;AAAA,IACA;AAAA,EACF;AACF;","names":[]}
@@ -2,7 +2,7 @@ import {
2
2
  AgentRichTextReadonly,
3
3
  promptForProviderSkills,
4
4
  skillTriggerForPrefix
5
- } from "./chunk-42W6JENH.js";
5
+ } from "./chunk-UPX5IC2U.js";
6
6
  import {
7
7
  classifyRecoverableAgentMessage,
8
8
  isProviderPlanLimitMessage,
@@ -27,7 +27,7 @@ import {
27
27
  agentPromptFileBlocks,
28
28
  agentPromptPastedTextBlocks,
29
29
  materializeAgentComposerFileMentions
30
- } from "./chunk-7M6STXDS.js";
30
+ } from "./chunk-K57GJTVC.js";
31
31
  import {
32
32
  AGENT_PASTED_TEXT_BLOCK_KIND,
33
33
  AGENT_PASTED_TEXT_MENTION_KIND
@@ -47,7 +47,7 @@ import {
47
47
  resolveWorkspaceFileLinkAction,
48
48
  resolveWorkspaceFilePathCandidate,
49
49
  resolveWorkspaceLinkAction
50
- } from "./chunk-5EHKHIFG.js";
50
+ } from "./chunk-UXSYGLY3.js";
51
51
  import {
52
52
  cn
53
53
  } from "./chunk-ZVYUTXQJ.js";
@@ -55,7 +55,7 @@ import {
55
55
  useOptionalAgentActivityRuntime,
56
56
  useOptionalAgentHostApi,
57
57
  workspaceAgentProviderLabel
58
- } from "./chunk-QEOAZW53.js";
58
+ } from "./chunk-V7V7PU7Z.js";
59
59
  import {
60
60
  fileChangeCountFromChanges,
61
61
  fileChangeEntriesFromChanges,
@@ -65,7 +65,7 @@ import {
65
65
  getActiveUiLanguage,
66
66
  translate,
67
67
  useTranslation
68
- } from "./chunk-EZ6E3LVP.js";
68
+ } from "./chunk-CAZ7NYUE.js";
69
69
  import {
70
70
  normalizeAgentTitleText
71
71
  } from "./chunk-MIJXEELH.js";
@@ -14917,4 +14917,4 @@ export {
14917
14917
  AgentConversationFlow,
14918
14918
  useProjectedAgentConversation
14919
14919
  };
14920
- //# sourceMappingURL=chunk-C7RY5XMJ.js.map
14920
+ //# sourceMappingURL=chunk-I27O33CO.js.map
@@ -11,7 +11,7 @@ import {
11
11
  import {
12
12
  translate,
13
13
  useTranslation
14
- } from "./chunk-EZ6E3LVP.js";
14
+ } from "./chunk-CAZ7NYUE.js";
15
15
  import {
16
16
  getAgentCustomMentionKind
17
17
  } from "./chunk-D2JUDUYY.js";
@@ -1833,4 +1833,4 @@ export {
1833
1833
  exitAgentFileMentionSuggestion,
1834
1834
  createAgentFileMentionExtension
1835
1835
  };
1836
- //# sourceMappingURL=chunk-7M6STXDS.js.map
1836
+ //# sourceMappingURL=chunk-K57GJTVC.js.map
@@ -7,7 +7,7 @@ import {
7
7
  } from "./chunk-XJ34OIEQ.js";
8
8
  import {
9
9
  normalizeAgentSessionMentionTitle
10
- } from "./chunk-7M6STXDS.js";
10
+ } from "./chunk-K57GJTVC.js";
11
11
  import {
12
12
  resolveAgentMentionFileThumbnailUrl
13
13
  } from "./chunk-5QPOMKMQ.js";
@@ -20,11 +20,11 @@ import {
20
20
  import {
21
21
  getOptionalAgentHostApi,
22
22
  workspaceAgentProviderLabel
23
- } from "./chunk-QEOAZW53.js";
23
+ } from "./chunk-V7V7PU7Z.js";
24
24
  import {
25
25
  translate,
26
26
  translateInUiLanguage
27
- } from "./chunk-EZ6E3LVP.js";
27
+ } from "./chunk-CAZ7NYUE.js";
28
28
  import {
29
29
  normalizeAgentTitleText
30
30
  } from "./chunk-MIJXEELH.js";
@@ -3039,6 +3039,7 @@ function preloadAgentMentionBrowse(input) {
3039
3039
 
3040
3040
  export {
3041
3041
  buildWorkspaceAgentActivityListViewModel,
3042
+ agentGuiScheduler,
3042
3043
  agentMentionGroupLabel,
3043
3044
  agentMentionFilterLabel,
3044
3045
  agentMentionEmptyGroupLabel,
@@ -3048,8 +3049,7 @@ export {
3048
3049
  agentGeneratedMentionItemKey,
3049
3050
  MAX_BROWSE_CACHE_ENTRIES,
3050
3051
  resetAgentMentionSearchBrowseCacheForTests,
3051
- agentGuiScheduler,
3052
3052
  AgentMentionSearchController,
3053
3053
  preloadAgentMentionBrowse
3054
3054
  };
3055
- //# sourceMappingURL=chunk-GMALB4L6.js.map
3055
+ //# sourceMappingURL=chunk-NNBJT5DD.js.map