@agent-native/toolkit 0.228.0-nightly-20261111212500 → 0.228.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/agent-native.eject.json +2 -0
- package/dist/app/agentkit/react/approval-card.d.ts.map +1 -1
- package/dist/app/agentkit/react/approval-card.js +5 -3
- package/dist/app/agentkit/react/approval-card.js.map +1 -1
- package/dist/app/agentkit/react/code-block.d.ts +32 -0
- package/dist/app/agentkit/react/code-block.d.ts.map +1 -0
- package/dist/app/agentkit/react/code-block.js +125 -0
- package/dist/app/agentkit/react/code-block.js.map +1 -0
- package/dist/app/agentkit/react/components.d.ts +33 -14
- package/dist/app/agentkit/react/components.d.ts.map +1 -1
- package/dist/app/agentkit/react/components.js +843 -168
- package/dist/app/agentkit/react/components.js.map +1 -1
- package/dist/app/agentkit/react/context-usage.d.ts +45 -0
- package/dist/app/agentkit/react/context-usage.d.ts.map +1 -0
- package/dist/app/agentkit/react/context-usage.js +93 -0
- package/dist/app/agentkit/react/context-usage.js.map +1 -0
- package/dist/app/agentkit/react/context.d.ts +42 -3
- package/dist/app/agentkit/react/context.d.ts.map +1 -1
- package/dist/app/agentkit/react/context.js +46 -1
- package/dist/app/agentkit/react/context.js.map +1 -1
- package/dist/app/agentkit/react/disclosure-content.d.ts +12 -0
- package/dist/app/agentkit/react/disclosure-content.d.ts.map +1 -0
- package/dist/app/agentkit/react/disclosure-content.js +33 -0
- package/dist/app/agentkit/react/disclosure-content.js.map +1 -0
- package/dist/app/agentkit/react/duration.d.ts +6 -0
- package/dist/app/agentkit/react/duration.d.ts.map +1 -0
- package/dist/app/agentkit/react/duration.js +21 -0
- package/dist/app/agentkit/react/duration.js.map +1 -0
- package/dist/app/agentkit/react/file-change.d.ts +33 -0
- package/dist/app/agentkit/react/file-change.d.ts.map +1 -0
- package/dist/app/agentkit/react/file-change.js +83 -0
- package/dist/app/agentkit/react/file-change.js.map +1 -0
- package/dist/app/agentkit/react/file-diff.d.ts +17 -0
- package/dist/app/agentkit/react/file-diff.d.ts.map +1 -0
- package/dist/app/agentkit/react/file-diff.js +94 -0
- package/dist/app/agentkit/react/file-diff.js.map +1 -0
- package/dist/app/agentkit/react/index.d.ts +7 -0
- package/dist/app/agentkit/react/index.d.ts.map +1 -1
- package/dist/app/agentkit/react/index.js +7 -0
- package/dist/app/agentkit/react/index.js.map +1 -1
- package/dist/app/agentkit/react/question-card.d.ts +67 -0
- package/dist/app/agentkit/react/question-card.d.ts.map +1 -0
- package/dist/app/agentkit/react/question-card.js +198 -0
- package/dist/app/agentkit/react/question-card.js.map +1 -0
- package/dist/app/agentkit/react/root.d.ts +3 -2
- package/dist/app/agentkit/react/root.d.ts.map +1 -1
- package/dist/app/agentkit/react/root.js +2 -2
- package/dist/app/agentkit/react/root.js.map +1 -1
- package/dist/app/agentkit/react/roving-focus.d.ts +4 -0
- package/dist/app/agentkit/react/roving-focus.d.ts.map +1 -0
- package/dist/app/agentkit/react/roving-focus.js +75 -0
- package/dist/app/agentkit/react/roving-focus.js.map +1 -0
- package/dist/app/agentkit/react/stack-trace.d.ts +34 -0
- package/dist/app/agentkit/react/stack-trace.d.ts.map +1 -0
- package/dist/app/agentkit/react/stack-trace.js +121 -0
- package/dist/app/agentkit/react/stack-trace.js.map +1 -0
- package/dist/app/agentkit/react/stop-button.d.ts.map +1 -1
- package/dist/app/agentkit/react/stop-button.js +22 -6
- package/dist/app/agentkit/react/stop-button.js.map +1 -1
- package/dist/app/agentkit/react/styles.css +1306 -395
- package/dist/app/agentkit/react/terminal.d.ts +28 -0
- package/dist/app/agentkit/react/terminal.d.ts.map +1 -0
- package/dist/app/agentkit/react/terminal.js +84 -0
- package/dist/app/agentkit/react/terminal.js.map +1 -0
- package/dist/app/agentkit/react/trace.d.ts +31 -0
- package/dist/app/agentkit/react/trace.d.ts.map +1 -0
- package/dist/app/agentkit/react/trace.js +73 -0
- package/dist/app/agentkit/react/trace.js.map +1 -0
- package/dist/app/blocks/library/HighlightedCode.d.ts +2 -1
- package/dist/app/blocks/library/HighlightedCode.d.ts.map +1 -1
- package/dist/app/blocks/library/HighlightedCode.js +8 -111
- package/dist/app/blocks/library/HighlightedCode.js.map +1 -1
- package/dist/app/chat/AgentKitAssistantChat.d.ts.map +1 -1
- package/dist/app/chat/AgentKitAssistantChat.js +23 -245
- package/dist/app/chat/AgentKitAssistantChat.js.map +1 -1
- package/dist/app/chat/agentkit-chat/guided-questions.d.ts +15 -1
- package/dist/app/chat/agentkit-chat/guided-questions.d.ts.map +1 -1
- package/dist/app/chat/agentkit-chat/guided-questions.js +142 -2
- package/dist/app/chat/agentkit-chat/guided-questions.js.map +1 -1
- package/dist/app/chat/agentkit-chat/history.js +1 -1
- package/dist/app/chat/agentkit-chat/history.js.map +1 -1
- package/dist/app/chat/agentkit-chat/index.d.ts +1 -1
- package/dist/app/chat/agentkit-chat/index.d.ts.map +1 -1
- package/dist/app/chat/agentkit-chat/index.js +1 -1
- package/dist/app/chat/agentkit-chat/index.js.map +1 -1
- package/dist/app/chat/agentkit-chat/labels.d.ts +5 -0
- package/dist/app/chat/agentkit-chat/labels.d.ts.map +1 -0
- package/dist/app/chat/agentkit-chat/labels.js +245 -0
- package/dist/app/chat/agentkit-chat/labels.js.map +1 -0
- package/dist/app/chat/agentkit-chat/questions.d.ts +1 -1
- package/dist/app/chat/agentkit-chat/questions.d.ts.map +1 -1
- package/dist/app/chat/agentkit-chat/questions.js +1 -1
- package/dist/app/chat/agentkit-chat/questions.js.map +1 -1
- package/dist/app/chat/agentkit-chat/root.d.ts.map +1 -1
- package/dist/app/chat/agentkit-chat/root.js +5 -64
- package/dist/app/chat/agentkit-chat/root.js.map +1 -1
- package/dist/app/chat/agentkit-chat/work-step-labels.d.ts +2 -0
- package/dist/app/chat/agentkit-chat/work-step-labels.d.ts.map +1 -1
- package/dist/app/chat/agentkit-chat/work-step-labels.js +31 -0
- package/dist/app/chat/agentkit-chat/work-step-labels.js.map +1 -1
- package/dist/app/chat/chat/markdown-renderer.d.ts +2 -12
- package/dist/app/chat/chat/markdown-renderer.d.ts.map +1 -1
- package/dist/app/chat/chat/markdown-renderer.js +2 -41
- package/dist/app/chat/chat/markdown-renderer.js.map +1 -1
- package/dist/app/chat/chat/tool-call-display.d.ts.map +1 -1
- package/dist/app/chat/chat/tool-call-display.js +2 -2
- package/dist/app/chat/chat/tool-call-display.js.map +1 -1
- package/dist/app/chat/conversation/AgentConversation.d.ts.map +1 -1
- package/dist/app/chat/conversation/AgentConversation.js +2 -37
- package/dist/app/chat/conversation/AgentConversation.js.map +1 -1
- package/dist/app/chat/tool-cells/BashCell.d.ts +3 -1
- package/dist/app/chat/tool-cells/BashCell.d.ts.map +1 -1
- package/dist/app/chat/tool-cells/BashCell.js +4 -40
- package/dist/app/chat/tool-cells/BashCell.js.map +1 -1
- package/dist/app/chat/tool-cells/EditCell.d.ts.map +1 -1
- package/dist/app/chat/tool-cells/EditCell.js +5 -108
- package/dist/app/chat/tool-cells/EditCell.js.map +1 -1
- package/dist/app/chat/tool-cells/FilesChangedSummary.d.ts.map +1 -1
- package/dist/app/chat/tool-cells/FilesChangedSummary.js +23 -81
- package/dist/app/chat/tool-cells/FilesChangedSummary.js.map +1 -1
- package/dist/app/chat/tool-cells/WriteCell.d.ts.map +1 -1
- package/dist/app/chat/tool-cells/WriteCell.js +5 -24
- package/dist/app/chat/tool-cells/WriteCell.js.map +1 -1
- package/dist/app/code-highlighter.d.ts +11 -0
- package/dist/app/code-highlighter.d.ts.map +1 -0
- package/dist/app/code-highlighter.js +122 -0
- package/dist/app/code-highlighter.js.map +1 -0
- package/dist/app/context-xray/ThreadContextRing.js +3 -3
- package/dist/app/context-xray/ThreadContextRing.js.map +1 -1
- package/dist/app/i18n/catalogs/ar-SA.d.ts.map +1 -1
- package/dist/app/i18n/catalogs/ar-SA.js +22 -0
- package/dist/app/i18n/catalogs/ar-SA.js.map +1 -1
- package/dist/app/i18n/catalogs/de-DE.d.ts.map +1 -1
- package/dist/app/i18n/catalogs/de-DE.js +22 -0
- package/dist/app/i18n/catalogs/de-DE.js.map +1 -1
- package/dist/app/i18n/catalogs/en-US.d.ts +22 -0
- package/dist/app/i18n/catalogs/en-US.d.ts.map +1 -1
- package/dist/app/i18n/catalogs/en-US.js +22 -0
- package/dist/app/i18n/catalogs/en-US.js.map +1 -1
- package/dist/app/i18n/catalogs/es-ES.d.ts.map +1 -1
- package/dist/app/i18n/catalogs/es-ES.js +22 -0
- package/dist/app/i18n/catalogs/es-ES.js.map +1 -1
- package/dist/app/i18n/catalogs/fr-FR.d.ts.map +1 -1
- package/dist/app/i18n/catalogs/fr-FR.js +22 -0
- package/dist/app/i18n/catalogs/fr-FR.js.map +1 -1
- package/dist/app/i18n/catalogs/hi-IN.d.ts.map +1 -1
- package/dist/app/i18n/catalogs/hi-IN.js +22 -0
- package/dist/app/i18n/catalogs/hi-IN.js.map +1 -1
- package/dist/app/i18n/catalogs/ja-JP.d.ts.map +1 -1
- package/dist/app/i18n/catalogs/ja-JP.js +22 -0
- package/dist/app/i18n/catalogs/ja-JP.js.map +1 -1
- package/dist/app/i18n/catalogs/ko-KR.d.ts.map +1 -1
- package/dist/app/i18n/catalogs/ko-KR.js +22 -0
- package/dist/app/i18n/catalogs/ko-KR.js.map +1 -1
- package/dist/app/i18n/catalogs/pt-BR.d.ts.map +1 -1
- package/dist/app/i18n/catalogs/pt-BR.js +22 -0
- package/dist/app/i18n/catalogs/pt-BR.js.map +1 -1
- package/dist/app/i18n/catalogs/zh-CN.d.ts.map +1 -1
- package/dist/app/i18n/catalogs/zh-CN.js +22 -0
- package/dist/app/i18n/catalogs/zh-CN.js.map +1 -1
- package/dist/app/i18n/catalogs/zh-TW.d.ts.map +1 -1
- package/dist/app/i18n/catalogs/zh-TW.js +22 -0
- package/dist/app/i18n/catalogs/zh-TW.js.map +1 -1
- package/dist/app/onboarding/first-run-first-paint.d.ts +10 -0
- package/dist/app/onboarding/first-run-first-paint.d.ts.map +1 -0
- package/dist/app/onboarding/first-run-first-paint.js +22 -0
- package/dist/app/onboarding/first-run-first-paint.js.map +1 -0
- package/dist/app/onboarding/first-run-startup-gate.d.ts +3 -1
- package/dist/app/onboarding/first-run-startup-gate.d.ts.map +1 -1
- package/dist/app/onboarding/first-run-startup-gate.js +30 -6
- package/dist/app/onboarding/first-run-startup-gate.js.map +1 -1
- package/dist/app/providers/AppProviders.d.ts.map +1 -1
- package/dist/app/providers/AppProviders.js +9 -2
- package/dist/app/providers/AppProviders.js.map +1 -1
- package/dist/app/providers/BuilderSignupActivation.d.ts +2 -1
- package/dist/app/providers/BuilderSignupActivation.d.ts.map +1 -1
- package/dist/app/providers/BuilderSignupActivation.js +6 -3
- package/dist/app/providers/BuilderSignupActivation.js.map +1 -1
- package/dist/app/shared/AppShellSkeleton.d.ts.map +1 -1
- package/dist/app/shared/AppShellSkeleton.js +11 -1
- package/dist/app/shared/AppShellSkeleton.js.map +1 -1
- package/dist/app/styles/agent-native.css +2 -2
- package/dist/app/styles/tokens/agent-kit.css +20 -3
- package/dist/composer/AgentSuggestionBar.d.ts.map +1 -1
- package/dist/composer/AgentSuggestionBar.js +2 -2
- package/dist/composer/AgentSuggestionBar.js.map +1 -1
- package/dist/composer/ComposerContextMenu.js +4 -4
- package/dist/composer/ComposerContextMenu.js.map +1 -1
- package/dist/composer/ComposerContextPicker.d.ts.map +1 -1
- package/dist/composer/ComposerContextPicker.js +2 -2
- package/dist/composer/ComposerContextPicker.js.map +1 -1
- package/dist/composer/ComposerContextPickerDialog.d.ts.map +1 -1
- package/dist/composer/ComposerContextPickerDialog.js +2 -2
- package/dist/composer/ComposerContextPickerDialog.js.map +1 -1
- package/dist/composer/ComposerModePicker.d.ts.map +1 -1
- package/dist/composer/ComposerModePicker.js +2 -1
- package/dist/composer/ComposerModePicker.js.map +1 -1
- package/dist/composer/ComposerPlusMenu.js +1 -1
- package/dist/composer/ComposerPlusMenu.js.map +1 -1
- package/dist/composer/MentionChip.js +1 -1
- package/dist/composer/MentionChip.js.map +1 -1
- package/dist/composer/MentionPopover.d.ts +3 -0
- package/dist/composer/MentionPopover.d.ts.map +1 -1
- package/dist/composer/MentionPopover.js +34 -15
- package/dist/composer/MentionPopover.js.map +1 -1
- package/dist/composer/MessageQueueDrawer.d.ts.map +1 -1
- package/dist/composer/MessageQueueDrawer.js +14 -9
- package/dist/composer/MessageQueueDrawer.js.map +1 -1
- package/dist/composer/PastedTextChip.d.ts.map +1 -1
- package/dist/composer/PastedTextChip.js +14 -18
- package/dist/composer/PastedTextChip.js.map +1 -1
- package/dist/composer/PromptBar.js +1 -1
- package/dist/composer/PromptBar.js.map +1 -1
- package/dist/composer/PromptComposer.d.ts.map +1 -1
- package/dist/composer/PromptComposer.js +11 -9
- package/dist/composer/PromptComposer.js.map +1 -1
- package/dist/composer/RealtimeVoiceMode.js +2 -2
- package/dist/composer/RealtimeVoiceMode.js.map +1 -1
- package/dist/composer/TiptapComposer.d.ts.map +1 -1
- package/dist/composer/TiptapComposer.js +52 -89
- package/dist/composer/TiptapComposer.js.map +1 -1
- package/dist/composer/VoiceButton.d.ts +3 -1
- package/dist/composer/VoiceButton.d.ts.map +1 -1
- package/dist/composer/VoiceButton.js +10 -8
- package/dist/composer/VoiceButton.js.map +1 -1
- package/dist/composer/composer-notice.js +3 -3
- package/dist/composer/composer-notice.js.map +1 -1
- package/dist/composer/extensions/FileReference.js +1 -1
- package/dist/composer/extensions/FileReference.js.map +1 -1
- package/dist/composer/extensions/SkillReference.js +1 -1
- package/dist/composer/extensions/SkillReference.js.map +1 -1
- package/dist/composer/popover-surface.d.ts +1 -1
- package/dist/composer/popover-surface.d.ts.map +1 -1
- package/dist/composer/popover-surface.js +1 -1
- package/dist/composer/popover-surface.js.map +1 -1
- package/dist/context-ui/ContextUsageRing.d.ts +1 -45
- package/dist/context-ui/ContextUsageRing.d.ts.map +1 -1
- package/dist/context-ui/ContextUsageRing.js +2 -87
- package/dist/context-ui/ContextUsageRing.js.map +1 -1
- package/dist/context-ui/index.d.ts +2 -2
- package/dist/context-ui/index.d.ts.map +1 -1
- package/dist/context-ui/index.js +2 -2
- package/dist/context-ui/index.js.map +1 -1
- package/package.json +4 -4
- package/src/app/agentkit/react/approval-card.tsx +14 -2
- package/src/app/agentkit/react/code-block.spec.tsx +154 -0
- package/src/app/agentkit/react/code-block.tsx +317 -0
- package/src/app/agentkit/react/components.interaction.spec.tsx +7 -0
- package/src/app/agentkit/react/components.papercuts.spec.tsx +143 -2
- package/src/app/agentkit/react/components.spec.tsx +40 -47
- package/src/app/agentkit/react/components.tsx +1533 -413
- package/src/app/agentkit/react/composer-context.spec.tsx +35 -0
- package/src/app/agentkit/react/context-usage.tsx +353 -0
- package/src/app/agentkit/react/context.tsx +93 -1
- package/src/app/agentkit/react/disclosure-content.ts +42 -0
- package/src/app/agentkit/react/disclosures.spec.tsx +62 -4
- package/src/app/agentkit/react/duration.ts +22 -0
- package/src/app/agentkit/react/file-change.spec.tsx +124 -0
- package/src/app/agentkit/react/file-change.tsx +228 -0
- package/src/app/agentkit/react/file-diff.ts +110 -0
- package/src/app/agentkit/react/index.ts +7 -0
- package/src/app/agentkit/react/lifecycle.spec.tsx +565 -20
- package/src/app/agentkit/react/markdown.spec.tsx +18 -8
- package/src/app/agentkit/react/message-actions.spec.tsx +55 -1
- package/src/app/agentkit/react/notices.spec.tsx +4 -4
- package/src/app/agentkit/react/optimistic-send.spec.tsx +43 -0
- package/src/app/agentkit/react/question-card.spec.tsx +276 -0
- package/src/app/agentkit/react/question-card.tsx +533 -0
- package/src/app/agentkit/react/root.tsx +4 -0
- package/src/app/agentkit/react/roving-focus.spec.tsx +114 -0
- package/src/app/agentkit/react/roving-focus.ts +82 -0
- package/src/app/agentkit/react/stack-trace.spec.tsx +177 -0
- package/src/app/agentkit/react/stack-trace.tsx +281 -0
- package/src/app/agentkit/react/stop-button.spec.tsx +40 -0
- package/src/app/agentkit/react/stop-button.tsx +22 -5
- package/src/app/agentkit/react/styles.css +1306 -395
- package/src/app/agentkit/react/subagent-step.spec.tsx +554 -0
- package/src/app/agentkit/react/terminal.spec.tsx +228 -0
- package/src/app/agentkit/react/terminal.tsx +228 -0
- package/src/app/agentkit/react/trace.spec.tsx +120 -0
- package/src/app/agentkit/react/trace.tsx +239 -0
- package/src/app/blocks/library/HighlightedCode.tsx +14 -126
- package/src/app/chat/AgentKitAssistantChat.spec.tsx +28 -12
- package/src/app/chat/AgentKitAssistantChat.tsx +27 -253
- package/src/app/chat/agentkit-chat/approval-card.spec.tsx +1 -0
- package/src/app/chat/agentkit-chat/guided-questions.flow.spec.tsx +381 -0
- package/src/app/chat/agentkit-chat/guided-questions.tsx +236 -3
- package/src/app/chat/agentkit-chat/history.tsx +1 -1
- package/src/app/chat/agentkit-chat/index.ts +2 -0
- package/src/app/chat/agentkit-chat/labels.ts +259 -0
- package/src/app/chat/agentkit-chat/questions.ts +2 -0
- package/src/app/chat/agentkit-chat/root.spec.tsx +18 -0
- package/src/app/chat/agentkit-chat/root.tsx +5 -64
- package/src/app/chat/agentkit-chat/work-step-labels.ts +42 -0
- package/src/app/chat/chat/markdown-renderer.tsx +2 -59
- package/src/app/chat/chat/tool-call-display.spec.tsx +26 -14
- package/src/app/chat/chat/tool-call-display.tsx +2 -1
- package/src/app/chat/conversation/AgentConversation.tsx +2 -50
- package/src/app/chat/tool-cells/BashCell.tsx +14 -136
- package/src/app/chat/tool-cells/EditCell.tsx +11 -248
- package/src/app/chat/tool-cells/FilesChangedSummary.spec.tsx +62 -5
- package/src/app/chat/tool-cells/FilesChangedSummary.tsx +31 -162
- package/src/app/chat/tool-cells/WriteCell.tsx +11 -121
- package/src/app/code-highlighter.ts +131 -0
- package/src/app/context-xray/ThreadContextRing.tsx +7 -7
- package/src/app/i18n/catalogs/ar-SA.ts +22 -0
- package/src/app/i18n/catalogs/de-DE.ts +22 -0
- package/src/app/i18n/catalogs/en-US.ts +22 -0
- package/src/app/i18n/catalogs/es-ES.ts +22 -0
- package/src/app/i18n/catalogs/fr-FR.ts +22 -0
- package/src/app/i18n/catalogs/hi-IN.ts +22 -0
- package/src/app/i18n/catalogs/ja-JP.ts +22 -0
- package/src/app/i18n/catalogs/ko-KR.ts +22 -0
- package/src/app/i18n/catalogs/pt-BR.ts +22 -0
- package/src/app/i18n/catalogs/zh-CN.ts +22 -0
- package/src/app/i18n/catalogs/zh-TW.ts +22 -0
- package/src/app/onboarding/first-run-first-paint.spec.ts +39 -0
- package/src/app/onboarding/first-run-first-paint.ts +24 -0
- package/src/app/onboarding/first-run-startup-gate.spec.tsx +125 -13
- package/src/app/onboarding/first-run-startup-gate.tsx +48 -5
- package/src/app/providers/AppProviders.tsx +18 -0
- package/src/app/providers/BuilderSignupActivation.tsx +8 -2
- package/src/app/shared/AppShellSkeleton.spec.tsx +60 -1
- package/src/app/shared/AppShellSkeleton.tsx +31 -1
- package/src/app/styles/agent-native.css +2 -2
- package/src/app/styles/agent-native.spec.ts +2 -2
- package/src/app/styles/tokens/agent-kit.css +20 -3
- package/src/composer/AgentSuggestionBar.spec.tsx +3 -1
- package/src/composer/AgentSuggestionBar.tsx +5 -2
- package/src/composer/ComposerContextMenu.tsx +4 -4
- package/src/composer/ComposerContextPicker.tsx +8 -2
- package/src/composer/ComposerContextPickerDialog.tsx +5 -2
- package/src/composer/ComposerModePicker.tsx +2 -1
- package/src/composer/ComposerPlusMenu.tsx +1 -1
- package/src/composer/MentionChip.tsx +1 -1
- package/src/composer/MentionPopover.spec.tsx +108 -2
- package/src/composer/MentionPopover.tsx +93 -17
- package/src/composer/MessageQueueDrawer.spec.tsx +5 -5
- package/src/composer/MessageQueueDrawer.tsx +19 -12
- package/src/composer/PastedTextChip.spec.tsx +36 -0
- package/src/composer/PastedTextChip.tsx +52 -58
- package/src/composer/PromptBar.tsx +1 -1
- package/src/composer/PromptComposer.context.spec.tsx +2 -2
- package/src/composer/PromptComposer.submission.spec.tsx +27 -0
- package/src/composer/PromptComposer.tsx +17 -9
- package/src/composer/RealtimeVoiceMode.tsx +2 -2
- package/src/composer/TiptapComposer.model-picker.spec.tsx +23 -82
- package/src/composer/TiptapComposer.tsx +68 -145
- package/src/composer/VoiceButton.tsx +12 -7
- package/src/composer/composer-notice.tsx +3 -3
- package/src/composer/extensions/FileReference.tsx +1 -1
- package/src/composer/extensions/SkillReference.tsx +1 -1
- package/src/composer/popover-surface.ts +1 -1
- package/src/context-ui/ContextUsageRing.spec.tsx +33 -8
- package/src/context-ui/ContextUsageRing.tsx +13 -348
- package/src/context-ui/index.ts +7 -1
- package/dist/composer/ModelPickerParts.d.ts +0 -20
- package/dist/composer/ModelPickerParts.d.ts.map +0 -1
- package/dist/composer/ModelPickerParts.js +0 -77
- package/dist/composer/ModelPickerParts.js.map +0 -1
- package/src/composer/ModelPickerParts.tsx +0 -188
|
@@ -37,7 +37,7 @@ import React, { createContext, forwardRef, useCallback, useEffect, useImperative
|
|
|
37
37
|
import { toast } from "sonner";
|
|
38
38
|
import { ComposerNotice, ComposerNoticeScope, } from "../../composer/composer-notice.js";
|
|
39
39
|
import { approvalRequestKind } from "../agentkit/react/approval-card.js";
|
|
40
|
-
import { AgentKitChat, AgentKitComposer, AgentKitEmptyState, AgentKitTranscriptSkeleton, AgentApprovalPrompt,
|
|
40
|
+
import { AgentKitChat, AgentKitComposer, AgentKitEmptyState, AgentKitTranscriptSkeleton, AgentApprovalPrompt, AgentMessageView, useAgentKit, useAgentKitBeginPendingSubmission, useAgentKitControl, useAgentKitInWorkStep, useAgentKitPendingSubmissions, useAgentKitStopButton, useAgentKitSubmissionHoldsTurn, useAgentThread, useAgentThreadSelector, } from "../agentkit/react/index.js";
|
|
41
41
|
import { AGENTKIT_CLIENT_REQUEST_ID_METADATA_KEY, agentKitTurnInProgress, pendingSubmissionFiles, } from "../agentkit/react/pending-submissions.js";
|
|
42
42
|
import { isStreamingVoiceMessage } from "../agentkit/react/voice-transcripts.js";
|
|
43
43
|
import { ThreadContextRing } from "../context-xray/ThreadContextRing.js";
|
|
@@ -45,10 +45,10 @@ import { threadHasFinishedReply } from "../context-xray/use-thread-context-usage
|
|
|
45
45
|
import { ThumbsFeedback } from "../observability/ThumbsFeedback.js";
|
|
46
46
|
import { useFirstRunOnboardingGateOwnsSurface } from "../onboarding/first-run-startup-gate.js";
|
|
47
47
|
import { AgentKitDevCheckpointProvider, AgentKitDevCheckpointRestore, useOptionalAgentKitHistory, } from "./agentkit-chat/history.js";
|
|
48
|
-
import { CoreComposerRuntimeProvider, createAgentNativeAgentKitTransport, GuidedQuestionProviderGate, findMcpConnectionSuggestionIntegration,
|
|
48
|
+
import { CoreComposerRuntimeProvider, createAgentNativeAgentKitTransport, GuidedQuestionProviderGate, findMcpConnectionSuggestionIntegration, GuidedQuestionCard, McpAgentKitConnectionRequestCard, McpAgentKitConnectionResume, McpConnectionSuggestion, AgentKitHistoryBeginningRevert, AgentKitHistoryMessageSupplement, AgentKitHistoryProvider, useGuidedQuestionFlow, useRefetchGuidedQuestionsWhenAsked, } from "./agentkit-chat/index.js";
|
|
49
|
+
import { agentKitChatLabels } from "./agentkit-chat/labels.js";
|
|
49
50
|
import { AgentKitFilesChangedSummary, AgentKitMarkdownText, } from "./agentkit-chat/parity-renderers.js";
|
|
50
51
|
import { CoreAgentKitRoot } from "./agentkit-chat/root.js";
|
|
51
|
-
import { agentKitWorkStepLabels } from "./agentkit-chat/work-step-labels.js";
|
|
52
52
|
import { AgentApprovalCard } from "./chat/agent-approval-card.js";
|
|
53
53
|
import { renderMarkdownToClipboardHtml } from "./chat/markdown-renderer.js";
|
|
54
54
|
import { RunErrorRecoveryCard, BuilderSetupCard, LoopLimitContinueCard, IMPLEMENT_PLAN_PROMPT, PlanModeCallout, getReplyRequestMode, isMissingLlmProviderRunError, } from "./chat/run-recovery.js";
|
|
@@ -927,9 +927,6 @@ const agentKitRegistry = {
|
|
|
927
927
|
"connect-builder": AgentKitTool,
|
|
928
928
|
"connect-file-storage": AgentKitTool,
|
|
929
929
|
},
|
|
930
|
-
agentInteractions: {
|
|
931
|
-
failed: AgentKitFailedInteraction,
|
|
932
|
-
},
|
|
933
930
|
};
|
|
934
931
|
export const AgentKitAssistantChat = forwardRef(function AgentKitAssistantChat(props, ref) {
|
|
935
932
|
if (props.createAdapter !== undefined) {
|
|
@@ -937,6 +934,7 @@ export const AgentKitAssistantChat = forwardRef(function AgentKitAssistantChat(p
|
|
|
937
934
|
}
|
|
938
935
|
const t = useT();
|
|
939
936
|
const translatorRef = useRef(t);
|
|
937
|
+
const formatAgentInteractionDetail = useAgentInteractionDetail();
|
|
940
938
|
translatorRef.current = t;
|
|
941
939
|
const { formatDate } = useFormatters();
|
|
942
940
|
const threadId = props.threadId ?? props.tabId;
|
|
@@ -1021,233 +1019,8 @@ export const AgentKitAssistantChat = forwardRef(function AgentKitAssistantChat(p
|
|
|
1021
1019
|
return () => window.clearTimeout(timer);
|
|
1022
1020
|
}, [restoreRetryLoadPhase, restoreRetryThreadId, threadId]);
|
|
1023
1021
|
const labels = useMemo(() => ({
|
|
1024
|
-
|
|
1025
|
-
assistant: t("agentChat.common.agent"),
|
|
1026
|
-
you: t("agentChat.common.you"),
|
|
1027
|
-
approvalApprove: t("agentChat.approval.approve"),
|
|
1028
|
-
approvalDeny: t("agentChat.approval.deny"),
|
|
1029
|
-
approvalSubmit: t("agentChat.approval.submit"),
|
|
1030
|
-
approvalOther: t("agentChat.approval.other"),
|
|
1031
|
-
approvalOtherPlaceholder: t("agentChat.approval.otherPlaceholder"),
|
|
1032
|
-
approvalPending: t("agentChat.approval.pending"),
|
|
1033
|
-
approvalAnswerPending: t("agentChat.approval.answerPending"),
|
|
1034
|
-
connectionConnect: t("agentChat.common.connect"),
|
|
1035
|
-
connectionConnecting: t("agentChat.connection.connecting"),
|
|
1036
|
-
connectionRetry: t("agentChat.common.retry"),
|
|
1037
|
-
connectionConnected: t("agentChat.integrations.connectedSection"),
|
|
1038
|
-
connectionNotNow: t("agentChat.connection.notNow"),
|
|
1039
|
-
connectionFailed: t("agentChat.connection.failed"),
|
|
1040
|
-
connectionAdminRequired: t("agentChat.connection.adminRequired"),
|
|
1041
|
-
activities: t("agentChat.activity.groupLabel"),
|
|
1042
|
-
activityBuckets: {
|
|
1043
|
-
thinking: t("agentChat.activity.bucketThinking"),
|
|
1044
|
-
research: t("agentChat.activity.bucketResearch"),
|
|
1045
|
-
actions: t("agentChat.activity.bucketActions"),
|
|
1046
|
-
other: t("agentChat.activity.bucketOther"),
|
|
1047
|
-
},
|
|
1048
|
-
agents: t("agentChat.activity.agents"),
|
|
1049
|
-
tasks: t("agentChat.activity.tasks"),
|
|
1050
|
-
toolInput: t("agentChat.tool.input"),
|
|
1051
|
-
toolResult: t("agentChat.tool.result"),
|
|
1052
|
-
activityValueIdentifierHidden: t("agentChat.tool.identifierHidden"),
|
|
1053
|
-
activityValueOmitted: t("agentChat.tool.contentOmitted"),
|
|
1054
|
-
activityValueCircular: t("agentChat.tool.circularReference"),
|
|
1055
|
-
working: t("agentChat.status.working"),
|
|
1056
|
-
workingFor: t("agentChat.status.workingFor", {
|
|
1057
|
-
duration: "{{duration}}",
|
|
1058
|
-
}),
|
|
1059
|
-
worked: t("agentChat.tool.worked"),
|
|
1060
|
-
workedFor: t("agentChat.tool.workedFor", { duration: "{{duration}}" }),
|
|
1061
|
-
showMoreActivities: t("agentChat.activity.showMore", {
|
|
1062
|
-
count: "{{count}}",
|
|
1063
|
-
}),
|
|
1064
|
-
...agentKitWorkStepLabels(t),
|
|
1065
|
-
durationHourShort: t("agentChat.duration.hourShort"),
|
|
1066
|
-
durationMinuteShort: t("agentChat.duration.minuteShort"),
|
|
1067
|
-
durationSecondShort: t("agentChat.duration.secondShort"),
|
|
1068
|
-
composerLabel: t("agentChat.composer.messageAgent"),
|
|
1022
|
+
...agentKitChatLabels(t, formatDate),
|
|
1069
1023
|
composerPlaceholder: props.composerPlaceholder || t("agentChat.composer.newChatPlaceholder"),
|
|
1070
|
-
composerReplyPlaceholder: t("agentChat.composer.replyPlaceholder"),
|
|
1071
|
-
emptyStateText: t("agentChat.empty.prompt"),
|
|
1072
|
-
queue: t("agentChat.queue.label"),
|
|
1073
|
-
queueSendNow: t("agentChat.queue.sendNow"),
|
|
1074
|
-
queueSendNowHint: t("agentChat.queue.sendNowHint"),
|
|
1075
|
-
queueSendNext: t("agentChat.queue.sendNext"),
|
|
1076
|
-
queueSendNextHint: t("agentChat.queue.sendNextHint"),
|
|
1077
|
-
queueItemBusy: t("agentChat.queue.itemBusy"),
|
|
1078
|
-
queueItemBlocked: t("agentChat.queue.itemBlocked"),
|
|
1079
|
-
queueOrderStale: t("agentChat.queue.orderStale"),
|
|
1080
|
-
queueRemove: t("agentChat.queue.remove"),
|
|
1081
|
-
queueMore: t("agentChat.queue.moreActions"),
|
|
1082
|
-
suggestions: t("agentChat.composer.suggestedPrompts"),
|
|
1083
|
-
copy: t("agentChat.message.copyMessage"),
|
|
1084
|
-
copied: t("agentChat.common.copied"),
|
|
1085
|
-
messageActions: t("agentChat.message.actions"),
|
|
1086
|
-
copyRequestId: t("agentChat.message.copyRequestId"),
|
|
1087
|
-
usage: t("agentChat.message.usage"),
|
|
1088
|
-
usageLoading: t("agentChat.message.usageLoading"),
|
|
1089
|
-
usageUnavailable: t("agentChat.message.usageUnavailable"),
|
|
1090
|
-
usageNotRecorded: t("agentChat.message.usageNotRecorded"),
|
|
1091
|
-
usageIncomplete: t("agentChat.message.usageIncomplete"),
|
|
1092
|
-
usageReportedCost: t("agentChat.message.usageReportedCost", {
|
|
1093
|
-
amount: "{{amount}}",
|
|
1094
|
-
}),
|
|
1095
|
-
usageEstimatedCost: t("agentChat.message.usageEstimatedCost", {
|
|
1096
|
-
amount: "{{amount}}",
|
|
1097
|
-
}),
|
|
1098
|
-
usageMixedCost: t("agentChat.message.usageMixedCost", {
|
|
1099
|
-
amount: "{{amount}}",
|
|
1100
|
-
}),
|
|
1101
|
-
usageBuilderCredits: t("agentChat.message.usageBuilderCredits", {
|
|
1102
|
-
amount: "{{amount}}",
|
|
1103
|
-
}),
|
|
1104
|
-
usageEstimatedBuilderCredits: t("agentChat.message.usageEstimatedBuilderCredits", { amount: "{{amount}}" }),
|
|
1105
|
-
usageMixedBuilderCredits: t("agentChat.message.usageMixedBuilderCredits", { amount: "{{amount}}" }),
|
|
1106
|
-
requestIdUnavailable: t("agentChat.message.requestIdUnavailable"),
|
|
1107
|
-
runDetails: t("agentChat.message.runDetails"),
|
|
1108
|
-
runCreditsUsed: t("agentChat.message.creditsUsed"),
|
|
1109
|
-
runCost: t("agentChat.message.cost"),
|
|
1110
|
-
runToolCalls: t("agentChat.message.toolCalls"),
|
|
1111
|
-
runModel: t("agentChat.message.modelUsed"),
|
|
1112
|
-
runDetailUnavailable: t("agentChat.message.detailUnavailable"),
|
|
1113
|
-
runDetailNotRecorded: t("agentChat.message.notRecorded"),
|
|
1114
|
-
runDetailIncomplete: t("agentChat.message.incomplete"),
|
|
1115
|
-
runDetailEstimated: t("agentChat.message.estimatedAmount", {
|
|
1116
|
-
amount: "{{amount}}",
|
|
1117
|
-
}),
|
|
1118
|
-
runDetailMixed: t("agentChat.message.mixedAmount", {
|
|
1119
|
-
amount: "{{amount}}",
|
|
1120
|
-
}),
|
|
1121
|
-
suggestedActions: t("agentChat.composer.suggestedActions"),
|
|
1122
|
-
messageUnavailable: t("agentChat.message.unavailable"),
|
|
1123
|
-
navigationUnavailable: t("agentChat.message.navigationUnavailable"),
|
|
1124
|
-
copyUnavailable: t("agentChat.recovery.copyFailed"),
|
|
1125
|
-
positiveFeedback: t("agentChat.feedback.thumbsUp"),
|
|
1126
|
-
negativeFeedback: t("agentChat.feedback.notHelpful"),
|
|
1127
|
-
feedbackSubmitted: t("agentChat.feedback.submitted"),
|
|
1128
|
-
feedbackWhatWentWrong: t("agentChat.feedback.whatWentWrong"),
|
|
1129
|
-
feedbackPlaceholder: t("agentChat.feedback.placeholder"),
|
|
1130
|
-
feedbackKeyboardHint: t("agentChat.feedback.keyboardHint", {
|
|
1131
|
-
shortcut: "{{shortcut}}",
|
|
1132
|
-
}),
|
|
1133
|
-
feedbackSubmit: t("agentChat.feedback.submit"),
|
|
1134
|
-
feedbackReasonMisread: t("agentChat.feedback.reasonMisread"),
|
|
1135
|
-
feedbackReasonNotDone: t("agentChat.feedback.reasonNotDone"),
|
|
1136
|
-
feedbackReasonWrongNumbers: t("agentChat.feedback.reasonWrongNumbers"),
|
|
1137
|
-
feedbackReasonTooSlow: t("agentChat.feedback.tooSlow"),
|
|
1138
|
-
feedbackCopyDetails: t("agentChat.feedback.copyDetails"),
|
|
1139
|
-
feedback: t("agentChat.feedback.label"),
|
|
1140
|
-
feedbackGood: t("agentChat.feedback.goodResponse"),
|
|
1141
|
-
feedbackBad: t("agentChat.feedback.badResponse"),
|
|
1142
|
-
rateResponse: t("agentChat.feedback.rate"),
|
|
1143
|
-
forkFromHere: t("agentChat.message.forkFromHere"),
|
|
1144
|
-
feedbackNote: t("agentChat.feedback.note"),
|
|
1145
|
-
moreMessageActions: t("agentChat.message.moreActions"),
|
|
1146
|
-
fewerMessageActions: t("agentChat.message.fewerActions"),
|
|
1147
|
-
fork: t("agentChat.message.forkChat"),
|
|
1148
|
-
previousBranch: t("agentChat.message.previousBranch"),
|
|
1149
|
-
nextBranch: t("agentChat.message.nextBranch"),
|
|
1150
|
-
branchPosition: "{{index}}/{{count}}",
|
|
1151
|
-
error: t("agentChat.error.failed"),
|
|
1152
|
-
renderError: t("agentChat.error.render"),
|
|
1153
|
-
runFailed: t("agentChat.error.failed"),
|
|
1154
|
-
continueRun: t("agentChat.common.continue"),
|
|
1155
|
-
continueRunUnavailable: t("agentChat.recovery.continueUnavailable"),
|
|
1156
|
-
reconnect: t("agentChat.common.reconnect"),
|
|
1157
|
-
dismissNotice: t("agentChat.common.dismiss"),
|
|
1158
|
-
reasoning: t("agentChat.status.thinking"),
|
|
1159
|
-
expandActivity: t("agentChat.common.expand"),
|
|
1160
|
-
collapseActivity: t("agentChat.common.collapse"),
|
|
1161
|
-
agentStarted: t("agentChat.agent.started"),
|
|
1162
|
-
agentResumed: t("agentChat.agent.resumed"),
|
|
1163
|
-
agentMessaged: t("agentChat.agent.messaged"),
|
|
1164
|
-
agentDelegated: t("agentChat.agent.delegated"),
|
|
1165
|
-
agentPaused: t("agentChat.agent.paused"),
|
|
1166
|
-
agentCompleted: t("agentChat.agent.completed"),
|
|
1167
|
-
agentFailed: t("agentChat.agent.failed"),
|
|
1168
|
-
agentClosed: t("agentChat.agent.closed"),
|
|
1169
|
-
editMessage: t("agentChat.message.edit"),
|
|
1170
|
-
editingMessage: t("agentChat.message.editing"),
|
|
1171
|
-
editingMessageHint: t("agentChat.message.editingHint"),
|
|
1172
|
-
cancelEditing: t("agentChat.common.cancel"),
|
|
1173
|
-
regenerateResponse: t("agentChat.common.retry"),
|
|
1174
|
-
expandMessage: t("agentChat.common.expand"),
|
|
1175
|
-
collapseMessage: t("agentChat.common.collapse"),
|
|
1176
|
-
previewAttachment: t("agentChat.composer.previewAttachment", {
|
|
1177
|
-
name: "{{name}}",
|
|
1178
|
-
}),
|
|
1179
|
-
pastedText: t("agentChat.pastedText.title"),
|
|
1180
|
-
attachmentNotSaved: t("agentChat.composer.attachmentNotSaved"),
|
|
1181
|
-
imagePreview: t("agentChat.composer.imagePreview"),
|
|
1182
|
-
closePreview: t("agentChat.composer.closePreview"),
|
|
1183
|
-
dropFilesToAttach: t("agentChat.composer.dropToAttach"),
|
|
1184
|
-
dropFileFailed: t("agentChat.composer.droppedFileError"),
|
|
1185
|
-
scrollToBottom: t("agentChat.composer.scrollToBottom"),
|
|
1186
|
-
stop: t("agentChat.composer.stop"),
|
|
1187
|
-
copyCode: t("agentChat.message.copyCode"),
|
|
1188
|
-
codeCopied: t("agentChat.message.codeCopied"),
|
|
1189
|
-
codeBlock: t("agentChat.message.codeBlock"),
|
|
1190
|
-
codeBlockLanguage: t("agentChat.message.codeBlockLanguage", {
|
|
1191
|
-
language: "{{language}}",
|
|
1192
|
-
}),
|
|
1193
|
-
table: t("agentChat.message.table"),
|
|
1194
|
-
runStopped: t("agentChat.message.runStopped"),
|
|
1195
|
-
responseReady: t("agentChat.message.responseReady"),
|
|
1196
|
-
responseFailed: t("agentChat.message.responseFailed"),
|
|
1197
|
-
waitingForApproval: t("agentChat.message.waitingForApproval"),
|
|
1198
|
-
waitingForInput: t("agentChat.message.waitingForInput"),
|
|
1199
|
-
workSummaryFailedCount: t("agentChat.message.workSummaryFailedCount", {
|
|
1200
|
-
summary: "{{summary}}",
|
|
1201
|
-
count: "{{count}}",
|
|
1202
|
-
}),
|
|
1203
|
-
taskStatusPending: t("agentChat.message.taskStatusPending"),
|
|
1204
|
-
taskStatusRunning: t("agentChat.message.taskStatusRunning"),
|
|
1205
|
-
taskStatusCompleted: t("agentChat.message.taskStatusCompleted"),
|
|
1206
|
-
taskStatusFailed: t("agentChat.message.taskStatusFailed"),
|
|
1207
|
-
taskStatusAwaitingInput: t("agentChat.message.taskStatusAwaitingInput"),
|
|
1208
|
-
untitledTask: t("agentChat.message.untitledTask"),
|
|
1209
|
-
connectionConnectProvider: t("agentChat.message.connectProvider", {
|
|
1210
|
-
provider: "{{provider}}",
|
|
1211
|
-
}),
|
|
1212
|
-
connectionDeclined: t("agentChat.message.connectionDeclined", {
|
|
1213
|
-
provider: "{{provider}}",
|
|
1214
|
-
}),
|
|
1215
|
-
connectionAdminRequiredTitle: t("agentChat.message.connectionAdminRequiredTitle", { provider: "{{provider}}" }),
|
|
1216
|
-
branchPositionLabel: t("agentChat.message.branchPositionLabel", {
|
|
1217
|
-
index: "{{index}}",
|
|
1218
|
-
count: "{{count}}",
|
|
1219
|
-
}),
|
|
1220
|
-
taskListChecked: t("agentChat.message.taskListChecked"),
|
|
1221
|
-
taskListUnchecked: t("agentChat.message.taskListUnchecked"),
|
|
1222
|
-
threadUnavailable: t("agentChat.message.threadNotFound"),
|
|
1223
|
-
newChat: t("agentChat.tabs.newChat"),
|
|
1224
|
-
loadingConversation: t("agentChat.empty.loadingChat"),
|
|
1225
|
-
formatTimestamp: (createdAt) => {
|
|
1226
|
-
const date = new Date(createdAt);
|
|
1227
|
-
if (Number.isNaN(date.getTime()))
|
|
1228
|
-
return createdAt;
|
|
1229
|
-
const now = new Date();
|
|
1230
|
-
const yesterday = new Date(now);
|
|
1231
|
-
yesterday.setDate(now.getDate() - 1);
|
|
1232
|
-
const time = formatDate(date, {
|
|
1233
|
-
hour: "numeric",
|
|
1234
|
-
minute: "2-digit",
|
|
1235
|
-
});
|
|
1236
|
-
const sameDay = (left, right) => left.getFullYear() === right.getFullYear() &&
|
|
1237
|
-
left.getMonth() === right.getMonth() &&
|
|
1238
|
-
left.getDate() === right.getDate();
|
|
1239
|
-
if (sameDay(date, now))
|
|
1240
|
-
return time;
|
|
1241
|
-
if (sameDay(date, yesterday)) {
|
|
1242
|
-
return `${t("agentChat.history.yesterday")} ${time}`;
|
|
1243
|
-
}
|
|
1244
|
-
return formatDate(date, {
|
|
1245
|
-
month: "short",
|
|
1246
|
-
day: "numeric",
|
|
1247
|
-
hour: "numeric",
|
|
1248
|
-
minute: "2-digit",
|
|
1249
|
-
});
|
|
1250
|
-
},
|
|
1251
1024
|
}), [formatDate, props.composerPlaceholder, t]);
|
|
1252
1025
|
const { session: uploadSession } = useSession();
|
|
1253
1026
|
const uploadScopeKey = JSON.stringify([
|
|
@@ -1469,7 +1242,7 @@ export const AgentKitAssistantChat = forwardRef(function AgentKitAssistantChat(p
|
|
|
1469
1242
|
: agentKitSlots, [props.workedForSummarySlot]);
|
|
1470
1243
|
const onForkedThread = props.onForkedThread;
|
|
1471
1244
|
const onThreadForked = useCallback((thread) => onForkedThread?.(thread.id), [onForkedThread]);
|
|
1472
|
-
return (_jsx(ThinkingDisplayProvider, { value: props.thinkingDisplay, children: _jsx(CoreComposerRuntimeProvider, { children: _jsx(CoreAgentKitRoot, { transport: transport, clientOptions: clientOptions, threadId: threadId, load: agentKitLoad, onLoadError: onThreadRestoreLoadError, slots: slots, registry: agentKitRegistry, labels: labels, resolveMessageContentOrder: props.resolveMessageContentOrder, branchNavigation: props.branchNavigation, buildFeedbackReport: formatFeedbackReport, workedForRowLayout: props.workedForRowLayout, dataChartLayout: props.dataChartLayout, formatWorkedForDuration: props.formatWorkedForDuration, onThreadForked: onThreadForked, onCopyMessage: copyAgentKitMessage, onClientEffect: dispatchAgentKitClientEffect, children: history ? (_jsx(AgentKitHistoryProvider, { history: history, children: _jsx(AgentKitDevCheckpointProvider, { apiUrl: props.apiUrl ?? agentNativePath("/_agent-native/agent-chat"), children: _jsx(AgentKitAssistantChatBody, { ...props, threadId: threadId, handoffSnapshot: handoffSnapshot, getThreadSnapshot: getThreadSnapshot, threadRestore: threadRestore, retryThreadRestore: retryThreadRestore, onThreadRestoreLoaded: onThreadRestoreLoaded, ref: ref }) }) })) : (_jsx(AgentKitDevCheckpointProvider, { apiUrl: props.apiUrl ?? agentNativePath("/_agent-native/agent-chat"), children: _jsx(AgentKitAssistantChatBody, { ...props, threadId: threadId, handoffSnapshot: handoffSnapshot, getThreadSnapshot: getThreadSnapshot, threadRestore: threadRestore, retryThreadRestore: retryThreadRestore, onThreadRestoreLoaded: onThreadRestoreLoaded, ref: ref }) })) }) }) }));
|
|
1245
|
+
return (_jsx(ThinkingDisplayProvider, { value: props.thinkingDisplay, children: _jsx(CoreComposerRuntimeProvider, { children: _jsx(CoreAgentKitRoot, { transport: transport, clientOptions: clientOptions, threadId: threadId, load: agentKitLoad, onLoadError: onThreadRestoreLoadError, slots: slots, registry: agentKitRegistry, labels: labels, resolveMessageContentOrder: props.resolveMessageContentOrder, branchNavigation: props.branchNavigation, buildFeedbackReport: formatFeedbackReport, workedForRowLayout: props.workedForRowLayout, dataChartLayout: props.dataChartLayout, formatWorkedForDuration: props.formatWorkedForDuration, formatAgentInteractionDetail: formatAgentInteractionDetail, onThreadForked: onThreadForked, onCopyMessage: copyAgentKitMessage, onClientEffect: dispatchAgentKitClientEffect, children: history ? (_jsx(AgentKitHistoryProvider, { history: history, children: _jsx(AgentKitDevCheckpointProvider, { apiUrl: props.apiUrl ?? agentNativePath("/_agent-native/agent-chat"), children: _jsx(AgentKitAssistantChatBody, { ...props, threadId: threadId, handoffSnapshot: handoffSnapshot, getThreadSnapshot: getThreadSnapshot, threadRestore: threadRestore, retryThreadRestore: retryThreadRestore, onThreadRestoreLoaded: onThreadRestoreLoaded, ref: ref }) }) })) : (_jsx(AgentKitDevCheckpointProvider, { apiUrl: props.apiUrl ?? agentNativePath("/_agent-native/agent-chat"), children: _jsx(AgentKitAssistantChatBody, { ...props, threadId: threadId, handoffSnapshot: handoffSnapshot, getThreadSnapshot: getThreadSnapshot, threadRestore: threadRestore, retryThreadRestore: retryThreadRestore, onThreadRestoreLoaded: onThreadRestoreLoaded, ref: ref }) })) }) }) }));
|
|
1473
1246
|
});
|
|
1474
1247
|
const AgentKitAssistantChatBody = forwardRef(function AgentKitAssistantChatBody(props, ref) {
|
|
1475
1248
|
const { controller, threadId, requestComposerFocus } = useAgentKit();
|
|
@@ -3669,6 +3442,10 @@ function AgentKitTranscript({ children, threadId }) {
|
|
|
3669
3442
|
return { delivered: true };
|
|
3670
3443
|
},
|
|
3671
3444
|
});
|
|
3445
|
+
useRefetchGuidedQuestionsWhenAsked({
|
|
3446
|
+
tools: thread.tools,
|
|
3447
|
+
refetch: guided.refetchPendingQuestion,
|
|
3448
|
+
});
|
|
3672
3449
|
const activeRunId = thread.activeRunIds.at(-1);
|
|
3673
3450
|
const [requestIdCopyFeedback, setRequestIdCopyFeedback] = useState(null);
|
|
3674
3451
|
const activeRunRequestIdCopyStatus = requestIdCopyFeedback && requestIdCopyFeedback.runId === activeRunId
|
|
@@ -3736,9 +3513,9 @@ function AgentKitTranscript({ children, threadId }) {
|
|
|
3736
3513
|
"agentkit-active-run-actions-feedback-error"), role: activeRunRequestIdCopyStatus === "failed" ? "alert" : "status", children: [activeRunRequestIdCopyStatus === "copied" ? (_jsx(IconCircleCheck, { size: 14, "aria-hidden": "true" })) : (_jsx(IconAlertTriangle, { size: 14, "aria-hidden": "true" })), activeRunRequestIdCopyStatus === "copied"
|
|
3737
3514
|
? t("agentChat.common.copied")
|
|
3738
3515
|
: t("agentChat.recovery.copyFailed")] })) : null, _jsxs(DropdownMenu, { children: [_jsx(DropdownMenuTrigger, { asChild: true, children: _jsx(IconButton, { label: t("agentChat.message.actions"), title: t("agentChat.message.actions"), icon: _jsx(IconDotsVertical, { "aria-hidden": "true" }), size: "compact", className: "agentkit-active-run-actions-trigger" }) }), _jsx(DropdownMenuContent, { align: "end", sideOffset: 6, children: _jsxs(DropdownMenuItem, { onSelect: () => void copyActiveRunRequestId(), children: [activeRunRequestIdCopyStatus === "copied" ? (_jsx(IconCircleCheck, { size: 14, "aria-hidden": "true" })) : activeRunRequestIdCopyStatus === "failed" ? (_jsx(IconAlertTriangle, { size: 14, "aria-hidden": "true" })) : (_jsx(IconCopy, { size: 14, "aria-hidden": "true" })), t("agentChat.message.copyRequestId")] }) })] })] })) : null, handoffMessages.map((message) => (_jsx(MessageView, { value: message, threadId: threadId }, message.id))), showThinking ? (_jsx("div", { className: "agentkit-activities agentkit-activities-summary-content", role: "status", "aria-live": "polite", children: _jsx("span", { className: "agentkit-activities-current", "data-running": "true", "data-agentkit-current-activity": "true", children: _jsx("span", { className: "agentkit-activities-current-label agent-running-shimmer", children: t("agentChat.status.thinking") }) }) })) : null, surface.props.showGuidedQuestions !== false &&
|
|
3739
|
-
guided.questions?.length ? (_jsx("div", { className: "px-3 pb-3", children: _jsx(
|
|
3516
|
+
guided.questions?.length ? (_jsx("div", { className: "px-3 pb-3", children: _jsx(GuidedQuestionCard, { questions: guided.questions, onSubmit: guided.handleSubmit, onSkip: guided.handleSkip, isSubmitting: guided.isSubmitting, isSubmissionBlocked: !surface.canChat, providerStatus: surface.providerStatus, modelListUnavailable: surface.modelListUnavailable, showProviderStatusGate: !composerShowsSetupCard(surface), onRetryProviderStatus: surface.modelListUnavailable
|
|
3740
3517
|
? surface.retryModelList
|
|
3741
|
-
: surface.retryProviderStatus, ...(guided.title ? { title: guided.title } : {}), ...(guided.description ? { description: guided.description } : {}), ...(guided.skipLabel ? { skipLabel: guided.skipLabel } : {}), ...(guided.submitLabel ? { submitLabel: guided.submitLabel } : {})
|
|
3518
|
+
: surface.retryProviderStatus, ...(guided.title ? { title: guided.title } : {}), ...(guided.description ? { description: guided.description } : {}), ...(guided.skipLabel ? { skipLabel: guided.skipLabel } : {}), ...(guided.submitLabel ? { submitLabel: guided.submitLabel } : {}) }) })) : null, renderThreadSlot(surface.props.threadFooterSlot, threadId, surface.props.tabId)] }));
|
|
3742
3519
|
}
|
|
3743
3520
|
function renderThreadSlot(slot, threadId, tabId) {
|
|
3744
3521
|
return typeof slot === "function"
|
|
@@ -4253,17 +4030,18 @@ function AgentKitReasoning({ value, active, resetKey, }) {
|
|
|
4253
4030
|
return null;
|
|
4254
4031
|
return (_jsx(ReasoningCell, { text: value.text, isStreaming: active, defaultOpen: active, resetKey: resetKey, inline: inWorkStep }));
|
|
4255
4032
|
}
|
|
4256
|
-
|
|
4033
|
+
/** An unknown persisted failure key reads as the generic reason, never the key. */
|
|
4034
|
+
function useAgentInteractionDetail() {
|
|
4257
4035
|
const t = useT();
|
|
4258
|
-
|
|
4259
|
-
|
|
4260
|
-
|
|
4261
|
-
|
|
4262
|
-
|
|
4263
|
-
|
|
4264
|
-
|
|
4265
|
-
|
|
4266
|
-
|
|
4036
|
+
return useCallback((interaction) => {
|
|
4037
|
+
const reasonKey = interaction.metadata?.failureReasonKey;
|
|
4038
|
+
if (interaction.kind !== "failed" || typeof reasonKey !== "string") {
|
|
4039
|
+
return undefined;
|
|
4040
|
+
}
|
|
4041
|
+
return t(reasonKey, {
|
|
4042
|
+
defaultValue: t("agentChat.agent.failureReason.failed"),
|
|
4043
|
+
});
|
|
4044
|
+
}, [t]);
|
|
4267
4045
|
}
|
|
4268
4046
|
function AgentKitConnectionRequest({ value, runId, threadId, }) {
|
|
4269
4047
|
const surface = useAgentKitSurface();
|