@tutti-os/agent-gui 0.0.190 → 0.0.192

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 (91) hide show
  1. package/dist/AgentRichTextReadonly-HJQQ4KAL.js +19 -0
  2. package/dist/agent-conversation/index.d.ts +29 -15
  3. package/dist/agent-conversation/index.js +11 -11
  4. package/dist/agent-env/index.js +1 -1
  5. package/dist/agent-gui.d.ts +310 -11
  6. package/dist/agent-gui.js +23 -23
  7. package/dist/agent-message-center/index.d.ts +4 -7
  8. package/dist/agent-message-center/index.js +9 -9
  9. package/dist/{agentGuiNodeTypes-RL1iNmSe.d.ts → agentGuiNodeTypes-B23ubO8n.d.ts} +8 -3
  10. package/dist/agents.d.ts +2 -1
  11. package/dist/app/renderer/agentactivity.css +16 -0
  12. package/dist/{chunk-DCZTHKWI.js → chunk-4CHBM3G3.js} +9 -3
  13. package/dist/chunk-4CHBM3G3.js.map +1 -0
  14. package/dist/{chunk-4ZCSXKK5.js → chunk-5VECGOBU.js} +3 -3
  15. package/dist/{chunk-F2U7LSJN.js → chunk-AFUVWWQY.js} +2 -2
  16. package/dist/{chunk-MHOYBRCY.js → chunk-CBMWHQ7P.js} +1 -1
  17. package/dist/chunk-CBMWHQ7P.js.map +1 -0
  18. package/dist/{chunk-2TPRBVDM.js → chunk-CUIJXYHG.js} +3566 -786
  19. package/dist/chunk-CUIJXYHG.js.map +1 -0
  20. package/dist/{chunk-THBCAUBR.js → chunk-CXC3ROXQ.js} +2 -2
  21. package/dist/{chunk-THBCAUBR.js.map → chunk-CXC3ROXQ.js.map} +1 -1
  22. package/dist/{chunk-44IFVKLS.js → chunk-DKGFEIZ7.js} +2 -2
  23. package/dist/{chunk-HH5PLD7L.js → chunk-DNHDR2YC.js} +3 -3
  24. package/dist/{chunk-V3VPKWVK.js → chunk-FGD2K7AB.js} +3 -3
  25. package/dist/chunk-FGD2K7AB.js.map +1 -0
  26. package/dist/{chunk-CFWR4C36.js → chunk-G7DS23D4.js} +2 -2
  27. package/dist/{chunk-AHDJFZAC.js → chunk-I4ICM3U4.js} +175 -33
  28. package/dist/chunk-I4ICM3U4.js.map +1 -0
  29. package/dist/{chunk-ML53N3II.js → chunk-KDN6SLJM.js} +2 -2
  30. package/dist/{chunk-RSFK6YRS.js → chunk-L3YCXXMA.js} +9 -9
  31. package/dist/{chunk-RWUYIHO3.js → chunk-M6HTOCQK.js} +3 -3
  32. package/dist/{chunk-UCDLFE2I.js → chunk-MGSRWYRN.js} +2 -2
  33. package/dist/{chunk-EWS7OGQK.js → chunk-O433KXLK.js} +2 -2
  34. package/dist/chunk-O433KXLK.js.map +1 -0
  35. package/dist/{chunk-2CZIBPST.js → chunk-PFTST5V6.js} +4 -4
  36. package/dist/{chunk-6YRJ4OPB.js → chunk-S7OROGUS.js} +2 -2
  37. package/dist/{chunk-HOT2PJ6T.js → chunk-SQZIKBOM.js} +4 -7
  38. package/dist/{chunk-HOT2PJ6T.js.map → chunk-SQZIKBOM.js.map} +1 -1
  39. package/dist/{chunk-FJ4A3A6W.js → chunk-TYQTSC7Y.js} +5 -5
  40. package/dist/{chunk-HD2TXBXU.js → chunk-U6TH4RJJ.js} +228 -43
  41. package/dist/chunk-U6TH4RJJ.js.map +1 -0
  42. package/dist/{chunk-KE3UYJMW.js → chunk-Z5Y3RB2U.js} +2 -2
  43. package/dist/{chunk-QKCSWK7Y.js → chunk-ZE6VLLFC.js} +51 -4
  44. package/dist/chunk-ZE6VLLFC.js.map +1 -0
  45. package/dist/context-mention-palette/index.js +10 -10
  46. package/dist/context-mention-provider.d.ts +1 -0
  47. package/dist/conversation-rail-runtime.d.ts +4 -1
  48. package/dist/dock-icons.js +2 -2
  49. package/dist/i18n/index.d.ts +280 -154
  50. package/dist/i18n/index.js +2 -2
  51. package/dist/index.d.ts +1285 -835
  52. package/dist/index.js +23 -23
  53. package/dist/index.js.map +1 -1
  54. package/dist/mention-search.js +8 -8
  55. package/dist/planImplementationPresentation-BxVOLt6A.d.ts +24 -0
  56. package/dist/provider-identity.js +1 -1
  57. package/dist/{types-izfKbJ8v.d.ts → types-CWKbqBmi.d.ts} +4 -0
  58. package/dist/workbench/contribution.js +10 -10
  59. package/dist/workbench/index.js +10 -10
  60. package/dist/workbench/launch.d.ts +4 -0
  61. package/dist/workbench/launch.js +4 -4
  62. package/dist/workbench/providerCatalog.js +2 -2
  63. package/dist/workbench/sessionTitle.js +3 -3
  64. package/dist/workbench/state.js +3 -3
  65. package/dist/workbench/types.d.ts +3 -0
  66. package/dist/workbench/types.js +1 -1
  67. package/package.json +14 -14
  68. package/dist/AgentRichTextReadonly-UZQ5VSGO.js +0 -19
  69. package/dist/chunk-2TPRBVDM.js.map +0 -1
  70. package/dist/chunk-AHDJFZAC.js.map +0 -1
  71. package/dist/chunk-DCZTHKWI.js.map +0 -1
  72. package/dist/chunk-EWS7OGQK.js.map +0 -1
  73. package/dist/chunk-HD2TXBXU.js.map +0 -1
  74. package/dist/chunk-MHOYBRCY.js.map +0 -1
  75. package/dist/chunk-QKCSWK7Y.js.map +0 -1
  76. package/dist/chunk-V3VPKWVK.js.map +0 -1
  77. package/dist/{AgentRichTextReadonly-UZQ5VSGO.js.map → AgentRichTextReadonly-HJQQ4KAL.js.map} +0 -0
  78. package/dist/{chunk-4ZCSXKK5.js.map → chunk-5VECGOBU.js.map} +0 -0
  79. package/dist/{chunk-F2U7LSJN.js.map → chunk-AFUVWWQY.js.map} +0 -0
  80. package/dist/{chunk-44IFVKLS.js.map → chunk-DKGFEIZ7.js.map} +0 -0
  81. package/dist/{chunk-HH5PLD7L.js.map → chunk-DNHDR2YC.js.map} +0 -0
  82. package/dist/{chunk-CFWR4C36.js.map → chunk-G7DS23D4.js.map} +0 -0
  83. package/dist/{chunk-ML53N3II.js.map → chunk-KDN6SLJM.js.map} +0 -0
  84. package/dist/{chunk-RSFK6YRS.js.map → chunk-L3YCXXMA.js.map} +0 -0
  85. package/dist/{chunk-RWUYIHO3.js.map → chunk-M6HTOCQK.js.map} +0 -0
  86. package/dist/{chunk-UCDLFE2I.js.map → chunk-MGSRWYRN.js.map} +0 -0
  87. package/dist/{chunk-2CZIBPST.js.map → chunk-PFTST5V6.js.map} +0 -0
  88. package/dist/{chunk-6YRJ4OPB.js.map → chunk-S7OROGUS.js.map} +0 -0
  89. package/dist/{chunk-FJ4A3A6W.js.map → chunk-TYQTSC7Y.js.map} +0 -0
  90. package/dist/{chunk-KE3UYJMW.js.map → chunk-Z5Y3RB2U.js.map} +0 -0
  91. package/dist/{agentConversationVM-Bn5s1UMx.d.ts → workspaceLinkActions-BmVLZszV.d.ts} +72 -72
