@tutti-os/agent-gui 0.0.65 → 0.0.66

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 (69) hide show
  1. package/LICENSE +1 -2
  2. package/README.md +1 -1
  3. package/dist/agent-conversation/index.d.ts +2 -2
  4. package/dist/agent-conversation/index.js +5 -5
  5. package/dist/agent-message-center/index.js +7 -7
  6. package/dist/{agentGuiNodeTypes-CCjzXdTe.d.ts → agentGuiNodeTypes-B9Aq3UEU.d.ts} +3 -1
  7. package/dist/app/renderer/agentactivity.css +43 -0
  8. package/dist/{chunk-UWBX3DZK.js → chunk-6ULTMCKP.js} +2 -2
  9. package/dist/{chunk-HKKC2U6J.js → chunk-CTJQTUQ3.js} +5 -5
  10. package/dist/{chunk-HKKC2U6J.js.map → chunk-CTJQTUQ3.js.map} +1 -1
  11. package/dist/{chunk-R7PSPKBD.js → chunk-DXVMRZHH.js} +2 -6
  12. package/dist/chunk-DXVMRZHH.js.map +1 -0
  13. package/dist/{chunk-W3Q7B3DV.js → chunk-HNODQVG2.js} +2 -2
  14. package/dist/{chunk-N7BGNAA2.js → chunk-JTFWT6DK.js} +6 -8
  15. package/dist/chunk-JTFWT6DK.js.map +1 -0
  16. package/dist/{chunk-XLBJHHDX.js → chunk-KRJF7WLJ.js} +11 -1
  17. package/dist/chunk-KRJF7WLJ.js.map +1 -0
  18. package/dist/{chunk-TG3ZXLPM.js → chunk-MYD37I32.js} +27 -3
  19. package/dist/chunk-MYD37I32.js.map +1 -0
  20. package/dist/{chunk-XZPAU7FC.js → chunk-NOTZW5WH.js} +2 -2
  21. package/dist/{chunk-IDTB6OID.js → chunk-T3KGZV35.js} +49 -11
  22. package/dist/chunk-T3KGZV35.js.map +1 -0
  23. package/dist/{chunk-6OYLLPPN.js → chunk-UBBHWDMP.js} +12 -8
  24. package/dist/{chunk-6OYLLPPN.js.map → chunk-UBBHWDMP.js.map} +1 -1
  25. package/dist/{chunk-EIPQGFAE.js → chunk-VBTPXEFH.js} +2 -2
  26. package/dist/{chunk-QULZNKPA.js → chunk-Z26P2QNT.js} +2 -2
  27. package/dist/context-mention-palette/index.js +6 -6
  28. package/dist/i18n/index.d.ts +10 -0
  29. package/dist/i18n/index.js +2 -2
  30. package/dist/index.d.ts +20 -5
  31. package/dist/index.js +283 -523
  32. package/dist/index.js.map +1 -1
  33. package/dist/queued-prompt-runtime.d.ts +22 -3
  34. package/dist/queued-prompt-runtime.js +1 -1
  35. package/dist/{types-BAPEle8b.d.ts → types-Bxn8bLEp.d.ts} +14 -1
  36. package/dist/workbench/contribution.d.ts +1 -1
  37. package/dist/workbench/index.d.ts +1 -1
  38. package/dist/workbench/index.js +3 -3
  39. package/dist/workbench/launch.d.ts +1 -1
  40. package/dist/workbench/providerCatalog.d.ts +1 -1
  41. package/dist/workbench/sessionTitle.d.ts +1 -1
  42. package/dist/workbench/sessionTitle.js +3 -3
  43. package/dist/workbench/state.d.ts +1 -1
  44. package/dist/workbench/types.d.ts +1 -1
  45. package/dist/workspace-agent-generated-files.js +3 -3
  46. package/package.json +12 -12
  47. package/dist/app/renderer/assets/icons/@-lined-14px.svg +0 -3
  48. package/dist/app/renderer/assets/icons/agents/manage-agent-claude-code.png +0 -0
  49. package/dist/app/renderer/assets/icons/agents/manage-agent-codex.png +0 -0
  50. package/dist/app/renderer/assets/icons/agents/manage-agent-gemini.png +0 -0
  51. package/dist/app/renderer/assets/icons/agents/manage-agent-hermes.png +0 -0
  52. package/dist/app/renderer/assets/icons/agents/manage-agent-openclaw.png +0 -0
  53. package/dist/app/renderer/assets/icons/agents/tutti-doc-rounded.png +0 -0
  54. package/dist/app/renderer/assets/icons/agents/workspace-dock-agent-claude-code.png +0 -0
  55. package/dist/app/renderer/assets/icons/agents/workspace-dock-agent-codex.png +0 -0
  56. package/dist/app/renderer/assets/icons/agents/workspace-dock-agent-gemini.png +0 -0
  57. package/dist/app/renderer/assets/icons/agents/workspace-dock-agent-nexight.png +0 -0
  58. package/dist/app/renderer/assets/icons/agents/workspace-dock-agent-openclaw.png +0 -0
  59. package/dist/app/renderer/assets/icons/arrow-left-filled.svg +0 -1
  60. package/dist/chunk-IDTB6OID.js.map +0 -1
  61. package/dist/chunk-N7BGNAA2.js.map +0 -1
  62. package/dist/chunk-R7PSPKBD.js.map +0 -1
  63. package/dist/chunk-TG3ZXLPM.js.map +0 -1
  64. package/dist/chunk-XLBJHHDX.js.map +0 -1
  65. /package/dist/{chunk-UWBX3DZK.js.map → chunk-6ULTMCKP.js.map} +0 -0
  66. /package/dist/{chunk-W3Q7B3DV.js.map → chunk-HNODQVG2.js.map} +0 -0
  67. /package/dist/{chunk-XZPAU7FC.js.map → chunk-NOTZW5WH.js.map} +0 -0
  68. /package/dist/{chunk-EIPQGFAE.js.map → chunk-VBTPXEFH.js.map} +0 -0
  69. /package/dist/{chunk-QULZNKPA.js.map → chunk-Z26P2QNT.js.map} +0 -0
