@tutti-os/agent-gui 0.0.96 → 0.0.98

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 (60) hide show
  1. package/dist/{AgentGUI-DWdvUV4x.d.ts → AgentGUI-Bkk2TRS0.d.ts} +37 -2
  2. package/dist/agent-conversation/index.d.ts +1 -1
  3. package/dist/agent-conversation/index.js +6 -6
  4. package/dist/agent-gui.d.ts +2 -2
  5. package/dist/agent-gui.js +15 -15
  6. package/dist/agent-message-center/index.js +7 -16
  7. package/dist/agent-message-center/index.js.map +1 -1
  8. package/dist/{agentGuiNodeTypes-B9X4aWfv.d.ts → agentGuiNodeTypes-DAsluxjv.d.ts} +1 -1
  9. package/dist/app/renderer/agentactivity.css +80 -17
  10. package/dist/{chunk-WMNS4MAQ.js → chunk-3NOJFKDV.js} +3 -3
  11. package/dist/{chunk-4PQPJ5OY.js → chunk-4ROALW3K.js} +2 -2
  12. package/dist/{chunk-3XXBDYAI.js → chunk-63BE6RGM.js} +3 -3
  13. package/dist/{chunk-JKIZA7EJ.js → chunk-7M77BK6K.js} +54 -91
  14. package/dist/chunk-7M77BK6K.js.map +1 -0
  15. package/dist/{chunk-WKSFPJHZ.js → chunk-7O4D4KOE.js} +1343 -650
  16. package/dist/chunk-7O4D4KOE.js.map +1 -0
  17. package/dist/{chunk-O3Q5SIJH.js → chunk-CPUEPDF7.js} +7 -115
  18. package/dist/chunk-CPUEPDF7.js.map +1 -0
  19. package/dist/{chunk-W6WAGPMD.js → chunk-FSKGEGGX.js} +15 -3
  20. package/dist/chunk-FSKGEGGX.js.map +1 -0
  21. package/dist/{chunk-3Y3F7CS5.js → chunk-GAD6Y3BF.js} +2 -2
  22. package/dist/{chunk-AGT7MUTV.js → chunk-J7ZYAUPC.js} +4 -4
  23. package/dist/{chunk-RE4AXS27.js → chunk-MRRICFWA.js} +2 -2
  24. package/dist/{chunk-QVBF5BN5.js → chunk-OTRZBTFQ.js} +2 -2
  25. package/dist/{chunk-TVIGLNNI.js → chunk-QWGJ5TEG.js} +4 -1
  26. package/dist/chunk-QWGJ5TEG.js.map +1 -0
  27. package/dist/{chunk-E4HQUTM3.js → chunk-RHTZAODZ.js} +2 -2
  28. package/dist/{chunk-XPFHJMZP.js → chunk-SPZJCTBV.js} +3 -3
  29. package/dist/{chunk-2HJEOO7W.js → chunk-T6PEJFRP.js} +10 -40
  30. package/dist/chunk-T6PEJFRP.js.map +1 -0
  31. package/dist/{chunk-H5F3QSCF.js → chunk-Y5M6Q6WX.js} +2 -2
  32. package/dist/context-mention-palette/index.js +8 -8
  33. package/dist/i18n/index.d.ts +14 -2
  34. package/dist/i18n/index.js +2 -2
  35. package/dist/index.d.ts +4 -4
  36. package/dist/index.js +15 -15
  37. package/dist/index.js.map +1 -1
  38. package/dist/mention-search.js +6 -6
  39. package/dist/workbench/contribution.js +2 -2
  40. package/dist/workbench/index.js +5 -5
  41. package/dist/workbench/launch.js +1 -1
  42. package/dist/workbench/sessionTitle.js +3 -3
  43. package/dist/workspace-agent-generated-files.js +4 -4
  44. package/package.json +14 -14
  45. package/dist/chunk-2HJEOO7W.js.map +0 -1
  46. package/dist/chunk-JKIZA7EJ.js.map +0 -1
  47. package/dist/chunk-O3Q5SIJH.js.map +0 -1
  48. package/dist/chunk-TVIGLNNI.js.map +0 -1
  49. package/dist/chunk-W6WAGPMD.js.map +0 -1
  50. package/dist/chunk-WKSFPJHZ.js.map +0 -1
  51. /package/dist/{chunk-WMNS4MAQ.js.map → chunk-3NOJFKDV.js.map} +0 -0
  52. /package/dist/{chunk-4PQPJ5OY.js.map → chunk-4ROALW3K.js.map} +0 -0
  53. /package/dist/{chunk-3XXBDYAI.js.map → chunk-63BE6RGM.js.map} +0 -0
  54. /package/dist/{chunk-3Y3F7CS5.js.map → chunk-GAD6Y3BF.js.map} +0 -0
  55. /package/dist/{chunk-AGT7MUTV.js.map → chunk-J7ZYAUPC.js.map} +0 -0
  56. /package/dist/{chunk-RE4AXS27.js.map → chunk-MRRICFWA.js.map} +0 -0
  57. /package/dist/{chunk-QVBF5BN5.js.map → chunk-OTRZBTFQ.js.map} +0 -0
  58. /package/dist/{chunk-E4HQUTM3.js.map → chunk-RHTZAODZ.js.map} +0 -0
  59. /package/dist/{chunk-XPFHJMZP.js.map → chunk-SPZJCTBV.js.map} +0 -0
  60. /package/dist/{chunk-H5F3QSCF.js.map → chunk-Y5M6Q6WX.js.map} +0 -0