@@ -2,9 +2,11 @@ import * as react from 'react';
2
2
  import { JSX, ReactNode, HTMLAttributes } from 'react';
3
3
  import { I18nRuntime } from '@tutti-os/ui-i18n-runtime';
4
4
  import { A as AgentGuiI18nLocale, T as TranslateFn } from '../runtime-Dwf44VKc.js';
5
- import { d as WorkspaceAgentActivityStatus, b as AgentConversationPromptVM, g as WorkspaceLinkAction } from '../agentConversationVM-Bn5s1UMx.js';
5
+ import { d as WorkspaceAgentActivityStatus, b as AgentConversationPromptVM, g as WorkspaceLinkAction } from '../workspaceLinkActions-BmVLZszV.js';
6
6
  import { AgentActivityNeedsAttentionItem, AgentSessionEngine, WorkspaceAgentConsumerSession, AgentActivitySnapshot, AgentSessionEngineState } from '@tutti-os/agent-activity-core';
7
7
  export { WorkspaceAgentConsumerCounts, WorkspaceAgentConsumerSession, selectWorkspaceAgentConsumerCounts, selectWorkspaceAgentConsumerSession, selectWorkspaceAgentConsumerSessions } from '@tutti-os/agent-activity-core';
8
+ import { a as PLAN_IMPLEMENTATION_ACTION_IMPLEMENT, P as PLAN_IMPLEMENTATION_ACTION_FEEDBACK, b as PLAN_IMPLEMENTATION_ACTION_SKIP } from '../planImplementationPresentation-BxVOLt6A.js';
9
+ export { c as PLAN_IMPLEMENTATION_PROMPT } from '../planImplementationPresentation-BxVOLt6A.js';
8
10
  import '@tutti-os/workspace-issue-manager/core';
9
11
 