@@ -4,7 +4,7 @@ import {
4
4
  formatAgentSessionMentionText,
5
5
  normalizeAgentGUIProviderIdentity,
6
6
  resolveAgentGUIExplicitConversationTitle
7
- } from "./chunk-W3Q7B3DV.js";
7
+ } from "./chunk-HNODQVG2.js";
8
8
 
9
9
  // workbench/sessionTitle.ts
10
10
  function formatAgentGuiSessionPlainTitle(title, options = {}) {
@@ -96,4 +96,4 @@ export {
96
96
  formatAgentGuiConversationPlainTitle,
97
97
  resolveAgentGuiWorkbenchSessionTitle
98
98
  };
99
- //# sourceMappingURL=chunk-EIPQGFAE.js.map
99
+ //# sourceMappingURL=chunk-VBTPXEFH.js.map
@@ -11,7 +11,7 @@ import {
11
11
  import {
12
12
  translate,
13
13
  translateInUiLanguage
14
- } from "./chunk-UWBX3DZK.js";
14
+ } from "./chunk-6ULTMCKP.js";
15
15
  import {
16
16
  normalizeAgentTitleText
17
17
  } from "./chunk-GCBDIQDX.js";
@@ -1007,4 +1007,4 @@ export {
1007
1007
  resolveWorkspaceAgentActivityStatus,
1008
1008
  resolveWorkspaceAgentActivityTitle
1009
1009
  };
1010
- //# sourceMappingURL=chunk-QULZNKPA.js.map
1010
+ //# sourceMappingURL=chunk-Z26P2QNT.js.map
@@ -4,19 +4,19 @@ import {
4
4
  AgentMentionSearchController,
5
5
  flattenAgentMentionPaletteEntries,
6
6
  groupStartKeys
7
- } from "../chunk-HKKC2U6J.js";
8
- import "../chunk-QULZNKPA.js";
9
- import "../chunk-R7PSPKBD.js";
7
+ } from "../chunk-CTJQTUQ3.js";
8
+ import "../chunk-Z26P2QNT.js";
9
+ import "../chunk-DXVMRZHH.js";
10
10
  import "../chunk-IBIMGLCD.js";
