@tutti-os/agent-gui 0.0.46 → 0.0.48

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 (66) hide show
  1. package/dist/{AgentMentionSearchController-D5ks45fN.d.ts → AgentMentionSearchController-CExFPobz.d.ts} +1 -1
  2. package/dist/AgentMessageMarkdown-DeYPURtF.d.ts +7 -0
  3. package/dist/agent-conversation/index.d.ts +5 -4
  4. package/dist/agent-conversation/index.js +8 -8
  5. package/dist/agent-message-center/index.d.ts +2 -2
  6. package/dist/agent-message-center/index.js +36 -14
  7. package/dist/agent-message-center/index.js.map +1 -1
  8. package/dist/{agentConversationVM-1QgRwvwZ.d.ts → agentConversationVM-DSXrFL9v.d.ts} +19 -1
  9. package/dist/{AgentMessageMarkdown-Cts0dAIm.d.ts → agentGuiNodeTypes-Bp1G8pOj.d.ts} +45 -11
  10. package/dist/app/renderer/agentactivity.css +145 -12
  11. package/dist/{chunk-AMNXH4DJ.js → chunk-2RYZ4EBF.js} +2 -2
  12. package/dist/{chunk-QT45WUPQ.js → chunk-6YN7HQL5.js} +366 -52
  13. package/dist/chunk-6YN7HQL5.js.map +1 -0
  14. package/dist/{chunk-D6IYEVDT.js → chunk-7W3VWU5R.js} +10 -6
  15. package/dist/chunk-7W3VWU5R.js.map +1 -0
  16. package/dist/{chunk-NZ2BGOJU.js → chunk-EUOGIKT7.js} +2 -2
  17. package/dist/{chunk-BAQTM6VS.js → chunk-LWMC2YA3.js} +1260 -442
  18. package/dist/chunk-LWMC2YA3.js.map +1 -0
  19. package/dist/{chunk-EIC7XS3C.js → chunk-N6HRVMIS.js} +2 -2
  20. package/dist/{chunk-VFQR7AZI.js → chunk-NETHPCSA.js} +35 -5
  21. package/dist/chunk-NETHPCSA.js.map +1 -0
  22. package/dist/{chunk-OL54R6OL.js → chunk-OB43QOMC.js} +2 -2
  23. package/dist/{chunk-FRG36S6N.js → chunk-OYQZRLJQ.js} +5 -5
  24. package/dist/chunk-OYQZRLJQ.js.map +1 -0
  25. package/dist/{chunk-EU7RWKHE.js → chunk-R6GOICRO.js} +5 -5
  26. package/dist/{chunk-ZJ7OSY4T.js → chunk-RNIY43TA.js} +9 -9
  27. package/dist/{chunk-ZJ7OSY4T.js.map → chunk-RNIY43TA.js.map} +1 -1
  28. package/dist/chunk-SD56WDSC.js +359 -0
  29. package/dist/chunk-SD56WDSC.js.map +1 -0
  30. package/dist/{chunk-TXXWUG2J.js → chunk-U6JWW45G.js} +2 -1
  31. package/dist/chunk-U6JWW45G.js.map +1 -0
  32. package/dist/{chunk-62QOR3TC.js → chunk-VGDPBC6W.js} +37 -7
  33. package/dist/chunk-VGDPBC6W.js.map +1 -0
  34. package/dist/{chunk-FJG2EH4V.js → chunk-ZVKRNEOF.js} +2 -2
  35. package/dist/context-mention-palette/index.d.ts +3 -3
  36. package/dist/context-mention-palette/index.js +9 -9
  37. package/dist/i18n/index.d.ts +34 -4
  38. package/dist/i18n/index.js +2 -2
  39. package/dist/index.d.ts +308 -10
  40. package/dist/index.js +1023 -843
  41. package/dist/index.js.map +1 -1
  42. package/dist/plan-decision-ops.d.ts +2 -2
  43. package/dist/queued-prompt-runtime.d.ts +97 -0
  44. package/dist/queued-prompt-runtime.js +9 -0
  45. package/dist/queued-prompt-runtime.js.map +1 -0
  46. package/dist/workbench/contribution.js +3 -3
  47. package/dist/workbench/index.js +9 -9
  48. package/dist/workbench/launch.js +2 -2
  49. package/dist/workbench/sessionTitle.js +3 -3
  50. package/dist/workspace-agent-generated-files.d.ts +1 -1
  51. package/dist/workspace-agent-generated-files.js +3 -3
  52. package/dist/{workspaceAgentActivityListViewModel-DLnMBMoh.d.ts → workspaceAgentActivityListViewModel-B5viw5Da.d.ts} +1 -1
  53. package/package.json +21 -14
  54. package/dist/chunk-62QOR3TC.js.map +0 -1
  55. package/dist/chunk-BAQTM6VS.js.map +0 -1
  56. package/dist/chunk-D6IYEVDT.js.map +0 -1
  57. package/dist/chunk-FRG36S6N.js.map +0 -1
  58. package/dist/chunk-QT45WUPQ.js.map +0 -1
  59. package/dist/chunk-TXXWUG2J.js.map +0 -1
  60. package/dist/chunk-VFQR7AZI.js.map +0 -1
  61. /package/dist/{chunk-AMNXH4DJ.js.map → chunk-2RYZ4EBF.js.map} +0 -0
  62. /package/dist/{chunk-NZ2BGOJU.js.map → chunk-EUOGIKT7.js.map} +0 -0
  63. /package/dist/{chunk-EIC7XS3C.js.map → chunk-N6HRVMIS.js.map} +0 -0
  64. /package/dist/{chunk-OL54R6OL.js.map → chunk-OB43QOMC.js.map} +0 -0
  65. /package/dist/{chunk-EU7RWKHE.js.map → chunk-R6GOICRO.js.map} +0 -0
  66. /package/dist/{chunk-FJG2EH4V.js.map → chunk-ZVKRNEOF.js.map} +0 -0