10
12
  declare function useTranslation(): {
@@ -432,11 +434,6 @@ declare function approvalOptionDisplayLabel(option: {
432
434
  feedback?: boolean;
433
435
  }): string;
434
436
 
435
- declare const PLAN_IMPLEMENTATION_PROMPT = "Implement the plan.";
436
- declare const PLAN_IMPLEMENTATION_ACTION_IMPLEMENT = "implement";
437
- declare const PLAN_IMPLEMENTATION_ACTION_FEEDBACK = "feedback";
438
- declare const PLAN_IMPLEMENTATION_ACTION_SKIP = "skip";
439
-
440
437
  type AgentPlanPromptAction = typeof PLAN_IMPLEMENTATION_ACTION_IMPLEMENT | typeof PLAN_IMPLEMENTATION_ACTION_FEEDBACK | typeof PLAN_IMPLEMENTATION_ACTION_SKIP;
441
438
  declare function dispatchAgentPlanPromptAction(input: {
442
439
  action: AgentPlanPromptAction;
@@ -519,4 +516,4 @@ interface MessageCenterFilterPreferences {
519
516
  declare function readMessageCenterFilterPreferences(): MessageCenterFilterPreferences;
520
517
  declare function writeMessageCenterFilterPreferences(preferences: MessageCenterFilterPreferences): void;
521
518
 
522
- 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, PLAN_IMPLEMENTATION_ACTION_IMPLEMENT, PLAN_IMPLEMENTATION_PROMPT, type PromptToolDetail, type WorkspaceAgentAttentionItem, type WorkspaceAgentAttentionTarget, type WorkspaceAgentMessageCenterAgentPresentation, WorkspaceAgentMessageCenterAttentionDeck, type WorkspaceAgentMessageCenterAttentionDeckProps, type WorkspaceAgentMessageCenterAttentionDeckRenderCardInput, WorkspaceAgentMessageCenterCard, type WorkspaceAgentMessageCenterCardProps, type WorkspaceAgentMessageCenterCounts, type WorkspaceAgentMessageCenterDigest, type WorkspaceAgentMessageCenterDigestPrimary, type WorkspaceAgentMessageCenterDigestPrimaryKind, type WorkspaceAgentMessageCenterIdentity, type WorkspaceAgentMessageCenterInteractionTarget, type WorkspaceAgentMessageCenterItem, type WorkspaceAgentMessageCenterModel, WorkspaceAgentMessageCenterPanel, type WorkspaceAgentMessageCenterPanelPresentation, type WorkspaceAgentMessageCenterPanelProps, type WorkspaceAgentMessageCenterPresentation, type WorkspaceAgentMessageCenterPromptStatus, WorkspaceAgentMessageCenterStack, MessageCenterViewMenu as WorkspaceAgentMessageCenterViewMenu, approvalOptionDisplayLabel, buildMessageCenterProviderOptions, buildMessageCenterStatusOptions, buildWorkspaceAgentInteractivePromptLabels, buildWorkspaceAgentMessageCenterModelFromEngine, dispatchAgentPlanPromptAction, getPromptToolDetails, groupMessageCenterItems, isInteractiveMessageCenterItem, isPromptRequestIdTitle, isRecentlyCompletedMessageCenterItem, isWaitingMessageCenterItem, itemMatchesViewFilters, managedAgentRoundedIconUrl, messageCenterAgentUserStackId, messageCenterFiltersStorageKey, messageCenterGroupLabel, messageCenterStackPreviewNodes, messageCenterStackPreviewText, messageCenterStackRenderId, messageCenterStackScrollSyncSegment, messageCenterStatusFilterValue, messageCenterStatusTone, messageCenterStatusToneClass, partitionMessageCenterItemsByAgentUser, readMessageCenterFilterPreferences, resolveMessageCenterNotificationAction, selectMessageCenterAttentionDeckItems, selectWorkspaceAgentAttentionItems, selectWorkspaceAgentMessageCenterPresentation, stabilizeWorkspaceAgentMessageCenterModel, statusFilterSummary, useEngineSelector, userAvatarPlaceholderUrl, workspaceAgentActivityStatusLabel, workspaceAgentAttentionItemsEqual, workspaceAgentMessageCenterItemEqual, workspaceAgentMessageCenterPresentationEqual, workspaceAgentMessageCenterPromptStatus, writeMessageCenterFilterPreferences };
519
+ 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, PLAN_IMPLEMENTATION_ACTION_IMPLEMENT, type PromptToolDetail, type WorkspaceAgentAttentionItem, type WorkspaceAgentAttentionTarget, type WorkspaceAgentMessageCenterAgentPresentation, WorkspaceAgentMessageCenterAttentionDeck, type WorkspaceAgentMessageCenterAttentionDeckProps, type WorkspaceAgentMessageCenterAttentionDeckRenderCardInput, WorkspaceAgentMessageCenterCard, type WorkspaceAgentMessageCenterCardProps, type WorkspaceAgentMessageCenterCounts, type WorkspaceAgentMessageCenterDigest, type WorkspaceAgentMessageCenterDigestPrimary, type WorkspaceAgentMessageCenterDigestPrimaryKind, type WorkspaceAgentMessageCenterIdentity, type WorkspaceAgentMessageCenterInteractionTarget, type WorkspaceAgentMessageCenterItem, type WorkspaceAgentMessageCenterModel, WorkspaceAgentMessageCenterPanel, type WorkspaceAgentMessageCenterPanelPresentation, type WorkspaceAgentMessageCenterPanelProps, type WorkspaceAgentMessageCenterPresentation, type WorkspaceAgentMessageCenterPromptStatus, WorkspaceAgentMessageCenterStack, MessageCenterViewMenu as WorkspaceAgentMessageCenterViewMenu, approvalOptionDisplayLabel, buildMessageCenterProviderOptions, buildMessageCenterStatusOptions, buildWorkspaceAgentInteractivePromptLabels, buildWorkspaceAgentMessageCenterModelFromEngine, dispatchAgentPlanPromptAction, getPromptToolDetails, groupMessageCenterItems, isInteractiveMessageCenterItem, isPromptRequestIdTitle, isRecentlyCompletedMessageCenterItem, isWaitingMessageCenterItem, itemMatchesViewFilters, managedAgentRoundedIconUrl, messageCenterAgentUserStackId, messageCenterFiltersStorageKey, messageCenterGroupLabel, messageCenterStackPreviewNodes, messageCenterStackPreviewText, messageCenterStackRenderId, messageCenterStackScrollSyncSegment, messageCenterStatusFilterValue, messageCenterStatusTone, messageCenterStatusToneClass, partitionMessageCenterItemsByAgentUser, readMessageCenterFilterPreferences, resolveMessageCenterNotificationAction, selectMessageCenterAttentionDeckItems, selectWorkspaceAgentAttentionItems, selectWorkspaceAgentMessageCenterPresentation, stabilizeWorkspaceAgentMessageCenterModel, statusFilterSummary, useEngineSelector, userAvatarPlaceholderUrl, workspaceAgentActivityStatusLabel, workspaceAgentAttentionItemsEqual, workspaceAgentMessageCenterItemEqual, workspaceAgentMessageCenterPresentationEqual, workspaceAgentMessageCenterPromptStatus, writeMessageCenterFilterPreferences };
@@ -8,7 +8,7 @@ import {
8
8
  isPromptRequestIdTitle,
9
9
  latestPlanTurnId,
10
10
  planImplementationPromptFromPlanTurn
11
- } from "../chunk-QKCSWK7Y.js";
11
+ } from "../chunk-ZE6VLLFC.js";
12
12
  import {
13
13
  useEngineSelector
14
14
  } from "../chunk-EVQ4JY3N.js";
@@ -21,38 +21,38 @@ import {
21
21
  isExitPlanSwitchModeInput,
22
22
  normalizeAgentApprovalPurpose,
23
23
  normalizeAskUserQuestions
24
- } from "../chunk-2CZIBPST.js";
24
+ } from "../chunk-PFTST5V6.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-KE3UYJMW.js";
31
+ } from "../chunk-Z5Y3RB2U.js";
32
32
  import {
33
33
  resolveWorkspaceAgentSessionSortTimeUnixMs
34
34
  } from "../chunk-YMXYBG7U.js";
