@agent-native/toolkit 0.221.0-same-host-mcp-20261027-20261027081850 → 0.221.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.
Files changed (259) hide show
  1. package/agent-native.eject.json +16 -1
  2. package/dist/app/agentkit/react/components.d.ts +5 -3
  3. package/dist/app/agentkit/react/components.d.ts.map +1 -1
  4. package/dist/app/agentkit/react/components.js +103 -42
  5. package/dist/app/agentkit/react/components.js.map +1 -1
  6. package/dist/app/agentkit/react/styles.css +93 -65
  7. package/dist/app/agentkit/react/voice-transcripts.d.ts +22 -1
  8. package/dist/app/agentkit/react/voice-transcripts.d.ts.map +1 -1
  9. package/dist/app/agentkit/react/voice-transcripts.js +209 -8
  10. package/dist/app/agentkit/react/voice-transcripts.js.map +1 -1
  11. package/dist/app/chat/AgentKitAssistantChat.d.ts.map +1 -1
  12. package/dist/app/chat/AgentKitAssistantChat.js +55 -40
  13. package/dist/app/chat/AgentKitAssistantChat.js.map +1 -1
  14. package/dist/app/chat/agentkit-chat/guided-questions.d.ts +1 -0
  15. package/dist/app/chat/agentkit-chat/guided-questions.d.ts.map +1 -1
  16. package/dist/app/chat/agentkit-chat/guided-questions.js +18 -6
  17. package/dist/app/chat/agentkit-chat/guided-questions.js.map +1 -1
  18. package/dist/app/chat/agentkit-chat/index.d.ts +1 -1
  19. package/dist/app/chat/agentkit-chat/index.d.ts.map +1 -1
  20. package/dist/app/chat/agentkit-chat/index.js +1 -1
  21. package/dist/app/chat/agentkit-chat/index.js.map +1 -1
  22. package/dist/app/chat/chat/run-recovery.d.ts.map +1 -1
  23. package/dist/app/chat/chat/run-recovery.js +5 -1
  24. package/dist/app/chat/chat/run-recovery.js.map +1 -1
  25. package/dist/app/chat/composer/runtime-adapters.d.ts.map +1 -1
  26. package/dist/app/chat/composer/runtime-adapters.js +2 -0
  27. package/dist/app/chat/composer/runtime-adapters.js.map +1 -1
  28. package/dist/app/chat/reply-connection-suggestion.d.ts +29 -0
  29. package/dist/app/chat/reply-connection-suggestion.d.ts.map +1 -0
  30. package/dist/app/chat/reply-connection-suggestion.js +42 -0
  31. package/dist/app/chat/reply-connection-suggestion.js.map +1 -0
  32. package/dist/app/i18n/catalogs/ar-SA.d.ts.map +1 -1
  33. package/dist/app/i18n/catalogs/ar-SA.js +7 -0
  34. package/dist/app/i18n/catalogs/ar-SA.js.map +1 -1
  35. package/dist/app/i18n/catalogs/de-DE.d.ts.map +1 -1
  36. package/dist/app/i18n/catalogs/de-DE.js +7 -0
  37. package/dist/app/i18n/catalogs/de-DE.js.map +1 -1
  38. package/dist/app/i18n/catalogs/en-US.d.ts +7 -0
  39. package/dist/app/i18n/catalogs/en-US.d.ts.map +1 -1
  40. package/dist/app/i18n/catalogs/en-US.js +7 -0
  41. package/dist/app/i18n/catalogs/en-US.js.map +1 -1
  42. package/dist/app/i18n/catalogs/es-ES.d.ts.map +1 -1
  43. package/dist/app/i18n/catalogs/es-ES.js +7 -0
  44. package/dist/app/i18n/catalogs/es-ES.js.map +1 -1
  45. package/dist/app/i18n/catalogs/fr-FR.d.ts.map +1 -1
  46. package/dist/app/i18n/catalogs/fr-FR.js +7 -0
  47. package/dist/app/i18n/catalogs/fr-FR.js.map +1 -1
  48. package/dist/app/i18n/catalogs/hi-IN.d.ts.map +1 -1
  49. package/dist/app/i18n/catalogs/hi-IN.js +7 -0
  50. package/dist/app/i18n/catalogs/hi-IN.js.map +1 -1
  51. package/dist/app/i18n/catalogs/ja-JP.d.ts.map +1 -1
  52. package/dist/app/i18n/catalogs/ja-JP.js +7 -0
  53. package/dist/app/i18n/catalogs/ja-JP.js.map +1 -1
  54. package/dist/app/i18n/catalogs/ko-KR.d.ts.map +1 -1
  55. package/dist/app/i18n/catalogs/ko-KR.js +7 -0
  56. package/dist/app/i18n/catalogs/ko-KR.js.map +1 -1
  57. package/dist/app/i18n/catalogs/pt-BR.d.ts.map +1 -1
  58. package/dist/app/i18n/catalogs/pt-BR.js +7 -0
  59. package/dist/app/i18n/catalogs/pt-BR.js.map +1 -1
  60. package/dist/app/i18n/catalogs/zh-CN.d.ts.map +1 -1
  61. package/dist/app/i18n/catalogs/zh-CN.js +7 -0
  62. package/dist/app/i18n/catalogs/zh-CN.js.map +1 -1
  63. package/dist/app/i18n/catalogs/zh-TW.d.ts.map +1 -1
  64. package/dist/app/i18n/catalogs/zh-TW.js +7 -0
  65. package/dist/app/i18n/catalogs/zh-TW.js.map +1 -1
  66. package/dist/app/mcp-approval/McpApprovalReview.d.ts +25 -0
  67. package/dist/app/mcp-approval/McpApprovalReview.d.ts.map +1 -0
  68. package/dist/app/mcp-approval/McpApprovalReview.js +342 -0
  69. package/dist/app/mcp-approval/McpApprovalReview.js.map +1 -0
  70. package/dist/app/onboarding/FirstRunOnboarding.d.ts.map +1 -1
  71. package/dist/app/onboarding/FirstRunOnboarding.js +299 -71
  72. package/dist/app/onboarding/FirstRunOnboarding.js.map +1 -1
  73. package/dist/app/onboarding/GettingStartedCard.js +1 -1
  74. package/dist/app/onboarding/GettingStartedCard.js.map +1 -1
  75. package/dist/app/onboarding/first-run-builder-credits-flag.d.ts +2 -0
  76. package/dist/app/onboarding/first-run-builder-credits-flag.d.ts.map +1 -0
  77. package/dist/app/onboarding/first-run-builder-credits-flag.js +8 -0
  78. package/dist/app/onboarding/first-run-builder-credits-flag.js.map +1 -0
  79. package/dist/app/providers/AppProviders.d.ts.map +1 -1
  80. package/dist/app/providers/AppProviders.js +14 -1
  81. package/dist/app/providers/AppProviders.js.map +1 -1
  82. package/dist/app/resources/McpConnectionSuggestion.d.ts +2 -4
  83. package/dist/app/resources/McpConnectionSuggestion.d.ts.map +1 -1
  84. package/dist/app/resources/McpConnectionSuggestion.js +59 -36
  85. package/dist/app/resources/McpConnectionSuggestion.js.map +1 -1
  86. package/dist/app/settings/account/PreferencesSettings.d.ts.map +1 -1
  87. package/dist/app/settings/account/PreferencesSettings.js +14 -1
  88. package/dist/app/settings/account/PreferencesSettings.js.map +1 -1
  89. package/dist/app/settings/account/ThemeFamilySettings.js +2 -2
  90. package/dist/app/settings/account/ThemeFamilySettings.js.map +1 -1
  91. package/dist/app/settings/account/search-entries.d.ts +1 -0
  92. package/dist/app/settings/account/search-entries.d.ts.map +1 -1
  93. package/dist/app/settings/account/search-entries.js +5 -0
  94. package/dist/app/settings/account/search-entries.js.map +1 -1
  95. package/dist/app/settings/shell/SettingsShell.d.ts.map +1 -1
  96. package/dist/app/settings/shell/SettingsShell.js +26 -2
  97. package/dist/app/settings/shell/SettingsShell.js.map +1 -1
  98. package/dist/app/shared/AppShellSkeleton.d.ts.map +1 -1
  99. package/dist/app/shared/AppShellSkeleton.js +4 -10
  100. package/dist/app/shared/AppShellSkeleton.js.map +1 -1
  101. package/dist/app/shared/EnvironmentBadge.d.ts +2 -1
  102. package/dist/app/shared/EnvironmentBadge.d.ts.map +1 -1
  103. package/dist/app/shared/EnvironmentBadge.js +2 -3
  104. package/dist/app/shared/EnvironmentBadge.js.map +1 -1
  105. package/dist/app/shared/is-builder-io-employee.d.ts +8 -0
  106. package/dist/app/shared/is-builder-io-employee.d.ts.map +1 -0
  107. package/dist/app/shared/is-builder-io-employee.js +10 -0
  108. package/dist/app/shared/is-builder-io-employee.js.map +1 -0
  109. package/dist/app/styles/agent-conversation.css +30 -17
  110. package/dist/app/styles/theme-families.css +22 -5
  111. package/dist/app/styles/tokens/agent-kit.css +3 -3
  112. package/dist/composer/PromptComposer.d.ts +15 -3
  113. package/dist/composer/PromptComposer.d.ts.map +1 -1
  114. package/dist/composer/PromptComposer.js +74 -16
  115. package/dist/composer/PromptComposer.js.map +1 -1
  116. package/dist/composer/RealtimeVoiceMode.d.ts +7 -0
  117. package/dist/composer/RealtimeVoiceMode.d.ts.map +1 -1
  118. package/dist/composer/RealtimeVoiceMode.js +9 -2
  119. package/dist/composer/RealtimeVoiceMode.js.map +1 -1
  120. package/dist/composer/TiptapComposer.d.ts +7 -0
  121. package/dist/composer/TiptapComposer.d.ts.map +1 -1
  122. package/dist/composer/TiptapComposer.js +12 -4
  123. package/dist/composer/TiptapComposer.js.map +1 -1
  124. package/dist/composer/VoiceButton.d.ts +2 -0
  125. package/dist/composer/VoiceButton.d.ts.map +1 -1
  126. package/dist/composer/VoiceButton.js +5 -4
  127. package/dist/composer/VoiceButton.js.map +1 -1
  128. package/dist/composer/index.d.ts +2 -2
  129. package/dist/composer/index.d.ts.map +1 -1
  130. package/dist/composer/index.js +1 -1
  131. package/dist/composer/index.js.map +1 -1
  132. package/dist/composer/prompt-attachments.d.ts +20 -0
  133. package/dist/composer/prompt-attachments.d.ts.map +1 -1
  134. package/dist/composer/prompt-attachments.js +188 -11
  135. package/dist/composer/prompt-attachments.js.map +1 -1
  136. package/dist/composer/realtime-voice-transcript.d.ts +27 -0
  137. package/dist/composer/realtime-voice-transcript.d.ts.map +1 -1
  138. package/dist/composer/realtime-voice-transcript.js +34 -1
  139. package/dist/composer/realtime-voice-transcript.js.map +1 -1
  140. package/dist/composer/realtime-voice-turn-metrics.d.ts +43 -0
  141. package/dist/composer/realtime-voice-turn-metrics.d.ts.map +1 -0
  142. package/dist/composer/realtime-voice-turn-metrics.js +132 -0
  143. package/dist/composer/realtime-voice-turn-metrics.js.map +1 -0
  144. package/dist/composer/runtime-adapters.d.ts +4 -1
  145. package/dist/composer/runtime-adapters.d.ts.map +1 -1
  146. package/dist/composer/runtime-adapters.js +2 -1
  147. package/dist/composer/runtime-adapters.js.map +1 -1
  148. package/dist/composer/useRealtimeVoiceMode.d.ts +61 -9
  149. package/dist/composer/useRealtimeVoiceMode.d.ts.map +1 -1
  150. package/dist/composer/useRealtimeVoiceMode.js +536 -99
  151. package/dist/composer/useRealtimeVoiceMode.js.map +1 -1
  152. package/dist/composer/voice-chat-icon.d.ts +7 -0
  153. package/dist/composer/voice-chat-icon.d.ts.map +1 -0
  154. package/dist/composer/voice-chat-icon.js +14 -0
  155. package/dist/composer/voice-chat-icon.js.map +1 -0
  156. package/dist/editor/DragHandle.d.ts +12 -1
  157. package/dist/editor/DragHandle.d.ts.map +1 -1
  158. package/dist/editor/DragHandle.js +165 -41
  159. package/dist/editor/DragHandle.js.map +1 -1
  160. package/dist/editor/RegistryBlockNode.d.ts +20 -0
  161. package/dist/editor/RegistryBlockNode.d.ts.map +1 -1
  162. package/dist/editor/RegistryBlockNode.js +58 -13
  163. package/dist/editor/RegistryBlockNode.js.map +1 -1
  164. package/dist/editor/index.d.ts +2 -2
  165. package/dist/editor/index.d.ts.map +1 -1
  166. package/dist/editor/index.js +1 -1
  167. package/dist/editor/index.js.map +1 -1
  168. package/dist/styles.css +2 -0
  169. package/dist/ui/dropdown-menu.d.ts.map +1 -1
  170. package/dist/ui/dropdown-menu.js +5 -1
  171. package/dist/ui/dropdown-menu.js.map +1 -1
  172. package/package.json +14 -4
  173. package/src/app/agentkit/react/components.regenerate-readiness.spec.tsx +3 -1
  174. package/src/app/agentkit/react/components.spec.tsx +24 -4
  175. package/src/app/agentkit/react/components.tsx +174 -44
  176. package/src/app/agentkit/react/composer-context.spec.tsx +3 -0
  177. package/src/app/agentkit/react/disclosures.spec.tsx +124 -0
  178. package/src/app/agentkit/react/lifecycle.spec.tsx +8 -2
  179. package/src/app/agentkit/react/message-actions.spec.tsx +161 -5
  180. package/src/app/agentkit/react/saved-reply-reload.spec.tsx +206 -0
  181. package/src/app/agentkit/react/styles.css +93 -65
  182. package/src/app/agentkit/react/voice-transcripts.spec.tsx +239 -4
  183. package/src/app/agentkit/react/voice-transcripts.ts +245 -8
  184. package/src/app/chat/AgentKitAssistantChat.spec.tsx +59 -11
  185. package/src/app/chat/AgentKitAssistantChat.tsx +74 -62
  186. package/src/app/chat/agentkit-chat/guided-answers-context.spec.ts +9 -0
  187. package/src/app/chat/agentkit-chat/guided-questions.tsx +17 -7
  188. package/src/app/chat/agentkit-chat/index.ts +1 -0
  189. package/src/app/chat/chat/run-recovery.spec.tsx +45 -0
  190. package/src/app/chat/chat/run-recovery.tsx +6 -1
  191. package/src/app/chat/composer/runtime-adapters.tsx +2 -0
  192. package/src/app/chat/reply-connection-suggestion.spec.ts +121 -0
  193. package/src/app/chat/reply-connection-suggestion.ts +76 -0
  194. package/src/app/i18n/catalogs/ar-SA.ts +10 -0
  195. package/src/app/i18n/catalogs/de-DE.ts +10 -0
  196. package/src/app/i18n/catalogs/en-US.ts +10 -0
  197. package/src/app/i18n/catalogs/es-ES.ts +10 -0
  198. package/src/app/i18n/catalogs/fr-FR.ts +10 -0
  199. package/src/app/i18n/catalogs/hi-IN.ts +10 -0
  200. package/src/app/i18n/catalogs/ja-JP.ts +10 -0
  201. package/src/app/i18n/catalogs/ko-KR.ts +10 -0
  202. package/src/app/i18n/catalogs/pt-BR.ts +10 -0
  203. package/src/app/i18n/catalogs/zh-CN.ts +10 -0
  204. package/src/app/i18n/catalogs/zh-TW.ts +10 -0
  205. package/src/app/mcp-approval/McpApprovalReview.spec.tsx +687 -0
  206. package/src/app/mcp-approval/McpApprovalReview.tsx +913 -0
  207. package/src/app/onboarding/FirstRunOnboarding.spec.tsx +736 -26
  208. package/src/app/onboarding/FirstRunOnboarding.tsx +473 -145
  209. package/src/app/onboarding/GettingStartedCard.tsx +1 -1
  210. package/src/app/onboarding/first-run-builder-credits-flag.spec.ts +13 -0
  211. package/src/app/onboarding/first-run-builder-credits-flag.ts +9 -0
  212. package/src/app/providers/AppProviders.spec.tsx +109 -0
  213. package/src/app/providers/AppProviders.tsx +53 -1
  214. package/src/app/resources/McpConnectionSuggestion.spec.ts +77 -12
  215. package/src/app/resources/McpConnectionSuggestion.tsx +69 -51
  216. package/src/app/settings/VoiceChatSettings.spec.tsx +6 -1
  217. package/src/app/settings/account/PreferencesSettings.spec.tsx +73 -0
  218. package/src/app/settings/account/PreferencesSettings.tsx +24 -7
  219. package/src/app/settings/account/ThemeFamilySettings.tsx +2 -2
  220. package/src/app/settings/account/search-entries.spec.ts +14 -0
  221. package/src/app/settings/account/search-entries.ts +9 -0
  222. package/src/app/settings/shell/SettingsShell.tsx +29 -2
  223. package/src/app/shared/AppShellSkeleton.spec.tsx +2 -2
  224. package/src/app/shared/AppShellSkeleton.tsx +3 -16
  225. package/src/app/shared/EnvironmentBadge.tsx +3 -4
  226. package/src/app/shared/is-builder-io-employee.ts +17 -0
  227. package/src/app/styles/agent-conversation.css +30 -17
  228. package/src/app/styles/theme-families.css +22 -5
  229. package/src/app/styles/theme-families.spec.ts +73 -0
  230. package/src/app/styles/tokens/agent-kit.css +3 -3
  231. package/src/composer/AgentSuggestionBar.overflow.spec.tsx +1 -1
  232. package/src/composer/AttachmentChip.spec.tsx +87 -0
  233. package/src/composer/PromptComposer.context.spec.tsx +8 -4
  234. package/src/composer/PromptComposer.setup-card.spec.tsx +170 -0
  235. package/src/composer/PromptComposer.tsx +125 -14
  236. package/src/composer/RealtimeVoiceMode.spec.tsx +48 -0
  237. package/src/composer/RealtimeVoiceMode.tsx +45 -2
  238. package/src/composer/TiptapComposer.tsx +25 -0
  239. package/src/composer/TiptapComposer.voice-toolbar.spec.tsx +4 -1
  240. package/src/composer/VoiceButton.tsx +8 -3
  241. package/src/composer/index.ts +4 -0
  242. package/src/composer/prompt-attachments.spec.ts +160 -8
  243. package/src/composer/prompt-attachments.ts +221 -12
  244. package/src/composer/realtime-voice-transcript.spec.ts +36 -0
  245. package/src/composer/realtime-voice-transcript.ts +56 -1
  246. package/src/composer/realtime-voice-turn-metrics.spec.ts +175 -0
  247. package/src/composer/realtime-voice-turn-metrics.ts +192 -0
  248. package/src/composer/runtime-adapters.tsx +5 -1
  249. package/src/composer/useRealtimeVoiceMode.session.spec.tsx +487 -2
  250. package/src/composer/useRealtimeVoiceMode.spec.ts +267 -65
  251. package/src/composer/useRealtimeVoiceMode.tsx +716 -139
  252. package/src/composer/voice-chat-icon.tsx +19 -0
  253. package/src/editor/DragHandle.spec.ts +217 -0
  254. package/src/editor/DragHandle.ts +214 -55
  255. package/src/editor/RegistryBlockNode.spec.ts +172 -2
  256. package/src/editor/RegistryBlockNode.tsx +91 -13
  257. package/src/editor/index.ts +4 -0
  258. package/src/styles.css +2 -0
  259. package/src/ui/dropdown-menu.tsx +4 -0