package/dist/index.d.ts CHANGED
@@ -1,24 +1,30 @@
1
1
  import { AgentActivityNeedsAttentionItem, AgentActivitySnapshot, AgentActivityCancelSessionInput, AgentActivityCancelSessionResult, AgentActivityCreateSessionInput, AgentActivitySession, AgentActivityDeleteSessionInput, AgentActivityDeleteSessionResult, AgentActivitySendInput, AgentActivityMessageOrder, AgentActivityMessagePage, AgentActivitySendInputResult, AgentActivitySubmitInteractiveInput, AgentActivitySnapshotListener } from '@tutti-os/agent-activity-core';
2
2
  export { AgentActivityAdapter, AgentActivityController, AgentActivityMessage, AgentActivityNeedsAttentionItem, AgentActivitySnapshot, selectNeedsAttentionCount, selectNeedsAttentionItems } from '@tutti-os/agent-activity-core';
3
- import { m as WorkspaceAgentActivityListViewModel, g as AgentHostWorkspaceAgentSession, f as AgentHostWorkspaceAgentMessage, l as AgentHostWorkspaceAgentSnapshot, B as BuildWorkspaceAgentActivityListOptions, d as AgentHostRuntimeOpenclawGatewayWarmupResult, c as AgentHostManagedAgentsState } from './workspaceAgentActivityListViewModel-DLnMBMoh.js';
3
+ import { m as WorkspaceAgentActivityListViewModel, g as AgentHostWorkspaceAgentSession, f as AgentHostWorkspaceAgentMessage, l as AgentHostWorkspaceAgentSnapshot, B as BuildWorkspaceAgentActivityListOptions, d as AgentHostRuntimeOpenclawGatewayWarmupResult, c as AgentHostManagedAgentsState } from './workspaceAgentActivityListViewModel-B5viw5Da.js';
4
4
  import * as react from 'react';
5
5
  import { PropsWithChildren, JSX } from 'react';