35
35
  import {
36
36
  workspaceAgentProviderLabel
37
- } from "../chunk-V3VPKWVK.js";
37
+ } from "../chunk-FGD2K7AB.js";
38
38
  import "../chunk-F5UR6EJG.js";
39
39
  import {
40
40
  managedAgentRoundedIconUrl
41
- } from "../chunk-RWUYIHO3.js";
41
+ } from "../chunk-M6HTOCQK.js";
42
42
  import {
43
43
  AgentGuiI18nProvider,
44
44
  getActiveUiLanguage,
45
45
  useTranslation
46
- } from "../chunk-44IFVKLS.js";
46
+ } from "../chunk-DKGFEIZ7.js";
47
47
  import "../chunk-5BJYO6X3.js";
48
- import "../chunk-F2U7LSJN.js";
49
- import "../chunk-AHDJFZAC.js";
48
+ import "../chunk-AFUVWWQY.js";
49
+ import "../chunk-I4ICM3U4.js";
50
50
  import {
51
51
  normalizeAgentTitleText
52
52
  } from "../chunk-MIJXEELH.js";
53
53
  import "../chunk-D2JUDUYY.js";
54
54
  import "../chunk-QNE2ZPPV.js";
55
- import "../chunk-EWS7OGQK.js";
55
+ import "../chunk-O433KXLK.js";
56
56
 
57
57
  // agent-message-center/WorkspaceAgentMessageCenterPanel.tsx