@@ -102,7 +102,7 @@
102
102
  );
103
103
  --agentkit-composer-toolbar-control-padding-inline: var(
104
104
  --agent-kit-composer-toolbar-control-padding-inline,
105
- 0.375rem
105
+ 0.5rem
106
106
  );
107
107
  --agentkit-composer-toolbar-control-font-size: var(
108
108
  --agent-kit-composer-toolbar-control-font-size,
@@ -170,7 +170,7 @@
170
170
  .agentkit-composer [data-agent-composer-slot="mode-row"] {
171
171
  display: flex;
172
172
  flex-wrap: wrap;
173
- gap: 0.375rem;
173
+ gap: 0.5rem;
174
174
  }
175
175
 
176
176
  .agentkit-composer
@@ -228,7 +228,7 @@
228
228
  inline-size: calc(100% - 4rem);
229
229
  block-size: var(--agent-message-queue-height, 0);
230
230
  margin: 0 auto;
231
- padding-block-end: 0.625rem;
231
+ padding-block-end: 0.75rem;
232
232
  overflow: hidden;
233
233
  border: 0;
234
234
  border-radius: var(--agentkit-radius-inner) var(--agentkit-radius-inner) 0 0;
@@ -260,7 +260,7 @@
260
260
  block-size: 100%;
261
261
  max-block-size: 10rem;
262
262
  flex-direction: column;
263
- gap: 0.125rem;
263
+ gap: 0.25rem;
264
264
  margin: 0;
265
265
  padding: 0.25rem 0;
266
266
  overflow-y: auto;
@@ -280,14 +280,14 @@
280
280
  min-inline-size: 0;
281
281
  align-items: center;
282
282
  gap: 0.5rem;
283
- padding: 0.375rem 1rem;
283
+ padding: 0.5rem 1rem;
284
284
  color: var(--agentkit-text);
285
285
  font-size: 0.8125rem;
286
286
  line-height: 1rem;
287
287
  }