6
6
  import { I18nRuntime } from '@tutti-os/ui-i18n-runtime';
7
- import { n as AgentProvider, c as AgentGUIProviderTargetRef, f as AgentHostAgentSessionComposerSettings, d as AgentHostActivateAgentSessionResult, l as AgentHostUpdateAgentSessionSettingsResult, j as AgentHostAgentSessionState, k as AgentHostUnactivateAgentSessionResult, A as AgentGUINodeData, P as Point, b as AgentGUIProviderTarget, N as NodeFrame, a as AgentGUIProvider } from './types-xMz0lJWt.js';
8
- import { h as AgentProbeSnapshot, A as AgentGUINodeViewModel, f as AgentMessageMarkdownWorkspaceAppIcon, c as AgentHostInputApi } from './AgentMessageMarkdown-Cts0dAIm.js';
9
- export { b as AgentHostApi, d as AgentHostRuntimeApi, e as AgentHostSelectFilesInput, g as AgentProbeProvider, i as AgentProviderProbeListInput, j as AgentProviderProbeListResult, k as AgentUsageQuota, l as AgentUsageSnapshot, P as PersistWriteResult, R as ReadWorkspaceAgentReadStateInput, W as WorkspaceAgentReadStateSnapshot, m as WriteWorkspaceAgentReadStateInput } from './AgentMessageMarkdown-Cts0dAIm.js';
10
- import { ReferenceLocateTarget, WorkspaceFileReferenceAdapter, WorkspaceFileReference } from '@tutti-os/workspace-file-reference/contracts';
7
+ import { n as AgentProvider, c as AgentGUIProviderTargetRef, f as AgentHostAgentSessionComposerSettings, d as AgentHostActivateAgentSessionResult, l as AgentHostUpdateAgentSessionSettingsResult, j as AgentHostAgentSessionState, k as AgentHostUnactivateAgentSessionResult, A as AgentGUINodeData, m as AgentPromptContentBlock, P as Point, b as AgentGUIProviderTarget, N as NodeFrame, a as AgentGUIProvider } from './types-xMz0lJWt.js';
8
+ 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-Bp1G8pOj.js';
9
+ 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-Bp1G8pOj.js';
10
+ import { WorkspaceFileEntry } from '@tutti-os/workspace-file-manager/services';
11
+ import { WorkspaceFileReference, ReferenceLocateTarget, WorkspaceFileReferenceAdapter } from '@tutti-os/workspace-file-reference/contracts';
11
12
  import { ReferenceSourceAggregator } from '@tutti-os/workspace-file-reference/core';
12
13
  import { U as UiLanguage, a as UiTheme } from './uiSettings-BQS9r2eo.js';
13
14
  import { W as WorkspaceLinkAction } from './workspaceLinkActions-C6POH38D.js';
14
- import { A as AgentContextMentionItem } from './AgentMentionSearchController-D5ks45fN.js';
15
- export { p as preloadAgentMentionBrowse } from './AgentMentionSearchController-D5ks45fN.js';
15
+ import { A as AgentContextMentionItem } from './AgentMentionSearchController-CExFPobz.js';
16
+ export { p as preloadAgentMentionBrowse } from './AgentMentionSearchController-CExFPobz.js';
17
+ import { b as AgentConversationPromptVM } from './agentConversationVM-DSXrFL9v.js';
18
+ import { WorkspaceUserProjectI18nRuntime } from '@tutti-os/workspace-user-project/i18n';
19
+ import { WorkspaceUserProjectSelectChangeAction } from '@tutti-os/workspace-user-project/ui';
20
+ import { WorkspaceUserProject } from '@tutti-os/workspace-user-project/contracts';
21
+ import { A as AgentMessageMarkdownWorkspaceAppIcon } from './AgentMessageMarkdown-DeYPURtF.js';
16
22
  import { AgentContextMentionProvider } from './context-mention-provider.js';
17
23
  export { AGENT_CONTEXT_MENTION_PROVIDER_IDS, AgentContextMentionProviderId } from './context-mention-provider.js';