58
58
  import {
@@ -1,6 +1,6 @@
1
1
  import { AgentActivitySession, AgentActivitySlashCommandPolicy, AgentActivityUsage, CanonicalAgentSession } from '@tutti-os/agent-activity-core';
2
- import { j as AgentHostAgentSessionCommand, k as AgentHostAgentSessionComposerSettings, m as AgentHostAgentSessionReasoningEffort, n as AgentHostAgentSessionSpeed, l as AgentHostAgentSessionPermissionConfig, f as AgentGUIProvider, p as AgentPromptContentBlock, e as AgentGUINodeData, b as AgentGUIAgentTarget, h as AgentGUIProviderRailMode, i as AgentGUIProviderReadinessGate } from './types-izfKbJ8v.js';
3
- import { A as AgentApprovalItemVM, a as AgentAskUserQuestionVM, b as AgentConversationPromptVM, c as AgentConversationVM, f as WorkspaceAgentSessionDetailViewModel } from './agentConversationVM-Bn5s1UMx.js';
2
+ import { j as AgentHostAgentSessionCommand, k as AgentHostAgentSessionComposerSettings, m as AgentHostAgentSessionReasoningEffort, n as AgentHostAgentSessionSpeed, l as AgentHostAgentSessionPermissionConfig, f as AgentGUIProvider, p as AgentPromptContentBlock, e as AgentGUINodeData, b as AgentGUIAgentTarget, h as AgentGUIProviderRailMode, i as AgentGUIProviderReadinessGate } from './types-CWKbqBmi.js';
3
+ import { A as AgentApprovalItemVM, a as AgentAskUserQuestionVM, b as AgentConversationPromptVM, c as AgentConversationVM, f as WorkspaceAgentSessionDetailViewModel } from './workspaceLinkActions-BmVLZszV.js';
4
4
  import { WorkspaceUserProjectService } from '@tutti-os/workspace-user-project/contracts';
5
5
 
6
6
  declare const APP_ERROR_CODES: readonly ["common.invalid_input", "common.approved_path_required", "common.unavailable", "common.unexpected", "session.not_found", "control_surface.unauthorized", "workspace.select_directory_failed", "workspace.select_files_failed", "workspace.ensure_directory_failed", "workspace.import_files_failed", "workspace.read_file_failed", "workspace.write_file_failed", "workspace.export_file_failed", "workspace.copy_path_failed", "workspace.host_unsupported", "workspace.runtime_artifact_unavailable", "runtime.guest_agent_lane_unavailable", "workspace.room_full", "workspace.room_delete_forbidden", "workspace.room_delete_not_found", "filesystem.create_directory_failed", "filesystem.read_file_bytes_failed", "filesystem.read_file_text_failed", "filesystem.write_file_text_failed", "filesystem.copy_entry_failed", "filesystem.move_entry_failed", "filesystem.rename_entry_failed", "filesystem.delete_entry_failed", "filesystem.read_directory_failed", "filesystem.stat_failed", "terminal.spawn_failed", "terminal.write_failed", "terminal.resize_failed", "terminal.close_failed", "terminal.attach_failed", "terminal.detach_failed", "terminal.snapshot_failed", "agent.list_models_failed", "agent.launch_failed", "agent.read_last_message_failed", "agent.provider_session_not_found", "agent.resume_session_not_local", "agent.resume_session_resolve_failed", "agent.settings_require_new_session", "task.suggest_title_failed", "persistence.unavailable", "persistence.quota_exceeded", "persistence.payload_too_large", "persistence.io_failed", "persistence.invalid_state", "persistence.invalid_node_id", "update.get_state_failed", "update.configure_failed", "update.check_failed", "update.download_failed", "update.install_failed", "PACKAGE_DOWNLOAD_INTERRUPTED", "PACKAGE_DOWNLOAD_HTTP_STATUS", "PACKAGE_DOWNLOAD_INVALID", "PACKAGE_DOWNLOAD_DISK_ERROR"];
@@ -532,7 +532,7 @@ type AgentCapabilityUse = "browserUse" | "computerUse";
532
532
 
533
533
  interface AgentSlashCommandCapability {
534
534
  aliases?: readonly string[];
535
- capability: AgentCapabilityUse;
535
+ capability: AgentCapabilityUse | "tutti";
536
536
  kind: "capability";
537
537
  name: string;
538
538
  }
@@ -757,6 +757,11 @@ interface AgentGUIComposerViewModel {
757
757
  /** Provider goal exposes a real paused state and pause/resume controls. */
758
758
  goalPauseSupported: boolean;
759
759
  canSubmit: boolean;
760
+ isTuttiModeActive: boolean;
761
+ isTuttiModeUpdating: boolean;
762
+ /** Effective Tutti orchestration intensity (0-100) for the budget popup. */
763
+ tuttiModeOrchestrationIntensity: number;
764
+ tuttiModeUpdateStatus: "idle" | "pending_create" | "updating" | "failed" | "uncertain";
760
765
  composerSettings: AgentGUIComposerSettingsVM;
761
766
  queuedPrompts: AgentGUIQueuedPromptVM[];
762
767
  queueStatus: AgentGUIQueueStatus;
package/dist/agents.d.ts CHANGED
@@ -1,4 +1,5 @@
1
- import { A as AgentGUIAgent, b as AgentGUIAgentTarget } from './types-izfKbJ8v.js';
1
+ import { A as AgentGUIAgent, b as AgentGUIAgentTarget } from './types-CWKbqBmi.js';
2
+ import './planImplementationPresentation-BxVOLt6A.js';
2
3
 
3
4
  declare function normalizeAgentGUIAgents(agents: readonly AgentGUIAgent[] | null | undefined): AgentGUIAgent[];
4
5
  declare function agentGUIAgentIsReady(agent: AgentGUIAgent): boolean;
@@ -5817,6 +5817,22 @@ aside.workspace-agents-status-panel
5817
5817
  height: 18px;
5818
5818
  }
5819
5819
 
5820
+ /* Plan-review decision copy: the send button widens into a labeled pill
5821
+ ("Accept plan" / "Request changes") while the empty-send override is on. */
5822
+ .agent-gui-node__composer-send-button[data-plan-review-label="true"] {
5823
+ display: inline-flex;
5824
+ width: auto;
5825
+ min-width: 28px;
5826
+ max-width: 220px;
5827
+ align-items: center;
5828
+ justify-content: center;
5829
+ gap: 6px;
5830
+ padding: 0 10px 0 12px;
5831
+ font-size: 12px;
5832
+ font-weight: 500;
5833
+ line-height: 1;
5834
+ }
5835
+
5820
5836
  .agent-gui-node__composer-reference-trigger {
5821
5837
  min-width: 36px;
5822
5838
  min-height: 36px;
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  agentGuiWorkbenchOpenSessionActivationType,
3
3
  agentGuiWorkbenchPrefillPromptActivationType
4
- } from "./chunk-MHOYBRCY.js";
4
+ } from "./chunk-CBMWHQ7P.js";
5
5
  import {
6
6
  isAgentGuiWorkbenchProvider,
7
7
  normalizeAgentGuiWorkbenchProvider
8
- } from "./chunk-UCDLFE2I.js";
8
+ } from "./chunk-MGSRWYRN.js";
9
9
 
10
10
  // workbench/launch.ts
11
11
  var agentGuiWorkbenchTypeId = "agent-gui";
@@ -65,6 +65,8 @@ function createAgentGuiWorkbenchDraftLaunchRequest(input) {
65
65
  provider,
66
66
  ...input.agentTargetId?.trim() ? { agentTargetId: input.agentTargetId.trim() } : {},
67
67
  ...input.autoSubmit ? { autoSubmit: true } : {},
68
+ ...input.model?.trim() ? { model: input.model.trim() } : {},
69
+ ...input.modelPlanId?.trim() ? { modelPlanId: input.modelPlanId.trim() } : {},
68
70
  ...input.openInNewWindow ? { openInNewWindow: true } : {},
69
71
  ...userProjectPath ? { userProjectPath } : {}
70
72
  },
@@ -122,6 +124,8 @@ function prefillPromptFromLaunchPayload(payload) {
122
124
  }
123
125
  const autoSubmit = payload.autoSubmit === true;
124
126
  const provider = payload.provider;
127
+ const model = payload.model;
128
+ const modelPlanId = payload.modelPlanId;
125
129
  const agentTargetId = agentTargetIdFromLaunchPayload(payload);
126
130
  const userProjectPath = payload.userProjectPath;
127
131
  const normalizedUserProjectPath = typeof userProjectPath === "string" ? normalizeAgentGuiWorkbenchUserProjectPath(userProjectPath) : null;