288
288
 
289
289
  .agentkit-composer-stack [data-agent-message-queue-variant="recessed"] li {
290
- padding-block: 0.125rem;
290
+ padding-block: 0.25rem;
291
291
  }
292
292
 
293
293
  .agentkit-composer-stack [data-agent-message-queue="true"] li > svg {
@@ -322,7 +322,7 @@
322
322
  display: flex;
323
323
  flex: none;
324
324
  align-items: center;
325
- gap: 0.125rem;
325
+ gap: 0.25rem;
326
326
  color: var(--agentkit-text-muted-strong);
327
327
  }
328
328
 
@@ -335,7 +335,7 @@
335
335
  }
336
336
 
337
337
  .agentkit-suggestions {
338
- --agent-suggestion-gap: 0.375rem;
338
+ --agent-suggestion-gap: 0.5rem;
339
339
  }
340
340
 
341
341
  /* The row grows to fit its caption rather than overflowing into the
@@ -583,8 +583,8 @@
583
583
  }
584
584
 
585
585
  .agentkit-transcript::-webkit-scrollbar {
586
- inline-size: 0.3125rem;
587
- block-size: 0.3125rem;
586
+ inline-size: 0.25rem;
587
+ block-size: 0.25rem;
588
588
  }
589
589
 
590
590
  .agentkit-transcript::-webkit-scrollbar-track {
@@ -701,19 +701,21 @@
701
701
  --agentkit-transcript-font-family,
702
702
  var(--font-sans, inherit)
703
703
  );
704
- line-height: var(--agentkit-transcript-message-line-height, 1.52);
704
+ /* 14px text on a 20px line, so text-driven heights land on the 4px grid. */
705
+ line-height: var(--agentkit-transcript-message-line-height, 1.25rem);
705
706
  }