24
+ import { AgentQueuedPromptRuntime, AgentQueuedPromptQueueSnapshot } from './queued-prompt-runtime.js';
25
+ export { AgentQueuedPromptClaim, AgentQueuedPromptClaimResult, AgentQueuedPromptRetryBlock, AgentQueuedPromptSnapshot, createAgentQueuedPromptRuntime } from './queued-prompt-runtime.js';
18
26
  import { AgentGuiI18nLocale } from './i18n/index.js';
19
27
  export { AgentGuiI18nProvider, agentGuiI18nModule, agentGuiI18nResources } from './i18n/index.js';
20
- import './agentConversationVM-1QgRwvwZ.js';
21
- import '@tutti-os/workspace-user-project/contracts';
22
28
  import '@tutti-os/workspace-issue-manager/core';
23
29
  import '@tutti-os/ui-rich-text/at-panel';
24
30
  import '@tutti-os/ui-rich-text/types';
@@ -288,6 +294,10 @@ interface AgentActivityRuntimePromptAsset {
288
294
  data: string;
289
295
  }
290
296
  interface AgentActivityRuntime {
297
+ promptContentUploadSupport?: {
298
+ file?: boolean;
299
+ image?: boolean;
300
+ };
291
301
  cancelSession(input: AgentActivityCancelSessionInput): Promise<AgentActivityCancelSessionResult>;
292
302
  createSession(input: AgentActivityCreateSessionInput): Promise<AgentActivitySession>;
293
303
  deleteSession(input: AgentActivityDeleteSessionInput): Promise<AgentActivityDeleteSessionResult>;
@@ -369,6 +379,252 @@ interface AgentSlashCommandCapability {
369
379
  name: string;
370
380
  }
371
381
 
382
+ interface AgentProjectPathChangeMetadata {
383
+ action: WorkspaceUserProjectSelectChangeAction;
384
+ project?: WorkspaceUserProject;
385
+ }
386
+
387
+ type AgentDroppedFileReferenceResolver = (files: readonly File[]) => Promise<readonly WorkspaceFileReference[]> | readonly WorkspaceFileReference[];
388
+
389
+ /**
390
+ * 引用 picker 的确认结果:松散文件按 file mention 插入;mentionItems(如文件夹 bundle)
391
+ * 作为整体节点插入。两者各走各的插入路径,composer 不需要理解 bundle 内部结构。
392
+ */
393
+ interface WorkspaceReferencePickResult {
394
+ files: readonly WorkspaceFileReference[];
395
+ mentionItems: readonly AgentContextMentionItem[];
396
+ }
397
+ interface AgentComposerProps {
398
+ workspaceId: string;
399
+ workspacePath?: string | null;
400
+ currentUserId?: string | null;
401
+ provider: string;
402
+ slashStatus?: AgentComposerSlashStatus | null;
403
+ usage?: AgentComposerUsage | null;
404
+ draftContent: AgentComposerDraft;
405
+ availableCommands: readonly AgentSessionCommand[];
406
+ hasCompactableContext?: boolean;
407
+ compactSupported?: boolean | null;
408
+ availableSkills?: readonly AgentGUIProviderSkillOption[];
409
+ disabled: boolean;
410
+ disabledReason?: string | null;
411
+ submitDisabled: boolean;
412
+ placeholder: string;
413
+ composerSettings: AgentGUIComposerSettingsVM;
414
+ queuedPrompts: readonly AgentGUIQueuedPromptVM[];
415
+ drainingQueuedPromptId: string | null;
416
+ workspaceAppIcons?: readonly AgentMessageMarkdownWorkspaceAppIcon[];
417
+ canQueueWhileBusy: boolean;
418
+ showStopButton: boolean;
419
+ activePrompt: AgentConversationPromptVM | null;
420
+ activePromptKeyboardShortcutsEnabled?: boolean;
421
+ promptTips?: readonly AgentComposerPromptTip[];
422
+ isInterrupting: boolean;
423
+ isSendingTurn: boolean;
424
+ isSubmittingPrompt: boolean;
425
+ uiLanguage?: UiLanguage;
426
+ isActive?: boolean;
427
+ previewMode?: boolean;
428
+ promptImagesSupported?: boolean;
429
+ composerFocusRequestSequence?: number | null;
430
+ layoutMode?: "dock" | "hero";
431
+ labels: {
432
+ send: string;
433
+ modelLabel: string;
434
+ modelSelectionLabel: string;
435
+ modelContextWindowSuffix: string;
436
+ modelTooltipVersionLabel: string;
437
+ defaultModel: string;
438
+ loadingOptions: string;
439
+ inheritedUnavailable: string;
440
+ loadingConversation: string;
441
+ reasoningLabel: string;
442
+ reasoningDegreeLabel: string;
443
+ reasoningOptionDefault: string;
444
+ reasoningOptionMinimal: string;
445
+ reasoningOptionLow: string;
446
+ reasoningOptionMedium: string;
447
+ reasoningOptionHigh: string;
448
+ reasoningOptionXHigh: string;
449
+ reasoningOptionMax: string;
450
+ speedLabel: string;
451
+ speedSelectionLabel: string;
452
+ speedOptionStandard: string;
453
+ speedOptionStandardDescription: string;
454
+ speedOptionFast: string;
455
+ speedOptionFastDescription: string;
456
+ permissionLabel: string;
457
+ permissionModeReadOnly: string;
458
+ permissionModeAuto: string;
459
+ permissionModeFullAccess: string;
460
+ modelDescriptions: {
461
+ frontierComplexCoding: string;
462
+ everydayCoding: string;
463
+ smallFastCostEfficient: string;
464
+ codingOptimized: string;
465
+ ultraFastCoding: string;
466
+ professionalLongRunning: string;
467
+ };
468
+ planModeLabel: string;
469
+ planModeOnLabel: string;
470
+ planModeOffLabel: string;
471
+ planUnavailable: string;
472
+ goalLabel: string;
473
+ browserUseCapabilityLabel: string;
474
+ browserUseCapabilityDescription: string;
475
+ browserUseCapabilityDescriptionAutoConnect: string;
476
+ browserUseCapabilityDescriptionIsolated: string;
477
+ browserUseCapabilitySettingsLabel: string;
478
+ browserUseCapabilitySettingsDescription: string;
479
+ capabilityInlineSettingsLabel: string;
480
+ computerUseCapabilityLabel: string;
481
+ computerUseCapabilityDescription: string;
482
+ computerUseCapabilitySetupRequiredDescription: string;
483
+ computerUseCapabilityAuthorizationRequiredDescription: string;
484
+ computerUseCapabilityAuthorizationUnknownDescription: string;
485
+ computerUseCapabilitySettingsLabel: string;
486
+ computerUseCapabilitySettingsDescription: string;
487
+ queuedLabel: string;
488
+ sendQueuedPromptNext: string;
489
+ editQueuedPrompt: string;
490
+ deleteQueuedPrompt: string;
491
+ queuedPromptMoreActions: string;
492
+ stop: string;
493
+ stopping: string;
494
+ slashCommandPalette: string;
495
+ skillPickerPalette: string;
496
+ slashPaletteCommandsGroup: string;
497
+ slashPaletteCapabilitiesGroup: string;
498
+ slashPaletteSkillsGroup: string;
499
+ slashPalettePluginsGroup: string;
500
+ slashPaletteConnectorsGroup: string;
501
+ slashPaletteMcpGroup: string;
502
+ slashCommandCompactLabel: string;
503
+ slashCommandContextLabel: string;
504
+ slashCommandFastLabel: string;
505
+ slashCommandGoalLabel: string;
506
+ slashCommandInitLabel: string;
507
+ slashCommandPlanLabel: string;
508
+ slashCommandReviewLabel: string;
509
+ slashCommandStatusLabel: string;
510
+ slashCommandUsageLabel: string;
511
+ slashCommandCompactDescription: string;
512
+ slashCommandContextDescription: string;
513
+ slashCommandFastDescription: string;
514
+ slashCommandGoalDescription: string;
515
+ slashCommandInitDescription: string;
516
+ slashCommandPlanDescription: string;
517
+ slashCommandReviewDescription: string;
518
+ slashCommandStatusDescription: string;
519
+ slashCommandUsageDescription: string;
520
+ slashStatusTitle: string;
521
+ slashStatusSession: string;
522
+ slashStatusBaseUrl: string;
523
+ slashStatusContext: string;
524
+ slashStatusLimits: string;
525
+ slashStatusClose: string;
526
+ slashStatusContextValue: (input: {
527
+ percentLeft: number;
528
+ usedTokens: string;
529
+ totalTokens: string;
530
+ }) => string;
531
+ slashStatusContextUnavailable: string;
532
+ slashStatusLimitsUnavailable: string;
533
+ usageChipLabel: (input: {
534
+ percent: number;
535
+ }) => string;
536
+ usageTooltipLabel: string;
537
+ usagePopoverTitle: string;
538
+ usageContextWindowLabel: string;
539
+ usageTokensLabel: string;
540
+ usageLimitsLabel: string;
541
+ usageCompactAction: string;
542
+ approvalLead: string;
543
+ planLead: string;
544
+ planModes: Array<{
545
+ id: string;
546
+ label: string;
547
+ description: string;
548
+ }>;
549
+ stayInPlan: string;
550
+ sendFeedback: string;
551
+ feedbackPlaceholder: string;
552
+ previousQuestion: string;
553
+ nextQuestion: string;
554
+ submitAnswers: string;
555
+ answerPlaceholder: string;
556
+ waitingForAnswer: string;
557
+ planImplementationLead: string;
558
+ planImplementationConfirm: string;
559
+ planImplementationFeedbackPlaceholder: string;
560
+ planImplementationSend: string;
561
+ planImplementationSkip: string;
562
+ fileMentionPalette: string;
563
+ fileMentionLoading: string;
564
+ fileMentionEmpty: string;
565
+ fileMentionError: string;
566
+ fileMentionTabHint: string;
567
+ removeMention: string;
568
+ addReference: string;
569
+ referenceWorkspaceFiles: string;
570
+ projectLocked: string;
571
+ projectMissingDescription: string;
572
+ promptTipsPrefix: string;
573
+ reviewPicker: {
574
+ title: string;
575
+ targetLabel: string;
576
+ searchPlaceholder: string;
577
+ noResults: string;
578
+ uncommitted: string;
579
+ baseBranch: string;
580
+ commit: string;
581
+ custom: string;
582
+ branchLabel: string;
583
+ branchPlaceholder: string;
584
+ branchLoading: string;
585
+ branchEmpty: string;
586
+ commitPlaceholder: string;
587
+ customPlaceholder: string;
588
+ submit: string;
589
+ cancel: string;
590
+ };
591
+ };
592
+ workspaceUserProjectI18n: WorkspaceUserProjectI18nRuntime;
593
+ onDraftContentChange: (draftContent: AgentComposerDraft) => void;
594
+ onProjectPathChange?: (path: string | null, metadata?: AgentProjectPathChangeMetadata) => void;
595
+ onSettingsChange: (settings: {
596
+ model?: string | null;
597
+ reasoningEffort?: string | null;
598
+ speed?: string | null;
599
+ planMode?: boolean;
600
+ browserUse?: boolean;
601
+ computerUse?: boolean;
602
+ permissionModeId?: string | null;
603
+ }) => void;
604
+ capabilityMenuState?: AgentComposerCapabilityMenuState;
605
+ onCapabilitySettingsRequest?: (capability: AgentComposerCapabilitySettingsTarget) => void;
606
+ onSubmit: (content: AgentPromptContentBlock[], displayPrompt?: string) => void;
607
+ onSubmitGuidance?: (content: AgentPromptContentBlock[], displayPrompt?: string) => void;
608
+ onSendQueuedPromptNext: (queuedPromptId: string) => void;
609
+ onRemoveQueuedPrompt: (queuedPromptId: string) => void;
610
+ onEditQueuedPrompt: (queuedPromptId: string) => void;
611
+ onInterruptCurrentTurn: () => void;
612
+ onPromptImagesUnsupported?: () => void;
613
+ onSubmitInteractivePrompt: (input: {
614
+ requestId: string;
615
+ action?: string;
616
+ optionId?: string;
617
+ payload?: Record<string, unknown>;
618
+ }) => void;
619
+ onLinkAction?: (action: WorkspaceLinkAction) => void;
620
+ onRequestWorkspaceReferences?: ((entity?: AgentContextMentionItem | null) => Promise<WorkspaceReferencePickResult>) | null;
621
+ resolveDroppedFileReferences?: AgentDroppedFileReferenceResolver | null;
622
+ selectProjectDirectory?: () => Promise<{
623
+ path: string;
624
+ } | null>;
625
+ onRequestGitBranches?: AgentComposerGitBranchLoader | null;
626
+ contextMentionProviders?: readonly AgentContextMentionProvider[];
627
+ }
372
628
  type AgentComposerCapabilitySettingsTarget = AgentSlashCommandCapability["capability"];
373
629
  interface AgentComposerCapabilityMenuState {
374
630
  browserUse?: {
@@ -388,6 +644,33 @@ type AgentComposerGitBranchLoader = (input: {
388
644
  agentSessionId?: string | null;
389
645
  workingDirectory?: string | null;
390
646
  }) => Promise<AgentComposerGitBranches>;
647
+ interface AgentComposerPromptTip {
648
+ id: string;
649
+ label: string;
650
+ prompt: string;
651
+ }
652
+ interface AgentComposerSlashStatus {
653
+ agentSessionId?: string | null;
654
+ baseUrl?: string | null;
655
+ contextWindow?: {
656
+ usedTokens?: number | null;
657
+ totalTokens?: number | null;
658
+ } | null;
659
+ limits?: readonly AgentComposerSlashStatusLimit[];
660
+ limitsLoading?: boolean;
661
+ }
662
+ interface AgentComposerSlashStatusLimit {
663
+ id: string;
664
+ label: string;
665
+ percentRemaining?: number | null;
666
+ value: string;
667
+ reset?: string | null;
668
+ }
669
+ interface AgentComposerUsage {
670
+ percentUsed: number | null;
671
+ usedTokens: number | null;
672
+ totalTokens: number | null;
673
+ }
391
674
 
392
675
  /**
393
676
  * 把 @ 面板里的任务/应用 mention 解析为引用 picker 的定位目标(sourceId + 语义 params)。
@@ -411,7 +694,9 @@ interface AgentGUINodeProps {
411
694
  selectProjectDirectory?: () => Promise<{
412
695
  path: string;
413
696
  } | null>;
697
+ resolveDroppedFileReferences?: AgentComposerProps["resolveDroppedFileReferences"];
414
698
  referenceSourceAggregator?: ReferenceSourceAggregator | null;
699
+ resolveWorkspaceReferenceEntryIconUrl?: (entry: WorkspaceFileEntry) => Promise<string | null | undefined>;
415
700
  resolveMentionReferenceTarget?: AgentMentionReferenceTargetResolver | null;
416
701
  resolveWorkspaceReferenceInitialTarget?: AgentWorkspaceReferenceInitialTargetResolver | null;
417
702
  agentSettings: Pick<AgentSettings, "avoidGroupingEdits">;
@@ -455,8 +740,21 @@ interface AgentGUINodeProps {
455
740
  previewMode?: boolean;
456
741
  }
457
742
 
743
+ interface AgentQueuedPromptRuntimeProviderProps extends PropsWithChildren {
744
+ runtime?: AgentQueuedPromptRuntime | null;
745
+ }
746
+ declare function AgentQueuedPromptRuntimeProvider({ children, runtime }: AgentQueuedPromptRuntimeProviderProps): JSX.Element;
747
+ declare function useAgentQueuedPromptRuntime(): AgentQueuedPromptRuntime;
748
+ declare function useAgentQueuedPromptSessionSnapshot(input: {
749
+ agentSessionId: string | null;
750
+ workspaceId: string;
751
+ }): AgentQueuedPromptQueueSnapshot | null;
752
+ declare function resetAgentQueuedPromptRuntimeForTests(): void;
753
+ declare function setAgentQueuedPromptRuntimeForTests(runtime: AgentQueuedPromptRuntime | null): void;
754
+
458
755
  interface AgentGUIProps extends AgentGUINodeProps {
459
756
  agentActivityRuntime: AgentActivityRuntime;
757
+ agentQueuedPromptRuntime: AgentQueuedPromptRuntime;
460
758
  agentHostApi?: AgentHostInputApi | null;
461
759
  embedded?: boolean;
462
760
  i18n?: I18nRuntime<string> | null;
@@ -519,4 +817,4 @@ interface AgentActivityHostProviderProps extends PropsWithChildren {
519
817
  }
520
818
  declare function AgentActivityHostProvider({ agentActivityRuntime, agentHostApi, children }: AgentActivityHostProviderProps): JSX.Element;
521
819
 
522
- 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, AgentGUI, type AgentGUIProps, AgentGUIProvider, AgentGUIProviderTarget, AgentGUIProviderTargetRef, AgentGuiI18nLocale, AgentHostInputApi, AgentProbeSnapshot, agentGUIDefaultTargetProviders, agentGuiDockIconUrl, agentGuiDockIconUrls, agentHostSnapshotFromAgentActivitySnapshot, buildAgentActivitySnapshotProjection, createLocalAgentGUIProviderTarget, createLocalAgentGUIProviderTargets, getAgentActivityRuntime, getOptionalAgentActivityRuntime, localAgentGUIProviderTargetId, normalizeAgentGUIProviderTargets, projectCoreSessionStatus, resetAgentActivityRuntimeForTests, resolveAgentGUIExpandedWindowFrame, resolveAgentGUIProviderTarget, setAgentActivityRuntimeForTests, shouldAutoCollapseAgentGUIConversationRail, useAgentActivityRuntime, useAgentActivitySnapshot, useOptionalAgentActivityRuntime };
820
+ 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, AgentGUI, type AgentGUIProps, AgentGUIProvider, AgentGUIProviderTarget, AgentGUIProviderTargetRef, AgentGuiI18nLocale, AgentHostInputApi, AgentProbeSnapshot, AgentQueuedPromptQueueSnapshot, AgentQueuedPromptRuntime, AgentQueuedPromptRuntimeProvider, type AgentQueuedPromptRuntimeProviderProps, agentGUIDefaultTargetProviders, agentGuiDockIconUrl, agentGuiDockIconUrls, agentHostSnapshotFromAgentActivitySnapshot, buildAgentActivitySnapshotProjection, createLocalAgentGUIProviderTarget, createLocalAgentGUIProviderTargets, getAgentActivityRuntime, getOptionalAgentActivityRuntime, localAgentGUIProviderTargetId, normalizeAgentGUIProviderTargets, projectCoreSessionStatus, resetAgentActivityRuntimeForTests, resetAgentQueuedPromptRuntimeForTests, resolveAgentGUIExpandedWindowFrame, resolveAgentGUIProviderTarget, setAgentActivityRuntimeForTests, setAgentQueuedPromptRuntimeForTests, shouldAutoCollapseAgentGUIConversationRail, useAgentActivityRuntime, useAgentActivitySnapshot, useAgentQueuedPromptRuntime, useAgentQueuedPromptSessionSnapshot, useOptionalAgentActivityRuntime };