@@ -129,6 +133,8 @@ function prefillPromptFromLaunchPayload(payload) {
129
133
  draftPrompt,
130
134
  ...agentTargetId ? { agentTargetId } : {},
131
135
  ...autoSubmit ? { autoSubmit: true } : {},
136
+ ...typeof model === "string" && model.trim() ? { model: model.trim() } : {},
137
+ ...typeof modelPlanId === "string" && modelPlanId.trim() ? { modelPlanId: modelPlanId.trim() } : {},
132
138
  ...isAgentGuiWorkbenchProvider(provider) ? { provider } : {},
133
139
  ...normalizedUserProjectPath ? { userProjectPath: normalizedUserProjectPath } : {}
134
140
  };
@@ -173,4 +179,4 @@ export {
173
179
  createAgentGuiWorkbenchLaunchDescriptor,
174
180
  resolveAgentGuiWorkbenchLaunchDockEntryId
175
181
  };
176
- //# sourceMappingURL=chunk-DCZTHKWI.js.map
182
+ //# sourceMappingURL=chunk-4CHBM3G3.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../workbench/launch.ts"],"sourcesContent":["import type { WorkbenchHostLaunchRequest } from \"@tutti-os/workbench-surface\";\nimport {\n isAgentGuiWorkbenchProvider,\n normalizeAgentGuiWorkbenchProvider\n} from \"./providerCatalog.ts\";\nimport {\n agentGuiWorkbenchOpenSessionActivationType,\n agentGuiWorkbenchPrefillPromptActivationType,\n type AgentGuiWorkbenchPrefillPromptPayload,\n type AgentGuiWorkbenchProvider\n} from \"./types.ts\";\n\nexport { agentGuiWorkbenchPrefillPromptActivationType } from \"./types.ts\";\n\ntype AgentGuiWorkbenchLaunchRequestInput = Pick<\n WorkbenchHostLaunchRequest,\n \"launchSource\" | \"payload\" | \"typeId\"\n> & {\n dockEntryId?: string | null;\n};\n\nexport const agentGuiWorkbenchTypeId = \"agent-gui\";\n\nconst agentGuiWorkbenchUnifiedDockEntryIdValue = \"agent-gui:unified\";\nconst agentGuiWorkbenchDockPopupNewWindowLaunchSource = \"dock-popup-new-window\";\nlet agentGuiWorkbenchInstanceSequence = 0;\n\nexport interface AgentGuiWorkbenchDockIdentity {\n kind: \"unifiedAggregate\";\n}\n\n/**\n * @deprecated AgentGUI has one canonical Dock entry. Use\n * {@link agentGuiWorkbenchUnifiedDockEntryId} instead.\n */\nexport function agentGuiWorkbenchDockEntryId(\n _provider: AgentGuiWorkbenchProvider\n): string {\n return agentGuiWorkbenchUnifiedDockEntryId();\n}\n\nexport function agentGuiWorkbenchUnifiedDockEntryId(): string {\n return agentGuiWorkbenchUnifiedDockEntryIdValue;\n}\n\nexport function createAgentGuiWorkbenchInstanceId(): string {\n agentGuiWorkbenchInstanceSequence += 1;\n return `agent-gui:instance:${Date.now().toString(36)}-${agentGuiWorkbenchInstanceSequence.toString(36)}`;\n}\n\nexport function agentGuiWorkbenchDockIdentityFromIdentifier(\n value: string | null | undefined\n): AgentGuiWorkbenchDockIdentity | null {\n const normalized = value?.trim();\n if (!normalized) {\n return null;\n }\n if (normalized === agentGuiWorkbenchUnifiedDockEntryId()) {\n return { kind: \"unifiedAggregate\" };\n }\n return null;\n}\n\nexport function agentGuiWorkbenchProviderFromLaunchRequest(\n request: AgentGuiWorkbenchLaunchRequestInput\n): AgentGuiWorkbenchProvider {\n const payloadProvider =\n request.payload &&\n typeof request.payload === \"object\" &&\n !Array.isArray(request.payload)\n ? (request.payload as { provider?: unknown }).provider\n : null;\n if (isAgentGuiWorkbenchProvider(payloadProvider)) {\n return payloadProvider;\n }\n throw new Error(\"agent_gui_workbench.launch_provider_required\");\n}\n\nexport function createAgentGuiWorkbenchSessionLaunchRequest(input: {\n agentTargetId?: string | null;\n agentSessionId?: string;\n openInNewWindow?: boolean;\n provider: unknown;\n}) {\n const provider = normalizeAgentGuiWorkbenchProvider(input.provider);\n return {\n dockEntryId: agentGuiWorkbenchUnifiedDockEntryId(),\n payload: {\n ...(input.agentTargetId?.trim()\n ? { agentTargetId: input.agentTargetId.trim() }\n : {}),\n ...(input.agentSessionId ? { agentSessionId: input.agentSessionId } : {}),\n ...(input.openInNewWindow ? { openInNewWindow: true } : {}),\n provider\n },\n reason: \"host\" as const,\n typeId: agentGuiWorkbenchTypeId\n };\n}\n\nexport function createAgentGuiWorkbenchDraftLaunchRequest(input: {\n agentTargetId?: string | null;\n autoSubmit?: boolean;\n draftPrompt: string;\n model?: string | null;\n modelPlanId?: string | null;\n openInNewWindow?: boolean;\n provider: unknown;\n userProjectPath?: string | null;\n}) {\n const provider = normalizeAgentGuiWorkbenchProvider(input.provider);\n const userProjectPath = normalizeAgentGuiWorkbenchUserProjectPath(\n input.userProjectPath\n );\n return {\n dockEntryId: agentGuiWorkbenchUnifiedDockEntryId(),\n payload: {\n draftPrompt: input.draftPrompt,\n provider,\n ...(input.agentTargetId?.trim()\n ? { agentTargetId: input.agentTargetId.trim() }\n : {}),\n ...(input.autoSubmit ? { autoSubmit: true } : {}),\n ...(input.model?.trim() ? { model: input.model.trim() } : {}),\n ...(input.modelPlanId?.trim()\n ? { modelPlanId: input.modelPlanId.trim() }\n : {}),\n ...(input.openInNewWindow ? { openInNewWindow: true } : {}),\n ...(userProjectPath ? { userProjectPath } : {})\n },\n reason: \"host\" as const,\n typeId: agentGuiWorkbenchTypeId\n };\n}\n\nexport interface AgentGuiWorkbenchLaunchDescriptor {\n activation:\n | {\n payload: {\n agentSessionId: string;\n };\n type: typeof agentGuiWorkbenchOpenSessionActivationType;\n }\n | {\n payload: AgentGuiWorkbenchPrefillPromptPayload;\n type: typeof agentGuiWorkbenchPrefillPromptActivationType;\n }\n | null;\n dockEntryId: string;\n instanceId: string;\n openInNewWindow: boolean;\n provider: AgentGuiWorkbenchProvider;\n reusePolicy: AgentGuiWorkbenchReusePolicy;\n targetAgentSessionId: string | null;\n}\n\nexport type AgentGuiWorkbenchReusePolicy =\n | { kind: \"dock-entry\" }\n | { agentSessionId: string; kind: \"current-session\" }\n | { kind: \"none\" };\n\nexport function createAgentGuiWorkbenchLaunchDescriptor(\n request: AgentGuiWorkbenchLaunchRequestInput\n): AgentGuiWorkbenchLaunchDescriptor {\n const provider = agentGuiWorkbenchProviderFromLaunchRequest(request);\n const dockEntryId = agentGuiWorkbenchUnifiedDockEntryId();\n const prefillPrompt = prefillPromptFromLaunchPayload(request.payload);\n if (prefillPrompt) {\n const openInNewWindow = openInNewWindowFromLaunchPayload(request.payload);\n return {\n activation: {\n payload: prefillPrompt,\n type: agentGuiWorkbenchPrefillPromptActivationType\n },\n dockEntryId,\n instanceId: createAgentGuiWorkbenchInstanceId(),\n openInNewWindow,\n provider,\n reusePolicy: { kind: \"none\" },\n targetAgentSessionId: null\n };\n }\n\n const targetAgentSessionId = agentSessionIdFromLaunchPayload(request.payload);\n const openInNewWindow = openInNewWindowFromLaunchRequest(request);\n const instanceId = createAgentGuiWorkbenchInstanceId();\n\n return {\n activation: targetAgentSessionId\n ? {\n payload: {\n agentSessionId: targetAgentSessionId\n },\n type: agentGuiWorkbenchOpenSessionActivationType\n }\n : null,\n dockEntryId,\n instanceId,\n openInNewWindow,\n provider,\n reusePolicy: openInNewWindow\n ? { kind: \"none\" }\n : targetAgentSessionId\n ? { agentSessionId: targetAgentSessionId, kind: \"current-session\" }\n : { kind: \"dock-entry\" },\n targetAgentSessionId\n };\n}\n\n/**\n * @deprecated AgentGUI launch results always use the unified Dock entry. Use\n * {@link agentGuiWorkbenchUnifiedDockEntryId} instead.\n */\nexport function resolveAgentGuiWorkbenchLaunchDockEntryId(_input: {\n provider: AgentGuiWorkbenchProvider;\n requestedDockEntryId?: string | null;\n}): string {\n return agentGuiWorkbenchUnifiedDockEntryId();\n}\n\nfunction prefillPromptFromLaunchPayload(\n payload: unknown\n): AgentGuiWorkbenchPrefillPromptPayload | null {\n if (!payload || typeof payload !== \"object\" || Array.isArray(payload)) {\n return null;\n }\n const draftPrompt = (payload as { draftPrompt?: unknown }).draftPrompt;\n if (typeof draftPrompt !== \"string\" || !draftPrompt.trim()) {\n return null;\n }\n const autoSubmit = (payload as { autoSubmit?: unknown }).autoSubmit === true;\n const provider = (payload as { provider?: unknown }).provider;\n const model = (payload as { model?: unknown }).model;\n const modelPlanId = (payload as { modelPlanId?: unknown }).modelPlanId;\n const agentTargetId = agentTargetIdFromLaunchPayload(payload);\n const userProjectPath = (payload as { userProjectPath?: unknown })\n .userProjectPath;\n const normalizedUserProjectPath =\n typeof userProjectPath === \"string\"\n ? normalizeAgentGuiWorkbenchUserProjectPath(userProjectPath)\n : null;\n return {\n draftPrompt,\n ...(agentTargetId ? { agentTargetId } : {}),\n ...(autoSubmit ? { autoSubmit: true } : {}),\n ...(typeof model === \"string\" && model.trim()\n ? { model: model.trim() }\n : {}),\n ...(typeof modelPlanId === \"string\" && modelPlanId.trim()\n ? { modelPlanId: modelPlanId.trim() }\n : {}),\n ...(isAgentGuiWorkbenchProvider(provider) ? { provider } : {}),\n ...(normalizedUserProjectPath\n ? { userProjectPath: normalizedUserProjectPath }\n : {})\n };\n}\n\nfunction normalizeAgentGuiWorkbenchUserProjectPath(\n value: string | null | undefined\n): string | null {\n const normalized = value?.trim().replaceAll(\"\\\\\", \"/\").replace(/\\/+$/, \"\");\n return normalized ? normalized : null;\n}\n\nfunction agentSessionIdFromLaunchPayload(payload: unknown): string | null {\n if (!payload || typeof payload !== \"object\" || Array.isArray(payload)) {\n return null;\n }\n const agentSessionId = (payload as { agentSessionId?: unknown })\n .agentSessionId;\n return typeof agentSessionId === \"string\" && agentSessionId.trim()\n ? agentSessionId.trim()\n : null;\n}\n\nfunction agentTargetIdFromLaunchPayload(payload: unknown): string | null {\n if (!payload || typeof payload !== \"object\" || Array.isArray(payload)) {\n return null;\n }\n const agentTargetId = (payload as { agentTargetId?: unknown }).agentTargetId;\n return typeof agentTargetId === \"string\" && agentTargetId.trim()\n ? agentTargetId.trim()\n : null;\n}\n\nfunction openInNewWindowFromLaunchPayload(payload: unknown): boolean {\n if (!payload || typeof payload !== \"object\" || Array.isArray(payload)) {\n return false;\n }\n return (payload as { openInNewWindow?: unknown }).openInNewWindow === true;\n}\n\nfunction openInNewWindowFromLaunchRequest(\n request: AgentGuiWorkbenchLaunchRequestInput\n): boolean {\n return (\n openInNewWindowFromLaunchPayload(request.payload) ||\n request.launchSource === agentGuiWorkbenchDockPopupNewWindowLaunchSource\n );\n}\n"],"mappings":"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","names":["openInNewWindow"]}
@@ -7,11 +7,11 @@ import {
7
7
  } from "./chunk-FGLQZ6I4.js";