706
707
 
707
- /* A user message's footer overlays the 24px zone under its bubble on hover
708
- or focus, so the agent turn starts a full turn gap below that zone and its
709
- summary row never sits against the user's toolbar. */
708
+ /* A user message's footer overlays the 28px zone under its bubble on hover
709
+ or focus (its 4px drop plus the 24px row), so the agent turn starts a full
710
+ turn gap below that zone and its summary row never sits against the user's
711
+ toolbar. */
710
712
  .agentkit-message[data-role="user"] {
711
713
  align-items: flex-end;
712
714
  margin-block: var(--agentkit-transcript-message-gap, 1.5rem)
713
- calc(1.5rem + var(--agentkit-transcript-message-gap, 1.5rem));
715
+ calc(1.75rem + var(--agentkit-transcript-message-gap, 1.5rem));
714
716
  line-height: var(
715
717
  --agentkit-user-bubble-line-height,
716
- var(--agentkit-transcript-message-line-height, 1.52)
718
+ var(--agentkit-transcript-message-line-height, 1.25rem)
717
719
  );
718
720
  }
719
721
 
@@ -784,7 +786,7 @@
784
786
  }
785
787
 
786
788
  .agentkit-message-content p {
787
- margin-block: 0 0.625rem;
789
+ margin-block: 0 0.75rem;
788
790
  white-space: pre-wrap;
789
791
  }