@@ -3,7 +3,7 @@ import { PropsWithChildren, JSX, HTMLAttributes, 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 } from '@tutti-os/agent-activity-core';
5
5
  import { u as AgentHostAgentSessionComposerSettings, y as AgentHostUnactivateAgentSessionResult, h as AgentGUIAgentTarget, n as AgentGUIProvider, z as AgentPromptContentBlock, m as AgentGUINodeData, P as Point, o as AgentGUIProviderRailAllPresentation, p as AgentGUIProviderRailMode, q as AgentGUIProviderReadinessGate, l as AgentGUIHomeSuggestionId, N as NodeFrame, e as AgentGUIAgentDirectorySnapshot, k as AgentGUIAllAgentsPresentation } from './types-CnT8rNUI.js';
6
- import { A as AgentComposerDraft, p as AgentSessionCommand, c as AgentGUIProviderSkillOption, a as AgentGUIComposerSettingsVM, d as AgentGUIQueueStatus, e as AgentGUIQueuedPromptVM, k as AgentMessageMarkdownWorkspaceAppIcon, q as AgentSlashCommandCapability, b as AgentGUINodeViewModel, m as AgentProbeSnapshot, h as AgentHostInputApi } from './agentGuiNodeTypes-B9X4aWfv.js';
6
+ import { A as AgentComposerDraft, p as AgentSessionCommand, c as AgentGUIProviderSkillOption, a as AgentGUIComposerSettingsVM, d as AgentGUIQueueStatus, e as AgentGUIQueuedPromptVM, k as AgentMessageMarkdownWorkspaceAppIcon, q as AgentSlashCommandCapability, b as AgentGUINodeViewModel, m as AgentProbeSnapshot, h as AgentHostInputApi } from './agentGuiNodeTypes-DAsluxjv.js';
7
7
  import { WorkspaceFileReference, ReferenceLocateTarget, WorkspaceFileReferenceAdapter } from '@tutti-os/workspace-file-reference/contracts';
8
8
  import { A as AgentContextMentionItem } from './agentFileMentionContracts-58IjMU-u.js';
9
9
  import { WorkspaceFileEntry } from '@tutti-os/workspace-file-manager/services';
@@ -511,6 +511,37 @@ interface AgentProjectPathChangeMetadata {
511
511
  project?: WorkspaceUserProject;
512
512
  }
513
513
 