8
8
  import {
9
9
  managedAgentRoundedIconUrl
10
- } from "./chunk-RWUYIHO3.js";
10
+ } from "./chunk-M6HTOCQK.js";
11
11
  import {
12
12
  translate,
13
13
  useTranslation
14
- } from "./chunk-44IFVKLS.js";
14
+ } from "./chunk-DKGFEIZ7.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-4ZCSXKK5.js.map
1836
+ //# sourceMappingURL=chunk-5VECGOBU.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  resolveAgentGUIProviderCatalogIdentity
3
- } from "./chunk-EWS7OGQK.js";
3
+ } from "./chunk-O433KXLK.js";
4
4
 
5
5
  // shared/managedAgentProviders.ts
6
6
  function normalizeManagedAgentProvider(provider) {
@@ -22,4 +22,4 @@ export {
22
22
  normalizeManagedAgentProvider,
23
23
  isBetaAgentProvider
24
24
  };
25
- //# sourceMappingURL=chunk-F2U7LSJN.js.map
25
+ //# sourceMappingURL=chunk-AFUVWWQY.js.map
@@ -6,4 +6,4 @@ export {
6
6
  agentGuiWorkbenchOpenSessionActivationType,
7
7
  agentGuiWorkbenchPrefillPromptActivationType
8
8
  };
9
- //# sourceMappingURL=chunk-MHOYBRCY.js.map
9
+ //# sourceMappingURL=chunk-CBMWHQ7P.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../workbench/types.ts"],"sourcesContent":["/** Open runtime metadata; agentTargetId remains the launch identity. */\nexport type AgentGuiWorkbenchProvider = string;\n\nexport const agentGuiWorkbenchOpenSessionActivationType =\n \"agent-gui:open-session\";\n\nexport const agentGuiWorkbenchPrefillPromptActivationType =\n \"agent-gui:prefill-prompt\";\n\nexport interface AgentGuiWorkbenchPrefillPromptPayload {\n agentTargetId?: string | null;\n autoSubmit?: boolean;\n draftPrompt: string;\n model?: string | null;\n modelPlanId?: string | null;\n provider?: AgentGuiWorkbenchProvider;\n userProjectPath?: string | null;\n}\n\nexport interface AgentGuiWorkbenchComposerOverrides {\n model?: string | null;\n modelPlanId?: string | null;\n permissionModeId?: string | null;\n planMode?: boolean;\n reasoningEffort?: string | null;\n speed?: string | null;\n}\n\nexport type AgentGuiWorkbenchComposerOverridesByProvider = Partial<\n Record<AgentGuiWorkbenchProvider, AgentGuiWorkbenchComposerOverrides | null>\n>;\n\nexport type AgentGuiWorkbenchComposerOverridesByAgentTargetId = Record<\n string,\n AgentGuiWorkbenchComposerOverrides | null\n>;\n\nexport interface AgentGuiWorkbenchNodeState {\n agentTargetId?: string | null;\n composerOverrides?: AgentGuiWorkbenchComposerOverrides | null;\n composerOverridesByAgentTargetId?: AgentGuiWorkbenchComposerOverridesByAgentTargetId | null;\n composerOverridesByProvider?: AgentGuiWorkbenchComposerOverridesByProvider | null;\n conversationCount?: number | null;\n conversationRailCollapsed?: boolean | null;\n conversationRailWidthPx?: number | null;\n lastActiveAgentSessionId: string | null;\n lastActiveAgentSessionIdByAgentTargetId?: Record<string, string> | null;\n provider: AgentGuiWorkbenchProvider;\n}\n\nexport interface AgentGuiWorkbenchState {\n agentTargetId?: string | null;\n conversationRailCollapsed?: boolean | null;\n conversationRailWidthPx?: number | null;\n lastActiveAgentSessionId: string | null;\n lastActiveAgentSessionIdByAgentTargetId?: Record<string, string> | null;\n}\n\nexport interface AgentGuiWorkbenchWorkspaceState {\n workspaceId: string;\n}\n"],"mappings":";AAGO,IAAM,6CACX;AAEK,IAAM,+CACX;","names":[]}