790
792
 
@@ -825,8 +827,9 @@
825
827
  max-inline-size: 12.5rem;
826
828
  align-items: center;
827
829
  gap: 0.25rem;
828
- margin-inline: 0.125rem;
829
- padding: 0.125rem 0.375rem;
830
+ margin-inline: 0.25rem;
831
+ min-block-size: 1.25rem;
832
+ padding: 0 0.5rem;
830
833
  border: 1px solid var(--agentkit-border);
831
834
  border-radius: var(--agentkit-radius-inner);
832
835
  color: var(--agentkit-text);
@@ -931,7 +934,7 @@
931
934
  }
932
935
 
933
936
  .agentkit-markdown + .agentkit-markdown {
934
- margin-block-start: 0.625rem;
937
+ margin-block-start: 0.75rem;
935
938
  }
936
939
 
937
940
  /* Streamed text fades in as it is revealed. The animation runs once when the
@@ -967,14 +970,14 @@
967
970
 
968
971
  .agentkit-markdown-table {
969
972
  max-inline-size: 100%;
970
- margin-block: 0 0.625rem;
973
+ margin-block: 0 0.75rem;
971
974
  overflow-x: auto;
972
975
  }
973
976
 
974
977
  .agentkit-markdown table {
975
978
  display: table;
976
979
  max-inline-size: 100%;
977
- margin-block: 0 0.625rem;
980
+ margin-block: 0 0.75rem;
978
981
  border-collapse: collapse;
979
982
  }
980
983
 
@@ -987,7 +990,7 @@
987
990
  }
988
991
 
989
992
  .agentkit-markdown :where(th, td) {
990
- padding: 0.375rem 0.75rem;
993
+ padding: 0.5rem 0.75rem;
991
994
  border-block-end: 1px solid var(--agentkit-border);
992
995
  text-align: start;
993
996
  }
@@ -1063,7 +1066,7 @@
1063
1066
  }
1064
1067
 
1065
1068
  .agentkit-markdown :where(ul, ol) {
1066
- margin-block: 0 0.625rem;
1069
+ margin-block: 0 0.75rem;
1067
1070
  padding-inline-start: 1.25rem;
1068
1071
  }
1069
1072
 
@@ -1109,8 +1112,11 @@
1109
1112
  font-family: var(--font-mono, ui-monospace, monospace);
1110
1113
  }
1111
1114
 
1115
+ /* A code span's own line, on a different font's baseline, would stretch
1116
+ its line past the 20px grid. */
1112
1117
  .agentkit-markdown :not(pre) > code {
1113
1118
  padding: 0.125rem 0.25rem;
1119
+ line-height: 1;
1114
1120
  border-radius: var(--radius-sm, calc(var(--radius, 0.75rem) / 2));
1115
1121
  background: var(--agentkit-subtle);
1116
1122
  font-size: 0.875em;
@@ -1119,7 +1125,7 @@
1119
1125
  .agentkit-markdown pre {
1120
1126
  box-sizing: border-box;
1121
1127
  max-inline-size: 100%;
1122
- margin-block: 0 0.625rem;
1128
+ margin-block: 0 0.75rem;
1123
1129
  padding: 0.75rem;
1124
1130
  overflow-x: auto;
1125
1131
  border: 1px solid var(--agentkit-border);
@@ -1132,7 +1138,7 @@
1132
1138
  }
1133
1139
 
1134
1140
  .agentkit-code-block {
1135
- margin: 0 0 0.625rem;
1141
+ margin: 0 0 0.75rem;
1136
1142
  overflow: hidden;
1137
1143
  border: 1px solid var(--agentkit-border);
1138
1144
  border-radius: var(--agentkit-radius-inner);
@@ -1171,7 +1177,7 @@
1171
1177
  }
1172
1178
 
1173
1179
  .agentkit-markdown blockquote {
1174
- margin: 0 0 0.625rem;
1180
+ margin: 0 0 0.75rem;
1175
1181
  padding-inline-start: 0.75rem;
1176
1182
  border-inline-start: 2px solid var(--agentkit-border);
1177
1183
  color: var(--agentkit-text-muted);
@@ -1200,6 +1206,26 @@
1200
1206
  margin-block-start: 0;
1201
1207
  }
1202
1208
 
1209
+ /* Reply text ends on its last line's leading, the bubble on a hard edge, so
1210
+ the user row drops 4px to put its icons 8px below the bubble. The user
1211
+ message's bottom zone includes the drop. */
1212
+ .agentkit-message-actions[data-role="user"]:not([data-has-error="true"]) {
1213
+ margin-block-start: 0.25rem;
1214
+ }
1215
+
1216
+ /* The hover-revealed row drops by padding, not margin: a margin gap belongs
1217
+ to no element, so crossing it ends the message's hover and the row hides
1218
+ before the pointer reaches it. */
1219
+ .agentkit-message-actions[data-role="user"]:not(
1220
+ [data-latest="true"],
1221
+ [data-has-error="true"]
1222
+ ) {
1223
+ box-sizing: border-box;
1224
+ min-block-size: 1.75rem;
1225
+ margin-block-start: 0;
1226
+ padding-block-start: 0.25rem;
1227
+ }
1228
+
1203
1229
  /* One line under the reply: the finished work row, then the controls. The
1204
1230
  work row's own box dissolves so its steps open full width beneath. */
1205
1231
  .agentkit-message-actions[data-role="assistant"] {
@@ -1284,7 +1310,7 @@
1284
1310
  min-inline-size: 0;
1285
1311
  align-items: center;
1286
1312
  justify-content: flex-end;
1287
- gap: 0.125rem;
1313
+ gap: 0.25rem;
1288
1314
  margin-inline-start: auto;
1289
1315
  color: var(--agentkit-text-muted);
1290
1316
  }
@@ -1301,7 +1327,7 @@
1301
1327
  grid-area: 1 / 1;
1302
1328
  justify-self: end;
1303
1329
  align-items: center;
1304
- gap: 0.125rem;
1330
+ gap: 0.25rem;
1305
1331
  transition:
1306
1332
  opacity 140ms ease,
1307
1333
  translate 160ms ease;
@@ -1388,7 +1414,7 @@
1388
1414
  display: flex;
1389
1415
  min-inline-size: 0;
1390
1416
  align-items: center;
1391
- gap: 0.125rem;
1417
+ gap: 0.25rem;
1392
1418
  }