514
+ type AgentGUIComposerFocusMethod = "keyboard" | "pointer" | "programmatic";
515
+ type AgentGUIComposerContentType = "image" | "large_text" | "text";
516
+ interface AgentGUIEngagementContext {
517
+ agentSessionId: string | null;
518
+ agentTargetId: string | null;
519
+ composerReady: boolean;
520
+ conversationState: "existing" | "new";
521
+ provider: string;
522
+ }
523
+ interface AgentGUIEngagementEventBase extends AgentGUIEngagementContext {
524
+ panelVisitId: string;
525
+ }
526
+ type AgentGUIEngagementEvent = (AgentGUIEngagementEventBase & {
527
+ type: "panel_exposed";
528
+ }) | (AgentGUIEngagementEventBase & {
529
+ type: "composer_focused";
530
+ focusMethod: AgentGUIComposerFocusMethod;
531
+ }) | (AgentGUIEngagementEventBase & {
532
+ type: "composer_content_entered";
533
+ contentType: AgentGUIComposerContentType;
534
+ hadPrefill: boolean;
535
+ });
536
+ interface AgentGUIComposerEngagement {
537
+ contentEntered(input: {
538
+ contentType: AgentGUIComposerContentType;
539
+ hadPrefill: boolean;
540
+ }): void;
541
+ focused(focusMethod: AgentGUIComposerFocusMethod): void;
542
+ }
543
+ type AgentGUIEngagementEventSink = (event: AgentGUIEngagementEvent) => Promise<void> | void;
544
+
514
545
  interface WorkspaceReferencePickResult {
515
546
  files: readonly WorkspaceFileReference[];
516
547
  mentionItems: readonly AgentContextMentionItem[];
@@ -526,6 +557,7 @@ interface AgentComposerProps {
526
557
  slashStatus?: AgentComposerSlashStatus | null;
527
558
  usage?: AgentComposerUsage | null;
528
559
  draftContent: AgentComposerDraft;
560
+ engagement?: AgentGUIComposerEngagement;
529
561
  /** Stable project/session owner for async draft attachment work. */
530
562
  draftScopeKey?: string;
531
563
  availableCommands: readonly AgentSessionCommand[];
@@ -948,6 +980,8 @@ interface AgentGUINodeFrameLayout {
948
980
  desktopSize: DesktopSize;
949
981
  isMaximized?: boolean;
950
982
  isActive: boolean;
983
+ /** Host-projected presentation visibility. Independent from node focus. */
984
+ isVisible?: boolean;
951
985
  embedded?: boolean;
952
986
  previewMode?: boolean;
953
987
  /**
@@ -1001,6 +1035,7 @@ interface AgentGUINodeHostActions {
1001
1035
  onMinimize?: () => void;
1002
1036
  onToggleMaximize?: () => void;
1003
1037
  onShowMessage?: (message: string, tone?: "info" | "warning" | "error") => void;
1038
+ onEngagementEvent?: AgentGUIEngagementEventSink;
1004
1039
  }
1005
1040
  interface AgentGUINodeRenderSlots {
1006
1041
  providerRailEmpty?: AgentGUIAgentsEmptyRenderer;
@@ -1035,4 +1070,4 @@ interface AgentGUIProps extends Omit<AgentGUINodeProps, "hostCapabilities" | "re
1035
1070
  }
1036
1071
  declare const AgentGUI: react.NamedExoticComponent<AgentGUIProps>;
1037
1072
 
1038
- export { type AgentActivityRuntime as A, type AgentActivityRuntimeDeleteSessionsBatchInput as a, type AgentActivityRuntimeDeleteSessionsBatchResult as b, type AgentActivityRuntimeListSessionMessagesInput as c, type AgentActivityRuntimePromptContentBlock as d, AgentActivityRuntimeProvider as e, type AgentActivityRuntimeProviderProps as f, type AgentActivityRuntimeSessionSectionDeletionCandidates as g, type AgentActivityRuntimeSessionSectionScopeInput as h, type AgentActivityRuntimeSetSessionPinnedInput as i, type AgentActivityRuntimeUpdateSessionSettingsInput as j, type AgentActivityRuntimeUpdateSessionSettingsResult as k, type AgentActivityRuntimeUploadPromptContentInput as l, type AgentActivityRuntimeUploadPromptContentResult as m, AgentGUI as n, type AgentGUIAccountMenuState as o, type AgentGUIAgentsEmptyRenderer as p, type AgentGUIProps as q, type AgentGUIProviderUnavailableStateContext as r, type AgentGUIProviderUnavailableStateRenderer as s, type AgentGUISidebarFooterContext as t, type AgentGUISidebarFooterRenderer as u, resetAgentActivityRuntimeForTests as v, setAgentActivityRuntimeForTests as w, useAgentActivityRuntime as x, useAgentActivitySnapshot as y, useOptionalAgentActivityRuntime as z };
1073
+ export { type AgentActivityRuntime as A, resetAgentActivityRuntimeForTests as B, setAgentActivityRuntimeForTests as C, useAgentActivityRuntime as D, useAgentActivitySnapshot as E, useOptionalAgentActivityRuntime as F, type AgentActivityRuntimeDeleteSessionsBatchInput as a, type AgentActivityRuntimeDeleteSessionsBatchResult as b, type AgentActivityRuntimeListSessionMessagesInput as c, type AgentActivityRuntimePromptContentBlock as d, AgentActivityRuntimeProvider as e, type AgentActivityRuntimeProviderProps as f, type AgentActivityRuntimeSessionSectionDeletionCandidates as g, type AgentActivityRuntimeSessionSectionScopeInput as h, type AgentActivityRuntimeSetSessionPinnedInput as i, type AgentActivityRuntimeUpdateSessionSettingsInput as j, type AgentActivityRuntimeUpdateSessionSettingsResult as k, type AgentActivityRuntimeUploadPromptContentInput as l, type AgentActivityRuntimeUploadPromptContentResult as m, AgentGUI as n, type AgentGUIAccountMenuState as o, type AgentGUIAgentsEmptyRenderer as p, type AgentGUIComposerContentType as q, type AgentGUIComposerFocusMethod as r, type AgentGUIEngagementContext as s, type AgentGUIEngagementEvent as t, type AgentGUIEngagementEventSink as u, type AgentGUIProps as v, type AgentGUIProviderUnavailableStateContext as w, type AgentGUIProviderUnavailableStateRenderer as x, type AgentGUISidebarFooterContext as y, type AgentGUISidebarFooterRenderer as z };
@@ -2,7 +2,7 @@ import * as react from 'react';
2
2
  import { ReactNode, JSX } from 'react';
3
3
  import { c as AgentConversationVM, e as WorkspaceLinkAction, d as WorkspaceAgentSessionDetailViewModel } from '../agentConversationVM-C335TR6S.js';
4
4
  export { B as BuildWorkspaceAgentSessionDetailInput, W as WorkspaceAgentActivityTimelineItem, f as buildWorkspaceAgentSessionDetailViewModel } from '../agentConversationVM-C335TR6S.js';
5
- import { c as AgentGUIProviderSkillOption, k as AgentMessageMarkdownWorkspaceAppIcon } from '../agentGuiNodeTypes-B9X4aWfv.js';
5
+ import { c as AgentGUIProviderSkillOption, k as AgentMessageMarkdownWorkspaceAppIcon } from '../agentGuiNodeTypes-DAsluxjv.js';
6
6
  export { W as WorkspaceAgentActivityCard } from '../workspaceAgentActivityListTypes-C7gPWYiA.js';
7
7
  import '@tutti-os/workspace-issue-manager/core';
8
8
  import '@tutti-os/agent-activity-core';
@@ -6,22 +6,22 @@ import {
6
6
  projectAgentConversationVM,
7
7
  reconcileProjectedAgentConversationVM,
8
8
  useProjectedAgentConversation
9
- } from "../chunk-JKIZA7EJ.js";
9
+ } from "../chunk-7M77BK6K.js";
10
10
  import "../chunk-7BXWPI4F.js";
11
11
  import "../chunk-FGLQZ6I4.js";
12
- import "../chunk-O3Q5SIJH.js";
12
+ import "../chunk-CPUEPDF7.js";
13
13
  import "../chunk-Y35GDLP2.js";
14
14
  import "../chunk-LUGELG5V.js";
15
- import "../chunk-2HJEOO7W.js";
15
+ import "../chunk-T6PEJFRP.js";
16
16
  import "../chunk-MASXZENX.js";
17
- import "../chunk-H5F3QSCF.js";
17
+ import "../chunk-Y5M6Q6WX.js";
18
18
  import "../chunk-PJP5BUU6.js";
19
19
  import "../chunk-H6IQ63DQ.js";
20
20
  import "../chunk-GCBDIQDX.js";
21
21
  import {
22
22
  translate
23
- } from "../chunk-E4HQUTM3.js";
24
- import "../chunk-W6WAGPMD.js";
23
+ } from "../chunk-RHTZAODZ.js";
24
+ import "../chunk-FSKGEGGX.js";
25
25
  import "../chunk-5X7YDOC6.js";
26
26
  import "../chunk-KJQERFKX.js";
27
27
  import "../chunk-UGVI47X6.js";
@@ -1,7 +1,7 @@
1
1
  import 'react';
2
2
  import '@tutti-os/ui-i18n-runtime';
3
- export { n as AgentGUI, q as AgentGUIProps } from './AgentGUI-DWdvUV4x.js';
4
- import './agentGuiNodeTypes-B9X4aWfv.js';
3
+ export { n as AgentGUI, v as AgentGUIProps } from './AgentGUI-Bkk2TRS0.js';
4
+ import './agentGuiNodeTypes-DAsluxjv.js';
5
5
  export { l as AgentGUIHomeSuggestionId } from './types-CnT8rNUI.js';
6
6
  import './runtime-BBNdWgDU.js';
7
7
  import '@tutti-os/agent-activity-core';
package/dist/agent-gui.js CHANGED
@@ -1,35 +1,35 @@
1
1
  import {
2
2
  AgentGUI
3
- } from "./chunk-WKSFPJHZ.js";
4
- import "./chunk-RE4AXS27.js";
5
- import "./chunk-TVIGLNNI.js";
6
- import "./chunk-4PQPJ5OY.js";
3
+ } from "./chunk-7O4D4KOE.js";
4
+ import "./chunk-MRRICFWA.js";
5
+ import "./chunk-QWGJ5TEG.js";
6
+ import "./chunk-4ROALW3K.js";
7
7
  import "./chunk-IYEXLOUE.js";
8
8
  import "./chunk-L3GMMGRS.js";
9
9
  import "./chunk-UHBCM6RO.js";
10
- import "./chunk-JKIZA7EJ.js";
10
+ import "./chunk-7M77BK6K.js";
11
11
  import "./chunk-7BXWPI4F.js";
12
- import "./chunk-AGT7MUTV.js";
12
+ import "./chunk-J7ZYAUPC.js";
13
13
  import "./chunk-C35SNDVZ.js";
14
14
  import "./chunk-FGLQZ6I4.js";
15
15
  import "./chunk-4YG7YK7S.js";
16
- import "./chunk-WMNS4MAQ.js";
17
- import "./chunk-3XXBDYAI.js";
18
- import "./chunk-O3Q5SIJH.js";
16
+ import "./chunk-3NOJFKDV.js";
17
+ import "./chunk-63BE6RGM.js";
18
+ import "./chunk-CPUEPDF7.js";
19
19
  import "./chunk-Y35GDLP2.js";
20
20
  import "./chunk-LUGELG5V.js";
21
21
  import "./chunk-JM24HADP.js";
22
- import "./chunk-XPFHJMZP.js";
23
- import "./chunk-2HJEOO7W.js";
24
- import "./chunk-QVBF5BN5.js";
22
+ import "./chunk-SPZJCTBV.js";
23
+ import "./chunk-T6PEJFRP.js";
24
+ import "./chunk-OTRZBTFQ.js";
25
25
  import "./chunk-YMXYBG7U.js";
26
26
  import "./chunk-MASXZENX.js";
27
- import "./chunk-H5F3QSCF.js";
27
+ import "./chunk-Y5M6Q6WX.js";
28
28
  import "./chunk-PJP5BUU6.js";
29
29
  import "./chunk-H6IQ63DQ.js";
30
30
  import "./chunk-GCBDIQDX.js";
31
- import "./chunk-E4HQUTM3.js";
32
- import "./chunk-W6WAGPMD.js";
31
+ import "./chunk-RHTZAODZ.js";
32
+ import "./chunk-FSKGEGGX.js";
33
33
  import "./chunk-5X7YDOC6.js";
34
34
  import "./chunk-KJQERFKX.js";
35
35
  import "./chunk-UGVI47X6.js";
@@ -7,7 +7,7 @@ import {
7
7
  getPromptToolDetails,
8
8
  isPromptRequestIdTitle,
9
9
  useEngineSelector
10
- } from "../chunk-XPFHJMZP.js";
10
+ } from "../chunk-SPZJCTBV.js";
11
11
  import {
12
12
  AgentMessageMarkdown,
13
13
  CustomScrollArea,
@@ -17,11 +17,11 @@ import {
17
17
  extractExitPlanModeOptions,
18
18
  isExitPlanSwitchModeInput,
19
19
  normalizeAskUserQuestions
20
- } from "../chunk-2HJEOO7W.js";
20
+ } from "../chunk-T6PEJFRP.js";
21
21
  import {
22
22
  userAvatarPlaceholderUrl,
23
23
  workspaceAgentActivityStatusLabel
24
- } from "../chunk-QVBF5BN5.js";
24
+ } from "../chunk-OTRZBTFQ.js";
25
25
  import {
26
26
  resolveWorkspaceAgentSessionSortTimeUnixMs
27
27
  } from "../chunk-YMXYBG7U.js";
@@ -30,7 +30,7 @@ import {
30
30
  } from "../chunk-MASXZENX.js";
31
31
  import {
32
32
  workspaceAgentProviderLabel
33
- } from "../chunk-H5F3QSCF.js";
33
+ } from "../chunk-Y5M6Q6WX.js";
34
34
  import "../chunk-PJP5BUU6.js";
35
35
  import "../chunk-H6IQ63DQ.js";
36
36
  import {
@@ -40,8 +40,8 @@ import {
40
40
  AgentGuiI18nProvider,
41
41
  getActiveUiLanguage,
42
42
  useTranslation
43
- } from "../chunk-E4HQUTM3.js";
44
- import "../chunk-W6WAGPMD.js";
43
+ } from "../chunk-RHTZAODZ.js";
44
+ import "../chunk-FSKGEGGX.js";
45
45
  import "../chunk-5X7YDOC6.js";
46
46
  import "../chunk-KJQERFKX.js";
47
47
  import "../chunk-UGVI47X6.js";
@@ -1986,15 +1986,6 @@ function MessageCenterSummary({
1986
1986
  summaryRef,
1987
1987
  shouldRenderRichSummary
1988
1988
  );
1989
- const handleLinkAction = useCallback2(
1990
- (action) => {
1991
- const agentTargetId = item.agentTargetId?.trim() || null;
1992
- onLinkAction?.(
1993
- action.type === "open-agent-session" && !action.agentTargetId && agentTargetId ? { ...action, agentTargetId } : action
1994
- );
1995
- },
1996
- [item.agentTargetId, onLinkAction]
1997
- );
1998
1989
  useEffect2(() => {
1999
1990
  if (!shouldMeasureOverflow) {
2000
1991
  setIsOverflowing(false);
@@ -2035,7 +2026,7 @@ function MessageCenterSummary({
2035
2026
  {
2036
2027
  content: summary,
2037
2028
  className: "[&_a]:text-[var(--tutti-purple)] [&_code]:text-[var(--text-secondary)] [&_hr]:border-t-[color-mix(in_srgb,var(--text-primary)_14%,transparent)] [&_ol]:!bg-transparent [&_p]:m-0 [&_th]:bg-[color-mix(in_srgb,var(--background-panel)_94%,var(--text-primary))] [&_th]:text-[var(--text-primary)] [&_ul]:!bg-transparent text-[var(--text-primary)]",
2038
- onLinkAction: handleLinkAction,
2029
+ onLinkAction,
2039
2030
  workspaceLinkContext: {
2040
2031
  workspaceRoot: item.cwd || null,
2041
2032
  basePath: item.cwd,