@tutti-os/agent-gui 0.0.93 → 0.0.95
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +48 -32
- package/dist/AgentGUI-CwBLYtv-.d.ts +992 -0
- package/dist/agent-conversation/index.d.ts +5 -7
- package/dist/agent-conversation/index.js +13 -9
- package/dist/agent-conversation/index.js.map +1 -1
- package/dist/agent-env/index.d.ts +14 -38
- package/dist/agent-env/index.js +2 -57
- package/dist/agent-env/index.js.map +1 -1
- package/dist/agent-gui.d.ts +21 -0
- package/dist/agent-gui.js +39 -0
- package/dist/agent-message-center/index.d.ts +145 -122
- package/dist/agent-message-center/index.js +1473 -1398
- package/dist/agent-message-center/index.js.map +1 -1
- package/dist/{agentConversationVM-CfXN_TQ2.d.ts → agentConversationVM-C335TR6S.d.ts} +112 -7
- package/dist/agentFileMentionContracts-Czvz6YMI.d.ts +107 -0
- package/dist/{agentGuiNodeTypes-rGaDqxVR.d.ts → agentGuiNodeTypes-DppADPHW.d.ts} +102 -149
- package/dist/agentPlanPromptDispatch-C7cCMjve.d.ts +37 -0
- package/dist/agents.d.ts +13 -0
- package/dist/agents.js +13 -0
- package/dist/app/renderer/agentactivity.css +431 -75
- package/dist/app/renderer/assets/icons/agent-vinyl-player-chassis.png +0 -0
- package/dist/app/renderer/assets/icons/agent-vinyl-tonearm.png +0 -0
- package/dist/app/renderer/assets/icons/agent-vinyls/claude-vinyl.png +0 -0
- package/dist/app/renderer/assets/icons/agent-vinyls/codex-vinyl.png +0 -0
- package/dist/app/renderer/assets/icons/agent-vinyls/cursor-vinyl.png +0 -0
- package/dist/app/renderer/assets/icons/agent-vinyls/hermes-vinyl.png +0 -0
- package/dist/app/renderer/assets/icons/agent-vinyls/openclaw-vinyl.png +0 -0
- package/dist/app/renderer/assets/icons/agent-vinyls/opencode-vinyl.png +0 -0
- package/dist/app/renderer/assets/icons/agent-vinyls/tutti-vinyl.png +0 -0
- package/dist/app/renderer/assets/icons/open-link-lined.svg +4 -0
- package/dist/{chunk-7QHBFRG5.js → chunk-3R2D4E57.js} +3137 -3396
- package/dist/chunk-3R2D4E57.js.map +1 -0
- package/dist/chunk-4YG7YK7S.js +23 -0
- package/dist/chunk-4YG7YK7S.js.map +1 -0
- package/dist/chunk-5X7YDOC6.js +42 -0
- package/dist/chunk-5X7YDOC6.js.map +1 -0
- package/dist/{chunk-IBIMGLCD.js → chunk-7J4K6WKB.js} +1 -1
- package/dist/chunk-7J4K6WKB.js.map +1 -0
- package/dist/{chunk-KQE5KV2V.js → chunk-7PFDA2HQ.js} +505 -504
- package/dist/chunk-7PFDA2HQ.js.map +1 -0
- package/dist/{chunk-M2LWH54R.js → chunk-7RDD3EWP.js} +557 -569
- package/dist/chunk-7RDD3EWP.js.map +1 -0
- package/dist/{chunk-VWXFFSIM.js → chunk-AOS2VWU6.js} +1357 -1301
- package/dist/chunk-AOS2VWU6.js.map +1 -0
- package/dist/{chunk-3HARXLAZ.js → chunk-BFNJKTDV.js} +295 -255
- package/dist/chunk-BFNJKTDV.js.map +1 -0
- package/dist/{chunk-U7D7G3UU.js → chunk-BIHBXWK5.js} +2 -2
- package/dist/{chunk-XQUUELKF.js → chunk-C5FV4UGI.js} +2921 -2944
- package/dist/chunk-C5FV4UGI.js.map +1 -0
- package/dist/{chunk-HOSX5C5V.js → chunk-CRO2MV2Y.js} +36 -46
- package/dist/chunk-CRO2MV2Y.js.map +1 -0
- package/dist/chunk-FGLQZ6I4.js +9 -0
- package/dist/chunk-FGLQZ6I4.js.map +1 -0
- package/dist/chunk-H6IQ63DQ.js +14 -0
- package/dist/chunk-H6IQ63DQ.js.map +1 -0
- package/dist/{chunk-4SQNOOJ3.js → chunk-JX2SIXNL.js} +1293 -1702
- package/dist/chunk-JX2SIXNL.js.map +1 -0
- package/dist/chunk-KAL4XZMA.js +231 -0
- package/dist/chunk-KAL4XZMA.js.map +1 -0
- package/dist/chunk-KJQERFKX.js +259 -0
- package/dist/chunk-KJQERFKX.js.map +1 -0
- package/dist/chunk-LQVXBT65.js +491 -0
- package/dist/chunk-LQVXBT65.js.map +1 -0
- package/dist/{chunk-AOVPGJBC.js → chunk-NITOD7WF.js} +2 -2
- package/dist/{chunk-7LMJXF4R.js → chunk-NJAZ7LQM.js} +20 -16
- package/dist/chunk-NJAZ7LQM.js.map +1 -0
- package/dist/chunk-NX3CZJXW.js +25 -0
- package/dist/chunk-NX3CZJXW.js.map +1 -0
- package/dist/chunk-O6W72SEP.js +93 -0
- package/dist/chunk-O6W72SEP.js.map +1 -0
- package/dist/{chunk-PSLAWU25.js → chunk-R2EWECUP.js} +7 -1
- package/dist/chunk-R2EWECUP.js.map +1 -0
- package/dist/chunk-RY6GIO3K.js +31700 -0
- package/dist/chunk-RY6GIO3K.js.map +1 -0
- package/dist/{chunk-XDV4ZRVK.js → chunk-UGVI47X6.js} +98 -37
- package/dist/chunk-UGVI47X6.js.map +1 -0
- package/dist/{chunk-XW4CVBUH.js → chunk-UQJPV6HP.js} +18 -11
- package/dist/chunk-UQJPV6HP.js.map +1 -0
- package/dist/{chunk-GAPTLVII.js → chunk-VF22EG3F.js} +1 -1
- package/dist/{chunk-GAPTLVII.js.map → chunk-VF22EG3F.js.map} +1 -1
- package/dist/{chunk-45FF4DQU.js → chunk-WEDMAVX2.js} +22 -24
- package/dist/chunk-WEDMAVX2.js.map +1 -0
- package/dist/{chunk-SXDLSEHO.js → chunk-XMO45GKA.js} +531 -401
- package/dist/chunk-XMO45GKA.js.map +1 -0
- package/dist/{chunk-UNO7CEAF.js → chunk-YE25HN6T.js} +6 -9
- package/dist/chunk-YE25HN6T.js.map +1 -0
- package/dist/context-mention-palette/index.d.ts +3 -2
- package/dist/context-mention-palette/index.js +19 -14
- package/dist/custom-mention.d.ts +44 -0
- package/dist/custom-mention.js +17 -0
- package/dist/custom-mention.js.map +1 -0
- package/dist/dock-icons.d.ts +6 -0
- package/dist/dock-icons.js +11 -0
- package/dist/dock-icons.js.map +1 -0
- package/dist/i18n/index.d.ts +852 -837
- package/dist/i18n/index.js +2 -2
- package/dist/index.d.ts +52 -1061
- package/dist/index.js +72 -35254
- package/dist/index.js.map +1 -1
- package/dist/mention-search.d.ts +226 -0
- package/dist/mention-search.js +29 -0
- package/dist/mention-search.js.map +1 -0
- package/dist/open-link-lined-JWEKUKME.svg +4 -0
- package/dist/provider-icons.d.ts +6 -0
- package/dist/provider-icons.js +12 -0
- package/dist/provider-icons.js.map +1 -0
- package/dist/provider-identity.d.ts +9 -0
- package/dist/provider-identity.js +21 -0
- package/dist/provider-identity.js.map +1 -0
- package/dist/runtime-BBNdWgDU.d.ts +10 -0
- package/dist/{types-PLFZ8SBX.d.ts → types-DX2bxgB8.d.ts} +28 -83
- package/dist/workbench/contribution.d.ts +32 -40
- package/dist/workbench/contribution.js +10 -6
- package/dist/workbench/index.d.ts +6 -2
- package/dist/workbench/index.js +24 -20
- package/dist/workbench/launch.d.ts +2 -5
- package/dist/workbench/launch.js +4 -3
- package/dist/workbench/providerCatalog.js +2 -1
- package/dist/workbench/sessionTitle.d.ts +4 -3
- package/dist/workbench/sessionTitle.js +4 -3
- package/dist/workbench/state.d.ts +1 -1
- package/dist/workbench/state.js +3 -2
- package/dist/workbench/types.d.ts +0 -3
- package/dist/workbench/types.js +1 -1
- package/dist/workspace-agent-generated-files.d.ts +20 -2
- package/dist/workspace-agent-generated-files.js +7 -6
- package/dist/workspaceAgentActivityListTypes-C7gPWYiA.d.ts +71 -0
- package/package.json +65 -28
- package/dist/AgentMentionSearchController-DD_WOred.d.ts +0 -241
- package/dist/AgentMessageMarkdown-DeYPURtF.d.ts +0 -7
- package/dist/chunk-3HARXLAZ.js.map +0 -1
- package/dist/chunk-45FF4DQU.js.map +0 -1
- package/dist/chunk-4HP6V2YA.js +0 -207
- package/dist/chunk-4HP6V2YA.js.map +0 -1
- package/dist/chunk-4SQNOOJ3.js.map +0 -1
- package/dist/chunk-7LMJXF4R.js.map +0 -1
- package/dist/chunk-7QHBFRG5.js.map +0 -1
- package/dist/chunk-HOSX5C5V.js.map +0 -1
- package/dist/chunk-IBIMGLCD.js.map +0 -1
- package/dist/chunk-KQE5KV2V.js.map +0 -1
- package/dist/chunk-LR4FA5X6.js +0 -368
- package/dist/chunk-LR4FA5X6.js.map +0 -1
- package/dist/chunk-M2LWH54R.js.map +0 -1
- package/dist/chunk-MKHDRIGN.js +0 -71
- package/dist/chunk-MKHDRIGN.js.map +0 -1
- package/dist/chunk-PSLAWU25.js.map +0 -1
- package/dist/chunk-SXDLSEHO.js.map +0 -1
- package/dist/chunk-UNO7CEAF.js.map +0 -1
- package/dist/chunk-VAKFNNKT.js +0 -410
- package/dist/chunk-VAKFNNKT.js.map +0 -1
- package/dist/chunk-VWXFFSIM.js.map +0 -1
- package/dist/chunk-XDV4ZRVK.js.map +0 -1
- package/dist/chunk-XQUUELKF.js.map +0 -1
- package/dist/chunk-XW4CVBUH.js.map +0 -1
- package/dist/plan-decision-ops.d.ts +0 -70
- package/dist/plan-decision-ops.js +0 -19
- package/dist/queued-prompt-runtime.d.ts +0 -115
- package/dist/queued-prompt-runtime.js +0 -9
- package/dist/workspaceAgentActivityListViewModel-TXH1VXrk.d.ts +0 -339
- package/dist/workspaceLinkActions-DS9LWqzI.d.ts +0 -74
- /package/dist/{plan-decision-ops.js.map → agent-gui.js.map} +0 -0
- /package/dist/{queued-prompt-runtime.js.map → agents.js.map} +0 -0
- /package/dist/{chunk-U7D7G3UU.js.map → chunk-BIHBXWK5.js.map} +0 -0
- /package/dist/{chunk-AOVPGJBC.js.map → chunk-NITOD7WF.js.map} +0 -0
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import * as react from 'react';
|
|
2
2
|
import { JSX, ReactNode, HTMLAttributes } from 'react';
|
|
3
3
|
import { I18nRuntime } from '@tutti-os/ui-i18n-runtime';
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import { AgentActivityNeedsAttentionItem, AgentActivitySnapshot } from '@tutti-os/agent-activity-core';
|
|
7
|
-
|
|
8
|
-
import {
|
|
9
|
-
export { PLAN_IMPLEMENTATION_ACTION_IMPLEMENT, PLAN_IMPLEMENTATION_PROMPT } from '../
|
|
4
|
+
import { A as AgentGuiI18nLocale, T as TranslateFn } from '../runtime-BBNdWgDU.js';
|
|
5
|
+
import { b as AgentConversationPromptVM, e as WorkspaceLinkAction } from '../agentConversationVM-C335TR6S.js';
|
|
6
|
+
import { AgentActivityNeedsAttentionItem, WorkspaceAgentConsumerSession, AgentActivitySnapshot, AgentSessionEngineState } from '@tutti-os/agent-activity-core';
|
|
7
|
+
export { WorkspaceAgentConsumerCounts, WorkspaceAgentConsumerSession, selectWorkspaceAgentConsumerCounts, selectWorkspaceAgentConsumerSession, selectWorkspaceAgentConsumerSessions } from '@tutti-os/agent-activity-core';
|
|
8
|
+
import { d as WorkspaceAgentActivityStatus } from '../workspaceAgentActivityListTypes-C7gPWYiA.js';
|
|
9
|
+
export { P as PLAN_IMPLEMENTATION_ACTION_IMPLEMENT, a as PLAN_IMPLEMENTATION_PROMPT, d as dispatchAgentPlanPromptAction, u as useEngineSelector } from '../agentPlanPromptDispatch-C7cCMjve.js';
|
|
10
|
+
import { useTranslation } from '../i18n/index.js';
|
|
10
11
|
import '@tutti-os/workspace-issue-manager/core';
|
|
11
12
|
|
|
12
13
|
type WorkspaceAgentMessageCenterDigestPrimaryKind = "input-required" | "error" | "outcome" | "progress" | "summary";
|
|
@@ -19,6 +20,10 @@ interface WorkspaceAgentMessageCenterDigest {
|
|
|
19
20
|
primary: WorkspaceAgentMessageCenterDigestPrimary;
|
|
20
21
|
}
|
|
21
22
|
|
|
23
|
+
declare function isWaitingMessageCenterItem(item: WorkspaceAgentMessageCenterItem): boolean;
|
|
24
|
+
declare function isInteractiveMessageCenterItem(item: WorkspaceAgentMessageCenterItem): boolean;
|
|
25
|
+
declare function selectMessageCenterAttentionDeckItems(items: readonly WorkspaceAgentMessageCenterItem[]): WorkspaceAgentMessageCenterItem[];
|
|
26
|
+
|
|
22
27
|
interface WorkspaceAgentMessageCenterModel {
|
|
23
28
|
waitingCount: number;
|
|
24
29
|
items: WorkspaceAgentMessageCenterItem[];
|
|
@@ -75,58 +80,70 @@ interface WorkspaceAgentMessageCenterPromptFallbackLabels {
|
|
|
75
80
|
question: string;
|
|
76
81
|
title: string;
|
|
77
82
|
}
|
|
78
|
-
declare function buildWorkspaceAgentMessageCenterModel(snapshot: AgentActivitySnapshot, options?: BuildWorkspaceAgentMessageCenterOptions): WorkspaceAgentMessageCenterModel;
|
|
79
|
-
declare function isWaitingMessageCenterItem(item: WorkspaceAgentMessageCenterItem): boolean;
|
|
80
|
-
declare function isInteractiveMessageCenterItem(item: WorkspaceAgentMessageCenterItem): boolean;
|
|
81
|
-
declare function selectMessageCenterAttentionDeckItems(items: readonly WorkspaceAgentMessageCenterItem[]): WorkspaceAgentMessageCenterItem[];
|
|
82
83
|
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
count: number;
|
|
88
|
-
label: string;
|
|
89
|
-
value: MessageCenterStatusFilter;
|
|
90
|
-
}
|
|
91
|
-
interface MessageCenterProviderOption {
|
|
92
|
-
count: number;
|
|
93
|
-
label: string;
|
|
94
|
-
value: string;
|
|
95
|
-
}
|
|
96
|
-
interface MessageCenterGroup {
|
|
97
|
-
id: string;
|
|
98
|
-
identity?: WorkspaceAgentMessageCenterIdentity | null;
|
|
84
|
+
declare function MessageCenterOpenChatButton({ actionsAccessory, alwaysVisible, item, label, onOpenChat, provider }: {
|
|
85
|
+
actionsAccessory?: ReactNode;
|
|
86
|
+
alwaysVisible?: boolean;
|
|
87
|
+
item: WorkspaceAgentMessageCenterItem;
|
|
99
88
|
label: string;
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
}
|
|
104
|
-
interface MessageCenterAgentUserStack {
|
|
105
|
-
id: string;
|
|
89
|
+
onOpenChat: (input: {
|
|
90
|
+
agentSessionId: string;
|
|
91
|
+
provider: string;
|
|
92
|
+
}) => void;
|
|
106
93
|
provider: string;
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
declare function
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
declare function
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
94
|
+
}): JSX.Element;
|
|
95
|
+
declare function MessageCenterIdentityLabel({ identity, provider }: {
|
|
96
|
+
identity: WorkspaceAgentMessageCenterIdentity | null;
|
|
97
|
+
provider: string;
|
|
98
|
+
}): JSX.Element;
|
|
99
|
+
declare function MessageCenterIdentityAvatarMark({ identity, provider, userId }: {
|
|
100
|
+
identity: WorkspaceAgentMessageCenterIdentity | null;
|
|
101
|
+
provider: string;
|
|
102
|
+
userId?: string | null;
|
|
103
|
+
}): JSX.Element;
|
|
104
|
+
declare function MessageCenterIdentityAvatarStack({ agentAvatarUrl, userAvatarUrl: rawUserAvatarUrl, userName }: {
|
|
105
|
+
agentAvatarUrl: string;
|
|
106
|
+
userAvatarUrl?: string;
|
|
107
|
+
userName: string;
|
|
108
|
+
}): JSX.Element;
|
|
109
|
+
type MessageCenterStatusTone = "amber" | "blue" | "green" | "neutral" | "red";
|
|
110
|
+
declare function messageCenterStatusTone(item: WorkspaceAgentMessageCenterItem): MessageCenterStatusTone;
|
|
111
|
+
declare function messageCenterStatusToneClass(tone: MessageCenterStatusTone): string;
|
|
112
|
+
|
|
113
|
+
declare function messageCenterStackPreviewText(item: WorkspaceAgentMessageCenterItem): string;
|
|
114
|
+
/**
|
|
115
|
+
* 收起态预览只展示纯文本 + 一个静态(不可点击)的 mention 图标,复用
|
|
116
|
+
* AgentMessageMarkdown 里那套富文本 chip 的视觉样式,但不渲染成 <a>——
|
|
117
|
+
* 这块预览本身嵌套在外层切换展开/收起的 <button> 里,塞一个可点击链接
|
|
118
|
+
* 会出现交互元素嵌套交互元素的问题。
|
|
119
|
+
*/
|
|
120
|
+
declare function messageCenterStackPreviewNodes(item: WorkspaceAgentMessageCenterItem): ReactNode[];
|
|
121
|
+
declare function resolveMessageCenterNotificationAction(item: WorkspaceAgentMessageCenterItem, input: {
|
|
122
|
+
action?: string;
|
|
123
|
+
optionId?: string;
|
|
124
|
+
}): string | null;
|
|
125
|
+
declare function buildWorkspaceAgentInteractivePromptLabels(t: ReturnType<typeof useTranslation>["t"], provider?: string): {
|
|
126
|
+
approvalLead: string;
|
|
127
|
+
planLead: string;
|
|
128
|
+
planModes: {
|
|
129
|
+
id: string;
|
|
130
|
+
label: string;
|
|
131
|
+
description: string;
|
|
132
|
+
}[];
|
|
133
|
+
stayInPlan: string;
|
|
134
|
+
sendFeedback: string;
|
|
135
|
+
feedbackPlaceholder: string;
|
|
136
|
+
previousQuestion: string;
|
|
137
|
+
nextQuestion: string;
|
|
138
|
+
submitAnswers: string;
|
|
139
|
+
answerPlaceholder: string;
|
|
140
|
+
waitingForAnswer: string;
|
|
141
|
+
planImplementationLead: string;
|
|
142
|
+
planImplementationConfirm: string;
|
|
143
|
+
planImplementationFeedbackPlaceholder: string;
|
|
144
|
+
planImplementationSend: string;
|
|
145
|
+
planImplementationSkip: string;
|
|
146
|
+
};
|
|
130
147
|
|
|
131
148
|
interface WorkspaceAgentMessageCenterCardProps {
|
|
132
149
|
item: WorkspaceAgentMessageCenterItem;
|
|
@@ -165,40 +182,6 @@ interface WorkspaceAgentMessageCenterStackProps {
|
|
|
165
182
|
}
|
|
166
183
|
declare const WorkspaceAgentMessageCenterCard: react.NamedExoticComponent<WorkspaceAgentMessageCenterCardProps>;
|
|
167
184
|
declare const WorkspaceAgentMessageCenterStack: react.NamedExoticComponent<WorkspaceAgentMessageCenterStackProps>;
|
|
168
|
-
declare function messageCenterStackPreviewText(item: WorkspaceAgentMessageCenterItem): string;
|
|
169
|
-
/**
|
|
170
|
-
* 收起态预览只展示纯文本 + 一个静态(不可点击)的 mention 图标,复用
|
|
171
|
-
* AgentMessageMarkdown 里那套富文本 chip 的视觉样式,但不渲染成 <a>——
|
|
172
|
-
* 这块预览本身嵌套在外层切换展开/收起的 <button> 里,塞一个可点击链接
|
|
173
|
-
* 会出现交互元素嵌套交互元素的问题。
|
|
174
|
-
*/
|
|
175
|
-
declare function messageCenterStackPreviewNodes(item: WorkspaceAgentMessageCenterItem): ReactNode[];
|
|
176
|
-
declare function resolveMessageCenterNotificationAction(item: WorkspaceAgentMessageCenterItem, input: {
|
|
177
|
-
action?: string;
|
|
178
|
-
optionId?: string;
|
|
179
|
-
}): string | null;
|
|
180
|
-
declare function buildWorkspaceAgentInteractivePromptLabels(t: ReturnType<typeof useTranslation>["t"], provider?: string): {
|
|
181
|
-
approvalLead: string;
|
|
182
|
-
planLead: string;
|
|
183
|
-
planModes: {
|
|
184
|
-
id: string;
|
|
185
|
-
label: string;
|
|
186
|
-
description: string;
|
|
187
|
-
}[];
|
|
188
|
-
stayInPlan: string;
|
|
189
|
-
sendFeedback: string;
|
|
190
|
-
feedbackPlaceholder: string;
|
|
191
|
-
previousQuestion: string;
|
|
192
|
-
nextQuestion: string;
|
|
193
|
-
submitAnswers: string;
|
|
194
|
-
answerPlaceholder: string;
|
|
195
|
-
waitingForAnswer: string;
|
|
196
|
-
planImplementationLead: string;
|
|
197
|
-
planImplementationConfirm: string;
|
|
198
|
-
planImplementationFeedbackPlaceholder: string;
|
|
199
|
-
planImplementationSend: string;
|
|
200
|
-
planImplementationSkip: string;
|
|
201
|
-
};
|
|
202
185
|
declare function MessageCenterSummary({ emptyLabel, item, lazy, onLinkAction, summary }: {
|
|
203
186
|
emptyLabel: string;
|
|
204
187
|
item: WorkspaceAgentMessageCenterItem;
|
|
@@ -206,35 +189,8 @@ declare function MessageCenterSummary({ emptyLabel, item, lazy, onLinkAction, su
|
|
|
206
189
|
onLinkAction?: (action: WorkspaceLinkAction) => void;
|
|
207
190
|
summary: string;
|
|
208
191
|
}): JSX.Element;
|
|
209
|
-
declare function MessageCenterOpenChatButton({ actionsAccessory, alwaysVisible, item, label, onOpenChat, provider }: {
|
|
210
|
-
actionsAccessory?: ReactNode;
|
|
211
|
-
alwaysVisible?: boolean;
|
|
212
|
-
item: WorkspaceAgentMessageCenterItem;
|
|
213
|
-
label: string;
|
|
214
|
-
onOpenChat: (input: {
|
|
215
|
-
agentSessionId: string;
|
|
216
|
-
provider: string;
|
|
217
|
-
}) => void;
|
|
218
|
-
provider: string;
|
|
219
|
-
}): JSX.Element;
|
|
220
|
-
declare function MessageCenterIdentityLabel({ identity, provider }: {
|
|
221
|
-
identity: WorkspaceAgentMessageCenterIdentity | null;
|
|
222
|
-
provider: string;
|
|
223
|
-
}): JSX.Element;
|
|
224
|
-
declare function MessageCenterIdentityAvatarMark({ identity, provider, userId }: {
|
|
225
|
-
identity: WorkspaceAgentMessageCenterIdentity | null;
|
|
226
|
-
provider: string;
|
|
227
|
-
userId?: string | null;
|
|
228
|
-
}): JSX.Element;
|
|
229
|
-
declare function MessageCenterIdentityAvatarStack({ agentAvatarUrl, userAvatarUrl: rawUserAvatarUrl, userName }: {
|
|
230
|
-
agentAvatarUrl: string;
|
|
231
|
-
userAvatarUrl?: string;
|
|
232
|
-
userName: string;
|
|
233
|
-
}): JSX.Element;
|
|
234
|
-
type MessageCenterStatusTone = "amber" | "blue" | "green" | "neutral" | "red";
|
|
235
|
-
declare function messageCenterStatusTone(item: WorkspaceAgentMessageCenterItem): MessageCenterStatusTone;
|
|
236
|
-
declare function messageCenterStatusToneClass(tone: MessageCenterStatusTone): string;
|
|
237
192
|
|
|
193
|
+
type WorkspaceAgentMessageCenterPanelPresentation = "drawer" | "embedded";
|
|
238
194
|
interface WorkspaceAgentMessageCenterPanelProps {
|
|
239
195
|
i18n?: I18nRuntime<string> | null;
|
|
240
196
|
locale?: AgentGuiI18nLocale;
|
|
@@ -242,6 +198,7 @@ interface WorkspaceAgentMessageCenterPanelProps {
|
|
|
242
198
|
model: WorkspaceAgentMessageCenterModel;
|
|
243
199
|
highlightedItemId?: string | null;
|
|
244
200
|
portalContainer?: HTMLElement | null;
|
|
201
|
+
presentation?: WorkspaceAgentMessageCenterPanelPresentation;
|
|
245
202
|
onClose: () => void;
|
|
246
203
|
onHighlightedItemSettled?: (itemId: string) => void;
|
|
247
204
|
onLinkAction?: (action: WorkspaceLinkAction) => void;
|
|
@@ -253,6 +210,7 @@ interface WorkspaceAgentMessageCenterPanelProps {
|
|
|
253
210
|
agentSessionId: string;
|
|
254
211
|
provider: string;
|
|
255
212
|
}) => void;
|
|
213
|
+
promptStatus?: (item: WorkspaceAgentMessageCenterItem) => "idle" | "responding" | "unknown" | "failed";
|
|
256
214
|
onSubmitPrompt: (input: {
|
|
257
215
|
action?: string;
|
|
258
216
|
agentSessionId: string;
|
|
@@ -263,14 +221,63 @@ interface WorkspaceAgentMessageCenterPanelProps {
|
|
|
263
221
|
}) => Promise<void> | void;
|
|
264
222
|
}
|
|
265
223
|
declare const WorkspaceAgentMessageCenterPanel: react.NamedExoticComponent<WorkspaceAgentMessageCenterPanelProps>;
|
|
224
|
+
|
|
225
|
+
type MessageCenterGroupBy = "priority" | "status" | "agent" | "time";
|
|
226
|
+
type MessageCenterStatusFilter = "waiting" | "working" | "completed" | "failed";
|
|
227
|
+
type MessageCenterTranslate = TranslateFn;
|
|
228
|
+
interface MessageCenterStatusOption {
|
|
229
|
+
count: number;
|
|
230
|
+
label: string;
|
|
231
|
+
value: MessageCenterStatusFilter;
|
|
232
|
+
}
|
|
233
|
+
interface MessageCenterProviderOption {
|
|
234
|
+
count: number;
|
|
235
|
+
label: string;
|
|
236
|
+
value: string;
|
|
237
|
+
}
|
|
238
|
+
interface MessageCenterGroup {
|
|
239
|
+
id: string;
|
|
240
|
+
identity?: WorkspaceAgentMessageCenterIdentity | null;
|
|
241
|
+
label: string;
|
|
242
|
+
items: WorkspaceAgentMessageCenterItem[];
|
|
243
|
+
provider?: string;
|
|
244
|
+
userId?: string | null;
|
|
245
|
+
}
|
|
246
|
+
interface MessageCenterAgentUserStack {
|
|
247
|
+
id: string;
|
|
248
|
+
provider: string;
|
|
249
|
+
userId: string | null;
|
|
250
|
+
items: WorkspaceAgentMessageCenterItem[];
|
|
251
|
+
}
|
|
252
|
+
declare function partitionMessageCenterItemsByAgentUser(items: readonly WorkspaceAgentMessageCenterItem[]): MessageCenterAgentUserStack[];
|
|
253
|
+
declare function messageCenterAgentUserStackId(item: Pick<WorkspaceAgentMessageCenterItem, "provider" | "userId">): string;
|
|
254
|
+
declare function messageCenterStackRenderId(groupId: string, stackId: string): string;
|
|
255
|
+
declare function messageCenterStackScrollSyncSegment({ expanded, groupId, stack }: {
|
|
256
|
+
expanded: boolean;
|
|
257
|
+
groupId: string;
|
|
258
|
+
stack: MessageCenterAgentUserStack;
|
|
259
|
+
}): string;
|
|
260
|
+
declare function buildMessageCenterStatusOptions(counts: WorkspaceAgentMessageCenterModel["counts"], t: MessageCenterTranslate): MessageCenterStatusOption[];
|
|
261
|
+
declare function buildMessageCenterProviderOptions(items: readonly WorkspaceAgentMessageCenterItem[]): MessageCenterProviderOption[];
|
|
262
|
+
declare function itemMatchesViewFilters({ item, providerFilters, statusFilters }: {
|
|
263
|
+
item: WorkspaceAgentMessageCenterItem;
|
|
264
|
+
providerFilters: Set<string> | null;
|
|
265
|
+
statusFilters: Set<MessageCenterStatusFilter> | null;
|
|
266
|
+
}): boolean;
|
|
267
|
+
declare function messageCenterStatusFilterValue(item: WorkspaceAgentMessageCenterItem): MessageCenterStatusFilter;
|
|
268
|
+
declare function groupMessageCenterItems(items: readonly WorkspaceAgentMessageCenterItem[], groupBy: MessageCenterGroupBy, t: MessageCenterTranslate): MessageCenterGroup[];
|
|
269
|
+
declare function isRecentlyCompletedMessageCenterItem(item: WorkspaceAgentMessageCenterItem, nowUnixMs: number): boolean;
|
|
270
|
+
declare function messageCenterGroupLabel(groupBy: MessageCenterGroupBy, t: MessageCenterTranslate): string;
|
|
271
|
+
declare function statusFilterSummary(statusFilters: Set<MessageCenterStatusFilter> | null, statusOptions: readonly MessageCenterStatusOption[]): string;
|
|
272
|
+
|
|
266
273
|
declare function MessageCenterGroupHeading({ group }: {
|
|
267
|
-
group:
|
|
268
|
-
}): JSX.Element;
|
|
274
|
+
group: MessageCenterGroup;
|
|
275
|
+
}): React.JSX.Element;
|
|
269
276
|
|
|
270
277
|
interface WorkspaceAgentMessageCenterAttentionDeckProps {
|
|
271
278
|
items: WorkspaceAgentMessageCenterItem[];
|
|
272
279
|
highlightedItemId?: string | null;
|
|
273
|
-
|
|
280
|
+
isPromptSubmitting: (item: WorkspaceAgentMessageCenterItem) => boolean;
|
|
274
281
|
registerNode?: (itemId: string, node: HTMLElement | null) => void;
|
|
275
282
|
renderCard?: (input: WorkspaceAgentMessageCenterAttentionDeckRenderCardInput) => ReactNode;
|
|
276
283
|
onLinkAction?: (action: WorkspaceLinkAction) => void;
|
|
@@ -298,7 +305,7 @@ interface WorkspaceAgentMessageCenterAttentionDeckRenderCardInput {
|
|
|
298
305
|
requestId: string;
|
|
299
306
|
}) => void;
|
|
300
307
|
}
|
|
301
|
-
declare function WorkspaceAgentMessageCenterAttentionDeck({ items, highlightedItemId,
|
|
308
|
+
declare function WorkspaceAgentMessageCenterAttentionDeck({ items, highlightedItemId, isPromptSubmitting, registerNode, renderCard, onLinkAction, onOpenChat, onSubmitPrompt }: WorkspaceAgentMessageCenterAttentionDeckProps): JSX.Element | null;
|
|
302
309
|
|
|
303
310
|
declare function MessageCenterViewMenu({ filtersActive, groupBy, providerFilters, providerOptions, statusFilters, statusOptions, onClearFilters, onGroupByChange, onProviderToggle, onStatusToggle }: {
|
|
304
311
|
filtersActive?: boolean;
|
|
@@ -402,6 +409,22 @@ declare function approvalOptionDisplayLabel(option: {
|
|
|
402
409
|
feedback?: boolean;
|
|
403
410
|
}): string;
|
|
404
411
|
|
|
412
|
+
/**
|
|
413
|
+
* Canonical Message Center entrypoint. Session/turn/interaction truth comes
|
|
414
|
+
* directly from the engine. Durable messages are presentation input only:
|
|
415
|
+
* title and digest text may use them, but they cannot recreate lifecycle or
|
|
416
|
+
* pending-interaction state.
|
|
417
|
+
*/
|
|
418
|
+
declare function buildWorkspaceAgentMessageCenterModelFromEngine(presentation: WorkspaceAgentMessageCenterPresentation, snapshot: Pick<AgentActivitySnapshot, "sessionMessagesById" | "workspaceId">, options?: BuildWorkspaceAgentMessageCenterOptions): WorkspaceAgentMessageCenterModel;
|
|
419
|
+
interface WorkspaceAgentMessageCenterPresentation {
|
|
420
|
+
consumers: readonly WorkspaceAgentConsumerSession[];
|
|
421
|
+
promptStatusByKey: Readonly<Record<string, WorkspaceAgentMessageCenterPromptStatus>>;
|
|
422
|
+
}
|
|
423
|
+
declare function selectWorkspaceAgentMessageCenterPresentation(state: AgentSessionEngineState): WorkspaceAgentMessageCenterPresentation;
|
|
424
|
+
declare function workspaceAgentMessageCenterPresentationEqual(left: WorkspaceAgentMessageCenterPresentation, right: WorkspaceAgentMessageCenterPresentation): boolean;
|
|
425
|
+
type WorkspaceAgentMessageCenterPromptStatus = "idle" | "responding" | "unknown" | "failed";
|
|
426
|
+
declare function workspaceAgentMessageCenterPromptStatus(presentation: WorkspaceAgentMessageCenterPresentation, item: Pick<WorkspaceAgentMessageCenterItem, "agentSessionId" | "pendingPrompt">): WorkspaceAgentMessageCenterPromptStatus;
|
|
427
|
+
|
|
405
428
|
declare function stabilizeWorkspaceAgentMessageCenterModel(previous: WorkspaceAgentMessageCenterModel | null, next: WorkspaceAgentMessageCenterModel): WorkspaceAgentMessageCenterModel;
|
|
406
429
|
|
|
407
430
|
declare const messageCenterFiltersStorageKey = "tutti.agent-message-center.filters";
|
|
@@ -413,4 +436,4 @@ interface MessageCenterFilterPreferences {
|
|
|
413
436
|
declare function readMessageCenterFilterPreferences(): MessageCenterFilterPreferences;
|
|
414
437
|
declare function writeMessageCenterFilterPreferences(preferences: MessageCenterFilterPreferences): void;
|
|
415
438
|
|
|
416
|
-
export { AgentInteractivePromptSurface, AgentVerticalScrollArea, type BuildWorkspaceAgentMessageCenterOptions, type MessageCenterAgentUserStack, type MessageCenterFilterPreferences, type MessageCenterGroup, type MessageCenterGroupBy, MessageCenterGroupHeading, MessageCenterIdentityAvatarMark, MessageCenterIdentityAvatarStack, MessageCenterIdentityLabel, MessageCenterOpenChatButton, type MessageCenterProviderOption, type MessageCenterStatusFilter, type MessageCenterStatusOption, type MessageCenterStatusTone, MessageCenterSummary, type MessageCenterTranslate, type PromptToolDetail, WorkspaceAgentMessageCenterAttentionDeck, type WorkspaceAgentMessageCenterAttentionDeckProps, type WorkspaceAgentMessageCenterAttentionDeckRenderCardInput, WorkspaceAgentMessageCenterCard, type WorkspaceAgentMessageCenterCardProps, type WorkspaceAgentMessageCenterCounts, type WorkspaceAgentMessageCenterDigest, type WorkspaceAgentMessageCenterDigestPrimary, type WorkspaceAgentMessageCenterDigestPrimaryKind, type WorkspaceAgentMessageCenterIdentity, type WorkspaceAgentMessageCenterItem, type WorkspaceAgentMessageCenterModel, WorkspaceAgentMessageCenterPanel, type WorkspaceAgentMessageCenterPanelProps, WorkspaceAgentMessageCenterStack, MessageCenterViewMenu as WorkspaceAgentMessageCenterViewMenu, approvalOptionDisplayLabel, buildMessageCenterProviderOptions, buildMessageCenterStatusOptions, buildWorkspaceAgentInteractivePromptLabels,
|
|
439
|
+
export { AgentInteractivePromptSurface, AgentVerticalScrollArea, type BuildWorkspaceAgentMessageCenterOptions, type MessageCenterAgentUserStack, type MessageCenterFilterPreferences, type MessageCenterGroup, type MessageCenterGroupBy, MessageCenterGroupHeading, MessageCenterIdentityAvatarMark, MessageCenterIdentityAvatarStack, MessageCenterIdentityLabel, MessageCenterOpenChatButton, type MessageCenterProviderOption, type MessageCenterStatusFilter, type MessageCenterStatusOption, type MessageCenterStatusTone, MessageCenterSummary, type MessageCenterTranslate, type PromptToolDetail, WorkspaceAgentMessageCenterAttentionDeck, type WorkspaceAgentMessageCenterAttentionDeckProps, type WorkspaceAgentMessageCenterAttentionDeckRenderCardInput, WorkspaceAgentMessageCenterCard, type WorkspaceAgentMessageCenterCardProps, type WorkspaceAgentMessageCenterCounts, type WorkspaceAgentMessageCenterDigest, type WorkspaceAgentMessageCenterDigestPrimary, type WorkspaceAgentMessageCenterDigestPrimaryKind, type WorkspaceAgentMessageCenterIdentity, type WorkspaceAgentMessageCenterItem, type WorkspaceAgentMessageCenterModel, WorkspaceAgentMessageCenterPanel, type WorkspaceAgentMessageCenterPanelPresentation, type WorkspaceAgentMessageCenterPanelProps, type WorkspaceAgentMessageCenterPresentation, type WorkspaceAgentMessageCenterPromptStatus, WorkspaceAgentMessageCenterStack, MessageCenterViewMenu as WorkspaceAgentMessageCenterViewMenu, approvalOptionDisplayLabel, buildMessageCenterProviderOptions, buildMessageCenterStatusOptions, buildWorkspaceAgentInteractivePromptLabels, buildWorkspaceAgentMessageCenterModelFromEngine, getPromptToolDetails, groupMessageCenterItems, isInteractiveMessageCenterItem, isPromptRequestIdTitle, isRecentlyCompletedMessageCenterItem, isWaitingMessageCenterItem, itemMatchesViewFilters, managedAgentRoundedIconUrl, messageCenterAgentUserStackId, messageCenterFiltersStorageKey, messageCenterGroupLabel, messageCenterStackPreviewNodes, messageCenterStackPreviewText, messageCenterStackRenderId, messageCenterStackScrollSyncSegment, messageCenterStatusFilterValue, messageCenterStatusTone, messageCenterStatusToneClass, partitionMessageCenterItemsByAgentUser, readMessageCenterFilterPreferences, resolveMessageCenterNotificationAction, selectMessageCenterAttentionDeckItems, selectWorkspaceAgentMessageCenterPresentation, stabilizeWorkspaceAgentMessageCenterModel, statusFilterSummary, userAvatarPlaceholderUrl, workspaceAgentActivityStatusLabel, workspaceAgentMessageCenterPresentationEqual, workspaceAgentMessageCenterPromptStatus, writeMessageCenterFilterPreferences };
|