1393
1419
 
1394
1420
  .agentkit-message-actions-trailing {
@@ -1572,7 +1598,7 @@
1572
1598
  /* minmax(0, …): an auto track grows to its widest row's unwrapped text,
1573
1599
  which pushes rows past the chat column instead of ellipsizing them. */
1574
1600
  grid-template-columns: minmax(0, 1fr);
1575
- gap: 0.125rem;
1601
+ gap: 0.25rem;
1576
1602
  }
1577
1603
 
1578
1604
  .agentkit-activity-row,
@@ -1675,7 +1701,8 @@
1675
1701
  max-inline-size: 12rem;
1676
1702
  flex: none;
1677
1703
  align-items: center;
1678
- padding: 0.125rem 0.5rem;
1704
+ min-block-size: 1.5rem;
1705
+ padding: 0 0.5rem;
1679
1706
  border: 1px solid var(--agentkit-border);
1680
1707
  border-radius: 999px;
1681
1708
  color: var(--agentkit-text);
@@ -1731,7 +1758,7 @@
1731
1758
  not fit beside the head drops to its own line. */
1732
1759
  .agentkit-agent-interaction {
1733
1760
  flex-wrap: wrap;
1734
- row-gap: 0.125rem;
1761
+ row-gap: 0.25rem;
1735
1762
  }
1736
1763
 