11
- import "../chunk-XZPAU7FC.js";
11
+ import "../chunk-NOTZW5WH.js";
12
12
  import "../chunk-Y35GDLP2.js";
13
13
  import "../chunk-LUGELG5V.js";
14
14
  import "../chunk-N4I3TD4G.js";
15
15
  import "../chunk-TYGL25EL.js";
16
- import "../chunk-UWBX3DZK.js";
16
+ import "../chunk-6ULTMCKP.js";
17
17
  import "../chunk-PJP5BUU6.js";
18
18
  import "../chunk-R2NGSPQS.js";
19
- import "../chunk-XLBJHHDX.js";
19
+ import "../chunk-KRJF7WLJ.js";
20
20
  import {
21
21
  AGENT_CONTEXT_MENTION_PROVIDER_IDS
22
22
  } from "../chunk-JM24HADP.js";
@@ -523,6 +523,7 @@ declare const agentGuiI18nResources: {
523
523
  readonly usageCompactAction: "Compact";
524
524
  readonly planCardTitle: "Plan";
525
525
  readonly planCardCopy: "Copy plan";
526
+ readonly copyCode: "Copy code";
526
527
  readonly planCardExpand: "Expand plan";
527
528
  readonly planCardCollapse: "Collapse plan";
528
529
  readonly planImplementationLead: "Implement this plan?";
@@ -1290,6 +1291,10 @@ declare const agentGuiI18nResources: {
1290
1291
  readonly todos: "Todos";
1291
1292
  readonly skill: "Skill";
1292
1293
  readonly mcp: "MCP";
1294
+ readonly mcpServer: "Server";
1295
+ readonly mcpTool: "Tool";
1296
+ readonly mcpItem: "Item {{index}}";
1297
+ readonly mcpDoc: "Doc {{index}}";
1293
1298
  readonly approvalOptions: "Approval options";
1294
1299
  readonly answerPrefix: "Answer: {{answer}}";
1295
1300
  readonly waitingForAnswer: "Waiting for answer…";
@@ -3033,6 +3038,7 @@ declare const agentGuiI18nResources: {
3033
3038
  readonly usageCompactAction: "压缩";
3034
3039
  readonly planCardTitle: "计划";
3035
3040
  readonly planCardCopy: "复制计划";
3041
+ readonly copyCode: "复制代码";
3036
3042
  readonly planCardExpand: "展开方案";
3037
3043
  readonly planCardCollapse: "收起方案";
3038
3044
  readonly planImplementationLead: "是否实作此方案?";
@@ -3801,6 +3807,10 @@ declare const agentGuiI18nResources: {
3801
3807
  readonly todos: "待办";
3802
3808
  readonly skill: "技能";
3803
3809
  readonly mcp: "MCP";
3810
+ readonly mcpServer: "服务器";
3811
+ readonly mcpTool: "工具";
3812
+ readonly mcpItem: "条目 {{index}}";
3813
+ readonly mcpDoc: "文档 {{index}}";
3804
3814
  readonly approvalOptions: "审批选项";
3805
3815
  readonly answerPrefix: "回答:{{answer}}";
3806
3816
  readonly waitingForAnswer: "等待用户回答…";
@@ -6,8 +6,8 @@ import {
6
6
  translate,
7
7
  translateInUiLanguage,
8
8
  useTranslation
9
- } from "../chunk-UWBX3DZK.js";
10
- import "../chunk-XLBJHHDX.js";
9
+ } from "../chunk-6ULTMCKP.js";
10
+ import "../chunk-KRJF7WLJ.js";
11
11
  export {
12
12
  AgentGuiI18nProvider,
13
13
  agentGuiI18nModule,
package/dist/index.d.ts CHANGED
@@ -4,10 +4,10 @@ import { m as WorkspaceAgentActivityListViewModel, g as AgentHostWorkspaceAgentS
4
4
  import * as react from 'react';
5
5
  import { ReactNode, PropsWithChildren, JSX, HTMLAttributes } from 'react';
6
6
  import { I18nRuntime } from '@tutti-os/ui-i18n-runtime';
7
- import { q as AgentProvider, f as AgentGUIProviderTargetRef, i as AgentHostAgentSessionComposerSettings, g as AgentHostActivateAgentSessionResult, o as AgentHostUpdateAgentSessionSettingsResult, m as AgentHostAgentSessionState, n as AgentHostUnactivateAgentSessionResult, A as AgentGUINodeData, a as AgentGUIProvider, e as AgentGUIProviderTarget, p as AgentPromptContentBlock, P as Point, b as AgentGUIProviderReadinessGate, N as NodeFrame } from './types-BAPEle8b.js';
8
- export { c as AgentGUIProviderReadinessGateAction, d as AgentGUIProviderReadinessGateStatus } from './types-BAPEle8b.js';
9
- import { k as AgentProbeSnapshot, A as AgentComposerDraft, n as AgentSessionCommand, c as AgentGUIProviderSkillOption, a as AgentGUIComposerSettingsVM, d as AgentGUIQueuedPromptVM, b as AgentGUINodeViewModel, g as AgentHostInputApi } from './agentGuiNodeTypes-CCjzXdTe.js';
10
- export { e as AgentHostApi, f as AgentHostApplyWorkspaceGitPatchInput, h as AgentHostRuntimeApi, i as AgentHostSelectFilesInput, j as AgentProbeProvider, l as AgentProviderProbeListInput, m as AgentProviderProbeListResult, o as AgentUsageQuota, p as AgentUsageSnapshot, P as PersistWriteResult, R as ReadWorkspaceAgentReadStateInput, W as WorkspaceAgentReadStateSnapshot, q as WriteWorkspaceAgentReadStateInput } from './agentGuiNodeTypes-CCjzXdTe.js';
7
+ import { r as AgentProvider, g as AgentGUIProviderTargetRef, j as AgentHostAgentSessionComposerSettings, h as AgentHostActivateAgentSessionResult, p as AgentHostUpdateAgentSessionSettingsResult, n as AgentHostAgentSessionState, o as AgentHostUnactivateAgentSessionResult, A as AgentGUINodeData, a as AgentGUIProvider, f as AgentGUIProviderTarget, q as AgentPromptContentBlock, P as Point, b as AgentGUIProviderRailMode, c as AgentGUIProviderReadinessGate, N as NodeFrame } from './types-Bxn8bLEp.js';
8
+ export { d as AgentGUIProviderReadinessGateAction, e as AgentGUIProviderReadinessGateStatus } from './types-Bxn8bLEp.js';
9
+ import { k as AgentProbeSnapshot, A as AgentComposerDraft, n as AgentSessionCommand, c as AgentGUIProviderSkillOption, a as AgentGUIComposerSettingsVM, d as AgentGUIQueuedPromptVM, b as AgentGUINodeViewModel, g as AgentHostInputApi } from './agentGuiNodeTypes-B9Aq3UEU.js';
10
+ export { e as AgentHostApi, f as AgentHostApplyWorkspaceGitPatchInput, h as AgentHostRuntimeApi, i as AgentHostSelectFilesInput, j as AgentProbeProvider, l as AgentProviderProbeListInput, m as AgentProviderProbeListResult, o as AgentUsageQuota, p as AgentUsageSnapshot, P as PersistWriteResult, R as ReadWorkspaceAgentReadStateInput, W as WorkspaceAgentReadStateSnapshot, q as WriteWorkspaceAgentReadStateInput } from './agentGuiNodeTypes-B9Aq3UEU.js';
11
11
  import { WorkspaceFileEntry } from '@tutti-os/workspace-file-manager/services';
12
12
  import { WorkspaceFileReference, ReferenceLocateTarget, WorkspaceFileReferenceAdapter } from '@tutti-os/workspace-file-reference/contracts';
13
13
  import { ReferenceSourceAggregator } from '@tutti-os/workspace-file-reference/core';
@@ -824,6 +824,13 @@ interface AgentGUISidebarFooterContext {
824
824
  activeConversation: AgentGUINodeViewModel["activeConversation"];
825
825
  }
826
826
  type AgentGUISidebarFooterRenderer = (ctx: AgentGUISidebarFooterContext) => ReactNode;
827
+ /**
828
+ * Renders the provider rail body when the rail is in "exact" mode and the
829
+ * host-provided target list is empty (and not loading). Lets the host fully own
830
+ * the empty state (e.g. a "no shared agents" message or a create-agent prompt)
831
+ * instead of the library falling back to the static local catalog.
832
+ */
833
+ type AgentGUIProviderRailEmptyRenderer = () => ReactNode;
827
834
 
828
835
  interface AgentGUINodeProps {
829
836
  nodeId: string;
@@ -859,6 +866,14 @@ interface AgentGUINodeProps {
859
866
  onAgentProviderLogin?: (provider: AgentProvider) => void;
860
867
  providerTargets?: readonly AgentGUIProviderTarget[];
861
868
  providerTargetsLoading?: boolean;
869
+ /**
870
+ * Controls how the provider rail composes its list. "catalog" (default) adds
871
+ * the static local catalog + placeholders + coming-soon; "exact" renders only
872
+ * the provided targets and shows `renderProviderRailEmpty` when empty.
873
+ */
874
+ providerRailMode?: AgentGUIProviderRailMode;
875
+ /** Host-owned empty state for the provider rail in "exact" mode. */
876
+ renderProviderRailEmpty?: AgentGUIProviderRailEmptyRenderer;
862
877
  renderSidebarFooter?: (ctx: AgentGUISidebarFooterContext) => ReactNode;
863
878
  comingSoonProviders?: readonly AgentGUIProvider[];
864
879
  providerReadinessGates?: Partial<Record<AgentGUIProvider, AgentGUIProviderReadinessGate | null>> | null;
@@ -985,4 +1000,4 @@ interface AgentActivityHostProviderProps extends PropsWithChildren {
985
1000
  }
986
1001
  declare function AgentActivityHostProvider({ agentActivityRuntime, agentHostApi, children }: AgentActivityHostProviderProps): JSX.Element;
987
1002
 
988
- export { AgentActivityHostProvider, type AgentActivityHostProviderProps, type AgentActivityRuntime, type AgentActivityRuntimeListSessionMessagesInput, type AgentActivityRuntimePromptContentBlock, AgentActivityRuntimeProvider, type AgentActivityRuntimeProviderProps, type AgentActivityRuntimeRetainSessionEventsInput, type AgentActivityRuntimeSetSessionPinnedInput, type AgentActivityRuntimeUpdateSessionSettingsInput, type AgentActivityRuntimeUploadPromptContentInput, type AgentActivityRuntimeUploadPromptContentResult, type AgentActivityRuntimeWarmupOpenclawGatewayInput, type AgentActivitySnapshotProjection, AgentContextMentionProvider, type AgentCustomMentionChipContext, type AgentCustomMentionIdentity, type AgentCustomMentionKindDefinition, type AgentCustomMentionPresentation, AgentGUI, type AgentGUIProps, AgentGUIProvider, AgentGUIProviderReadinessGate, AgentGUIProviderTarget, AgentGUIProviderTargetRef, type AgentGUISidebarFooterContext, type AgentGUISidebarFooterRenderer, AgentGuiI18nLocale, AgentHostInputApi, AgentProbeSnapshot, AgentQueuedPromptQueueSnapshot, AgentQueuedPromptRuntime, AgentQueuedPromptRuntimeProvider, type AgentQueuedPromptRuntimeProviderProps, agentGUIDefaultTargetProviders, agentGuiDockIconUrl, agentGuiDockIconUrls, agentHostSnapshotFromAgentActivitySnapshot, buildAgentActivitySnapshotProjection, createLocalAgentGUIProviderTarget, createLocalAgentGUIProviderTargets, createSharedAgentGUIProviderTarget, getAgentActivityRuntime, getAgentCustomMentionKind, getOptionalAgentActivityRuntime, localAgentGUIAgentTargetId, localAgentGUIProviderTargetId, normalizeAgentGUIProviderTargets, projectCoreSessionStatus, registerAgentCustomMentionKind, resetAgentActivityRuntimeForTests, resetAgentCustomMentionKindsForTests, resetAgentQueuedPromptRuntimeForTests, resolveAgentGUIExpandedWindowFrame, resolveAgentGUIProviderTarget, setAgentActivityRuntimeForTests, setAgentQueuedPromptRuntimeForTests, shouldAutoCollapseAgentGUIConversationRail, useAgentActivityRuntime, useAgentActivitySnapshot, useAgentQueuedPromptRuntime, useAgentQueuedPromptSessionSnapshot, useOptionalAgentActivityRuntime };
1003
+ export { AgentActivityHostProvider, type AgentActivityHostProviderProps, type AgentActivityRuntime, type AgentActivityRuntimeListSessionMessagesInput, type AgentActivityRuntimePromptContentBlock, AgentActivityRuntimeProvider, type AgentActivityRuntimeProviderProps, type AgentActivityRuntimeRetainSessionEventsInput, type AgentActivityRuntimeSetSessionPinnedInput, type AgentActivityRuntimeUpdateSessionSettingsInput, type AgentActivityRuntimeUploadPromptContentInput, type AgentActivityRuntimeUploadPromptContentResult, type AgentActivityRuntimeWarmupOpenclawGatewayInput, type AgentActivitySnapshotProjection, AgentContextMentionProvider, type AgentCustomMentionChipContext, type AgentCustomMentionIdentity, type AgentCustomMentionKindDefinition, type AgentCustomMentionPresentation, AgentGUI, type AgentGUIProps, AgentGUIProvider, type AgentGUIProviderRailEmptyRenderer, AgentGUIProviderRailMode, AgentGUIProviderReadinessGate, AgentGUIProviderTarget, AgentGUIProviderTargetRef, type AgentGUISidebarFooterContext, type AgentGUISidebarFooterRenderer, AgentGuiI18nLocale, AgentHostInputApi, AgentProbeSnapshot, AgentQueuedPromptQueueSnapshot, AgentQueuedPromptRuntime, AgentQueuedPromptRuntimeProvider, type AgentQueuedPromptRuntimeProviderProps, agentGUIDefaultTargetProviders, agentGuiDockIconUrl, agentGuiDockIconUrls, agentHostSnapshotFromAgentActivitySnapshot, buildAgentActivitySnapshotProjection, createLocalAgentGUIProviderTarget, createLocalAgentGUIProviderTargets, createSharedAgentGUIProviderTarget, getAgentActivityRuntime, getAgentCustomMentionKind, getOptionalAgentActivityRuntime, localAgentGUIAgentTargetId, localAgentGUIProviderTargetId, normalizeAgentGUIProviderTargets, projectCoreSessionStatus, registerAgentCustomMentionKind, resetAgentActivityRuntimeForTests, resetAgentCustomMentionKindsForTests, resetAgentQueuedPromptRuntimeForTests, resolveAgentGUIExpandedWindowFrame, resolveAgentGUIProviderTarget, setAgentActivityRuntimeForTests, setAgentQueuedPromptRuntimeForTests, shouldAutoCollapseAgentGUIConversationRail, useAgentActivityRuntime, useAgentActivitySnapshot, useAgentQueuedPromptRuntime, useAgentQueuedPromptSessionSnapshot, useOptionalAgentActivityRuntime };