1737
1764
  .agentkit-agent-interaction-head {
@@ -1785,7 +1812,7 @@
1785
1812
  .agentkit-activity-cluster-items {
1786
1813
  display: grid;
1787
1814
  grid-template-columns: minmax(0, 1fr);
1788
- gap: 0.125rem;
1815
+ gap: 0.25rem;
1789
1816
  margin-inline-start: 0.5rem;
1790
1817
  padding-inline-start: 1rem;
1791
1818
  border-inline-start: 1px solid var(--agentkit-border);
@@ -1801,13 +1828,13 @@
1801
1828
  .agentkit-activities-summary-content {
1802
1829
  display: grid;
1803
1830
  min-inline-size: 0;
1804
- gap: 0.125rem;
1831
+ gap: 0.25rem;
1805
1832
  }
1806
1833
 
1807
1834
  .agentkit-activities-current {
1808
1835
  display: flex;
1809
1836
  align-items: center;
1810
- gap: 0.375rem;
1837
+ gap: 0.5rem;
1811
1838
  min-inline-size: 0;
1812
1839
  }
1813
1840
 
@@ -1958,7 +1985,7 @@
1958
1985
 
1959
1986
  .agentkit-work-step-body {
1960
1987
  margin-inline-start: 0;
1961
- padding-block: 0 0.375rem;
1988
+ padding-block: 0 0.5rem;
1962
1989
  }
1963
1990
 
1964
1991
  .agentkit-work-groups {
@@ -1983,7 +2010,7 @@
1983
2010
  min-inline-size: 0;
1984
2011
  flex: 0 1 auto;
1985
2012
  align-items: center;
1986
- gap: 0.375rem;
2013
+ gap: 0.5rem;
1987
2014
  overflow: hidden;
1988
2015
  color: var(--agentkit-text-muted);
1989
2016
  white-space: nowrap;
@@ -1993,7 +2020,7 @@
1993
2020
  display: inline-flex;
1994
2021
  min-inline-size: 0;
1995
2022
  align-items: center;
1996
- gap: 0.375rem;
2023
+ gap: 0.5rem;
1997
2024
  overflow: hidden;
1998
2025
  }
1999
2026
 
@@ -2007,7 +2034,7 @@
2007
2034
  }
2008
2035
 
2009
2036
  .agentkit-work-object[data-kind="url"] {
2010
- padding: 0 0.375rem;
2037
+ padding: 0 0.5rem;
2011
2038
  border: 1px solid var(--agentkit-border);
2012
2039
  border-radius: 999px;
2013
2040
  font-size: 0.75rem;
@@ -2060,7 +2087,7 @@
2060
2087
  .agentkit-tasks-list {
2061
2088
  display: grid;
2062
2089
  grid-template-columns: minmax(0, 1fr);
2063
- gap: 0.125rem;
2090
+ gap: 0.25rem;
2064
2091
  padding-block-start: 0.25rem;
2065
2092
  }
2066
2093
 
@@ -2149,7 +2176,7 @@
2149
2176
  min-inline-size: 0;
2150
2177
  max-inline-size: 55%;
2151
2178
  align-items: center;
2152
- gap: 0.375rem;
2179
+ gap: 0.5rem;
2153
2180
  margin-inline-start: auto;
2154
2181
  padding: 0;
2155
2182
  border: 0;
@@ -2172,7 +2199,7 @@
2172
2199
  line rather than squeezing the label. */
2173
2200
  .agentkit-activity-row {
2174
2201
  flex-wrap: wrap;
2175
- row-gap: 0.125rem;
2202
+ row-gap: 0.25rem;
2176
2203
  }
2177
2204
 
2178
2205
  .agentkit-activity-row > .agentkit-activity-detail {
@@ -2220,7 +2247,7 @@
2220
2247
  overflow: auto;
2221
2248
  border: 1px solid var(--agentkit-border);
2222
2249
  border-radius: var(--radius-md, var(--radius));
2223
- padding: 0.5rem 0.625rem;
2250
+ padding: 0.5rem 0.75rem;
2224
2251
  background: var(--agentkit-subtle);
2225
2252
  color: var(--agentkit-text);
2226
2253
  font: inherit;
@@ -2252,7 +2279,7 @@
2252
2279
 
2253
2280
  .agentkit-connection-request-copy,
2254
2281
  .agentkit-widget {
2255
- padding: 0.875rem;
2282
+ padding: 1rem;
2256
2283
  }
2257
2284
 
2258
2285
  .agentkit-widget {
@@ -2276,7 +2303,7 @@
2276
2303
  .agentkit-connection-request-copy {
2277
2304
  display: flex;
2278
2305
  align-items: flex-start;
2279
- gap: 0.625rem;
2306
+ gap: 0.75rem;
2280
2307
  }
2281
2308
 
2282
2309
  .agentkit-connection-request-copy > .agentkit-icon {
@@ -2294,28 +2321,28 @@
2294
2321
  .agentkit-connection-request-actions {
2295
2322
  display: flex;
2296
2323
  justify-content: flex-end;
2297
- gap: 0.375rem;
2298
- padding: 0.625rem 0.875rem;
2324
+ gap: 0.5rem;
2325
+ padding: 0.75rem 1rem;
2299
2326
  border-block-start: 1px solid var(--agentkit-border);
2300
2327
  }
2301
2328
 
2302
2329
  .agentkit-connection-request > .agentkit-command-error {
2303
2330
  display: flex;
2304
2331
  align-items: center;
2305
- gap: 0.375rem;
2332
+ gap: 0.5rem;
2306
2333
  margin: 0;
2307
- padding: 0 0.875rem 0.75rem;
2334
+ padding: 0 1rem 0.75rem;
2308
2335
  }
2309
2336
 
2310
2337
  .agentkit-approval-options {
2311
2338
  display: grid;
2312
- gap: 0.375rem;
2339
+ gap: 0.5rem;
2313
2340
  }
2314
2341
 
2315
2342
  .agentkit-approval-options button {
2316
2343
  display: grid;
2317
- gap: 0.125rem;
2318
- padding: 0.625rem 0.75rem;
2344
+ gap: 0.25rem;
2345
+ padding: 0.75rem;
2319
2346
  border: 1px solid var(--agentkit-border);
2320
2347
  border-radius: var(--radius-md, var(--radius));
2321
2348
  color: var(--agentkit-text);
@@ -2359,15 +2386,15 @@
2359
2386
  .agentkit-widget-actions {
2360
2387
  display: flex;
2361
2388
  justify-content: flex-end;
2362
- gap: 0.375rem;
2363
- padding: 0.625rem 0.875rem;
2389
+ gap: 0.5rem;
2390
+ padding: 0.75rem 1rem;
2364
2391
  border-block-start: 1px solid var(--agentkit-border);
2365
2392
  }
2366
2393
 
2367
2394
  /* Full-bleed divider inside the padded widget card. */
2368
2395
  .agentkit-widget-actions {
2369
- margin-inline: -0.875rem;
2370
- margin-block-end: -0.875rem;
2396
+ margin-inline: -1rem;
2397
+ margin-block-end: -1rem;
2371
2398
  }
2372
2399
 
2373
2400
  /* Plain buttons only: a design-system Button would also pick up the
@@ -2405,7 +2432,7 @@
2405
2432
  .agentkit-file {
2406
2433
  display: inline-flex;
2407
2434
  align-items: center;
2408
- gap: 0.375rem;
2435
+ gap: 0.5rem;
2409
2436
  color: var(--agentkit-text-muted-strong);
2410
2437
  text-decoration: none;
2411
2438
  }
@@ -2413,7 +2440,8 @@
2413
2440
  .agentkit-file--pasted-text {
2414
2441
  border: 1px solid var(--agentkit-border);
2415
2442
  border-radius: 999px;
2416
- padding: 0.125rem 0.5rem;
2443
+ min-block-size: 1.5rem;
2444
+ padding: 0 0.5rem;
2417
2445
  font-size: 0.75rem;
2418
2446
  }
2419
2447
 
@@ -2421,7 +2449,7 @@
2421
2449
  .agentkit-citations {
2422
2450
  display: flex;
2423
2451
  flex-wrap: wrap;
2424
- gap: 0.375rem;
2452
+ gap: 0.5rem;
2425
2453
  margin-block-start: 0.5rem;
2426
2454
  font-size: 0.75rem;
2427
2455
  }
@@ -2439,7 +2467,7 @@
2439
2467
  }
2440
2468
 
2441
2469
  .agentkit-reasoning {
2442
- margin-block: 0.375rem 0.75rem;
2470
+ margin-block: 0.5rem 0.75rem;
2443
2471
  color: var(--agentkit-text-muted);
2444
2472
  font-size: 0.8125rem;
2445
2473
  }
@@ -2489,9 +2517,9 @@
2489
2517
  display: grid;
2490
2518
  grid-template-columns: auto minmax(0, 1fr);
2491
2519
  align-items: start;
2492
- gap: 0.125rem 0.5rem;
2520
+ gap: 0.25rem 0.5rem;
2493
2521
  margin-block: var(--agentkit-run-segment-gap, 0.75rem);
2494
- padding: 0.75rem 0.875rem;
2522
+ padding: 0.75rem 1rem;
2495
2523
  border: 1px solid
2496
2524
  color-mix(in srgb, var(--agentkit-danger) 32%, var(--agentkit-border));
2497
2525
  border-radius: var(--agentkit-radius-inner);
@@ -2538,7 +2566,7 @@
2538
2566
  min-inline-size: 0;
2539
2567
  overflow-wrap: anywhere;
2540
2568
  flex-wrap: wrap;
2541
- gap: 0.125rem 0.375rem;
2569
+ gap: 0.25rem 0.5rem;
2542
2570
  }
2543
2571
 
2544
2572
  .agentkit-run-failure-copy strong {
@@ -2770,7 +2798,7 @@
2770
2798
  runs out of room; then the name truncates and its effort stays. */
2771
2799
  @container (max-width: 24rem) {
2772
2800
  .agentkit-composer [data-agent-composer-slot="toolbar"] {
2773
- --agentkit-composer-toolbar-control-gap: 0.125rem;
2801
+ --agentkit-composer-toolbar-control-gap: 0;
2774
2802
  }
2775
2803
  }
2776
2804
  }
@@ -1,5 +1,25 @@
1
1
  import { type AgentKitController } from "@agent-native/agentkit/client";
2
- import type { AgentMessage } from "@agent-native/agentkit/protocol";
2
+ import { type AgentEvent, type AgentMessage } from "@agent-native/agentkit/protocol";
3
+ import { type RealtimeVoiceWorkUpdate } from "../../../composer/realtime-voice-transcript.js";
4
+ /**
5
+ * The events a voice reply's work still needs in its thread, as one local
6
+ * run. The run never starts on the server, so it never counts as an active
7
+ * run that would hold the composer or the transcript. `existingIds` and
8
+ * `lastSequence` describe the run as the thread already has it.
9
+ */
10
+ export declare function realtimeVoiceWorkEvents(update: RealtimeVoiceWorkUpdate, existingIds?: ReadonlySet<string>, lastSequence?: number): AgentEvent[];
11
+ interface VoiceRunThread {
12
+ events: readonly AgentEvent[];
13
+ runs: Readonly<Record<string, {
14
+ lastSequence: number;
15
+ }>>;
16
+ }
17
+ /**
18
+ * The events that end, as cancelled, every voice run in `thread` with no
19
+ * terminal event. A snapshot saved while a call ran keeps such a run after a
20
+ * reload, and nothing is left to finish it.
21
+ */
22
+ export declare function orphanedVoiceWorkEvents(thread: VoiceRunThread, threadId: string, completedAt?: string): AgentEvent[];
3
23
  /** A voice chat turn still being spoken; hosts must not save it. */
4
24
  export declare function isStreamingVoiceMessage(message: AgentMessage): boolean;
5
25
  /**
@@ -8,4 +28,5 @@ export declare function isStreamingVoiceMessage(message: AgentMessage): boolean;
8
28
  * reload shows the conversation; a turn still being spoken is never saved.
9
29
  */
10
30
  export declare function useRealtimeVoiceTranscripts(controller: AgentKitController, threadId: string | undefined, running: boolean): void;
31
+ export {};
11
32
  //# sourceMappingURL=voice-transcripts.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"voice-transcripts.d.ts","sourceRoot":"","sources":["../../../../src/app/agentkit/react/voice-transcripts.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,kBAAkB,EACxB,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AA2BpE,oEAAoE;AACpE,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAMtE;AAED;;;;GAIG;AACH,wBAAgB,2BAA2B,CACzC,UAAU,EAAE,kBAAkB,EAC9B,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,OAAO,EAAE,OAAO,GACf,IAAI,CAuBN"}
1
+ {"version":3,"file":"voice-transcripts.d.ts","sourceRoot":"","sources":["../../../../src/app/agentkit/react/voice-transcripts.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,kBAAkB,EACxB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAGL,KAAK,UAAU,EACf,KAAK,YAAY,EAElB,MAAM,iCAAiC,CAAC;AAGzC,OAAO,EAKL,KAAK,uBAAuB,EAC7B,MAAM,gDAAgD,CAAC;AAsBxD;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,uBAAuB,EAC/B,WAAW,GAAE,WAAW,CAAC,MAAM,CAAa,EAC5C,YAAY,SAAI,GACf,UAAU,EAAE,CAqFd;AAQD,UAAU,cAAc;IACtB,MAAM,EAAE,SAAS,UAAU,EAAE,CAAC;IAC9B,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE;QAAE,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,CAAC;CAC1D;AAcD;;;;GAIG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,cAAc,EACtB,QAAQ,EAAE,MAAM,EAChB,WAAW,SAA2B,GACrC,UAAU,EAAE,CAsCd;AAED,oEAAoE;AACpE,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAMtE;AAED;;;;GAIG;AACH,wBAAgB,2BAA2B,CACzC,UAAU,EAAE,kBAAkB,EAC9B,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,OAAO,EAAE,OAAO,GACf,IAAI,CAiFN"}