@agent-native/core 0.79.26 → 0.79.27

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 (2042) hide show
  1. package/corpus/README.md +2 -2
  2. package/corpus/core/CHANGELOG.md +13 -0
  3. package/corpus/core/docs/content/a2a-protocol.mdx +97 -9
  4. package/corpus/core/docs/content/actions.mdx +65 -4
  5. package/corpus/core/docs/content/agent-mentions.mdx +68 -4
  6. package/corpus/core/docs/content/agent-surfaces.mdx +112 -8
  7. package/corpus/core/docs/content/agent-teams.mdx +171 -12
  8. package/corpus/core/docs/content/agent-web-surfaces.mdx +51 -4
  9. package/corpus/core/docs/content/authentication.mdx +122 -8
  10. package/corpus/core/docs/content/automations.mdx +110 -8
  11. package/corpus/core/docs/content/blueprint-installer.mdx +42 -4
  12. package/corpus/core/docs/content/cli-adapters.mdx +44 -4
  13. package/corpus/core/docs/content/client.mdx +79 -8
  14. package/corpus/core/docs/content/cloneable-saas.mdx +85 -8
  15. package/corpus/core/docs/content/code-agents-ui.mdx +98 -8
  16. package/corpus/core/docs/content/components.mdx +118 -8
  17. package/corpus/core/docs/content/context-awareness.mdx +98 -8
  18. package/corpus/core/docs/content/creating-templates.mdx +49 -4
  19. package/corpus/core/docs/content/cross-app-sso.mdx +109 -8
  20. package/corpus/core/docs/content/database.mdx +56 -4
  21. package/corpus/core/docs/content/deployment.mdx +103 -8
  22. package/corpus/core/docs/content/dispatch.mdx +134 -8
  23. package/corpus/core/docs/content/drop-in-agent.mdx +63 -4
  24. package/corpus/core/docs/content/durable-background-runs.mdx +98 -8
  25. package/corpus/core/docs/content/durable-resume.mdx +47 -4
  26. package/corpus/core/docs/content/embedding-sdk.mdx +83 -8
  27. package/corpus/core/docs/content/evals.mdx +102 -8
  28. package/corpus/core/docs/content/extensions.mdx +113 -9
  29. package/corpus/core/docs/content/external-agents.mdx +119 -8
  30. package/corpus/core/docs/content/faq.mdx +98 -8
  31. package/corpus/core/docs/content/file-uploads.mdx +61 -4
  32. package/corpus/core/docs/content/frames.mdx +90 -8
  33. package/corpus/core/docs/content/generative-ui.mdx +50 -4
  34. package/corpus/core/docs/content/getting-started.mdx +34 -4
  35. package/corpus/core/docs/content/harness-agents.mdx +77 -8
  36. package/corpus/core/docs/content/human-approval.mdx +50 -4
  37. package/corpus/core/docs/content/key-concepts.mdx +102 -8
  38. package/corpus/core/docs/content/local-file-mode.mdx +58 -4
  39. package/corpus/core/docs/content/locales/ar-SA/a2a-protocol.mdx +97 -9
  40. package/corpus/core/docs/content/locales/ar-SA/actions.mdx +65 -4
  41. package/corpus/core/docs/content/locales/ar-SA/agent-mentions.mdx +68 -4
  42. package/corpus/core/docs/content/locales/ar-SA/agent-surfaces.mdx +114 -8
  43. package/corpus/core/docs/content/locales/ar-SA/agent-teams.mdx +174 -12
  44. package/corpus/core/docs/content/locales/ar-SA/agent-web-surfaces.mdx +49 -4
  45. package/corpus/core/docs/content/locales/ar-SA/authentication.mdx +120 -8
  46. package/corpus/core/docs/content/locales/ar-SA/automations.mdx +110 -8
  47. package/corpus/core/docs/content/locales/ar-SA/blueprint-installer.mdx +42 -4
  48. package/corpus/core/docs/content/locales/ar-SA/cli-adapters.mdx +40 -4
  49. package/corpus/core/docs/content/locales/ar-SA/client.mdx +80 -8
  50. package/corpus/core/docs/content/locales/ar-SA/cloneable-saas.mdx +85 -8
  51. package/corpus/core/docs/content/locales/ar-SA/code-agents-ui.mdx +99 -8
  52. package/corpus/core/docs/content/locales/ar-SA/components.mdx +114 -8
  53. package/corpus/core/docs/content/locales/ar-SA/context-awareness.mdx +100 -8
  54. package/corpus/core/docs/content/locales/ar-SA/creating-templates.mdx +51 -4
  55. package/corpus/core/docs/content/locales/ar-SA/cross-app-sso.mdx +109 -8
  56. package/corpus/core/docs/content/locales/ar-SA/database.mdx +52 -4
  57. package/corpus/core/docs/content/locales/ar-SA/deployment.mdx +103 -8
  58. package/corpus/core/docs/content/locales/ar-SA/dispatch.mdx +134 -8
  59. package/corpus/core/docs/content/locales/ar-SA/drop-in-agent.mdx +63 -4
  60. package/corpus/core/docs/content/locales/ar-SA/durable-resume.mdx +47 -4
  61. package/corpus/core/docs/content/locales/ar-SA/embedding-sdk.mdx +83 -8
  62. package/corpus/core/docs/content/locales/ar-SA/evals.mdx +102 -8
  63. package/corpus/core/docs/content/locales/ar-SA/extensions.mdx +113 -9
  64. package/corpus/core/docs/content/locales/ar-SA/external-agents.mdx +119 -8
  65. package/corpus/core/docs/content/locales/ar-SA/faq.mdx +98 -8
  66. package/corpus/core/docs/content/locales/ar-SA/file-uploads.mdx +61 -4
  67. package/corpus/core/docs/content/locales/ar-SA/frames.mdx +88 -8
  68. package/corpus/core/docs/content/locales/ar-SA/getting-started.mdx +34 -4
  69. package/corpus/core/docs/content/locales/ar-SA/harness-agents.mdx +79 -8
  70. package/corpus/core/docs/content/locales/ar-SA/human-approval.mdx +50 -4
  71. package/corpus/core/docs/content/locales/ar-SA/key-concepts.mdx +107 -8
  72. package/corpus/core/docs/content/locales/ar-SA/local-file-mode.mdx +56 -4
  73. package/corpus/core/docs/content/locales/ar-SA/mcp-apps.mdx +120 -10
  74. package/corpus/core/docs/content/locales/ar-SA/mcp-clients.mdx +133 -8
  75. package/corpus/core/docs/content/locales/ar-SA/mcp-protocol.mdx +105 -8
  76. package/corpus/core/docs/content/locales/ar-SA/messaging.mdx +115 -8
  77. package/corpus/core/docs/content/locales/ar-SA/migration-workbench.mdx +47 -4
  78. package/corpus/core/docs/content/locales/ar-SA/multi-app-workspace.mdx +91 -8
  79. package/corpus/core/docs/content/locales/ar-SA/multi-tenancy.mdx +80 -8
  80. package/corpus/core/docs/content/locales/ar-SA/native-chat-ui.mdx +104 -8
  81. package/corpus/core/docs/content/locales/ar-SA/notifications.mdx +135 -8
  82. package/corpus/core/docs/content/locales/ar-SA/observability.mdx +102 -8
  83. package/corpus/core/docs/content/locales/ar-SA/observational-memory.mdx +87 -8
  84. package/corpus/core/docs/content/locales/ar-SA/onboarding.mdx +45 -4
  85. package/corpus/core/docs/content/locales/ar-SA/plan-plugin.mdx +99 -8
  86. package/corpus/core/docs/content/locales/ar-SA/pr-visual-recap.mdx +125 -8
  87. package/corpus/core/docs/content/locales/ar-SA/processors.mdx +41 -4
  88. package/corpus/core/docs/content/locales/ar-SA/progress.mdx +46 -4
  89. package/corpus/core/docs/content/locales/ar-SA/pure-agent-apps.mdx +48 -4
  90. package/corpus/core/docs/content/locales/ar-SA/real-time-collaboration.mdx +102 -8
  91. package/corpus/core/docs/content/locales/ar-SA/recurring-jobs.mdx +59 -4
  92. package/corpus/core/docs/content/locales/ar-SA/routing.mdx +44 -5
  93. package/corpus/core/docs/content/locales/ar-SA/sandbox-adapters.mdx +43 -4
  94. package/corpus/core/docs/content/locales/ar-SA/security.mdx +80 -8
  95. package/corpus/core/docs/content/locales/ar-SA/server.mdx +173 -12
  96. package/corpus/core/docs/content/locales/ar-SA/sharing.mdx +45 -4
  97. package/corpus/core/docs/content/locales/ar-SA/skills-guide.mdx +118 -9
  98. package/corpus/core/docs/content/locales/ar-SA/template-analytics.mdx +46 -4
  99. package/corpus/core/docs/content/locales/ar-SA/template-assets.mdx +62 -4
  100. package/corpus/core/docs/content/locales/ar-SA/template-brain.mdx +65 -4
  101. package/corpus/core/docs/content/locales/ar-SA/template-calendar.mdx +62 -4
  102. package/corpus/core/docs/content/locales/ar-SA/template-chat.mdx +61 -4
  103. package/corpus/core/docs/content/locales/ar-SA/template-clips.mdx +52 -4
  104. package/corpus/core/docs/content/locales/ar-SA/template-content.mdx +62 -4
  105. package/corpus/core/docs/content/locales/ar-SA/template-design.mdx +60 -4
  106. package/corpus/core/docs/content/locales/ar-SA/template-dispatch.mdx +57 -4
  107. package/corpus/core/docs/content/locales/ar-SA/template-forms.mdx +62 -4
  108. package/corpus/core/docs/content/locales/ar-SA/template-mail.mdx +60 -4
  109. package/corpus/core/docs/content/locales/ar-SA/template-plan.mdx +61 -4
  110. package/corpus/core/docs/content/locales/ar-SA/template-slides.mdx +49 -4
  111. package/corpus/core/docs/content/locales/ar-SA/template-videos.mdx +53 -4
  112. package/corpus/core/docs/content/locales/ar-SA/tracking.mdx +54 -4
  113. package/corpus/core/docs/content/locales/ar-SA/using-your-agent.mdx +51 -4
  114. package/corpus/core/docs/content/locales/ar-SA/voice-input.mdx +43 -4
  115. package/corpus/core/docs/content/locales/ar-SA/what-is-agent-native.mdx +96 -8
  116. package/corpus/core/docs/content/locales/ar-SA/workspace-connections.mdx +128 -8
  117. package/corpus/core/docs/content/locales/ar-SA/workspace-management.mdx +50 -4
  118. package/corpus/core/docs/content/locales/ar-SA/workspace.mdx +112 -8
  119. package/corpus/core/docs/content/locales/ar-SA/writing-agent-instructions.mdx +41 -4
  120. package/corpus/core/docs/content/locales/de-DE/a2a-protocol.mdx +99 -9
  121. package/corpus/core/docs/content/locales/de-DE/actions.mdx +67 -4
  122. package/corpus/core/docs/content/locales/de-DE/agent-mentions.mdx +68 -4
  123. package/corpus/core/docs/content/locales/de-DE/agent-surfaces.mdx +116 -8
  124. package/corpus/core/docs/content/locales/de-DE/agent-teams.mdx +171 -12
  125. package/corpus/core/docs/content/locales/de-DE/agent-web-surfaces.mdx +51 -4
  126. package/corpus/core/docs/content/locales/de-DE/authentication.mdx +122 -8
  127. package/corpus/core/docs/content/locales/de-DE/automations.mdx +110 -8
  128. package/corpus/core/docs/content/locales/de-DE/blueprint-installer.mdx +42 -4
  129. package/corpus/core/docs/content/locales/de-DE/cli-adapters.mdx +44 -4
  130. package/corpus/core/docs/content/locales/de-DE/client.mdx +79 -8
  131. package/corpus/core/docs/content/locales/de-DE/cloneable-saas.mdx +85 -8
  132. package/corpus/core/docs/content/locales/de-DE/code-agents-ui.mdx +100 -8
  133. package/corpus/core/docs/content/locales/de-DE/components.mdx +118 -8
  134. package/corpus/core/docs/content/locales/de-DE/context-awareness.mdx +98 -8
  135. package/corpus/core/docs/content/locales/de-DE/creating-templates.mdx +51 -4
  136. package/corpus/core/docs/content/locales/de-DE/cross-app-sso.mdx +109 -8
  137. package/corpus/core/docs/content/locales/de-DE/database.mdx +52 -4
  138. package/corpus/core/docs/content/locales/de-DE/deployment.mdx +103 -8
  139. package/corpus/core/docs/content/locales/de-DE/dispatch.mdx +134 -8
  140. package/corpus/core/docs/content/locales/de-DE/drop-in-agent.mdx +63 -4
  141. package/corpus/core/docs/content/locales/de-DE/durable-resume.mdx +47 -4
  142. package/corpus/core/docs/content/locales/de-DE/embedding-sdk.mdx +85 -8
  143. package/corpus/core/docs/content/locales/de-DE/evals.mdx +102 -8
  144. package/corpus/core/docs/content/locales/de-DE/extensions.mdx +113 -9
  145. package/corpus/core/docs/content/locales/de-DE/external-agents.mdx +119 -8
  146. package/corpus/core/docs/content/locales/de-DE/faq.mdx +98 -8
  147. package/corpus/core/docs/content/locales/de-DE/file-uploads.mdx +61 -4
  148. package/corpus/core/docs/content/locales/de-DE/frames.mdx +88 -8
  149. package/corpus/core/docs/content/locales/de-DE/getting-started.mdx +34 -4
  150. package/corpus/core/docs/content/locales/de-DE/harness-agents.mdx +79 -8
  151. package/corpus/core/docs/content/locales/de-DE/human-approval.mdx +50 -4
  152. package/corpus/core/docs/content/locales/de-DE/key-concepts.mdx +104 -8
  153. package/corpus/core/docs/content/locales/de-DE/local-file-mode.mdx +58 -4
  154. package/corpus/core/docs/content/locales/de-DE/mcp-apps.mdx +120 -10
  155. package/corpus/core/docs/content/locales/de-DE/mcp-clients.mdx +133 -8
  156. package/corpus/core/docs/content/locales/de-DE/mcp-protocol.mdx +105 -8
  157. package/corpus/core/docs/content/locales/de-DE/messaging.mdx +115 -8
  158. package/corpus/core/docs/content/locales/de-DE/migration-workbench.mdx +47 -4
  159. package/corpus/core/docs/content/locales/de-DE/multi-app-workspace.mdx +91 -8
  160. package/corpus/core/docs/content/locales/de-DE/multi-tenancy.mdx +80 -8
  161. package/corpus/core/docs/content/locales/de-DE/native-chat-ui.mdx +108 -8
  162. package/corpus/core/docs/content/locales/de-DE/notifications.mdx +135 -8
  163. package/corpus/core/docs/content/locales/de-DE/observability.mdx +102 -8
  164. package/corpus/core/docs/content/locales/de-DE/observational-memory.mdx +92 -8
  165. package/corpus/core/docs/content/locales/de-DE/onboarding.mdx +45 -4
  166. package/corpus/core/docs/content/locales/de-DE/plan-plugin.mdx +99 -8
  167. package/corpus/core/docs/content/locales/de-DE/pr-visual-recap.mdx +125 -8
  168. package/corpus/core/docs/content/locales/de-DE/processors.mdx +41 -4
  169. package/corpus/core/docs/content/locales/de-DE/progress.mdx +46 -4
  170. package/corpus/core/docs/content/locales/de-DE/pure-agent-apps.mdx +50 -4
  171. package/corpus/core/docs/content/locales/de-DE/real-time-collaboration.mdx +104 -8
  172. package/corpus/core/docs/content/locales/de-DE/recurring-jobs.mdx +59 -4
  173. package/corpus/core/docs/content/locales/de-DE/routing.mdx +44 -5
  174. package/corpus/core/docs/content/locales/de-DE/sandbox-adapters.mdx +43 -4
  175. package/corpus/core/docs/content/locales/de-DE/security.mdx +80 -8
  176. package/corpus/core/docs/content/locales/de-DE/server.mdx +171 -12
  177. package/corpus/core/docs/content/locales/de-DE/sharing.mdx +45 -4
  178. package/corpus/core/docs/content/locales/de-DE/skills-guide.mdx +118 -9
  179. package/corpus/core/docs/content/locales/de-DE/template-analytics.mdx +46 -4
  180. package/corpus/core/docs/content/locales/de-DE/template-assets.mdx +62 -4
  181. package/corpus/core/docs/content/locales/de-DE/template-brain.mdx +69 -4
  182. package/corpus/core/docs/content/locales/de-DE/template-calendar.mdx +62 -4
  183. package/corpus/core/docs/content/locales/de-DE/template-chat.mdx +61 -4
  184. package/corpus/core/docs/content/locales/de-DE/template-clips.mdx +52 -4
  185. package/corpus/core/docs/content/locales/de-DE/template-content.mdx +60 -4
  186. package/corpus/core/docs/content/locales/de-DE/template-design.mdx +58 -4
  187. package/corpus/core/docs/content/locales/de-DE/template-dispatch.mdx +57 -4
  188. package/corpus/core/docs/content/locales/de-DE/template-forms.mdx +64 -4
  189. package/corpus/core/docs/content/locales/de-DE/template-mail.mdx +60 -4
  190. package/corpus/core/docs/content/locales/de-DE/template-plan.mdx +63 -4
  191. package/corpus/core/docs/content/locales/de-DE/template-slides.mdx +49 -4
  192. package/corpus/core/docs/content/locales/de-DE/template-videos.mdx +53 -4
  193. package/corpus/core/docs/content/locales/de-DE/tracking.mdx +54 -4
  194. package/corpus/core/docs/content/locales/de-DE/using-your-agent.mdx +51 -4
  195. package/corpus/core/docs/content/locales/de-DE/voice-input.mdx +45 -4
  196. package/corpus/core/docs/content/locales/de-DE/what-is-agent-native.mdx +100 -8
  197. package/corpus/core/docs/content/locales/de-DE/workspace-connections.mdx +128 -8
  198. package/corpus/core/docs/content/locales/de-DE/workspace-management.mdx +50 -4
  199. package/corpus/core/docs/content/locales/de-DE/workspace.mdx +111 -8
  200. package/corpus/core/docs/content/locales/de-DE/writing-agent-instructions.mdx +45 -4
  201. package/corpus/core/docs/content/locales/es-ES/a2a-protocol.mdx +99 -9
  202. package/corpus/core/docs/content/locales/es-ES/actions.mdx +67 -4
  203. package/corpus/core/docs/content/locales/es-ES/agent-mentions.mdx +68 -4
  204. package/corpus/core/docs/content/locales/es-ES/agent-surfaces.mdx +120 -8
  205. package/corpus/core/docs/content/locales/es-ES/agent-teams.mdx +172 -12
  206. package/corpus/core/docs/content/locales/es-ES/agent-web-surfaces.mdx +51 -4
  207. package/corpus/core/docs/content/locales/es-ES/authentication.mdx +122 -8
  208. package/corpus/core/docs/content/locales/es-ES/automations.mdx +110 -8
  209. package/corpus/core/docs/content/locales/es-ES/blueprint-installer.mdx +42 -4
  210. package/corpus/core/docs/content/locales/es-ES/cli-adapters.mdx +44 -4
  211. package/corpus/core/docs/content/locales/es-ES/client.mdx +79 -8
  212. package/corpus/core/docs/content/locales/es-ES/cloneable-saas.mdx +85 -8
  213. package/corpus/core/docs/content/locales/es-ES/code-agents-ui.mdx +101 -8
  214. package/corpus/core/docs/content/locales/es-ES/components.mdx +118 -8
  215. package/corpus/core/docs/content/locales/es-ES/context-awareness.mdx +98 -8
  216. package/corpus/core/docs/content/locales/es-ES/creating-templates.mdx +51 -4
  217. package/corpus/core/docs/content/locales/es-ES/cross-app-sso.mdx +109 -8
  218. package/corpus/core/docs/content/locales/es-ES/database.mdx +52 -4
  219. package/corpus/core/docs/content/locales/es-ES/deployment.mdx +103 -8
  220. package/corpus/core/docs/content/locales/es-ES/dispatch.mdx +134 -8
  221. package/corpus/core/docs/content/locales/es-ES/drop-in-agent.mdx +63 -4
  222. package/corpus/core/docs/content/locales/es-ES/durable-resume.mdx +47 -4
  223. package/corpus/core/docs/content/locales/es-ES/embedding-sdk.mdx +87 -8
  224. package/corpus/core/docs/content/locales/es-ES/evals.mdx +102 -8
  225. package/corpus/core/docs/content/locales/es-ES/extensions.mdx +113 -9
  226. package/corpus/core/docs/content/locales/es-ES/external-agents.mdx +119 -8
  227. package/corpus/core/docs/content/locales/es-ES/faq.mdx +98 -8
  228. package/corpus/core/docs/content/locales/es-ES/file-uploads.mdx +61 -4
  229. package/corpus/core/docs/content/locales/es-ES/frames.mdx +88 -8
  230. package/corpus/core/docs/content/locales/es-ES/getting-started.mdx +34 -4
  231. package/corpus/core/docs/content/locales/es-ES/harness-agents.mdx +79 -8
  232. package/corpus/core/docs/content/locales/es-ES/human-approval.mdx +50 -4
  233. package/corpus/core/docs/content/locales/es-ES/key-concepts.mdx +104 -8
  234. package/corpus/core/docs/content/locales/es-ES/local-file-mode.mdx +60 -4
  235. package/corpus/core/docs/content/locales/es-ES/mcp-apps.mdx +120 -10
  236. package/corpus/core/docs/content/locales/es-ES/mcp-clients.mdx +135 -8
  237. package/corpus/core/docs/content/locales/es-ES/mcp-protocol.mdx +105 -8
  238. package/corpus/core/docs/content/locales/es-ES/messaging.mdx +115 -8
  239. package/corpus/core/docs/content/locales/es-ES/migration-workbench.mdx +47 -4
  240. package/corpus/core/docs/content/locales/es-ES/multi-app-workspace.mdx +91 -8
  241. package/corpus/core/docs/content/locales/es-ES/multi-tenancy.mdx +80 -8
  242. package/corpus/core/docs/content/locales/es-ES/native-chat-ui.mdx +108 -8
  243. package/corpus/core/docs/content/locales/es-ES/notifications.mdx +135 -8
  244. package/corpus/core/docs/content/locales/es-ES/observability.mdx +104 -8
  245. package/corpus/core/docs/content/locales/es-ES/observational-memory.mdx +92 -8
  246. package/corpus/core/docs/content/locales/es-ES/onboarding.mdx +45 -4
  247. package/corpus/core/docs/content/locales/es-ES/plan-plugin.mdx +99 -8
  248. package/corpus/core/docs/content/locales/es-ES/pr-visual-recap.mdx +125 -8
  249. package/corpus/core/docs/content/locales/es-ES/processors.mdx +41 -4
  250. package/corpus/core/docs/content/locales/es-ES/progress.mdx +46 -4
  251. package/corpus/core/docs/content/locales/es-ES/pure-agent-apps.mdx +50 -4
  252. package/corpus/core/docs/content/locales/es-ES/real-time-collaboration.mdx +109 -8
  253. package/corpus/core/docs/content/locales/es-ES/recurring-jobs.mdx +59 -4
  254. package/corpus/core/docs/content/locales/es-ES/routing.mdx +44 -5
  255. package/corpus/core/docs/content/locales/es-ES/sandbox-adapters.mdx +44 -4
  256. package/corpus/core/docs/content/locales/es-ES/security.mdx +82 -8
  257. package/corpus/core/docs/content/locales/es-ES/server.mdx +173 -12
  258. package/corpus/core/docs/content/locales/es-ES/sharing.mdx +45 -4
  259. package/corpus/core/docs/content/locales/es-ES/skills-guide.mdx +118 -9
  260. package/corpus/core/docs/content/locales/es-ES/template-analytics.mdx +46 -4
  261. package/corpus/core/docs/content/locales/es-ES/template-assets.mdx +64 -4
  262. package/corpus/core/docs/content/locales/es-ES/template-brain.mdx +69 -4
  263. package/corpus/core/docs/content/locales/es-ES/template-calendar.mdx +62 -4
  264. package/corpus/core/docs/content/locales/es-ES/template-chat.mdx +61 -4
  265. package/corpus/core/docs/content/locales/es-ES/template-clips.mdx +52 -4
  266. package/corpus/core/docs/content/locales/es-ES/template-content.mdx +64 -4
  267. package/corpus/core/docs/content/locales/es-ES/template-design.mdx +58 -4
  268. package/corpus/core/docs/content/locales/es-ES/template-dispatch.mdx +57 -4
  269. package/corpus/core/docs/content/locales/es-ES/template-forms.mdx +64 -4
  270. package/corpus/core/docs/content/locales/es-ES/template-mail.mdx +60 -4
  271. package/corpus/core/docs/content/locales/es-ES/template-plan.mdx +61 -4
  272. package/corpus/core/docs/content/locales/es-ES/template-slides.mdx +49 -4
  273. package/corpus/core/docs/content/locales/es-ES/template-videos.mdx +53 -4
  274. package/corpus/core/docs/content/locales/es-ES/tracking.mdx +54 -4
  275. package/corpus/core/docs/content/locales/es-ES/using-your-agent.mdx +51 -4
  276. package/corpus/core/docs/content/locales/es-ES/voice-input.mdx +45 -4
  277. package/corpus/core/docs/content/locales/es-ES/what-is-agent-native.mdx +99 -8
  278. package/corpus/core/docs/content/locales/es-ES/workspace-connections.mdx +128 -8
  279. package/corpus/core/docs/content/locales/es-ES/workspace-management.mdx +50 -4
  280. package/corpus/core/docs/content/locales/es-ES/workspace.mdx +112 -8
  281. package/corpus/core/docs/content/locales/es-ES/writing-agent-instructions.mdx +46 -4
  282. package/corpus/core/docs/content/locales/fr-FR/a2a-protocol.mdx +97 -9
  283. package/corpus/core/docs/content/locales/fr-FR/actions.mdx +67 -4
  284. package/corpus/core/docs/content/locales/fr-FR/agent-mentions.mdx +68 -4
  285. package/corpus/core/docs/content/locales/fr-FR/agent-surfaces.mdx +118 -8
  286. package/corpus/core/docs/content/locales/fr-FR/agent-teams.mdx +172 -12
  287. package/corpus/core/docs/content/locales/fr-FR/agent-web-surfaces.mdx +51 -4
  288. package/corpus/core/docs/content/locales/fr-FR/authentication.mdx +122 -8
  289. package/corpus/core/docs/content/locales/fr-FR/automations.mdx +110 -8
  290. package/corpus/core/docs/content/locales/fr-FR/blueprint-installer.mdx +42 -4
  291. package/corpus/core/docs/content/locales/fr-FR/cli-adapters.mdx +44 -4
  292. package/corpus/core/docs/content/locales/fr-FR/client.mdx +81 -8
  293. package/corpus/core/docs/content/locales/fr-FR/cloneable-saas.mdx +85 -8
  294. package/corpus/core/docs/content/locales/fr-FR/code-agents-ui.mdx +102 -8
  295. package/corpus/core/docs/content/locales/fr-FR/components.mdx +118 -8
  296. package/corpus/core/docs/content/locales/fr-FR/context-awareness.mdx +98 -8
  297. package/corpus/core/docs/content/locales/fr-FR/creating-templates.mdx +49 -4
  298. package/corpus/core/docs/content/locales/fr-FR/cross-app-sso.mdx +109 -8
  299. package/corpus/core/docs/content/locales/fr-FR/database.mdx +52 -4
  300. package/corpus/core/docs/content/locales/fr-FR/deployment.mdx +103 -8
  301. package/corpus/core/docs/content/locales/fr-FR/dispatch.mdx +134 -8
  302. package/corpus/core/docs/content/locales/fr-FR/drop-in-agent.mdx +63 -4
  303. package/corpus/core/docs/content/locales/fr-FR/durable-resume.mdx +47 -4
  304. package/corpus/core/docs/content/locales/fr-FR/embedding-sdk.mdx +87 -8
  305. package/corpus/core/docs/content/locales/fr-FR/evals.mdx +102 -8
  306. package/corpus/core/docs/content/locales/fr-FR/extensions.mdx +113 -9
  307. package/corpus/core/docs/content/locales/fr-FR/external-agents.mdx +119 -8
  308. package/corpus/core/docs/content/locales/fr-FR/faq.mdx +98 -8
  309. package/corpus/core/docs/content/locales/fr-FR/file-uploads.mdx +61 -4
  310. package/corpus/core/docs/content/locales/fr-FR/frames.mdx +90 -8
  311. package/corpus/core/docs/content/locales/fr-FR/getting-started.mdx +34 -4
  312. package/corpus/core/docs/content/locales/fr-FR/harness-agents.mdx +77 -8
  313. package/corpus/core/docs/content/locales/fr-FR/human-approval.mdx +50 -4
  314. package/corpus/core/docs/content/locales/fr-FR/key-concepts.mdx +106 -8
  315. package/corpus/core/docs/content/locales/fr-FR/local-file-mode.mdx +58 -4
  316. package/corpus/core/docs/content/locales/fr-FR/mcp-apps.mdx +120 -10
  317. package/corpus/core/docs/content/locales/fr-FR/mcp-clients.mdx +135 -8
  318. package/corpus/core/docs/content/locales/fr-FR/mcp-protocol.mdx +105 -8
  319. package/corpus/core/docs/content/locales/fr-FR/messaging.mdx +115 -8
  320. package/corpus/core/docs/content/locales/fr-FR/migration-workbench.mdx +47 -4
  321. package/corpus/core/docs/content/locales/fr-FR/multi-app-workspace.mdx +91 -8
  322. package/corpus/core/docs/content/locales/fr-FR/multi-tenancy.mdx +80 -8
  323. package/corpus/core/docs/content/locales/fr-FR/native-chat-ui.mdx +108 -8
  324. package/corpus/core/docs/content/locales/fr-FR/notifications.mdx +135 -8
  325. package/corpus/core/docs/content/locales/fr-FR/observability.mdx +104 -8
  326. package/corpus/core/docs/content/locales/fr-FR/observational-memory.mdx +89 -8
  327. package/corpus/core/docs/content/locales/fr-FR/onboarding.mdx +45 -4
  328. package/corpus/core/docs/content/locales/fr-FR/plan-plugin.mdx +99 -8
  329. package/corpus/core/docs/content/locales/fr-FR/pr-visual-recap.mdx +126 -8
  330. package/corpus/core/docs/content/locales/fr-FR/processors.mdx +41 -4
  331. package/corpus/core/docs/content/locales/fr-FR/progress.mdx +46 -4
  332. package/corpus/core/docs/content/locales/fr-FR/pure-agent-apps.mdx +48 -4
  333. package/corpus/core/docs/content/locales/fr-FR/real-time-collaboration.mdx +107 -8
  334. package/corpus/core/docs/content/locales/fr-FR/recurring-jobs.mdx +59 -4
  335. package/corpus/core/docs/content/locales/fr-FR/routing.mdx +44 -5
  336. package/corpus/core/docs/content/locales/fr-FR/sandbox-adapters.mdx +44 -4
  337. package/corpus/core/docs/content/locales/fr-FR/security.mdx +82 -8
  338. package/corpus/core/docs/content/locales/fr-FR/server.mdx +173 -12
  339. package/corpus/core/docs/content/locales/fr-FR/sharing.mdx +45 -4
  340. package/corpus/core/docs/content/locales/fr-FR/skills-guide.mdx +118 -9
  341. package/corpus/core/docs/content/locales/fr-FR/template-analytics.mdx +46 -4
  342. package/corpus/core/docs/content/locales/fr-FR/template-assets.mdx +66 -4
  343. package/corpus/core/docs/content/locales/fr-FR/template-brain.mdx +69 -4
  344. package/corpus/core/docs/content/locales/fr-FR/template-calendar.mdx +62 -4
  345. package/corpus/core/docs/content/locales/fr-FR/template-chat.mdx +61 -4
  346. package/corpus/core/docs/content/locales/fr-FR/template-clips.mdx +52 -4
  347. package/corpus/core/docs/content/locales/fr-FR/template-content.mdx +64 -4
  348. package/corpus/core/docs/content/locales/fr-FR/template-design.mdx +58 -4
  349. package/corpus/core/docs/content/locales/fr-FR/template-dispatch.mdx +57 -4
  350. package/corpus/core/docs/content/locales/fr-FR/template-forms.mdx +64 -4
  351. package/corpus/core/docs/content/locales/fr-FR/template-mail.mdx +60 -4
  352. package/corpus/core/docs/content/locales/fr-FR/template-plan.mdx +61 -4
  353. package/corpus/core/docs/content/locales/fr-FR/template-slides.mdx +49 -4
  354. package/corpus/core/docs/content/locales/fr-FR/template-videos.mdx +53 -4
  355. package/corpus/core/docs/content/locales/fr-FR/tracking.mdx +54 -4
  356. package/corpus/core/docs/content/locales/fr-FR/using-your-agent.mdx +51 -4
  357. package/corpus/core/docs/content/locales/fr-FR/voice-input.mdx +45 -4
  358. package/corpus/core/docs/content/locales/fr-FR/what-is-agent-native.mdx +101 -8
  359. package/corpus/core/docs/content/locales/fr-FR/workspace-connections.mdx +128 -8
  360. package/corpus/core/docs/content/locales/fr-FR/workspace-management.mdx +50 -4
  361. package/corpus/core/docs/content/locales/fr-FR/workspace.mdx +112 -8
  362. package/corpus/core/docs/content/locales/fr-FR/writing-agent-instructions.mdx +47 -4
  363. package/corpus/core/docs/content/locales/hi-IN/a2a-protocol.mdx +97 -9
  364. package/corpus/core/docs/content/locales/hi-IN/actions.mdx +63 -4
  365. package/corpus/core/docs/content/locales/hi-IN/agent-mentions.mdx +68 -4
  366. package/corpus/core/docs/content/locales/hi-IN/agent-surfaces.mdx +112 -8
  367. package/corpus/core/docs/content/locales/hi-IN/agent-teams.mdx +171 -12
  368. package/corpus/core/docs/content/locales/hi-IN/agent-web-surfaces.mdx +51 -4
  369. package/corpus/core/docs/content/locales/hi-IN/authentication.mdx +122 -8
  370. package/corpus/core/docs/content/locales/hi-IN/automations.mdx +110 -8
  371. package/corpus/core/docs/content/locales/hi-IN/blueprint-installer.mdx +42 -4
  372. package/corpus/core/docs/content/locales/hi-IN/cli-adapters.mdx +44 -4
  373. package/corpus/core/docs/content/locales/hi-IN/client.mdx +79 -8
  374. package/corpus/core/docs/content/locales/hi-IN/cloneable-saas.mdx +85 -8
  375. package/corpus/core/docs/content/locales/hi-IN/code-agents-ui.mdx +96 -8
  376. package/corpus/core/docs/content/locales/hi-IN/components.mdx +114 -8
  377. package/corpus/core/docs/content/locales/hi-IN/context-awareness.mdx +102 -8
  378. package/corpus/core/docs/content/locales/hi-IN/creating-templates.mdx +53 -4
  379. package/corpus/core/docs/content/locales/hi-IN/cross-app-sso.mdx +109 -8
  380. package/corpus/core/docs/content/locales/hi-IN/database.mdx +52 -4
  381. package/corpus/core/docs/content/locales/hi-IN/deployment.mdx +103 -8
  382. package/corpus/core/docs/content/locales/hi-IN/dispatch.mdx +134 -8
  383. package/corpus/core/docs/content/locales/hi-IN/drop-in-agent.mdx +63 -4
  384. package/corpus/core/docs/content/locales/hi-IN/durable-resume.mdx +47 -4
  385. package/corpus/core/docs/content/locales/hi-IN/embedding-sdk.mdx +83 -8
  386. package/corpus/core/docs/content/locales/hi-IN/evals.mdx +100 -8
  387. package/corpus/core/docs/content/locales/hi-IN/extensions.mdx +113 -9
  388. package/corpus/core/docs/content/locales/hi-IN/external-agents.mdx +119 -8
  389. package/corpus/core/docs/content/locales/hi-IN/faq.mdx +96 -8
  390. package/corpus/core/docs/content/locales/hi-IN/file-uploads.mdx +61 -4
  391. package/corpus/core/docs/content/locales/hi-IN/frames.mdx +88 -8
  392. package/corpus/core/docs/content/locales/hi-IN/getting-started.mdx +34 -4
  393. package/corpus/core/docs/content/locales/hi-IN/harness-agents.mdx +77 -8
  394. package/corpus/core/docs/content/locales/hi-IN/human-approval.mdx +51 -4
  395. package/corpus/core/docs/content/locales/hi-IN/key-concepts.mdx +104 -8
  396. package/corpus/core/docs/content/locales/hi-IN/local-file-mode.mdx +58 -4
  397. package/corpus/core/docs/content/locales/hi-IN/mcp-apps.mdx +120 -10
  398. package/corpus/core/docs/content/locales/hi-IN/mcp-clients.mdx +133 -8
  399. package/corpus/core/docs/content/locales/hi-IN/mcp-protocol.mdx +105 -8
  400. package/corpus/core/docs/content/locales/hi-IN/messaging.mdx +115 -8
  401. package/corpus/core/docs/content/locales/hi-IN/migration-workbench.mdx +45 -4
  402. package/corpus/core/docs/content/locales/hi-IN/multi-app-workspace.mdx +91 -8
  403. package/corpus/core/docs/content/locales/hi-IN/multi-tenancy.mdx +80 -8
  404. package/corpus/core/docs/content/locales/hi-IN/native-chat-ui.mdx +106 -8
  405. package/corpus/core/docs/content/locales/hi-IN/notifications.mdx +135 -8
  406. package/corpus/core/docs/content/locales/hi-IN/observability.mdx +102 -8
  407. package/corpus/core/docs/content/locales/hi-IN/observational-memory.mdx +89 -8
  408. package/corpus/core/docs/content/locales/hi-IN/onboarding.mdx +45 -4
  409. package/corpus/core/docs/content/locales/hi-IN/plan-plugin.mdx +99 -8
  410. package/corpus/core/docs/content/locales/hi-IN/pr-visual-recap.mdx +126 -8
  411. package/corpus/core/docs/content/locales/hi-IN/processors.mdx +41 -4
  412. package/corpus/core/docs/content/locales/hi-IN/progress.mdx +46 -4
  413. package/corpus/core/docs/content/locales/hi-IN/pure-agent-apps.mdx +48 -4
  414. package/corpus/core/docs/content/locales/hi-IN/real-time-collaboration.mdx +106 -8
  415. package/corpus/core/docs/content/locales/hi-IN/recurring-jobs.mdx +59 -4
  416. package/corpus/core/docs/content/locales/hi-IN/routing.mdx +44 -5
  417. package/corpus/core/docs/content/locales/hi-IN/sandbox-adapters.mdx +43 -4
  418. package/corpus/core/docs/content/locales/hi-IN/security.mdx +78 -8
  419. package/corpus/core/docs/content/locales/hi-IN/server.mdx +169 -12
  420. package/corpus/core/docs/content/locales/hi-IN/sharing.mdx +45 -4
  421. package/corpus/core/docs/content/locales/hi-IN/skills-guide.mdx +118 -9
  422. package/corpus/core/docs/content/locales/hi-IN/template-analytics.mdx +46 -4
  423. package/corpus/core/docs/content/locales/hi-IN/template-assets.mdx +62 -4
  424. package/corpus/core/docs/content/locales/hi-IN/template-brain.mdx +69 -4
  425. package/corpus/core/docs/content/locales/hi-IN/template-calendar.mdx +62 -4
  426. package/corpus/core/docs/content/locales/hi-IN/template-chat.mdx +59 -4
  427. package/corpus/core/docs/content/locales/hi-IN/template-clips.mdx +52 -4
  428. package/corpus/core/docs/content/locales/hi-IN/template-content.mdx +62 -4
  429. package/corpus/core/docs/content/locales/hi-IN/template-design.mdx +58 -4
  430. package/corpus/core/docs/content/locales/hi-IN/template-dispatch.mdx +57 -4
  431. package/corpus/core/docs/content/locales/hi-IN/template-forms.mdx +64 -4
  432. package/corpus/core/docs/content/locales/hi-IN/template-mail.mdx +64 -4
  433. package/corpus/core/docs/content/locales/hi-IN/template-plan.mdx +61 -4
  434. package/corpus/core/docs/content/locales/hi-IN/template-slides.mdx +49 -4
  435. package/corpus/core/docs/content/locales/hi-IN/template-videos.mdx +53 -4
  436. package/corpus/core/docs/content/locales/hi-IN/tracking.mdx +54 -4
  437. package/corpus/core/docs/content/locales/hi-IN/using-your-agent.mdx +51 -4
  438. package/corpus/core/docs/content/locales/hi-IN/voice-input.mdx +43 -4
  439. package/corpus/core/docs/content/locales/hi-IN/what-is-agent-native.mdx +97 -8
  440. package/corpus/core/docs/content/locales/hi-IN/workspace-connections.mdx +128 -8
  441. package/corpus/core/docs/content/locales/hi-IN/workspace-management.mdx +50 -4
  442. package/corpus/core/docs/content/locales/hi-IN/workspace.mdx +111 -8
  443. package/corpus/core/docs/content/locales/hi-IN/writing-agent-instructions.mdx +40 -4
  444. package/corpus/core/docs/content/locales/ja-JP/a2a-protocol.mdx +97 -9
  445. package/corpus/core/docs/content/locales/ja-JP/actions.mdx +67 -4
  446. package/corpus/core/docs/content/locales/ja-JP/agent-mentions.mdx +68 -4
  447. package/corpus/core/docs/content/locales/ja-JP/agent-surfaces.mdx +116 -8
  448. package/corpus/core/docs/content/locales/ja-JP/agent-teams.mdx +172 -12
  449. package/corpus/core/docs/content/locales/ja-JP/agent-web-surfaces.mdx +51 -4
  450. package/corpus/core/docs/content/locales/ja-JP/authentication.mdx +122 -8
  451. package/corpus/core/docs/content/locales/ja-JP/automations.mdx +110 -8
  452. package/corpus/core/docs/content/locales/ja-JP/blueprint-installer.mdx +44 -4
  453. package/corpus/core/docs/content/locales/ja-JP/cli-adapters.mdx +44 -4
  454. package/corpus/core/docs/content/locales/ja-JP/client.mdx +79 -8
  455. package/corpus/core/docs/content/locales/ja-JP/cloneable-saas.mdx +85 -8
  456. package/corpus/core/docs/content/locales/ja-JP/code-agents-ui.mdx +100 -8
  457. package/corpus/core/docs/content/locales/ja-JP/components.mdx +116 -8
  458. package/corpus/core/docs/content/locales/ja-JP/context-awareness.mdx +100 -8
  459. package/corpus/core/docs/content/locales/ja-JP/creating-templates.mdx +51 -4
  460. package/corpus/core/docs/content/locales/ja-JP/cross-app-sso.mdx +109 -8
  461. package/corpus/core/docs/content/locales/ja-JP/database.mdx +52 -4
  462. package/corpus/core/docs/content/locales/ja-JP/deployment.mdx +103 -8
  463. package/corpus/core/docs/content/locales/ja-JP/dispatch.mdx +134 -8
  464. package/corpus/core/docs/content/locales/ja-JP/drop-in-agent.mdx +63 -4
  465. package/corpus/core/docs/content/locales/ja-JP/durable-resume.mdx +47 -4
  466. package/corpus/core/docs/content/locales/ja-JP/embedding-sdk.mdx +85 -8
  467. package/corpus/core/docs/content/locales/ja-JP/evals.mdx +102 -8
  468. package/corpus/core/docs/content/locales/ja-JP/extensions.mdx +111 -9
  469. package/corpus/core/docs/content/locales/ja-JP/external-agents.mdx +119 -8
  470. package/corpus/core/docs/content/locales/ja-JP/faq.mdx +98 -8
  471. package/corpus/core/docs/content/locales/ja-JP/file-uploads.mdx +61 -4
  472. package/corpus/core/docs/content/locales/ja-JP/frames.mdx +88 -8
  473. package/corpus/core/docs/content/locales/ja-JP/getting-started.mdx +34 -4
  474. package/corpus/core/docs/content/locales/ja-JP/harness-agents.mdx +79 -8
  475. package/corpus/core/docs/content/locales/ja-JP/human-approval.mdx +50 -4
  476. package/corpus/core/docs/content/locales/ja-JP/key-concepts.mdx +105 -8
  477. package/corpus/core/docs/content/locales/ja-JP/local-file-mode.mdx +58 -4
  478. package/corpus/core/docs/content/locales/ja-JP/mcp-apps.mdx +119 -10
  479. package/corpus/core/docs/content/locales/ja-JP/mcp-clients.mdx +134 -8
  480. package/corpus/core/docs/content/locales/ja-JP/mcp-protocol.mdx +105 -8
  481. package/corpus/core/docs/content/locales/ja-JP/messaging.mdx +115 -8
  482. package/corpus/core/docs/content/locales/ja-JP/migration-workbench.mdx +47 -4
  483. package/corpus/core/docs/content/locales/ja-JP/multi-app-workspace.mdx +91 -8
  484. package/corpus/core/docs/content/locales/ja-JP/multi-tenancy.mdx +80 -8
  485. package/corpus/core/docs/content/locales/ja-JP/native-chat-ui.mdx +104 -8
  486. package/corpus/core/docs/content/locales/ja-JP/notifications.mdx +135 -8
  487. package/corpus/core/docs/content/locales/ja-JP/observability.mdx +104 -8
  488. package/corpus/core/docs/content/locales/ja-JP/observational-memory.mdx +89 -8
  489. package/corpus/core/docs/content/locales/ja-JP/onboarding.mdx +45 -4
  490. package/corpus/core/docs/content/locales/ja-JP/plan-plugin.mdx +99 -8
  491. package/corpus/core/docs/content/locales/ja-JP/pr-visual-recap.mdx +123 -8
  492. package/corpus/core/docs/content/locales/ja-JP/processors.mdx +39 -4
  493. package/corpus/core/docs/content/locales/ja-JP/progress.mdx +46 -4
  494. package/corpus/core/docs/content/locales/ja-JP/pure-agent-apps.mdx +48 -4
  495. package/corpus/core/docs/content/locales/ja-JP/real-time-collaboration.mdx +106 -8
  496. package/corpus/core/docs/content/locales/ja-JP/recurring-jobs.mdx +59 -4
  497. package/corpus/core/docs/content/locales/ja-JP/routing.mdx +44 -5
  498. package/corpus/core/docs/content/locales/ja-JP/sandbox-adapters.mdx +43 -4
  499. package/corpus/core/docs/content/locales/ja-JP/security.mdx +82 -8
  500. package/corpus/core/docs/content/locales/ja-JP/server.mdx +171 -12
  501. package/corpus/core/docs/content/locales/ja-JP/sharing.mdx +45 -4
  502. package/corpus/core/docs/content/locales/ja-JP/skills-guide.mdx +118 -9
  503. package/corpus/core/docs/content/locales/ja-JP/template-analytics.mdx +46 -4
  504. package/corpus/core/docs/content/locales/ja-JP/template-assets.mdx +64 -4
  505. package/corpus/core/docs/content/locales/ja-JP/template-brain.mdx +67 -4
  506. package/corpus/core/docs/content/locales/ja-JP/template-calendar.mdx +62 -4
  507. package/corpus/core/docs/content/locales/ja-JP/template-chat.mdx +61 -4
  508. package/corpus/core/docs/content/locales/ja-JP/template-clips.mdx +52 -4
  509. package/corpus/core/docs/content/locales/ja-JP/template-content.mdx +62 -4
  510. package/corpus/core/docs/content/locales/ja-JP/template-design.mdx +60 -4
  511. package/corpus/core/docs/content/locales/ja-JP/template-dispatch.mdx +57 -4
  512. package/corpus/core/docs/content/locales/ja-JP/template-forms.mdx +62 -4
  513. package/corpus/core/docs/content/locales/ja-JP/template-mail.mdx +62 -4
  514. package/corpus/core/docs/content/locales/ja-JP/template-plan.mdx +63 -4
  515. package/corpus/core/docs/content/locales/ja-JP/template-slides.mdx +49 -4
  516. package/corpus/core/docs/content/locales/ja-JP/template-videos.mdx +53 -4
  517. package/corpus/core/docs/content/locales/ja-JP/tracking.mdx +54 -4
  518. package/corpus/core/docs/content/locales/ja-JP/using-your-agent.mdx +51 -4
  519. package/corpus/core/docs/content/locales/ja-JP/voice-input.mdx +43 -4
  520. package/corpus/core/docs/content/locales/ja-JP/what-is-agent-native.mdx +96 -8
  521. package/corpus/core/docs/content/locales/ja-JP/workspace-connections.mdx +128 -8
  522. package/corpus/core/docs/content/locales/ja-JP/workspace-management.mdx +50 -4
  523. package/corpus/core/docs/content/locales/ja-JP/workspace.mdx +111 -8
  524. package/corpus/core/docs/content/locales/ja-JP/writing-agent-instructions.mdx +44 -4
  525. package/corpus/core/docs/content/locales/ko-KR/a2a-protocol.mdx +97 -9
  526. package/corpus/core/docs/content/locales/ko-KR/actions.mdx +63 -4
  527. package/corpus/core/docs/content/locales/ko-KR/agent-mentions.mdx +68 -4
  528. package/corpus/core/docs/content/locales/ko-KR/agent-surfaces.mdx +113 -8
  529. package/corpus/core/docs/content/locales/ko-KR/agent-teams.mdx +171 -12
  530. package/corpus/core/docs/content/locales/ko-KR/agent-web-surfaces.mdx +51 -4
  531. package/corpus/core/docs/content/locales/ko-KR/authentication.mdx +122 -8
  532. package/corpus/core/docs/content/locales/ko-KR/automations.mdx +110 -8
  533. package/corpus/core/docs/content/locales/ko-KR/blueprint-installer.mdx +42 -4
  534. package/corpus/core/docs/content/locales/ko-KR/cli-adapters.mdx +44 -4
  535. package/corpus/core/docs/content/locales/ko-KR/client.mdx +79 -8
  536. package/corpus/core/docs/content/locales/ko-KR/cloneable-saas.mdx +85 -8
  537. package/corpus/core/docs/content/locales/ko-KR/code-agents-ui.mdx +96 -8
  538. package/corpus/core/docs/content/locales/ko-KR/components.mdx +112 -8
  539. package/corpus/core/docs/content/locales/ko-KR/context-awareness.mdx +96 -8
  540. package/corpus/core/docs/content/locales/ko-KR/creating-templates.mdx +51 -4
  541. package/corpus/core/docs/content/locales/ko-KR/cross-app-sso.mdx +109 -8
  542. package/corpus/core/docs/content/locales/ko-KR/database.mdx +52 -4
  543. package/corpus/core/docs/content/locales/ko-KR/deployment.mdx +103 -8
  544. package/corpus/core/docs/content/locales/ko-KR/dispatch.mdx +132 -8
  545. package/corpus/core/docs/content/locales/ko-KR/drop-in-agent.mdx +63 -4
  546. package/corpus/core/docs/content/locales/ko-KR/durable-resume.mdx +47 -4
  547. package/corpus/core/docs/content/locales/ko-KR/embedding-sdk.mdx +81 -8
  548. package/corpus/core/docs/content/locales/ko-KR/evals.mdx +102 -8
  549. package/corpus/core/docs/content/locales/ko-KR/extensions.mdx +111 -9
  550. package/corpus/core/docs/content/locales/ko-KR/external-agents.mdx +119 -8
  551. package/corpus/core/docs/content/locales/ko-KR/faq.mdx +96 -8
  552. package/corpus/core/docs/content/locales/ko-KR/file-uploads.mdx +61 -4
  553. package/corpus/core/docs/content/locales/ko-KR/frames.mdx +86 -8
  554. package/corpus/core/docs/content/locales/ko-KR/getting-started.mdx +34 -4
  555. package/corpus/core/docs/content/locales/ko-KR/harness-agents.mdx +77 -8
  556. package/corpus/core/docs/content/locales/ko-KR/human-approval.mdx +50 -4
  557. package/corpus/core/docs/content/locales/ko-KR/key-concepts.mdx +104 -8
  558. package/corpus/core/docs/content/locales/ko-KR/local-file-mode.mdx +56 -4
  559. package/corpus/core/docs/content/locales/ko-KR/mcp-apps.mdx +120 -10
  560. package/corpus/core/docs/content/locales/ko-KR/mcp-clients.mdx +133 -8
  561. package/corpus/core/docs/content/locales/ko-KR/mcp-protocol.mdx +105 -8
  562. package/corpus/core/docs/content/locales/ko-KR/messaging.mdx +115 -8
  563. package/corpus/core/docs/content/locales/ko-KR/migration-workbench.mdx +45 -4
  564. package/corpus/core/docs/content/locales/ko-KR/multi-app-workspace.mdx +91 -8
  565. package/corpus/core/docs/content/locales/ko-KR/multi-tenancy.mdx +80 -8
  566. package/corpus/core/docs/content/locales/ko-KR/native-chat-ui.mdx +104 -8
  567. package/corpus/core/docs/content/locales/ko-KR/notifications.mdx +135 -8
  568. package/corpus/core/docs/content/locales/ko-KR/observability.mdx +102 -8
  569. package/corpus/core/docs/content/locales/ko-KR/observational-memory.mdx +87 -8
  570. package/corpus/core/docs/content/locales/ko-KR/onboarding.mdx +44 -4
  571. package/corpus/core/docs/content/locales/ko-KR/plan-plugin.mdx +99 -8
  572. package/corpus/core/docs/content/locales/ko-KR/pr-visual-recap.mdx +125 -8
  573. package/corpus/core/docs/content/locales/ko-KR/processors.mdx +39 -4
  574. package/corpus/core/docs/content/locales/ko-KR/progress.mdx +46 -4
  575. package/corpus/core/docs/content/locales/ko-KR/pure-agent-apps.mdx +46 -4
  576. package/corpus/core/docs/content/locales/ko-KR/real-time-collaboration.mdx +104 -8
  577. package/corpus/core/docs/content/locales/ko-KR/recurring-jobs.mdx +59 -4
  578. package/corpus/core/docs/content/locales/ko-KR/routing.mdx +44 -5
  579. package/corpus/core/docs/content/locales/ko-KR/sandbox-adapters.mdx +41 -4
  580. package/corpus/core/docs/content/locales/ko-KR/security.mdx +78 -8
  581. package/corpus/core/docs/content/locales/ko-KR/server.mdx +171 -12
  582. package/corpus/core/docs/content/locales/ko-KR/sharing.mdx +45 -4
  583. package/corpus/core/docs/content/locales/ko-KR/skills-guide.mdx +118 -9
  584. package/corpus/core/docs/content/locales/ko-KR/template-analytics.mdx +46 -4
  585. package/corpus/core/docs/content/locales/ko-KR/template-assets.mdx +62 -4
  586. package/corpus/core/docs/content/locales/ko-KR/template-brain.mdx +65 -4
  587. package/corpus/core/docs/content/locales/ko-KR/template-calendar.mdx +60 -4
  588. package/corpus/core/docs/content/locales/ko-KR/template-chat.mdx +59 -4
  589. package/corpus/core/docs/content/locales/ko-KR/template-clips.mdx +52 -4
  590. package/corpus/core/docs/content/locales/ko-KR/template-content.mdx +60 -4
  591. package/corpus/core/docs/content/locales/ko-KR/template-design.mdx +58 -4
  592. package/corpus/core/docs/content/locales/ko-KR/template-dispatch.mdx +57 -4
  593. package/corpus/core/docs/content/locales/ko-KR/template-forms.mdx +60 -4
  594. package/corpus/core/docs/content/locales/ko-KR/template-mail.mdx +60 -4
  595. package/corpus/core/docs/content/locales/ko-KR/template-plan.mdx +57 -4
  596. package/corpus/core/docs/content/locales/ko-KR/template-slides.mdx +49 -4
  597. package/corpus/core/docs/content/locales/ko-KR/template-videos.mdx +53 -4
  598. package/corpus/core/docs/content/locales/ko-KR/tracking.mdx +54 -4
  599. package/corpus/core/docs/content/locales/ko-KR/using-your-agent.mdx +51 -4
  600. package/corpus/core/docs/content/locales/ko-KR/voice-input.mdx +43 -4
  601. package/corpus/core/docs/content/locales/ko-KR/what-is-agent-native.mdx +95 -8
  602. package/corpus/core/docs/content/locales/ko-KR/workspace-connections.mdx +128 -8
  603. package/corpus/core/docs/content/locales/ko-KR/workspace-management.mdx +50 -4
  604. package/corpus/core/docs/content/locales/ko-KR/workspace.mdx +111 -8
  605. package/corpus/core/docs/content/locales/ko-KR/writing-agent-instructions.mdx +38 -4
  606. package/corpus/core/docs/content/locales/pt-BR/a2a-protocol.mdx +99 -9
  607. package/corpus/core/docs/content/locales/pt-BR/actions.mdx +67 -4
  608. package/corpus/core/docs/content/locales/pt-BR/agent-mentions.mdx +68 -4
  609. package/corpus/core/docs/content/locales/pt-BR/agent-surfaces.mdx +116 -8
  610. package/corpus/core/docs/content/locales/pt-BR/agent-teams.mdx +172 -12
  611. package/corpus/core/docs/content/locales/pt-BR/agent-web-surfaces.mdx +51 -4
  612. package/corpus/core/docs/content/locales/pt-BR/authentication.mdx +122 -8
  613. package/corpus/core/docs/content/locales/pt-BR/automations.mdx +110 -8
  614. package/corpus/core/docs/content/locales/pt-BR/blueprint-installer.mdx +42 -4
  615. package/corpus/core/docs/content/locales/pt-BR/cli-adapters.mdx +44 -4
  616. package/corpus/core/docs/content/locales/pt-BR/client.mdx +81 -8
  617. package/corpus/core/docs/content/locales/pt-BR/cloneable-saas.mdx +85 -8
  618. package/corpus/core/docs/content/locales/pt-BR/code-agents-ui.mdx +98 -8
  619. package/corpus/core/docs/content/locales/pt-BR/components.mdx +118 -8
  620. package/corpus/core/docs/content/locales/pt-BR/context-awareness.mdx +100 -8
  621. package/corpus/core/docs/content/locales/pt-BR/creating-templates.mdx +51 -4
  622. package/corpus/core/docs/content/locales/pt-BR/cross-app-sso.mdx +109 -8
  623. package/corpus/core/docs/content/locales/pt-BR/database.mdx +52 -4
  624. package/corpus/core/docs/content/locales/pt-BR/deployment.mdx +103 -8
  625. package/corpus/core/docs/content/locales/pt-BR/dispatch.mdx +134 -8
  626. package/corpus/core/docs/content/locales/pt-BR/drop-in-agent.mdx +63 -4
  627. package/corpus/core/docs/content/locales/pt-BR/durable-resume.mdx +47 -4
  628. package/corpus/core/docs/content/locales/pt-BR/embedding-sdk.mdx +87 -8
  629. package/corpus/core/docs/content/locales/pt-BR/evals.mdx +102 -8
  630. package/corpus/core/docs/content/locales/pt-BR/extensions.mdx +113 -9
  631. package/corpus/core/docs/content/locales/pt-BR/external-agents.mdx +119 -8
  632. package/corpus/core/docs/content/locales/pt-BR/faq.mdx +98 -8
  633. package/corpus/core/docs/content/locales/pt-BR/file-uploads.mdx +61 -4
  634. package/corpus/core/docs/content/locales/pt-BR/frames.mdx +88 -8
  635. package/corpus/core/docs/content/locales/pt-BR/getting-started.mdx +34 -4
  636. package/corpus/core/docs/content/locales/pt-BR/harness-agents.mdx +79 -8
  637. package/corpus/core/docs/content/locales/pt-BR/human-approval.mdx +50 -4
  638. package/corpus/core/docs/content/locales/pt-BR/key-concepts.mdx +104 -8
  639. package/corpus/core/docs/content/locales/pt-BR/local-file-mode.mdx +60 -4
  640. package/corpus/core/docs/content/locales/pt-BR/mcp-apps.mdx +120 -10
  641. package/corpus/core/docs/content/locales/pt-BR/mcp-clients.mdx +133 -8
  642. package/corpus/core/docs/content/locales/pt-BR/mcp-protocol.mdx +105 -8
  643. package/corpus/core/docs/content/locales/pt-BR/messaging.mdx +115 -8
  644. package/corpus/core/docs/content/locales/pt-BR/migration-workbench.mdx +47 -4
  645. package/corpus/core/docs/content/locales/pt-BR/multi-app-workspace.mdx +91 -8
  646. package/corpus/core/docs/content/locales/pt-BR/multi-tenancy.mdx +80 -8
  647. package/corpus/core/docs/content/locales/pt-BR/native-chat-ui.mdx +108 -8
  648. package/corpus/core/docs/content/locales/pt-BR/notifications.mdx +135 -8
  649. package/corpus/core/docs/content/locales/pt-BR/observability.mdx +104 -8
  650. package/corpus/core/docs/content/locales/pt-BR/observational-memory.mdx +92 -8
  651. package/corpus/core/docs/content/locales/pt-BR/onboarding.mdx +45 -4
  652. package/corpus/core/docs/content/locales/pt-BR/plan-plugin.mdx +99 -8
  653. package/corpus/core/docs/content/locales/pt-BR/pr-visual-recap.mdx +125 -8
  654. package/corpus/core/docs/content/locales/pt-BR/processors.mdx +41 -4
  655. package/corpus/core/docs/content/locales/pt-BR/progress.mdx +46 -4
  656. package/corpus/core/docs/content/locales/pt-BR/pure-agent-apps.mdx +48 -4
  657. package/corpus/core/docs/content/locales/pt-BR/real-time-collaboration.mdx +107 -8
  658. package/corpus/core/docs/content/locales/pt-BR/recurring-jobs.mdx +59 -4
  659. package/corpus/core/docs/content/locales/pt-BR/routing.mdx +44 -5
  660. package/corpus/core/docs/content/locales/pt-BR/sandbox-adapters.mdx +43 -4
  661. package/corpus/core/docs/content/locales/pt-BR/security.mdx +82 -8
  662. package/corpus/core/docs/content/locales/pt-BR/server.mdx +173 -12
  663. package/corpus/core/docs/content/locales/pt-BR/sharing.mdx +45 -4
  664. package/corpus/core/docs/content/locales/pt-BR/skills-guide.mdx +118 -9
  665. package/corpus/core/docs/content/locales/pt-BR/template-analytics.mdx +46 -4
  666. package/corpus/core/docs/content/locales/pt-BR/template-assets.mdx +64 -4
  667. package/corpus/core/docs/content/locales/pt-BR/template-brain.mdx +69 -4
  668. package/corpus/core/docs/content/locales/pt-BR/template-calendar.mdx +62 -4
  669. package/corpus/core/docs/content/locales/pt-BR/template-chat.mdx +61 -4
  670. package/corpus/core/docs/content/locales/pt-BR/template-clips.mdx +52 -4
  671. package/corpus/core/docs/content/locales/pt-BR/template-content.mdx +64 -4
  672. package/corpus/core/docs/content/locales/pt-BR/template-design.mdx +58 -4
  673. package/corpus/core/docs/content/locales/pt-BR/template-dispatch.mdx +57 -4
  674. package/corpus/core/docs/content/locales/pt-BR/template-forms.mdx +64 -4
  675. package/corpus/core/docs/content/locales/pt-BR/template-mail.mdx +60 -4
  676. package/corpus/core/docs/content/locales/pt-BR/template-plan.mdx +63 -4
  677. package/corpus/core/docs/content/locales/pt-BR/template-slides.mdx +49 -4
  678. package/corpus/core/docs/content/locales/pt-BR/template-videos.mdx +53 -4
  679. package/corpus/core/docs/content/locales/pt-BR/tracking.mdx +54 -4
  680. package/corpus/core/docs/content/locales/pt-BR/using-your-agent.mdx +51 -4
  681. package/corpus/core/docs/content/locales/pt-BR/voice-input.mdx +43 -4
  682. package/corpus/core/docs/content/locales/pt-BR/what-is-agent-native.mdx +101 -8
  683. package/corpus/core/docs/content/locales/pt-BR/workspace-connections.mdx +128 -8
  684. package/corpus/core/docs/content/locales/pt-BR/workspace-management.mdx +50 -4
  685. package/corpus/core/docs/content/locales/pt-BR/workspace.mdx +111 -8
  686. package/corpus/core/docs/content/locales/pt-BR/writing-agent-instructions.mdx +46 -4
  687. package/corpus/core/docs/content/locales/zh-CN/a2a-protocol.mdx +97 -9
  688. package/corpus/core/docs/content/locales/zh-CN/actions.mdx +65 -4
  689. package/corpus/core/docs/content/locales/zh-CN/agent-mentions.mdx +68 -4
  690. package/corpus/core/docs/content/locales/zh-CN/agent-surfaces.mdx +108 -8
  691. package/corpus/core/docs/content/locales/zh-CN/agent-teams.mdx +171 -12
  692. package/corpus/core/docs/content/locales/zh-CN/agent-web-surfaces.mdx +51 -4
  693. package/corpus/core/docs/content/locales/zh-CN/authentication.mdx +122 -8
  694. package/corpus/core/docs/content/locales/zh-CN/automations.mdx +110 -8
  695. package/corpus/core/docs/content/locales/zh-CN/blueprint-installer.mdx +42 -4
  696. package/corpus/core/docs/content/locales/zh-CN/cli-adapters.mdx +44 -4
  697. package/corpus/core/docs/content/locales/zh-CN/client.mdx +79 -8
  698. package/corpus/core/docs/content/locales/zh-CN/cloneable-saas.mdx +83 -8
  699. package/corpus/core/docs/content/locales/zh-CN/code-agents-ui.mdx +94 -8
  700. package/corpus/core/docs/content/locales/zh-CN/components.mdx +112 -8
  701. package/corpus/core/docs/content/locales/zh-CN/context-awareness.mdx +96 -8
  702. package/corpus/core/docs/content/locales/zh-CN/creating-templates.mdx +51 -4
  703. package/corpus/core/docs/content/locales/zh-CN/cross-app-sso.mdx +107 -8
  704. package/corpus/core/docs/content/locales/zh-CN/database.mdx +52 -4
  705. package/corpus/core/docs/content/locales/zh-CN/deployment.mdx +103 -8
  706. package/corpus/core/docs/content/locales/zh-CN/dispatch.mdx +134 -8
  707. package/corpus/core/docs/content/locales/zh-CN/drop-in-agent.mdx +63 -4
  708. package/corpus/core/docs/content/locales/zh-CN/durable-resume.mdx +45 -4
  709. package/corpus/core/docs/content/locales/zh-CN/embedding-sdk.mdx +81 -8
  710. package/corpus/core/docs/content/locales/zh-CN/evals.mdx +100 -8
  711. package/corpus/core/docs/content/locales/zh-CN/extensions.mdx +111 -9
  712. package/corpus/core/docs/content/locales/zh-CN/external-agents.mdx +119 -8
  713. package/corpus/core/docs/content/locales/zh-CN/faq.mdx +96 -8
  714. package/corpus/core/docs/content/locales/zh-CN/file-uploads.mdx +61 -4
  715. package/corpus/core/docs/content/locales/zh-CN/frames.mdx +86 -8
  716. package/corpus/core/docs/content/locales/zh-CN/getting-started.mdx +34 -4
  717. package/corpus/core/docs/content/locales/zh-CN/harness-agents.mdx +79 -8
  718. package/corpus/core/docs/content/locales/zh-CN/human-approval.mdx +50 -4
  719. package/corpus/core/docs/content/locales/zh-CN/key-concepts.mdx +100 -8
  720. package/corpus/core/docs/content/locales/zh-CN/local-file-mode.mdx +56 -4
  721. package/corpus/core/docs/content/locales/zh-CN/mcp-apps.mdx +120 -10
  722. package/corpus/core/docs/content/locales/zh-CN/mcp-clients.mdx +133 -8
  723. package/corpus/core/docs/content/locales/zh-CN/mcp-protocol.mdx +105 -8
  724. package/corpus/core/docs/content/locales/zh-CN/messaging.mdx +115 -8
  725. package/corpus/core/docs/content/locales/zh-CN/migration-workbench.mdx +45 -4
  726. package/corpus/core/docs/content/locales/zh-CN/multi-app-workspace.mdx +91 -8
  727. package/corpus/core/docs/content/locales/zh-CN/multi-tenancy.mdx +80 -8
  728. package/corpus/core/docs/content/locales/zh-CN/native-chat-ui.mdx +104 -8
  729. package/corpus/core/docs/content/locales/zh-CN/notifications.mdx +135 -8
  730. package/corpus/core/docs/content/locales/zh-CN/observability.mdx +102 -8
  731. package/corpus/core/docs/content/locales/zh-CN/observational-memory.mdx +85 -8
  732. package/corpus/core/docs/content/locales/zh-CN/onboarding.mdx +44 -4
  733. package/corpus/core/docs/content/locales/zh-CN/plan-plugin.mdx +97 -8
  734. package/corpus/core/docs/content/locales/zh-CN/pr-visual-recap.mdx +123 -8
  735. package/corpus/core/docs/content/locales/zh-CN/processors.mdx +39 -4
  736. package/corpus/core/docs/content/locales/zh-CN/progress.mdx +46 -4
  737. package/corpus/core/docs/content/locales/zh-CN/pure-agent-apps.mdx +46 -4
  738. package/corpus/core/docs/content/locales/zh-CN/real-time-collaboration.mdx +98 -8
  739. package/corpus/core/docs/content/locales/zh-CN/recurring-jobs.mdx +59 -4
  740. package/corpus/core/docs/content/locales/zh-CN/routing.mdx +42 -5
  741. package/corpus/core/docs/content/locales/zh-CN/sandbox-adapters.mdx +41 -4
  742. package/corpus/core/docs/content/locales/zh-CN/security.mdx +78 -8
  743. package/corpus/core/docs/content/locales/zh-CN/server.mdx +169 -12
  744. package/corpus/core/docs/content/locales/zh-CN/sharing.mdx +45 -4
  745. package/corpus/core/docs/content/locales/zh-CN/skills-guide.mdx +118 -9
  746. package/corpus/core/docs/content/locales/zh-CN/template-analytics.mdx +46 -4
  747. package/corpus/core/docs/content/locales/zh-CN/template-assets.mdx +58 -4
  748. package/corpus/core/docs/content/locales/zh-CN/template-brain.mdx +65 -4
  749. package/corpus/core/docs/content/locales/zh-CN/template-calendar.mdx +58 -4
  750. package/corpus/core/docs/content/locales/zh-CN/template-chat.mdx +57 -4
  751. package/corpus/core/docs/content/locales/zh-CN/template-clips.mdx +52 -4
  752. package/corpus/core/docs/content/locales/zh-CN/template-content.mdx +58 -4
  753. package/corpus/core/docs/content/locales/zh-CN/template-design.mdx +58 -4
  754. package/corpus/core/docs/content/locales/zh-CN/template-dispatch.mdx +57 -4
  755. package/corpus/core/docs/content/locales/zh-CN/template-forms.mdx +58 -4
  756. package/corpus/core/docs/content/locales/zh-CN/template-mail.mdx +60 -4
  757. package/corpus/core/docs/content/locales/zh-CN/template-plan.mdx +57 -4
  758. package/corpus/core/docs/content/locales/zh-CN/template-slides.mdx +49 -4
  759. package/corpus/core/docs/content/locales/zh-CN/template-videos.mdx +51 -4
  760. package/corpus/core/docs/content/locales/zh-CN/tracking.mdx +54 -4
  761. package/corpus/core/docs/content/locales/zh-CN/using-your-agent.mdx +51 -4
  762. package/corpus/core/docs/content/locales/zh-CN/voice-input.mdx +43 -4
  763. package/corpus/core/docs/content/locales/zh-CN/what-is-agent-native.mdx +94 -8
  764. package/corpus/core/docs/content/locales/zh-CN/workspace-connections.mdx +126 -8
  765. package/corpus/core/docs/content/locales/zh-CN/workspace-management.mdx +50 -4
  766. package/corpus/core/docs/content/locales/zh-CN/workspace.mdx +110 -8
  767. package/corpus/core/docs/content/locales/zh-CN/writing-agent-instructions.mdx +38 -4
  768. package/corpus/core/docs/content/locales/zh-TW/a2a-protocol.mdx +97 -9
  769. package/corpus/core/docs/content/locales/zh-TW/actions.mdx +63 -4
  770. package/corpus/core/docs/content/locales/zh-TW/agent-mentions.mdx +68 -4
  771. package/corpus/core/docs/content/locales/zh-TW/agent-surfaces.mdx +108 -8
  772. package/corpus/core/docs/content/locales/zh-TW/agent-teams.mdx +171 -12
  773. package/corpus/core/docs/content/locales/zh-TW/agent-web-surfaces.mdx +51 -4
  774. package/corpus/core/docs/content/locales/zh-TW/authentication.mdx +122 -8
  775. package/corpus/core/docs/content/locales/zh-TW/automations.mdx +110 -8
  776. package/corpus/core/docs/content/locales/zh-TW/blueprint-installer.mdx +42 -4
  777. package/corpus/core/docs/content/locales/zh-TW/cli-adapters.mdx +44 -4
  778. package/corpus/core/docs/content/locales/zh-TW/client.mdx +79 -8
  779. package/corpus/core/docs/content/locales/zh-TW/cloneable-saas.mdx +83 -8
  780. package/corpus/core/docs/content/locales/zh-TW/code-agents-ui.mdx +94 -8
  781. package/corpus/core/docs/content/locales/zh-TW/components.mdx +112 -8
  782. package/corpus/core/docs/content/locales/zh-TW/context-awareness.mdx +96 -8
  783. package/corpus/core/docs/content/locales/zh-TW/creating-templates.mdx +51 -4
  784. package/corpus/core/docs/content/locales/zh-TW/cross-app-sso.mdx +107 -8
  785. package/corpus/core/docs/content/locales/zh-TW/database.mdx +52 -4
  786. package/corpus/core/docs/content/locales/zh-TW/deployment.mdx +103 -8
  787. package/corpus/core/docs/content/locales/zh-TW/dispatch.mdx +134 -8
  788. package/corpus/core/docs/content/locales/zh-TW/drop-in-agent.mdx +63 -4
  789. package/corpus/core/docs/content/locales/zh-TW/durable-background-runs.mdx +88 -8
  790. package/corpus/core/docs/content/locales/zh-TW/durable-resume.mdx +45 -4
  791. package/corpus/core/docs/content/locales/zh-TW/embedding-sdk.mdx +83 -8
  792. package/corpus/core/docs/content/locales/zh-TW/evals.mdx +100 -8
  793. package/corpus/core/docs/content/locales/zh-TW/extensions.mdx +111 -9
  794. package/corpus/core/docs/content/locales/zh-TW/external-agents.mdx +119 -8
  795. package/corpus/core/docs/content/locales/zh-TW/faq.mdx +96 -8
  796. package/corpus/core/docs/content/locales/zh-TW/file-uploads.mdx +61 -4
  797. package/corpus/core/docs/content/locales/zh-TW/frames.mdx +86 -8
  798. package/corpus/core/docs/content/locales/zh-TW/getting-started.mdx +34 -4
  799. package/corpus/core/docs/content/locales/zh-TW/harness-agents.mdx +79 -8
  800. package/corpus/core/docs/content/locales/zh-TW/human-approval.mdx +50 -4
  801. package/corpus/core/docs/content/locales/zh-TW/key-concepts.mdx +100 -8
  802. package/corpus/core/docs/content/locales/zh-TW/local-file-mode.mdx +56 -4
  803. package/corpus/core/docs/content/locales/zh-TW/mcp-apps.mdx +120 -10
  804. package/corpus/core/docs/content/locales/zh-TW/mcp-clients.mdx +133 -8
  805. package/corpus/core/docs/content/locales/zh-TW/mcp-protocol.mdx +105 -8
  806. package/corpus/core/docs/content/locales/zh-TW/messaging.mdx +115 -8
  807. package/corpus/core/docs/content/locales/zh-TW/migration-workbench.mdx +45 -4
  808. package/corpus/core/docs/content/locales/zh-TW/multi-app-workspace.mdx +91 -8
  809. package/corpus/core/docs/content/locales/zh-TW/multi-tenancy.mdx +80 -8
  810. package/corpus/core/docs/content/locales/zh-TW/native-chat-ui.mdx +104 -8
  811. package/corpus/core/docs/content/locales/zh-TW/notifications.mdx +135 -8
  812. package/corpus/core/docs/content/locales/zh-TW/observability.mdx +102 -8
  813. package/corpus/core/docs/content/locales/zh-TW/observational-memory.mdx +85 -8
  814. package/corpus/core/docs/content/locales/zh-TW/onboarding.mdx +44 -4
  815. package/corpus/core/docs/content/locales/zh-TW/plan-plugin.mdx +97 -8
  816. package/corpus/core/docs/content/locales/zh-TW/pr-visual-recap.mdx +123 -8
  817. package/corpus/core/docs/content/locales/zh-TW/processors.mdx +39 -4
  818. package/corpus/core/docs/content/locales/zh-TW/progress.mdx +46 -4
  819. package/corpus/core/docs/content/locales/zh-TW/pure-agent-apps.mdx +46 -4
  820. package/corpus/core/docs/content/locales/zh-TW/real-time-collaboration.mdx +98 -8
  821. package/corpus/core/docs/content/locales/zh-TW/recurring-jobs.mdx +59 -4
  822. package/corpus/core/docs/content/locales/zh-TW/routing.mdx +42 -5
  823. package/corpus/core/docs/content/locales/zh-TW/sandbox-adapters.mdx +41 -4
  824. package/corpus/core/docs/content/locales/zh-TW/security.mdx +80 -8
  825. package/corpus/core/docs/content/locales/zh-TW/server.mdx +169 -12
  826. package/corpus/core/docs/content/locales/zh-TW/sharing.mdx +45 -4
  827. package/corpus/core/docs/content/locales/zh-TW/skills-guide.mdx +118 -9
  828. package/corpus/core/docs/content/locales/zh-TW/template-analytics.mdx +46 -4
  829. package/corpus/core/docs/content/locales/zh-TW/template-assets.mdx +58 -4
  830. package/corpus/core/docs/content/locales/zh-TW/template-brain.mdx +65 -4
  831. package/corpus/core/docs/content/locales/zh-TW/template-calendar.mdx +58 -4
  832. package/corpus/core/docs/content/locales/zh-TW/template-chat.mdx +59 -4
  833. package/corpus/core/docs/content/locales/zh-TW/template-clips.mdx +52 -4
  834. package/corpus/core/docs/content/locales/zh-TW/template-content.mdx +58 -4
  835. package/corpus/core/docs/content/locales/zh-TW/template-design.mdx +58 -4
  836. package/corpus/core/docs/content/locales/zh-TW/template-dispatch.mdx +57 -4
  837. package/corpus/core/docs/content/locales/zh-TW/template-forms.mdx +58 -4
  838. package/corpus/core/docs/content/locales/zh-TW/template-mail.mdx +60 -4
  839. package/corpus/core/docs/content/locales/zh-TW/template-plan.mdx +57 -4
  840. package/corpus/core/docs/content/locales/zh-TW/template-slides.mdx +49 -4
  841. package/corpus/core/docs/content/locales/zh-TW/template-videos.mdx +51 -4
  842. package/corpus/core/docs/content/locales/zh-TW/tracking.mdx +54 -4
  843. package/corpus/core/docs/content/locales/zh-TW/using-your-agent.mdx +51 -4
  844. package/corpus/core/docs/content/locales/zh-TW/voice-input.mdx +43 -4
  845. package/corpus/core/docs/content/locales/zh-TW/what-is-agent-native.mdx +94 -8
  846. package/corpus/core/docs/content/locales/zh-TW/workspace-connections.mdx +126 -8
  847. package/corpus/core/docs/content/locales/zh-TW/workspace-management.mdx +50 -4
  848. package/corpus/core/docs/content/locales/zh-TW/workspace.mdx +111 -8
  849. package/corpus/core/docs/content/locales/zh-TW/writing-agent-instructions.mdx +38 -4
  850. package/corpus/core/docs/content/mcp-apps.mdx +120 -10
  851. package/corpus/core/docs/content/mcp-clients.mdx +161 -8
  852. package/corpus/core/docs/content/mcp-protocol.mdx +105 -8
  853. package/corpus/core/docs/content/messaging.mdx +115 -8
  854. package/corpus/core/docs/content/migration-workbench.mdx +45 -4
  855. package/corpus/core/docs/content/multi-app-workspace.mdx +91 -8
  856. package/corpus/core/docs/content/multi-tenancy.mdx +80 -8
  857. package/corpus/core/docs/content/native-chat-ui.mdx +106 -8
  858. package/corpus/core/docs/content/notifications.mdx +135 -8
  859. package/corpus/core/docs/content/observability.mdx +102 -8
  860. package/corpus/core/docs/content/observational-memory.mdx +89 -8
  861. package/corpus/core/docs/content/onboarding.mdx +45 -4
  862. package/corpus/core/docs/content/plan-plugin.mdx +99 -8
  863. package/corpus/core/docs/content/pr-visual-recap.mdx +125 -8
  864. package/corpus/core/docs/content/processors.mdx +41 -4
  865. package/corpus/core/docs/content/progress.mdx +46 -4
  866. package/corpus/core/docs/content/pure-agent-apps.mdx +46 -4
  867. package/corpus/core/docs/content/real-time-collaboration.mdx +104 -8
  868. package/corpus/core/docs/content/recurring-jobs.mdx +59 -4
  869. package/corpus/core/docs/content/routing.mdx +44 -5
  870. package/corpus/core/docs/content/sandbox-adapters.mdx +43 -4
  871. package/corpus/core/docs/content/security.mdx +80 -8
  872. package/corpus/core/docs/content/server.mdx +173 -12
  873. package/corpus/core/docs/content/sharing.mdx +45 -4
  874. package/corpus/core/docs/content/skills-guide.mdx +118 -9
  875. package/corpus/core/docs/content/template-analytics.mdx +46 -4
  876. package/corpus/core/docs/content/template-assets.mdx +60 -4
  877. package/corpus/core/docs/content/template-brain.mdx +67 -4
  878. package/corpus/core/docs/content/template-calendar.mdx +62 -4
  879. package/corpus/core/docs/content/template-chat.mdx +61 -4
  880. package/corpus/core/docs/content/template-clips.mdx +52 -4
  881. package/corpus/core/docs/content/template-content.mdx +60 -4
  882. package/corpus/core/docs/content/template-design.mdx +58 -4
  883. package/corpus/core/docs/content/template-dispatch.mdx +57 -4
  884. package/corpus/core/docs/content/template-forms.mdx +62 -4
  885. package/corpus/core/docs/content/template-mail.mdx +60 -4
  886. package/corpus/core/docs/content/template-plan.mdx +61 -4
  887. package/corpus/core/docs/content/template-slides.mdx +49 -4
  888. package/corpus/core/docs/content/template-videos.mdx +51 -4
  889. package/corpus/core/docs/content/tracking.mdx +54 -4
  890. package/corpus/core/docs/content/using-your-agent.mdx +51 -4
  891. package/corpus/core/docs/content/voice-input.mdx +43 -4
  892. package/corpus/core/docs/content/what-is-agent-native.mdx +188 -8
  893. package/corpus/core/docs/content/workspace-connections.mdx +128 -8
  894. package/corpus/core/docs/content/workspace-management.mdx +50 -4
  895. package/corpus/core/docs/content/workspace.mdx +111 -8
  896. package/corpus/core/docs/content/writing-agent-instructions.mdx +45 -4
  897. package/corpus/core/package.json +1 -1
  898. package/corpus/core/src/application-state/store.ts +5 -5
  899. package/corpus/core/src/chat-threads/store.ts +2 -2
  900. package/corpus/core/src/cli/content-local.ts +374 -0
  901. package/corpus/core/src/cli/index.ts +17 -0
  902. package/corpus/core/src/cli/skills.ts +229 -197
  903. package/corpus/core/src/client/AssistantChat.tsx +4 -4
  904. package/corpus/core/src/client/MultiTabAssistantChat.tsx +11 -93
  905. package/corpus/core/src/client/analytics.ts +68 -15
  906. package/corpus/core/src/client/blocks/index.ts +2 -0
  907. package/corpus/core/src/client/blocks/library/diagram.config.ts +42 -18
  908. package/corpus/core/src/client/blocks/library/sanitize-html.ts +71 -6
  909. package/corpus/core/src/client/blocks/library/wireframe-kit.tsx +2 -2
  910. package/corpus/core/src/client/blocks/library/wireframe.tsx +8 -2
  911. package/corpus/core/src/client/blocks/mdx.ts +62 -1
  912. package/corpus/core/src/client/blocks/server.ts +2 -0
  913. package/corpus/core/src/client/blocks/types.ts +5 -4
  914. package/corpus/core/src/client/chat/message-components.tsx +3 -99
  915. package/corpus/core/src/client/chat-model-groups.ts +148 -0
  916. package/corpus/core/src/client/components/ui/dialog.tsx +91 -0
  917. package/corpus/core/src/client/composer/ComposerPlusMenu.tsx +33 -290
  918. package/corpus/core/src/client/index.ts +2 -0
  919. package/corpus/core/src/client/resources/McpIntegrationDialog.tsx +614 -0
  920. package/corpus/core/src/client/resources/ResourcesPanel.tsx +411 -644
  921. package/corpus/core/src/client/resources/mcp-integration-catalog.ts +239 -0
  922. package/corpus/core/src/client/settings/SettingsPanel.tsx +1 -1
  923. package/corpus/core/src/client/use-chat-models.ts +12 -104
  924. package/corpus/core/src/db/client.ts +0 -5
  925. package/corpus/core/src/integrations/adapters/email.ts +2 -2
  926. package/corpus/core/src/local-artifacts/index.ts +18 -0
  927. package/corpus/core/src/localization/default-messages.ts +81 -0
  928. package/corpus/core/src/localization/shared.ts +3 -3
  929. package/corpus/core/src/org/handlers.ts +2 -2
  930. package/corpus/core/src/resources/store.ts +7 -7
  931. package/corpus/core/src/server/core-routes-plugin.ts +34 -12
  932. package/corpus/core/src/shared/mcp-integration-config.ts +101 -0
  933. package/corpus/core/src/styles/agent-native.css +6 -104
  934. package/corpus/core/src/styles/blocks.css +15 -3
  935. package/corpus/core/src/vite/client.ts +17 -0
  936. package/corpus/templates/analytics/app/global.css +22 -0
  937. package/corpus/templates/analytics/app/i18n/zh-TW.ts +1 -0
  938. package/corpus/templates/analytics/app/i18n-data.ts +1 -0
  939. package/corpus/templates/analytics/app/pages/sessions/SessionsPage.tsx +25 -10
  940. package/corpus/templates/analytics/changelog/2026-06-28-sessions-shows-scoped-recordings-even-when-replay-events-are.md +6 -0
  941. package/corpus/templates/analytics/server/lib/session-replay.ts +1 -7
  942. package/corpus/templates/clips/AGENTS.md +4 -0
  943. package/corpus/templates/clips/actions/cleanup-transcript.ts +19 -1
  944. package/corpus/templates/clips/actions/get-builder-credit-status.ts +22 -0
  945. package/corpus/templates/clips/actions/get-recording-player-data.ts +18 -3
  946. package/corpus/templates/clips/actions/lib/builder-credits-state.ts +46 -0
  947. package/corpus/templates/clips/actions/lib/provider-transcript.ts +51 -0
  948. package/corpus/templates/clips/actions/regenerate-title.ts +18 -0
  949. package/corpus/templates/clips/actions/request-transcript.ts +56 -33
  950. package/corpus/templates/clips/actions/save-browser-transcript.ts +1 -17
  951. package/corpus/templates/clips/app/components/player/transcript-panel.tsx +120 -11
  952. package/corpus/templates/clips/app/i18n/ar-SA.ts +25 -0
  953. package/corpus/templates/clips/app/i18n/de-DE.ts +25 -0
  954. package/corpus/templates/clips/app/i18n/en-US.ts +25 -0
  955. package/corpus/templates/clips/app/i18n/es-ES.ts +25 -0
  956. package/corpus/templates/clips/app/i18n/fr-FR.ts +25 -0
  957. package/corpus/templates/clips/app/i18n/hi-IN.ts +25 -0
  958. package/corpus/templates/clips/app/i18n/ja-JP.ts +25 -0
  959. package/corpus/templates/clips/app/i18n/ko-KR.ts +25 -0
  960. package/corpus/templates/clips/app/i18n/pt-BR.ts +25 -0
  961. package/corpus/templates/clips/app/i18n/zh-CN.ts +23 -0
  962. package/corpus/templates/clips/app/i18n/zh-TW.ts +23 -0
  963. package/corpus/templates/clips/app/routes/_app.settings._index.tsx +69 -0
  964. package/corpus/templates/clips/app/routes/r.$recordingId.tsx +52 -2
  965. package/corpus/templates/clips/app/routes/record.tsx +26 -15
  966. package/corpus/templates/clips/changelog/2026-06-28-builder-credit-pauses-show-friendly-upgrade-guidance.md +6 -0
  967. package/corpus/templates/clips/changelog/2026-06-28-transcription-now-auto-detects-spoken-language-instead-of-following.md +6 -0
  968. package/corpus/templates/clips/changelog/2026-06-28-video-uploads-now-finish-when-duration-metadata-is-unavailable.md +6 -0
  969. package/corpus/templates/clips/desktop/src/lib/transcription-engine.ts +7 -3
  970. package/corpus/templates/clips/desktop/src-tauri/src/native_screen.rs +30 -12
  971. package/corpus/templates/clips/desktop/src-tauri/src/whisper_speech.rs +6 -19
  972. package/corpus/templates/clips/server/routes/api/uploads/[recordingId]/chunk.post.ts +4 -3
  973. package/corpus/templates/clips/shared/builder-credits.ts +120 -0
  974. package/corpus/templates/clips/shared/recording-core.ts +26 -8
  975. package/corpus/templates/content/AGENTS.md +23 -2
  976. package/corpus/templates/content/actions/_builder-docs-client.ts +952 -0
  977. package/corpus/templates/content/actions/_document-flush.ts +62 -0
  978. package/corpus/templates/content/actions/_local-file-documents.ts +115 -18
  979. package/corpus/templates/content/actions/check-builder-doc.ts +38 -0
  980. package/corpus/templates/content/actions/delete-document.ts +8 -0
  981. package/corpus/templates/content/actions/import-content-source.ts +12 -0
  982. package/corpus/templates/content/actions/list-builder-docs.ts +29 -0
  983. package/corpus/templates/content/actions/pull-builder-doc.ts +42 -0
  984. package/corpus/templates/content/actions/pull-document.ts +9 -59
  985. package/corpus/templates/content/actions/push-builder-doc.ts +45 -0
  986. package/corpus/templates/content/app/blocks/BuilderDocsBlocks.tsx +254 -0
  987. package/corpus/templates/content/app/blocks/contentBlockRegistry.tsx +4 -0
  988. package/corpus/templates/content/server/db/schema.ts +12 -0
  989. package/corpus/templates/content/server/plugins/db.ts +23 -0
  990. package/corpus/templates/content/shared/api.ts +1 -0
  991. package/corpus/templates/content/shared/builder-docs-blocks.ts +361 -0
  992. package/corpus/templates/content/shared/builder-mdx.ts +1037 -0
  993. package/corpus/templates/content/shared/content-source.ts +6 -0
  994. package/corpus/templates/content/shared/nfm-registry.ts +4 -0
  995. package/corpus/templates/content/vite.config.ts +13 -0
  996. package/corpus/templates/plan/.agents/skills/visual-plan/SKILL.md +25 -92
  997. package/corpus/templates/plan/.agents/skills/visual-plan/references/connection.md +51 -0
  998. package/corpus/templates/plan/.agents/skills/visual-plan/references/document-quality.md +5 -1
  999. package/corpus/templates/plan/.agents/skills/visual-plan/references/local-files.md +85 -0
  1000. package/corpus/templates/plan/.agents/skills/visual-plan/references/wireframe.md +21 -0
  1001. package/corpus/templates/plan/.agents/skills/visual-recap/SKILL.md +32 -104
  1002. package/corpus/templates/plan/.agents/skills/visual-recap/references/connection.md +51 -0
  1003. package/corpus/templates/plan/.agents/skills/visual-recap/references/local-files.md +85 -0
  1004. package/corpus/templates/plan/.agents/skills/visual-recap/references/wireframe.md +21 -0
  1005. package/corpus/templates/plan/actions/create-prototype-plan.ts +1 -1
  1006. package/corpus/templates/plan/actions/delete-visual-plan.ts +2 -2
  1007. package/corpus/templates/plan/actions/get-plan-blocks.ts +2 -0
  1008. package/corpus/templates/plan/app/components/plan/CanvasArea.tsx +25 -29
  1009. package/corpus/templates/plan/app/components/plan/wireframe/Wireframe.tsx +9 -4
  1010. package/corpus/templates/plan/app/components/plan/wireframe/html-artboard.css +15 -3
  1011. package/corpus/templates/plan/app/components/plan/wireframe/kit/rough.tsx +6 -6
  1012. package/corpus/templates/plan/app/components/plan/wireframe/sanitize-html.ts +71 -6
  1013. package/corpus/templates/plan/app/global.css +6 -3
  1014. package/corpus/templates/plan/app/root.tsx +31 -1
  1015. package/corpus/templates/plan/changelog/2026-06-28-plan-canvases-stay-stable-while-panning-and-zooming-in-chrom.md +6 -0
  1016. package/corpus/templates/plan/changelog/2026-06-28-plan-wireframes-avoid-overlapping-sketch-lines-in-dense-mockups.md +6 -0
  1017. package/corpus/templates/plan/changelog/2026-06-28-plan-wireframes-ignore-host-color-utility-classes-so-canvas-.md +6 -0
  1018. package/corpus/templates/plan/changelog/2026-06-28-wireframe-style-can-now-be-switched-between-sketchy-and-clean.md +6 -0
  1019. package/corpus/templates/plan/server/plan-content.ts +62 -3
  1020. package/corpus/templates/plan/server/plan-mdx.ts +177 -2
  1021. package/dist/application-state/store.js +5 -5
  1022. package/dist/application-state/store.js.map +1 -1
  1023. package/dist/chat-threads/store.js +2 -2
  1024. package/dist/chat-threads/store.js.map +1 -1
  1025. package/dist/cli/content-local.d.ts +31 -0
  1026. package/dist/cli/content-local.d.ts.map +1 -0
  1027. package/dist/cli/content-local.js +300 -0
  1028. package/dist/cli/content-local.js.map +1 -0
  1029. package/dist/cli/index.js +16 -0
  1030. package/dist/cli/index.js.map +1 -1
  1031. package/dist/cli/skills.d.ts +10 -4
  1032. package/dist/cli/skills.d.ts.map +1 -1
  1033. package/dist/cli/skills.js +227 -197
  1034. package/dist/cli/skills.js.map +1 -1
  1035. package/dist/client/AssistantChat.js +4 -4
  1036. package/dist/client/AssistantChat.js.map +1 -1
  1037. package/dist/client/MultiTabAssistantChat.d.ts.map +1 -1
  1038. package/dist/client/MultiTabAssistantChat.js +8 -69
  1039. package/dist/client/MultiTabAssistantChat.js.map +1 -1
  1040. package/dist/client/analytics.d.ts.map +1 -1
  1041. package/dist/client/analytics.js +48 -13
  1042. package/dist/client/analytics.js.map +1 -1
  1043. package/dist/client/blocks/index.d.ts +1 -1
  1044. package/dist/client/blocks/index.d.ts.map +1 -1
  1045. package/dist/client/blocks/index.js +1 -1
  1046. package/dist/client/blocks/index.js.map +1 -1
  1047. package/dist/client/blocks/library/diagram.config.d.ts +9 -9
  1048. package/dist/client/blocks/library/diagram.config.d.ts.map +1 -1
  1049. package/dist/client/blocks/library/diagram.config.js +36 -12
  1050. package/dist/client/blocks/library/diagram.config.js.map +1 -1
  1051. package/dist/client/blocks/library/sanitize-html.d.ts +3 -1
  1052. package/dist/client/blocks/library/sanitize-html.d.ts.map +1 -1
  1053. package/dist/client/blocks/library/sanitize-html.js +53 -5
  1054. package/dist/client/blocks/library/sanitize-html.js.map +1 -1
  1055. package/dist/client/blocks/library/wireframe-kit.d.ts +2 -2
  1056. package/dist/client/blocks/library/wireframe-kit.d.ts.map +1 -1
  1057. package/dist/client/blocks/library/wireframe-kit.js +2 -2
  1058. package/dist/client/blocks/library/wireframe-kit.js.map +1 -1
  1059. package/dist/client/blocks/library/wireframe.d.ts.map +1 -1
  1060. package/dist/client/blocks/library/wireframe.js +4 -1
  1061. package/dist/client/blocks/library/wireframe.js.map +1 -1
  1062. package/dist/client/blocks/mdx.d.ts +11 -0
  1063. package/dist/client/blocks/mdx.d.ts.map +1 -1
  1064. package/dist/client/blocks/mdx.js +47 -1
  1065. package/dist/client/blocks/mdx.js.map +1 -1
  1066. package/dist/client/blocks/server.d.ts +1 -1
  1067. package/dist/client/blocks/server.d.ts.map +1 -1
  1068. package/dist/client/blocks/server.js +1 -1
  1069. package/dist/client/blocks/server.js.map +1 -1
  1070. package/dist/client/blocks/types.d.ts +5 -4
  1071. package/dist/client/blocks/types.d.ts.map +1 -1
  1072. package/dist/client/blocks/types.js.map +1 -1
  1073. package/dist/client/chat/message-components.d.ts.map +1 -1
  1074. package/dist/client/chat/message-components.js +3 -13
  1075. package/dist/client/chat/message-components.js.map +1 -1
  1076. package/dist/client/chat-model-groups.d.ts +22 -0
  1077. package/dist/client/chat-model-groups.d.ts.map +1 -0
  1078. package/dist/client/chat-model-groups.js +94 -0
  1079. package/dist/client/chat-model-groups.js.map +1 -0
  1080. package/dist/client/components/ui/dialog.d.ts +14 -0
  1081. package/dist/client/components/ui/dialog.d.ts.map +1 -0
  1082. package/dist/client/components/ui/dialog.js +21 -0
  1083. package/dist/client/components/ui/dialog.js.map +1 -0
  1084. package/dist/client/composer/ComposerPlusMenu.d.ts.map +1 -1
  1085. package/dist/client/composer/ComposerPlusMenu.js +24 -149
  1086. package/dist/client/composer/ComposerPlusMenu.js.map +1 -1
  1087. package/dist/client/index.d.ts +1 -1
  1088. package/dist/client/index.d.ts.map +1 -1
  1089. package/dist/client/index.js +1 -1
  1090. package/dist/client/index.js.map +1 -1
  1091. package/dist/client/resources/McpIntegrationDialog.d.ts +13 -0
  1092. package/dist/client/resources/McpIntegrationDialog.d.ts.map +1 -0
  1093. package/dist/client/resources/McpIntegrationDialog.js +261 -0
  1094. package/dist/client/resources/McpIntegrationDialog.js.map +1 -0
  1095. package/dist/client/resources/ResourcesPanel.d.ts.map +1 -1
  1096. package/dist/client/resources/ResourcesPanel.js +74 -190
  1097. package/dist/client/resources/ResourcesPanel.js.map +1 -1
  1098. package/dist/client/resources/mcp-integration-catalog.d.ts +30 -0
  1099. package/dist/client/resources/mcp-integration-catalog.d.ts.map +1 -0
  1100. package/dist/client/resources/mcp-integration-catalog.js +191 -0
  1101. package/dist/client/resources/mcp-integration-catalog.js.map +1 -0
  1102. package/dist/client/settings/SettingsPanel.js +1 -1
  1103. package/dist/client/settings/SettingsPanel.js.map +1 -1
  1104. package/dist/client/use-chat-models.d.ts +2 -7
  1105. package/dist/client/use-chat-models.d.ts.map +1 -1
  1106. package/dist/client/use-chat-models.js +8 -78
  1107. package/dist/client/use-chat-models.js.map +1 -1
  1108. package/dist/collab/routes.d.ts +1 -1
  1109. package/dist/db/client.d.ts.map +1 -1
  1110. package/dist/db/client.js +0 -5
  1111. package/dist/db/client.js.map +1 -1
  1112. package/dist/file-upload/actions/upload-image.d.ts +2 -2
  1113. package/dist/integrations/adapters/email.js +2 -2
  1114. package/dist/integrations/adapters/email.js.map +1 -1
  1115. package/dist/local-artifacts/index.d.ts +6 -0
  1116. package/dist/local-artifacts/index.d.ts.map +1 -1
  1117. package/dist/local-artifacts/index.js +12 -0
  1118. package/dist/local-artifacts/index.js.map +1 -1
  1119. package/dist/localization/default-messages.d.ts +76 -0
  1120. package/dist/localization/default-messages.d.ts.map +1 -1
  1121. package/dist/localization/default-messages.js +76 -0
  1122. package/dist/localization/default-messages.js.map +1 -1
  1123. package/dist/localization/shared.d.ts +1 -1
  1124. package/dist/localization/shared.js +3 -3
  1125. package/dist/localization/shared.js.map +1 -1
  1126. package/dist/observability/routes.d.ts +2 -2
  1127. package/dist/org/handlers.js +2 -2
  1128. package/dist/org/handlers.js.map +1 -1
  1129. package/dist/provider-api/corpus-jobs.d.ts +2 -2
  1130. package/dist/resources/handlers.d.ts +2 -2
  1131. package/dist/resources/store.js +7 -7
  1132. package/dist/resources/store.js.map +1 -1
  1133. package/dist/server/core-routes-plugin.d.ts +1 -0
  1134. package/dist/server/core-routes-plugin.d.ts.map +1 -1
  1135. package/dist/server/core-routes-plugin.js +29 -11
  1136. package/dist/server/core-routes-plugin.js.map +1 -1
  1137. package/dist/server/transcribe-voice.d.ts +1 -1
  1138. package/dist/shared/mcp-integration-config.d.ts +27 -0
  1139. package/dist/shared/mcp-integration-config.d.ts.map +1 -0
  1140. package/dist/shared/mcp-integration-config.js +56 -0
  1141. package/dist/shared/mcp-integration-config.js.map +1 -0
  1142. package/dist/styles/agent-native.css +6 -104
  1143. package/dist/styles/blocks.css +15 -3
  1144. package/dist/vite/client.d.ts +11 -0
  1145. package/dist/vite/client.d.ts.map +1 -1
  1146. package/dist/vite/client.js +2 -0
  1147. package/dist/vite/client.js.map +1 -1
  1148. package/docs/content/a2a-protocol.mdx +97 -9
  1149. package/docs/content/actions.mdx +65 -4
  1150. package/docs/content/agent-mentions.mdx +68 -4
  1151. package/docs/content/agent-surfaces.mdx +112 -8
  1152. package/docs/content/agent-teams.mdx +171 -12
  1153. package/docs/content/agent-web-surfaces.mdx +51 -4
  1154. package/docs/content/authentication.mdx +122 -8
  1155. package/docs/content/automations.mdx +110 -8
  1156. package/docs/content/blueprint-installer.mdx +42 -4
  1157. package/docs/content/cli-adapters.mdx +44 -4
  1158. package/docs/content/client.mdx +79 -8
  1159. package/docs/content/cloneable-saas.mdx +85 -8
  1160. package/docs/content/code-agents-ui.mdx +98 -8
  1161. package/docs/content/components.mdx +118 -8
  1162. package/docs/content/context-awareness.mdx +98 -8
  1163. package/docs/content/creating-templates.mdx +49 -4
  1164. package/docs/content/cross-app-sso.mdx +109 -8
  1165. package/docs/content/database.mdx +56 -4
  1166. package/docs/content/deployment.mdx +103 -8
  1167. package/docs/content/dispatch.mdx +134 -8
  1168. package/docs/content/drop-in-agent.mdx +63 -4
  1169. package/docs/content/durable-background-runs.mdx +98 -8
  1170. package/docs/content/durable-resume.mdx +47 -4
  1171. package/docs/content/embedding-sdk.mdx +83 -8
  1172. package/docs/content/evals.mdx +102 -8
  1173. package/docs/content/extensions.mdx +113 -9
  1174. package/docs/content/external-agents.mdx +119 -8
  1175. package/docs/content/faq.mdx +98 -8
  1176. package/docs/content/file-uploads.mdx +61 -4
  1177. package/docs/content/frames.mdx +90 -8
  1178. package/docs/content/generative-ui.mdx +50 -4
  1179. package/docs/content/getting-started.mdx +34 -4
  1180. package/docs/content/harness-agents.mdx +77 -8
  1181. package/docs/content/human-approval.mdx +50 -4
  1182. package/docs/content/key-concepts.mdx +102 -8
  1183. package/docs/content/local-file-mode.mdx +58 -4
  1184. package/docs/content/locales/ar-SA/a2a-protocol.mdx +97 -9
  1185. package/docs/content/locales/ar-SA/actions.mdx +65 -4
  1186. package/docs/content/locales/ar-SA/agent-mentions.mdx +68 -4
  1187. package/docs/content/locales/ar-SA/agent-surfaces.mdx +114 -8
  1188. package/docs/content/locales/ar-SA/agent-teams.mdx +174 -12
  1189. package/docs/content/locales/ar-SA/agent-web-surfaces.mdx +49 -4
  1190. package/docs/content/locales/ar-SA/authentication.mdx +120 -8
  1191. package/docs/content/locales/ar-SA/automations.mdx +110 -8
  1192. package/docs/content/locales/ar-SA/blueprint-installer.mdx +42 -4
  1193. package/docs/content/locales/ar-SA/cli-adapters.mdx +40 -4
  1194. package/docs/content/locales/ar-SA/client.mdx +80 -8
  1195. package/docs/content/locales/ar-SA/cloneable-saas.mdx +85 -8
  1196. package/docs/content/locales/ar-SA/code-agents-ui.mdx +99 -8
  1197. package/docs/content/locales/ar-SA/components.mdx +114 -8
  1198. package/docs/content/locales/ar-SA/context-awareness.mdx +100 -8
  1199. package/docs/content/locales/ar-SA/creating-templates.mdx +51 -4
  1200. package/docs/content/locales/ar-SA/cross-app-sso.mdx +109 -8
  1201. package/docs/content/locales/ar-SA/database.mdx +52 -4
  1202. package/docs/content/locales/ar-SA/deployment.mdx +103 -8
  1203. package/docs/content/locales/ar-SA/dispatch.mdx +134 -8
  1204. package/docs/content/locales/ar-SA/drop-in-agent.mdx +63 -4
  1205. package/docs/content/locales/ar-SA/durable-resume.mdx +47 -4
  1206. package/docs/content/locales/ar-SA/embedding-sdk.mdx +83 -8
  1207. package/docs/content/locales/ar-SA/evals.mdx +102 -8
  1208. package/docs/content/locales/ar-SA/extensions.mdx +113 -9
  1209. package/docs/content/locales/ar-SA/external-agents.mdx +119 -8
  1210. package/docs/content/locales/ar-SA/faq.mdx +98 -8
  1211. package/docs/content/locales/ar-SA/file-uploads.mdx +61 -4
  1212. package/docs/content/locales/ar-SA/frames.mdx +88 -8
  1213. package/docs/content/locales/ar-SA/getting-started.mdx +34 -4
  1214. package/docs/content/locales/ar-SA/harness-agents.mdx +79 -8
  1215. package/docs/content/locales/ar-SA/human-approval.mdx +50 -4
  1216. package/docs/content/locales/ar-SA/key-concepts.mdx +107 -8
  1217. package/docs/content/locales/ar-SA/local-file-mode.mdx +56 -4
  1218. package/docs/content/locales/ar-SA/mcp-apps.mdx +120 -10
  1219. package/docs/content/locales/ar-SA/mcp-clients.mdx +133 -8
  1220. package/docs/content/locales/ar-SA/mcp-protocol.mdx +105 -8
  1221. package/docs/content/locales/ar-SA/messaging.mdx +115 -8
  1222. package/docs/content/locales/ar-SA/migration-workbench.mdx +47 -4
  1223. package/docs/content/locales/ar-SA/multi-app-workspace.mdx +91 -8
  1224. package/docs/content/locales/ar-SA/multi-tenancy.mdx +80 -8
  1225. package/docs/content/locales/ar-SA/native-chat-ui.mdx +104 -8
  1226. package/docs/content/locales/ar-SA/notifications.mdx +135 -8
  1227. package/docs/content/locales/ar-SA/observability.mdx +102 -8
  1228. package/docs/content/locales/ar-SA/observational-memory.mdx +87 -8
  1229. package/docs/content/locales/ar-SA/onboarding.mdx +45 -4
  1230. package/docs/content/locales/ar-SA/plan-plugin.mdx +99 -8
  1231. package/docs/content/locales/ar-SA/pr-visual-recap.mdx +125 -8
  1232. package/docs/content/locales/ar-SA/processors.mdx +41 -4
  1233. package/docs/content/locales/ar-SA/progress.mdx +46 -4
  1234. package/docs/content/locales/ar-SA/pure-agent-apps.mdx +48 -4
  1235. package/docs/content/locales/ar-SA/real-time-collaboration.mdx +102 -8
  1236. package/docs/content/locales/ar-SA/recurring-jobs.mdx +59 -4
  1237. package/docs/content/locales/ar-SA/routing.mdx +44 -5
  1238. package/docs/content/locales/ar-SA/sandbox-adapters.mdx +43 -4
  1239. package/docs/content/locales/ar-SA/security.mdx +80 -8
  1240. package/docs/content/locales/ar-SA/server.mdx +173 -12
  1241. package/docs/content/locales/ar-SA/sharing.mdx +45 -4
  1242. package/docs/content/locales/ar-SA/skills-guide.mdx +118 -9
  1243. package/docs/content/locales/ar-SA/template-analytics.mdx +46 -4
  1244. package/docs/content/locales/ar-SA/template-assets.mdx +62 -4
  1245. package/docs/content/locales/ar-SA/template-brain.mdx +65 -4
  1246. package/docs/content/locales/ar-SA/template-calendar.mdx +62 -4
  1247. package/docs/content/locales/ar-SA/template-chat.mdx +61 -4
  1248. package/docs/content/locales/ar-SA/template-clips.mdx +52 -4
  1249. package/docs/content/locales/ar-SA/template-content.mdx +62 -4
  1250. package/docs/content/locales/ar-SA/template-design.mdx +60 -4
  1251. package/docs/content/locales/ar-SA/template-dispatch.mdx +57 -4
  1252. package/docs/content/locales/ar-SA/template-forms.mdx +62 -4
  1253. package/docs/content/locales/ar-SA/template-mail.mdx +60 -4
  1254. package/docs/content/locales/ar-SA/template-plan.mdx +61 -4
  1255. package/docs/content/locales/ar-SA/template-slides.mdx +49 -4
  1256. package/docs/content/locales/ar-SA/template-videos.mdx +53 -4
  1257. package/docs/content/locales/ar-SA/tracking.mdx +54 -4
  1258. package/docs/content/locales/ar-SA/using-your-agent.mdx +51 -4
  1259. package/docs/content/locales/ar-SA/voice-input.mdx +43 -4
  1260. package/docs/content/locales/ar-SA/what-is-agent-native.mdx +96 -8
  1261. package/docs/content/locales/ar-SA/workspace-connections.mdx +128 -8
  1262. package/docs/content/locales/ar-SA/workspace-management.mdx +50 -4
  1263. package/docs/content/locales/ar-SA/workspace.mdx +112 -8
  1264. package/docs/content/locales/ar-SA/writing-agent-instructions.mdx +41 -4
  1265. package/docs/content/locales/de-DE/a2a-protocol.mdx +99 -9
  1266. package/docs/content/locales/de-DE/actions.mdx +67 -4
  1267. package/docs/content/locales/de-DE/agent-mentions.mdx +68 -4
  1268. package/docs/content/locales/de-DE/agent-surfaces.mdx +116 -8
  1269. package/docs/content/locales/de-DE/agent-teams.mdx +171 -12
  1270. package/docs/content/locales/de-DE/agent-web-surfaces.mdx +51 -4
  1271. package/docs/content/locales/de-DE/authentication.mdx +122 -8
  1272. package/docs/content/locales/de-DE/automations.mdx +110 -8
  1273. package/docs/content/locales/de-DE/blueprint-installer.mdx +42 -4
  1274. package/docs/content/locales/de-DE/cli-adapters.mdx +44 -4
  1275. package/docs/content/locales/de-DE/client.mdx +79 -8
  1276. package/docs/content/locales/de-DE/cloneable-saas.mdx +85 -8
  1277. package/docs/content/locales/de-DE/code-agents-ui.mdx +100 -8
  1278. package/docs/content/locales/de-DE/components.mdx +118 -8
  1279. package/docs/content/locales/de-DE/context-awareness.mdx +98 -8
  1280. package/docs/content/locales/de-DE/creating-templates.mdx +51 -4
  1281. package/docs/content/locales/de-DE/cross-app-sso.mdx +109 -8
  1282. package/docs/content/locales/de-DE/database.mdx +52 -4
  1283. package/docs/content/locales/de-DE/deployment.mdx +103 -8
  1284. package/docs/content/locales/de-DE/dispatch.mdx +134 -8
  1285. package/docs/content/locales/de-DE/drop-in-agent.mdx +63 -4
  1286. package/docs/content/locales/de-DE/durable-resume.mdx +47 -4
  1287. package/docs/content/locales/de-DE/embedding-sdk.mdx +85 -8
  1288. package/docs/content/locales/de-DE/evals.mdx +102 -8
  1289. package/docs/content/locales/de-DE/extensions.mdx +113 -9
  1290. package/docs/content/locales/de-DE/external-agents.mdx +119 -8
  1291. package/docs/content/locales/de-DE/faq.mdx +98 -8
  1292. package/docs/content/locales/de-DE/file-uploads.mdx +61 -4
  1293. package/docs/content/locales/de-DE/frames.mdx +88 -8
  1294. package/docs/content/locales/de-DE/getting-started.mdx +34 -4
  1295. package/docs/content/locales/de-DE/harness-agents.mdx +79 -8
  1296. package/docs/content/locales/de-DE/human-approval.mdx +50 -4
  1297. package/docs/content/locales/de-DE/key-concepts.mdx +104 -8
  1298. package/docs/content/locales/de-DE/local-file-mode.mdx +58 -4
  1299. package/docs/content/locales/de-DE/mcp-apps.mdx +120 -10
  1300. package/docs/content/locales/de-DE/mcp-clients.mdx +133 -8
  1301. package/docs/content/locales/de-DE/mcp-protocol.mdx +105 -8
  1302. package/docs/content/locales/de-DE/messaging.mdx +115 -8
  1303. package/docs/content/locales/de-DE/migration-workbench.mdx +47 -4
  1304. package/docs/content/locales/de-DE/multi-app-workspace.mdx +91 -8
  1305. package/docs/content/locales/de-DE/multi-tenancy.mdx +80 -8
  1306. package/docs/content/locales/de-DE/native-chat-ui.mdx +108 -8
  1307. package/docs/content/locales/de-DE/notifications.mdx +135 -8
  1308. package/docs/content/locales/de-DE/observability.mdx +102 -8
  1309. package/docs/content/locales/de-DE/observational-memory.mdx +92 -8
  1310. package/docs/content/locales/de-DE/onboarding.mdx +45 -4
  1311. package/docs/content/locales/de-DE/plan-plugin.mdx +99 -8
  1312. package/docs/content/locales/de-DE/pr-visual-recap.mdx +125 -8
  1313. package/docs/content/locales/de-DE/processors.mdx +41 -4
  1314. package/docs/content/locales/de-DE/progress.mdx +46 -4
  1315. package/docs/content/locales/de-DE/pure-agent-apps.mdx +50 -4
  1316. package/docs/content/locales/de-DE/real-time-collaboration.mdx +104 -8
  1317. package/docs/content/locales/de-DE/recurring-jobs.mdx +59 -4
  1318. package/docs/content/locales/de-DE/routing.mdx +44 -5
  1319. package/docs/content/locales/de-DE/sandbox-adapters.mdx +43 -4
  1320. package/docs/content/locales/de-DE/security.mdx +80 -8
  1321. package/docs/content/locales/de-DE/server.mdx +171 -12
  1322. package/docs/content/locales/de-DE/sharing.mdx +45 -4
  1323. package/docs/content/locales/de-DE/skills-guide.mdx +118 -9
  1324. package/docs/content/locales/de-DE/template-analytics.mdx +46 -4
  1325. package/docs/content/locales/de-DE/template-assets.mdx +62 -4
  1326. package/docs/content/locales/de-DE/template-brain.mdx +69 -4
  1327. package/docs/content/locales/de-DE/template-calendar.mdx +62 -4
  1328. package/docs/content/locales/de-DE/template-chat.mdx +61 -4
  1329. package/docs/content/locales/de-DE/template-clips.mdx +52 -4
  1330. package/docs/content/locales/de-DE/template-content.mdx +60 -4
  1331. package/docs/content/locales/de-DE/template-design.mdx +58 -4
  1332. package/docs/content/locales/de-DE/template-dispatch.mdx +57 -4
  1333. package/docs/content/locales/de-DE/template-forms.mdx +64 -4
  1334. package/docs/content/locales/de-DE/template-mail.mdx +60 -4
  1335. package/docs/content/locales/de-DE/template-plan.mdx +63 -4
  1336. package/docs/content/locales/de-DE/template-slides.mdx +49 -4
  1337. package/docs/content/locales/de-DE/template-videos.mdx +53 -4
  1338. package/docs/content/locales/de-DE/tracking.mdx +54 -4
  1339. package/docs/content/locales/de-DE/using-your-agent.mdx +51 -4
  1340. package/docs/content/locales/de-DE/voice-input.mdx +45 -4
  1341. package/docs/content/locales/de-DE/what-is-agent-native.mdx +100 -8
  1342. package/docs/content/locales/de-DE/workspace-connections.mdx +128 -8
  1343. package/docs/content/locales/de-DE/workspace-management.mdx +50 -4
  1344. package/docs/content/locales/de-DE/workspace.mdx +111 -8
  1345. package/docs/content/locales/de-DE/writing-agent-instructions.mdx +45 -4
  1346. package/docs/content/locales/es-ES/a2a-protocol.mdx +99 -9
  1347. package/docs/content/locales/es-ES/actions.mdx +67 -4
  1348. package/docs/content/locales/es-ES/agent-mentions.mdx +68 -4
  1349. package/docs/content/locales/es-ES/agent-surfaces.mdx +120 -8
  1350. package/docs/content/locales/es-ES/agent-teams.mdx +172 -12
  1351. package/docs/content/locales/es-ES/agent-web-surfaces.mdx +51 -4
  1352. package/docs/content/locales/es-ES/authentication.mdx +122 -8
  1353. package/docs/content/locales/es-ES/automations.mdx +110 -8
  1354. package/docs/content/locales/es-ES/blueprint-installer.mdx +42 -4
  1355. package/docs/content/locales/es-ES/cli-adapters.mdx +44 -4
  1356. package/docs/content/locales/es-ES/client.mdx +79 -8
  1357. package/docs/content/locales/es-ES/cloneable-saas.mdx +85 -8
  1358. package/docs/content/locales/es-ES/code-agents-ui.mdx +101 -8
  1359. package/docs/content/locales/es-ES/components.mdx +118 -8
  1360. package/docs/content/locales/es-ES/context-awareness.mdx +98 -8
  1361. package/docs/content/locales/es-ES/creating-templates.mdx +51 -4
  1362. package/docs/content/locales/es-ES/cross-app-sso.mdx +109 -8
  1363. package/docs/content/locales/es-ES/database.mdx +52 -4
  1364. package/docs/content/locales/es-ES/deployment.mdx +103 -8
  1365. package/docs/content/locales/es-ES/dispatch.mdx +134 -8
  1366. package/docs/content/locales/es-ES/drop-in-agent.mdx +63 -4
  1367. package/docs/content/locales/es-ES/durable-resume.mdx +47 -4
  1368. package/docs/content/locales/es-ES/embedding-sdk.mdx +87 -8
  1369. package/docs/content/locales/es-ES/evals.mdx +102 -8
  1370. package/docs/content/locales/es-ES/extensions.mdx +113 -9
  1371. package/docs/content/locales/es-ES/external-agents.mdx +119 -8
  1372. package/docs/content/locales/es-ES/faq.mdx +98 -8
  1373. package/docs/content/locales/es-ES/file-uploads.mdx +61 -4
  1374. package/docs/content/locales/es-ES/frames.mdx +88 -8
  1375. package/docs/content/locales/es-ES/getting-started.mdx +34 -4
  1376. package/docs/content/locales/es-ES/harness-agents.mdx +79 -8
  1377. package/docs/content/locales/es-ES/human-approval.mdx +50 -4
  1378. package/docs/content/locales/es-ES/key-concepts.mdx +104 -8
  1379. package/docs/content/locales/es-ES/local-file-mode.mdx +60 -4
  1380. package/docs/content/locales/es-ES/mcp-apps.mdx +120 -10
  1381. package/docs/content/locales/es-ES/mcp-clients.mdx +135 -8
  1382. package/docs/content/locales/es-ES/mcp-protocol.mdx +105 -8
  1383. package/docs/content/locales/es-ES/messaging.mdx +115 -8
  1384. package/docs/content/locales/es-ES/migration-workbench.mdx +47 -4
  1385. package/docs/content/locales/es-ES/multi-app-workspace.mdx +91 -8
  1386. package/docs/content/locales/es-ES/multi-tenancy.mdx +80 -8
  1387. package/docs/content/locales/es-ES/native-chat-ui.mdx +108 -8
  1388. package/docs/content/locales/es-ES/notifications.mdx +135 -8
  1389. package/docs/content/locales/es-ES/observability.mdx +104 -8
  1390. package/docs/content/locales/es-ES/observational-memory.mdx +92 -8
  1391. package/docs/content/locales/es-ES/onboarding.mdx +45 -4
  1392. package/docs/content/locales/es-ES/plan-plugin.mdx +99 -8
  1393. package/docs/content/locales/es-ES/pr-visual-recap.mdx +125 -8
  1394. package/docs/content/locales/es-ES/processors.mdx +41 -4
  1395. package/docs/content/locales/es-ES/progress.mdx +46 -4
  1396. package/docs/content/locales/es-ES/pure-agent-apps.mdx +50 -4
  1397. package/docs/content/locales/es-ES/real-time-collaboration.mdx +109 -8
  1398. package/docs/content/locales/es-ES/recurring-jobs.mdx +59 -4
  1399. package/docs/content/locales/es-ES/routing.mdx +44 -5
  1400. package/docs/content/locales/es-ES/sandbox-adapters.mdx +44 -4
  1401. package/docs/content/locales/es-ES/security.mdx +82 -8
  1402. package/docs/content/locales/es-ES/server.mdx +173 -12
  1403. package/docs/content/locales/es-ES/sharing.mdx +45 -4
  1404. package/docs/content/locales/es-ES/skills-guide.mdx +118 -9
  1405. package/docs/content/locales/es-ES/template-analytics.mdx +46 -4
  1406. package/docs/content/locales/es-ES/template-assets.mdx +64 -4
  1407. package/docs/content/locales/es-ES/template-brain.mdx +69 -4
  1408. package/docs/content/locales/es-ES/template-calendar.mdx +62 -4
  1409. package/docs/content/locales/es-ES/template-chat.mdx +61 -4
  1410. package/docs/content/locales/es-ES/template-clips.mdx +52 -4
  1411. package/docs/content/locales/es-ES/template-content.mdx +64 -4
  1412. package/docs/content/locales/es-ES/template-design.mdx +58 -4
  1413. package/docs/content/locales/es-ES/template-dispatch.mdx +57 -4
  1414. package/docs/content/locales/es-ES/template-forms.mdx +64 -4
  1415. package/docs/content/locales/es-ES/template-mail.mdx +60 -4
  1416. package/docs/content/locales/es-ES/template-plan.mdx +61 -4
  1417. package/docs/content/locales/es-ES/template-slides.mdx +49 -4
  1418. package/docs/content/locales/es-ES/template-videos.mdx +53 -4
  1419. package/docs/content/locales/es-ES/tracking.mdx +54 -4
  1420. package/docs/content/locales/es-ES/using-your-agent.mdx +51 -4
  1421. package/docs/content/locales/es-ES/voice-input.mdx +45 -4
  1422. package/docs/content/locales/es-ES/what-is-agent-native.mdx +99 -8
  1423. package/docs/content/locales/es-ES/workspace-connections.mdx +128 -8
  1424. package/docs/content/locales/es-ES/workspace-management.mdx +50 -4
  1425. package/docs/content/locales/es-ES/workspace.mdx +112 -8
  1426. package/docs/content/locales/es-ES/writing-agent-instructions.mdx +46 -4
  1427. package/docs/content/locales/fr-FR/a2a-protocol.mdx +97 -9
  1428. package/docs/content/locales/fr-FR/actions.mdx +67 -4
  1429. package/docs/content/locales/fr-FR/agent-mentions.mdx +68 -4
  1430. package/docs/content/locales/fr-FR/agent-surfaces.mdx +118 -8
  1431. package/docs/content/locales/fr-FR/agent-teams.mdx +172 -12
  1432. package/docs/content/locales/fr-FR/agent-web-surfaces.mdx +51 -4
  1433. package/docs/content/locales/fr-FR/authentication.mdx +122 -8
  1434. package/docs/content/locales/fr-FR/automations.mdx +110 -8
  1435. package/docs/content/locales/fr-FR/blueprint-installer.mdx +42 -4
  1436. package/docs/content/locales/fr-FR/cli-adapters.mdx +44 -4
  1437. package/docs/content/locales/fr-FR/client.mdx +81 -8
  1438. package/docs/content/locales/fr-FR/cloneable-saas.mdx +85 -8
  1439. package/docs/content/locales/fr-FR/code-agents-ui.mdx +102 -8
  1440. package/docs/content/locales/fr-FR/components.mdx +118 -8
  1441. package/docs/content/locales/fr-FR/context-awareness.mdx +98 -8
  1442. package/docs/content/locales/fr-FR/creating-templates.mdx +49 -4
  1443. package/docs/content/locales/fr-FR/cross-app-sso.mdx +109 -8
  1444. package/docs/content/locales/fr-FR/database.mdx +52 -4
  1445. package/docs/content/locales/fr-FR/deployment.mdx +103 -8
  1446. package/docs/content/locales/fr-FR/dispatch.mdx +134 -8
  1447. package/docs/content/locales/fr-FR/drop-in-agent.mdx +63 -4
  1448. package/docs/content/locales/fr-FR/durable-resume.mdx +47 -4
  1449. package/docs/content/locales/fr-FR/embedding-sdk.mdx +87 -8
  1450. package/docs/content/locales/fr-FR/evals.mdx +102 -8
  1451. package/docs/content/locales/fr-FR/extensions.mdx +113 -9
  1452. package/docs/content/locales/fr-FR/external-agents.mdx +119 -8
  1453. package/docs/content/locales/fr-FR/faq.mdx +98 -8
  1454. package/docs/content/locales/fr-FR/file-uploads.mdx +61 -4
  1455. package/docs/content/locales/fr-FR/frames.mdx +90 -8
  1456. package/docs/content/locales/fr-FR/getting-started.mdx +34 -4
  1457. package/docs/content/locales/fr-FR/harness-agents.mdx +77 -8
  1458. package/docs/content/locales/fr-FR/human-approval.mdx +50 -4
  1459. package/docs/content/locales/fr-FR/key-concepts.mdx +106 -8
  1460. package/docs/content/locales/fr-FR/local-file-mode.mdx +58 -4
  1461. package/docs/content/locales/fr-FR/mcp-apps.mdx +120 -10
  1462. package/docs/content/locales/fr-FR/mcp-clients.mdx +135 -8
  1463. package/docs/content/locales/fr-FR/mcp-protocol.mdx +105 -8
  1464. package/docs/content/locales/fr-FR/messaging.mdx +115 -8
  1465. package/docs/content/locales/fr-FR/migration-workbench.mdx +47 -4
  1466. package/docs/content/locales/fr-FR/multi-app-workspace.mdx +91 -8
  1467. package/docs/content/locales/fr-FR/multi-tenancy.mdx +80 -8
  1468. package/docs/content/locales/fr-FR/native-chat-ui.mdx +108 -8
  1469. package/docs/content/locales/fr-FR/notifications.mdx +135 -8
  1470. package/docs/content/locales/fr-FR/observability.mdx +104 -8
  1471. package/docs/content/locales/fr-FR/observational-memory.mdx +89 -8
  1472. package/docs/content/locales/fr-FR/onboarding.mdx +45 -4
  1473. package/docs/content/locales/fr-FR/plan-plugin.mdx +99 -8
  1474. package/docs/content/locales/fr-FR/pr-visual-recap.mdx +126 -8
  1475. package/docs/content/locales/fr-FR/processors.mdx +41 -4
  1476. package/docs/content/locales/fr-FR/progress.mdx +46 -4
  1477. package/docs/content/locales/fr-FR/pure-agent-apps.mdx +48 -4
  1478. package/docs/content/locales/fr-FR/real-time-collaboration.mdx +107 -8
  1479. package/docs/content/locales/fr-FR/recurring-jobs.mdx +59 -4
  1480. package/docs/content/locales/fr-FR/routing.mdx +44 -5
  1481. package/docs/content/locales/fr-FR/sandbox-adapters.mdx +44 -4
  1482. package/docs/content/locales/fr-FR/security.mdx +82 -8
  1483. package/docs/content/locales/fr-FR/server.mdx +173 -12
  1484. package/docs/content/locales/fr-FR/sharing.mdx +45 -4
  1485. package/docs/content/locales/fr-FR/skills-guide.mdx +118 -9
  1486. package/docs/content/locales/fr-FR/template-analytics.mdx +46 -4
  1487. package/docs/content/locales/fr-FR/template-assets.mdx +66 -4
  1488. package/docs/content/locales/fr-FR/template-brain.mdx +69 -4
  1489. package/docs/content/locales/fr-FR/template-calendar.mdx +62 -4
  1490. package/docs/content/locales/fr-FR/template-chat.mdx +61 -4
  1491. package/docs/content/locales/fr-FR/template-clips.mdx +52 -4
  1492. package/docs/content/locales/fr-FR/template-content.mdx +64 -4
  1493. package/docs/content/locales/fr-FR/template-design.mdx +58 -4
  1494. package/docs/content/locales/fr-FR/template-dispatch.mdx +57 -4
  1495. package/docs/content/locales/fr-FR/template-forms.mdx +64 -4
  1496. package/docs/content/locales/fr-FR/template-mail.mdx +60 -4
  1497. package/docs/content/locales/fr-FR/template-plan.mdx +61 -4
  1498. package/docs/content/locales/fr-FR/template-slides.mdx +49 -4
  1499. package/docs/content/locales/fr-FR/template-videos.mdx +53 -4
  1500. package/docs/content/locales/fr-FR/tracking.mdx +54 -4
  1501. package/docs/content/locales/fr-FR/using-your-agent.mdx +51 -4
  1502. package/docs/content/locales/fr-FR/voice-input.mdx +45 -4
  1503. package/docs/content/locales/fr-FR/what-is-agent-native.mdx +101 -8
  1504. package/docs/content/locales/fr-FR/workspace-connections.mdx +128 -8
  1505. package/docs/content/locales/fr-FR/workspace-management.mdx +50 -4
  1506. package/docs/content/locales/fr-FR/workspace.mdx +112 -8
  1507. package/docs/content/locales/fr-FR/writing-agent-instructions.mdx +47 -4
  1508. package/docs/content/locales/hi-IN/a2a-protocol.mdx +97 -9
  1509. package/docs/content/locales/hi-IN/actions.mdx +63 -4
  1510. package/docs/content/locales/hi-IN/agent-mentions.mdx +68 -4
  1511. package/docs/content/locales/hi-IN/agent-surfaces.mdx +112 -8
  1512. package/docs/content/locales/hi-IN/agent-teams.mdx +171 -12
  1513. package/docs/content/locales/hi-IN/agent-web-surfaces.mdx +51 -4
  1514. package/docs/content/locales/hi-IN/authentication.mdx +122 -8
  1515. package/docs/content/locales/hi-IN/automations.mdx +110 -8
  1516. package/docs/content/locales/hi-IN/blueprint-installer.mdx +42 -4
  1517. package/docs/content/locales/hi-IN/cli-adapters.mdx +44 -4
  1518. package/docs/content/locales/hi-IN/client.mdx +79 -8
  1519. package/docs/content/locales/hi-IN/cloneable-saas.mdx +85 -8
  1520. package/docs/content/locales/hi-IN/code-agents-ui.mdx +96 -8
  1521. package/docs/content/locales/hi-IN/components.mdx +114 -8
  1522. package/docs/content/locales/hi-IN/context-awareness.mdx +102 -8
  1523. package/docs/content/locales/hi-IN/creating-templates.mdx +53 -4
  1524. package/docs/content/locales/hi-IN/cross-app-sso.mdx +109 -8
  1525. package/docs/content/locales/hi-IN/database.mdx +52 -4
  1526. package/docs/content/locales/hi-IN/deployment.mdx +103 -8
  1527. package/docs/content/locales/hi-IN/dispatch.mdx +134 -8
  1528. package/docs/content/locales/hi-IN/drop-in-agent.mdx +63 -4
  1529. package/docs/content/locales/hi-IN/durable-resume.mdx +47 -4
  1530. package/docs/content/locales/hi-IN/embedding-sdk.mdx +83 -8
  1531. package/docs/content/locales/hi-IN/evals.mdx +100 -8
  1532. package/docs/content/locales/hi-IN/extensions.mdx +113 -9
  1533. package/docs/content/locales/hi-IN/external-agents.mdx +119 -8
  1534. package/docs/content/locales/hi-IN/faq.mdx +96 -8
  1535. package/docs/content/locales/hi-IN/file-uploads.mdx +61 -4
  1536. package/docs/content/locales/hi-IN/frames.mdx +88 -8
  1537. package/docs/content/locales/hi-IN/getting-started.mdx +34 -4
  1538. package/docs/content/locales/hi-IN/harness-agents.mdx +77 -8
  1539. package/docs/content/locales/hi-IN/human-approval.mdx +51 -4
  1540. package/docs/content/locales/hi-IN/key-concepts.mdx +104 -8
  1541. package/docs/content/locales/hi-IN/local-file-mode.mdx +58 -4
  1542. package/docs/content/locales/hi-IN/mcp-apps.mdx +120 -10
  1543. package/docs/content/locales/hi-IN/mcp-clients.mdx +133 -8
  1544. package/docs/content/locales/hi-IN/mcp-protocol.mdx +105 -8
  1545. package/docs/content/locales/hi-IN/messaging.mdx +115 -8
  1546. package/docs/content/locales/hi-IN/migration-workbench.mdx +45 -4
  1547. package/docs/content/locales/hi-IN/multi-app-workspace.mdx +91 -8
  1548. package/docs/content/locales/hi-IN/multi-tenancy.mdx +80 -8
  1549. package/docs/content/locales/hi-IN/native-chat-ui.mdx +106 -8
  1550. package/docs/content/locales/hi-IN/notifications.mdx +135 -8
  1551. package/docs/content/locales/hi-IN/observability.mdx +102 -8
  1552. package/docs/content/locales/hi-IN/observational-memory.mdx +89 -8
  1553. package/docs/content/locales/hi-IN/onboarding.mdx +45 -4
  1554. package/docs/content/locales/hi-IN/plan-plugin.mdx +99 -8
  1555. package/docs/content/locales/hi-IN/pr-visual-recap.mdx +126 -8
  1556. package/docs/content/locales/hi-IN/processors.mdx +41 -4
  1557. package/docs/content/locales/hi-IN/progress.mdx +46 -4
  1558. package/docs/content/locales/hi-IN/pure-agent-apps.mdx +48 -4
  1559. package/docs/content/locales/hi-IN/real-time-collaboration.mdx +106 -8
  1560. package/docs/content/locales/hi-IN/recurring-jobs.mdx +59 -4
  1561. package/docs/content/locales/hi-IN/routing.mdx +44 -5
  1562. package/docs/content/locales/hi-IN/sandbox-adapters.mdx +43 -4
  1563. package/docs/content/locales/hi-IN/security.mdx +78 -8
  1564. package/docs/content/locales/hi-IN/server.mdx +169 -12
  1565. package/docs/content/locales/hi-IN/sharing.mdx +45 -4
  1566. package/docs/content/locales/hi-IN/skills-guide.mdx +118 -9
  1567. package/docs/content/locales/hi-IN/template-analytics.mdx +46 -4
  1568. package/docs/content/locales/hi-IN/template-assets.mdx +62 -4
  1569. package/docs/content/locales/hi-IN/template-brain.mdx +69 -4
  1570. package/docs/content/locales/hi-IN/template-calendar.mdx +62 -4
  1571. package/docs/content/locales/hi-IN/template-chat.mdx +59 -4
  1572. package/docs/content/locales/hi-IN/template-clips.mdx +52 -4
  1573. package/docs/content/locales/hi-IN/template-content.mdx +62 -4
  1574. package/docs/content/locales/hi-IN/template-design.mdx +58 -4
  1575. package/docs/content/locales/hi-IN/template-dispatch.mdx +57 -4
  1576. package/docs/content/locales/hi-IN/template-forms.mdx +64 -4
  1577. package/docs/content/locales/hi-IN/template-mail.mdx +64 -4
  1578. package/docs/content/locales/hi-IN/template-plan.mdx +61 -4
  1579. package/docs/content/locales/hi-IN/template-slides.mdx +49 -4
  1580. package/docs/content/locales/hi-IN/template-videos.mdx +53 -4
  1581. package/docs/content/locales/hi-IN/tracking.mdx +54 -4
  1582. package/docs/content/locales/hi-IN/using-your-agent.mdx +51 -4
  1583. package/docs/content/locales/hi-IN/voice-input.mdx +43 -4
  1584. package/docs/content/locales/hi-IN/what-is-agent-native.mdx +97 -8
  1585. package/docs/content/locales/hi-IN/workspace-connections.mdx +128 -8
  1586. package/docs/content/locales/hi-IN/workspace-management.mdx +50 -4
  1587. package/docs/content/locales/hi-IN/workspace.mdx +111 -8
  1588. package/docs/content/locales/hi-IN/writing-agent-instructions.mdx +40 -4
  1589. package/docs/content/locales/ja-JP/a2a-protocol.mdx +97 -9
  1590. package/docs/content/locales/ja-JP/actions.mdx +67 -4
  1591. package/docs/content/locales/ja-JP/agent-mentions.mdx +68 -4
  1592. package/docs/content/locales/ja-JP/agent-surfaces.mdx +116 -8
  1593. package/docs/content/locales/ja-JP/agent-teams.mdx +172 -12
  1594. package/docs/content/locales/ja-JP/agent-web-surfaces.mdx +51 -4
  1595. package/docs/content/locales/ja-JP/authentication.mdx +122 -8
  1596. package/docs/content/locales/ja-JP/automations.mdx +110 -8
  1597. package/docs/content/locales/ja-JP/blueprint-installer.mdx +44 -4
  1598. package/docs/content/locales/ja-JP/cli-adapters.mdx +44 -4
  1599. package/docs/content/locales/ja-JP/client.mdx +79 -8
  1600. package/docs/content/locales/ja-JP/cloneable-saas.mdx +85 -8
  1601. package/docs/content/locales/ja-JP/code-agents-ui.mdx +100 -8
  1602. package/docs/content/locales/ja-JP/components.mdx +116 -8
  1603. package/docs/content/locales/ja-JP/context-awareness.mdx +100 -8
  1604. package/docs/content/locales/ja-JP/creating-templates.mdx +51 -4
  1605. package/docs/content/locales/ja-JP/cross-app-sso.mdx +109 -8
  1606. package/docs/content/locales/ja-JP/database.mdx +52 -4
  1607. package/docs/content/locales/ja-JP/deployment.mdx +103 -8
  1608. package/docs/content/locales/ja-JP/dispatch.mdx +134 -8
  1609. package/docs/content/locales/ja-JP/drop-in-agent.mdx +63 -4
  1610. package/docs/content/locales/ja-JP/durable-resume.mdx +47 -4
  1611. package/docs/content/locales/ja-JP/embedding-sdk.mdx +85 -8
  1612. package/docs/content/locales/ja-JP/evals.mdx +102 -8
  1613. package/docs/content/locales/ja-JP/extensions.mdx +111 -9
  1614. package/docs/content/locales/ja-JP/external-agents.mdx +119 -8
  1615. package/docs/content/locales/ja-JP/faq.mdx +98 -8
  1616. package/docs/content/locales/ja-JP/file-uploads.mdx +61 -4
  1617. package/docs/content/locales/ja-JP/frames.mdx +88 -8
  1618. package/docs/content/locales/ja-JP/getting-started.mdx +34 -4
  1619. package/docs/content/locales/ja-JP/harness-agents.mdx +79 -8
  1620. package/docs/content/locales/ja-JP/human-approval.mdx +50 -4
  1621. package/docs/content/locales/ja-JP/key-concepts.mdx +105 -8
  1622. package/docs/content/locales/ja-JP/local-file-mode.mdx +58 -4
  1623. package/docs/content/locales/ja-JP/mcp-apps.mdx +119 -10
  1624. package/docs/content/locales/ja-JP/mcp-clients.mdx +134 -8
  1625. package/docs/content/locales/ja-JP/mcp-protocol.mdx +105 -8
  1626. package/docs/content/locales/ja-JP/messaging.mdx +115 -8
  1627. package/docs/content/locales/ja-JP/migration-workbench.mdx +47 -4
  1628. package/docs/content/locales/ja-JP/multi-app-workspace.mdx +91 -8
  1629. package/docs/content/locales/ja-JP/multi-tenancy.mdx +80 -8
  1630. package/docs/content/locales/ja-JP/native-chat-ui.mdx +104 -8
  1631. package/docs/content/locales/ja-JP/notifications.mdx +135 -8
  1632. package/docs/content/locales/ja-JP/observability.mdx +104 -8
  1633. package/docs/content/locales/ja-JP/observational-memory.mdx +89 -8
  1634. package/docs/content/locales/ja-JP/onboarding.mdx +45 -4
  1635. package/docs/content/locales/ja-JP/plan-plugin.mdx +99 -8
  1636. package/docs/content/locales/ja-JP/pr-visual-recap.mdx +123 -8
  1637. package/docs/content/locales/ja-JP/processors.mdx +39 -4
  1638. package/docs/content/locales/ja-JP/progress.mdx +46 -4
  1639. package/docs/content/locales/ja-JP/pure-agent-apps.mdx +48 -4
  1640. package/docs/content/locales/ja-JP/real-time-collaboration.mdx +106 -8
  1641. package/docs/content/locales/ja-JP/recurring-jobs.mdx +59 -4
  1642. package/docs/content/locales/ja-JP/routing.mdx +44 -5
  1643. package/docs/content/locales/ja-JP/sandbox-adapters.mdx +43 -4
  1644. package/docs/content/locales/ja-JP/security.mdx +82 -8
  1645. package/docs/content/locales/ja-JP/server.mdx +171 -12
  1646. package/docs/content/locales/ja-JP/sharing.mdx +45 -4
  1647. package/docs/content/locales/ja-JP/skills-guide.mdx +118 -9
  1648. package/docs/content/locales/ja-JP/template-analytics.mdx +46 -4
  1649. package/docs/content/locales/ja-JP/template-assets.mdx +64 -4
  1650. package/docs/content/locales/ja-JP/template-brain.mdx +67 -4
  1651. package/docs/content/locales/ja-JP/template-calendar.mdx +62 -4
  1652. package/docs/content/locales/ja-JP/template-chat.mdx +61 -4
  1653. package/docs/content/locales/ja-JP/template-clips.mdx +52 -4
  1654. package/docs/content/locales/ja-JP/template-content.mdx +62 -4
  1655. package/docs/content/locales/ja-JP/template-design.mdx +60 -4
  1656. package/docs/content/locales/ja-JP/template-dispatch.mdx +57 -4
  1657. package/docs/content/locales/ja-JP/template-forms.mdx +62 -4
  1658. package/docs/content/locales/ja-JP/template-mail.mdx +62 -4
  1659. package/docs/content/locales/ja-JP/template-plan.mdx +63 -4
  1660. package/docs/content/locales/ja-JP/template-slides.mdx +49 -4
  1661. package/docs/content/locales/ja-JP/template-videos.mdx +53 -4
  1662. package/docs/content/locales/ja-JP/tracking.mdx +54 -4
  1663. package/docs/content/locales/ja-JP/using-your-agent.mdx +51 -4
  1664. package/docs/content/locales/ja-JP/voice-input.mdx +43 -4
  1665. package/docs/content/locales/ja-JP/what-is-agent-native.mdx +96 -8
  1666. package/docs/content/locales/ja-JP/workspace-connections.mdx +128 -8
  1667. package/docs/content/locales/ja-JP/workspace-management.mdx +50 -4
  1668. package/docs/content/locales/ja-JP/workspace.mdx +111 -8
  1669. package/docs/content/locales/ja-JP/writing-agent-instructions.mdx +44 -4
  1670. package/docs/content/locales/ko-KR/a2a-protocol.mdx +97 -9
  1671. package/docs/content/locales/ko-KR/actions.mdx +63 -4
  1672. package/docs/content/locales/ko-KR/agent-mentions.mdx +68 -4
  1673. package/docs/content/locales/ko-KR/agent-surfaces.mdx +113 -8
  1674. package/docs/content/locales/ko-KR/agent-teams.mdx +171 -12
  1675. package/docs/content/locales/ko-KR/agent-web-surfaces.mdx +51 -4
  1676. package/docs/content/locales/ko-KR/authentication.mdx +122 -8
  1677. package/docs/content/locales/ko-KR/automations.mdx +110 -8
  1678. package/docs/content/locales/ko-KR/blueprint-installer.mdx +42 -4
  1679. package/docs/content/locales/ko-KR/cli-adapters.mdx +44 -4
  1680. package/docs/content/locales/ko-KR/client.mdx +79 -8
  1681. package/docs/content/locales/ko-KR/cloneable-saas.mdx +85 -8
  1682. package/docs/content/locales/ko-KR/code-agents-ui.mdx +96 -8
  1683. package/docs/content/locales/ko-KR/components.mdx +112 -8
  1684. package/docs/content/locales/ko-KR/context-awareness.mdx +96 -8
  1685. package/docs/content/locales/ko-KR/creating-templates.mdx +51 -4
  1686. package/docs/content/locales/ko-KR/cross-app-sso.mdx +109 -8
  1687. package/docs/content/locales/ko-KR/database.mdx +52 -4
  1688. package/docs/content/locales/ko-KR/deployment.mdx +103 -8
  1689. package/docs/content/locales/ko-KR/dispatch.mdx +132 -8
  1690. package/docs/content/locales/ko-KR/drop-in-agent.mdx +63 -4
  1691. package/docs/content/locales/ko-KR/durable-resume.mdx +47 -4
  1692. package/docs/content/locales/ko-KR/embedding-sdk.mdx +81 -8
  1693. package/docs/content/locales/ko-KR/evals.mdx +102 -8
  1694. package/docs/content/locales/ko-KR/extensions.mdx +111 -9
  1695. package/docs/content/locales/ko-KR/external-agents.mdx +119 -8
  1696. package/docs/content/locales/ko-KR/faq.mdx +96 -8
  1697. package/docs/content/locales/ko-KR/file-uploads.mdx +61 -4
  1698. package/docs/content/locales/ko-KR/frames.mdx +86 -8
  1699. package/docs/content/locales/ko-KR/getting-started.mdx +34 -4
  1700. package/docs/content/locales/ko-KR/harness-agents.mdx +77 -8
  1701. package/docs/content/locales/ko-KR/human-approval.mdx +50 -4
  1702. package/docs/content/locales/ko-KR/key-concepts.mdx +104 -8
  1703. package/docs/content/locales/ko-KR/local-file-mode.mdx +56 -4
  1704. package/docs/content/locales/ko-KR/mcp-apps.mdx +120 -10
  1705. package/docs/content/locales/ko-KR/mcp-clients.mdx +133 -8
  1706. package/docs/content/locales/ko-KR/mcp-protocol.mdx +105 -8
  1707. package/docs/content/locales/ko-KR/messaging.mdx +115 -8
  1708. package/docs/content/locales/ko-KR/migration-workbench.mdx +45 -4
  1709. package/docs/content/locales/ko-KR/multi-app-workspace.mdx +91 -8
  1710. package/docs/content/locales/ko-KR/multi-tenancy.mdx +80 -8
  1711. package/docs/content/locales/ko-KR/native-chat-ui.mdx +104 -8
  1712. package/docs/content/locales/ko-KR/notifications.mdx +135 -8
  1713. package/docs/content/locales/ko-KR/observability.mdx +102 -8
  1714. package/docs/content/locales/ko-KR/observational-memory.mdx +87 -8
  1715. package/docs/content/locales/ko-KR/onboarding.mdx +44 -4
  1716. package/docs/content/locales/ko-KR/plan-plugin.mdx +99 -8
  1717. package/docs/content/locales/ko-KR/pr-visual-recap.mdx +125 -8
  1718. package/docs/content/locales/ko-KR/processors.mdx +39 -4
  1719. package/docs/content/locales/ko-KR/progress.mdx +46 -4
  1720. package/docs/content/locales/ko-KR/pure-agent-apps.mdx +46 -4
  1721. package/docs/content/locales/ko-KR/real-time-collaboration.mdx +104 -8
  1722. package/docs/content/locales/ko-KR/recurring-jobs.mdx +59 -4
  1723. package/docs/content/locales/ko-KR/routing.mdx +44 -5
  1724. package/docs/content/locales/ko-KR/sandbox-adapters.mdx +41 -4
  1725. package/docs/content/locales/ko-KR/security.mdx +78 -8
  1726. package/docs/content/locales/ko-KR/server.mdx +171 -12
  1727. package/docs/content/locales/ko-KR/sharing.mdx +45 -4
  1728. package/docs/content/locales/ko-KR/skills-guide.mdx +118 -9
  1729. package/docs/content/locales/ko-KR/template-analytics.mdx +46 -4
  1730. package/docs/content/locales/ko-KR/template-assets.mdx +62 -4
  1731. package/docs/content/locales/ko-KR/template-brain.mdx +65 -4
  1732. package/docs/content/locales/ko-KR/template-calendar.mdx +60 -4
  1733. package/docs/content/locales/ko-KR/template-chat.mdx +59 -4
  1734. package/docs/content/locales/ko-KR/template-clips.mdx +52 -4
  1735. package/docs/content/locales/ko-KR/template-content.mdx +60 -4
  1736. package/docs/content/locales/ko-KR/template-design.mdx +58 -4
  1737. package/docs/content/locales/ko-KR/template-dispatch.mdx +57 -4
  1738. package/docs/content/locales/ko-KR/template-forms.mdx +60 -4
  1739. package/docs/content/locales/ko-KR/template-mail.mdx +60 -4
  1740. package/docs/content/locales/ko-KR/template-plan.mdx +57 -4
  1741. package/docs/content/locales/ko-KR/template-slides.mdx +49 -4
  1742. package/docs/content/locales/ko-KR/template-videos.mdx +53 -4
  1743. package/docs/content/locales/ko-KR/tracking.mdx +54 -4
  1744. package/docs/content/locales/ko-KR/using-your-agent.mdx +51 -4
  1745. package/docs/content/locales/ko-KR/voice-input.mdx +43 -4
  1746. package/docs/content/locales/ko-KR/what-is-agent-native.mdx +95 -8
  1747. package/docs/content/locales/ko-KR/workspace-connections.mdx +128 -8
  1748. package/docs/content/locales/ko-KR/workspace-management.mdx +50 -4
  1749. package/docs/content/locales/ko-KR/workspace.mdx +111 -8
  1750. package/docs/content/locales/ko-KR/writing-agent-instructions.mdx +38 -4
  1751. package/docs/content/locales/pt-BR/a2a-protocol.mdx +99 -9
  1752. package/docs/content/locales/pt-BR/actions.mdx +67 -4
  1753. package/docs/content/locales/pt-BR/agent-mentions.mdx +68 -4
  1754. package/docs/content/locales/pt-BR/agent-surfaces.mdx +116 -8
  1755. package/docs/content/locales/pt-BR/agent-teams.mdx +172 -12
  1756. package/docs/content/locales/pt-BR/agent-web-surfaces.mdx +51 -4
  1757. package/docs/content/locales/pt-BR/authentication.mdx +122 -8
  1758. package/docs/content/locales/pt-BR/automations.mdx +110 -8
  1759. package/docs/content/locales/pt-BR/blueprint-installer.mdx +42 -4
  1760. package/docs/content/locales/pt-BR/cli-adapters.mdx +44 -4
  1761. package/docs/content/locales/pt-BR/client.mdx +81 -8
  1762. package/docs/content/locales/pt-BR/cloneable-saas.mdx +85 -8
  1763. package/docs/content/locales/pt-BR/code-agents-ui.mdx +98 -8
  1764. package/docs/content/locales/pt-BR/components.mdx +118 -8
  1765. package/docs/content/locales/pt-BR/context-awareness.mdx +100 -8
  1766. package/docs/content/locales/pt-BR/creating-templates.mdx +51 -4
  1767. package/docs/content/locales/pt-BR/cross-app-sso.mdx +109 -8
  1768. package/docs/content/locales/pt-BR/database.mdx +52 -4
  1769. package/docs/content/locales/pt-BR/deployment.mdx +103 -8
  1770. package/docs/content/locales/pt-BR/dispatch.mdx +134 -8
  1771. package/docs/content/locales/pt-BR/drop-in-agent.mdx +63 -4
  1772. package/docs/content/locales/pt-BR/durable-resume.mdx +47 -4
  1773. package/docs/content/locales/pt-BR/embedding-sdk.mdx +87 -8
  1774. package/docs/content/locales/pt-BR/evals.mdx +102 -8
  1775. package/docs/content/locales/pt-BR/extensions.mdx +113 -9
  1776. package/docs/content/locales/pt-BR/external-agents.mdx +119 -8
  1777. package/docs/content/locales/pt-BR/faq.mdx +98 -8
  1778. package/docs/content/locales/pt-BR/file-uploads.mdx +61 -4
  1779. package/docs/content/locales/pt-BR/frames.mdx +88 -8
  1780. package/docs/content/locales/pt-BR/getting-started.mdx +34 -4
  1781. package/docs/content/locales/pt-BR/harness-agents.mdx +79 -8
  1782. package/docs/content/locales/pt-BR/human-approval.mdx +50 -4
  1783. package/docs/content/locales/pt-BR/key-concepts.mdx +104 -8
  1784. package/docs/content/locales/pt-BR/local-file-mode.mdx +60 -4
  1785. package/docs/content/locales/pt-BR/mcp-apps.mdx +120 -10
  1786. package/docs/content/locales/pt-BR/mcp-clients.mdx +133 -8
  1787. package/docs/content/locales/pt-BR/mcp-protocol.mdx +105 -8
  1788. package/docs/content/locales/pt-BR/messaging.mdx +115 -8
  1789. package/docs/content/locales/pt-BR/migration-workbench.mdx +47 -4
  1790. package/docs/content/locales/pt-BR/multi-app-workspace.mdx +91 -8
  1791. package/docs/content/locales/pt-BR/multi-tenancy.mdx +80 -8
  1792. package/docs/content/locales/pt-BR/native-chat-ui.mdx +108 -8
  1793. package/docs/content/locales/pt-BR/notifications.mdx +135 -8
  1794. package/docs/content/locales/pt-BR/observability.mdx +104 -8
  1795. package/docs/content/locales/pt-BR/observational-memory.mdx +92 -8
  1796. package/docs/content/locales/pt-BR/onboarding.mdx +45 -4
  1797. package/docs/content/locales/pt-BR/plan-plugin.mdx +99 -8
  1798. package/docs/content/locales/pt-BR/pr-visual-recap.mdx +125 -8
  1799. package/docs/content/locales/pt-BR/processors.mdx +41 -4
  1800. package/docs/content/locales/pt-BR/progress.mdx +46 -4
  1801. package/docs/content/locales/pt-BR/pure-agent-apps.mdx +48 -4
  1802. package/docs/content/locales/pt-BR/real-time-collaboration.mdx +107 -8
  1803. package/docs/content/locales/pt-BR/recurring-jobs.mdx +59 -4
  1804. package/docs/content/locales/pt-BR/routing.mdx +44 -5
  1805. package/docs/content/locales/pt-BR/sandbox-adapters.mdx +43 -4
  1806. package/docs/content/locales/pt-BR/security.mdx +82 -8
  1807. package/docs/content/locales/pt-BR/server.mdx +173 -12
  1808. package/docs/content/locales/pt-BR/sharing.mdx +45 -4
  1809. package/docs/content/locales/pt-BR/skills-guide.mdx +118 -9
  1810. package/docs/content/locales/pt-BR/template-analytics.mdx +46 -4
  1811. package/docs/content/locales/pt-BR/template-assets.mdx +64 -4
  1812. package/docs/content/locales/pt-BR/template-brain.mdx +69 -4
  1813. package/docs/content/locales/pt-BR/template-calendar.mdx +62 -4
  1814. package/docs/content/locales/pt-BR/template-chat.mdx +61 -4
  1815. package/docs/content/locales/pt-BR/template-clips.mdx +52 -4
  1816. package/docs/content/locales/pt-BR/template-content.mdx +64 -4
  1817. package/docs/content/locales/pt-BR/template-design.mdx +58 -4
  1818. package/docs/content/locales/pt-BR/template-dispatch.mdx +57 -4
  1819. package/docs/content/locales/pt-BR/template-forms.mdx +64 -4
  1820. package/docs/content/locales/pt-BR/template-mail.mdx +60 -4
  1821. package/docs/content/locales/pt-BR/template-plan.mdx +63 -4
  1822. package/docs/content/locales/pt-BR/template-slides.mdx +49 -4
  1823. package/docs/content/locales/pt-BR/template-videos.mdx +53 -4
  1824. package/docs/content/locales/pt-BR/tracking.mdx +54 -4
  1825. package/docs/content/locales/pt-BR/using-your-agent.mdx +51 -4
  1826. package/docs/content/locales/pt-BR/voice-input.mdx +43 -4
  1827. package/docs/content/locales/pt-BR/what-is-agent-native.mdx +101 -8
  1828. package/docs/content/locales/pt-BR/workspace-connections.mdx +128 -8
  1829. package/docs/content/locales/pt-BR/workspace-management.mdx +50 -4
  1830. package/docs/content/locales/pt-BR/workspace.mdx +111 -8
  1831. package/docs/content/locales/pt-BR/writing-agent-instructions.mdx +46 -4
  1832. package/docs/content/locales/zh-CN/a2a-protocol.mdx +97 -9
  1833. package/docs/content/locales/zh-CN/actions.mdx +65 -4
  1834. package/docs/content/locales/zh-CN/agent-mentions.mdx +68 -4
  1835. package/docs/content/locales/zh-CN/agent-surfaces.mdx +108 -8
  1836. package/docs/content/locales/zh-CN/agent-teams.mdx +171 -12
  1837. package/docs/content/locales/zh-CN/agent-web-surfaces.mdx +51 -4
  1838. package/docs/content/locales/zh-CN/authentication.mdx +122 -8
  1839. package/docs/content/locales/zh-CN/automations.mdx +110 -8
  1840. package/docs/content/locales/zh-CN/blueprint-installer.mdx +42 -4
  1841. package/docs/content/locales/zh-CN/cli-adapters.mdx +44 -4
  1842. package/docs/content/locales/zh-CN/client.mdx +79 -8
  1843. package/docs/content/locales/zh-CN/cloneable-saas.mdx +83 -8
  1844. package/docs/content/locales/zh-CN/code-agents-ui.mdx +94 -8
  1845. package/docs/content/locales/zh-CN/components.mdx +112 -8
  1846. package/docs/content/locales/zh-CN/context-awareness.mdx +96 -8
  1847. package/docs/content/locales/zh-CN/creating-templates.mdx +51 -4
  1848. package/docs/content/locales/zh-CN/cross-app-sso.mdx +107 -8
  1849. package/docs/content/locales/zh-CN/database.mdx +52 -4
  1850. package/docs/content/locales/zh-CN/deployment.mdx +103 -8
  1851. package/docs/content/locales/zh-CN/dispatch.mdx +134 -8
  1852. package/docs/content/locales/zh-CN/drop-in-agent.mdx +63 -4
  1853. package/docs/content/locales/zh-CN/durable-resume.mdx +45 -4
  1854. package/docs/content/locales/zh-CN/embedding-sdk.mdx +81 -8
  1855. package/docs/content/locales/zh-CN/evals.mdx +100 -8
  1856. package/docs/content/locales/zh-CN/extensions.mdx +111 -9
  1857. package/docs/content/locales/zh-CN/external-agents.mdx +119 -8
  1858. package/docs/content/locales/zh-CN/faq.mdx +96 -8
  1859. package/docs/content/locales/zh-CN/file-uploads.mdx +61 -4
  1860. package/docs/content/locales/zh-CN/frames.mdx +86 -8
  1861. package/docs/content/locales/zh-CN/getting-started.mdx +34 -4
  1862. package/docs/content/locales/zh-CN/harness-agents.mdx +79 -8
  1863. package/docs/content/locales/zh-CN/human-approval.mdx +50 -4
  1864. package/docs/content/locales/zh-CN/key-concepts.mdx +100 -8
  1865. package/docs/content/locales/zh-CN/local-file-mode.mdx +56 -4
  1866. package/docs/content/locales/zh-CN/mcp-apps.mdx +120 -10
  1867. package/docs/content/locales/zh-CN/mcp-clients.mdx +133 -8
  1868. package/docs/content/locales/zh-CN/mcp-protocol.mdx +105 -8
  1869. package/docs/content/locales/zh-CN/messaging.mdx +115 -8
  1870. package/docs/content/locales/zh-CN/migration-workbench.mdx +45 -4
  1871. package/docs/content/locales/zh-CN/multi-app-workspace.mdx +91 -8
  1872. package/docs/content/locales/zh-CN/multi-tenancy.mdx +80 -8
  1873. package/docs/content/locales/zh-CN/native-chat-ui.mdx +104 -8
  1874. package/docs/content/locales/zh-CN/notifications.mdx +135 -8
  1875. package/docs/content/locales/zh-CN/observability.mdx +102 -8
  1876. package/docs/content/locales/zh-CN/observational-memory.mdx +85 -8
  1877. package/docs/content/locales/zh-CN/onboarding.mdx +44 -4
  1878. package/docs/content/locales/zh-CN/plan-plugin.mdx +97 -8
  1879. package/docs/content/locales/zh-CN/pr-visual-recap.mdx +123 -8
  1880. package/docs/content/locales/zh-CN/processors.mdx +39 -4
  1881. package/docs/content/locales/zh-CN/progress.mdx +46 -4
  1882. package/docs/content/locales/zh-CN/pure-agent-apps.mdx +46 -4
  1883. package/docs/content/locales/zh-CN/real-time-collaboration.mdx +98 -8
  1884. package/docs/content/locales/zh-CN/recurring-jobs.mdx +59 -4
  1885. package/docs/content/locales/zh-CN/routing.mdx +42 -5
  1886. package/docs/content/locales/zh-CN/sandbox-adapters.mdx +41 -4
  1887. package/docs/content/locales/zh-CN/security.mdx +78 -8
  1888. package/docs/content/locales/zh-CN/server.mdx +169 -12
  1889. package/docs/content/locales/zh-CN/sharing.mdx +45 -4
  1890. package/docs/content/locales/zh-CN/skills-guide.mdx +118 -9
  1891. package/docs/content/locales/zh-CN/template-analytics.mdx +46 -4
  1892. package/docs/content/locales/zh-CN/template-assets.mdx +58 -4
  1893. package/docs/content/locales/zh-CN/template-brain.mdx +65 -4
  1894. package/docs/content/locales/zh-CN/template-calendar.mdx +58 -4
  1895. package/docs/content/locales/zh-CN/template-chat.mdx +57 -4
  1896. package/docs/content/locales/zh-CN/template-clips.mdx +52 -4
  1897. package/docs/content/locales/zh-CN/template-content.mdx +58 -4
  1898. package/docs/content/locales/zh-CN/template-design.mdx +58 -4
  1899. package/docs/content/locales/zh-CN/template-dispatch.mdx +57 -4
  1900. package/docs/content/locales/zh-CN/template-forms.mdx +58 -4
  1901. package/docs/content/locales/zh-CN/template-mail.mdx +60 -4
  1902. package/docs/content/locales/zh-CN/template-plan.mdx +57 -4
  1903. package/docs/content/locales/zh-CN/template-slides.mdx +49 -4
  1904. package/docs/content/locales/zh-CN/template-videos.mdx +51 -4
  1905. package/docs/content/locales/zh-CN/tracking.mdx +54 -4
  1906. package/docs/content/locales/zh-CN/using-your-agent.mdx +51 -4
  1907. package/docs/content/locales/zh-CN/voice-input.mdx +43 -4
  1908. package/docs/content/locales/zh-CN/what-is-agent-native.mdx +94 -8
  1909. package/docs/content/locales/zh-CN/workspace-connections.mdx +126 -8
  1910. package/docs/content/locales/zh-CN/workspace-management.mdx +50 -4
  1911. package/docs/content/locales/zh-CN/workspace.mdx +110 -8
  1912. package/docs/content/locales/zh-CN/writing-agent-instructions.mdx +38 -4
  1913. package/docs/content/locales/zh-TW/a2a-protocol.mdx +97 -9
  1914. package/docs/content/locales/zh-TW/actions.mdx +63 -4
  1915. package/docs/content/locales/zh-TW/agent-mentions.mdx +68 -4
  1916. package/docs/content/locales/zh-TW/agent-surfaces.mdx +108 -8
  1917. package/docs/content/locales/zh-TW/agent-teams.mdx +171 -12
  1918. package/docs/content/locales/zh-TW/agent-web-surfaces.mdx +51 -4
  1919. package/docs/content/locales/zh-TW/authentication.mdx +122 -8
  1920. package/docs/content/locales/zh-TW/automations.mdx +110 -8
  1921. package/docs/content/locales/zh-TW/blueprint-installer.mdx +42 -4
  1922. package/docs/content/locales/zh-TW/cli-adapters.mdx +44 -4
  1923. package/docs/content/locales/zh-TW/client.mdx +79 -8
  1924. package/docs/content/locales/zh-TW/cloneable-saas.mdx +83 -8
  1925. package/docs/content/locales/zh-TW/code-agents-ui.mdx +94 -8
  1926. package/docs/content/locales/zh-TW/components.mdx +112 -8
  1927. package/docs/content/locales/zh-TW/context-awareness.mdx +96 -8
  1928. package/docs/content/locales/zh-TW/creating-templates.mdx +51 -4
  1929. package/docs/content/locales/zh-TW/cross-app-sso.mdx +107 -8
  1930. package/docs/content/locales/zh-TW/database.mdx +52 -4
  1931. package/docs/content/locales/zh-TW/deployment.mdx +103 -8
  1932. package/docs/content/locales/zh-TW/dispatch.mdx +134 -8
  1933. package/docs/content/locales/zh-TW/drop-in-agent.mdx +63 -4
  1934. package/docs/content/locales/zh-TW/durable-background-runs.mdx +88 -8
  1935. package/docs/content/locales/zh-TW/durable-resume.mdx +45 -4
  1936. package/docs/content/locales/zh-TW/embedding-sdk.mdx +83 -8
  1937. package/docs/content/locales/zh-TW/evals.mdx +100 -8
  1938. package/docs/content/locales/zh-TW/extensions.mdx +111 -9
  1939. package/docs/content/locales/zh-TW/external-agents.mdx +119 -8
  1940. package/docs/content/locales/zh-TW/faq.mdx +96 -8
  1941. package/docs/content/locales/zh-TW/file-uploads.mdx +61 -4
  1942. package/docs/content/locales/zh-TW/frames.mdx +86 -8
  1943. package/docs/content/locales/zh-TW/getting-started.mdx +34 -4
  1944. package/docs/content/locales/zh-TW/harness-agents.mdx +79 -8
  1945. package/docs/content/locales/zh-TW/human-approval.mdx +50 -4
  1946. package/docs/content/locales/zh-TW/key-concepts.mdx +100 -8
  1947. package/docs/content/locales/zh-TW/local-file-mode.mdx +56 -4
  1948. package/docs/content/locales/zh-TW/mcp-apps.mdx +120 -10
  1949. package/docs/content/locales/zh-TW/mcp-clients.mdx +133 -8
  1950. package/docs/content/locales/zh-TW/mcp-protocol.mdx +105 -8
  1951. package/docs/content/locales/zh-TW/messaging.mdx +115 -8
  1952. package/docs/content/locales/zh-TW/migration-workbench.mdx +45 -4
  1953. package/docs/content/locales/zh-TW/multi-app-workspace.mdx +91 -8
  1954. package/docs/content/locales/zh-TW/multi-tenancy.mdx +80 -8
  1955. package/docs/content/locales/zh-TW/native-chat-ui.mdx +104 -8
  1956. package/docs/content/locales/zh-TW/notifications.mdx +135 -8
  1957. package/docs/content/locales/zh-TW/observability.mdx +102 -8
  1958. package/docs/content/locales/zh-TW/observational-memory.mdx +85 -8
  1959. package/docs/content/locales/zh-TW/onboarding.mdx +44 -4
  1960. package/docs/content/locales/zh-TW/plan-plugin.mdx +97 -8
  1961. package/docs/content/locales/zh-TW/pr-visual-recap.mdx +123 -8
  1962. package/docs/content/locales/zh-TW/processors.mdx +39 -4
  1963. package/docs/content/locales/zh-TW/progress.mdx +46 -4
  1964. package/docs/content/locales/zh-TW/pure-agent-apps.mdx +46 -4
  1965. package/docs/content/locales/zh-TW/real-time-collaboration.mdx +98 -8
  1966. package/docs/content/locales/zh-TW/recurring-jobs.mdx +59 -4
  1967. package/docs/content/locales/zh-TW/routing.mdx +42 -5
  1968. package/docs/content/locales/zh-TW/sandbox-adapters.mdx +41 -4
  1969. package/docs/content/locales/zh-TW/security.mdx +80 -8
  1970. package/docs/content/locales/zh-TW/server.mdx +169 -12
  1971. package/docs/content/locales/zh-TW/sharing.mdx +45 -4
  1972. package/docs/content/locales/zh-TW/skills-guide.mdx +118 -9
  1973. package/docs/content/locales/zh-TW/template-analytics.mdx +46 -4
  1974. package/docs/content/locales/zh-TW/template-assets.mdx +58 -4
  1975. package/docs/content/locales/zh-TW/template-brain.mdx +65 -4
  1976. package/docs/content/locales/zh-TW/template-calendar.mdx +58 -4
  1977. package/docs/content/locales/zh-TW/template-chat.mdx +59 -4
  1978. package/docs/content/locales/zh-TW/template-clips.mdx +52 -4
  1979. package/docs/content/locales/zh-TW/template-content.mdx +58 -4
  1980. package/docs/content/locales/zh-TW/template-design.mdx +58 -4
  1981. package/docs/content/locales/zh-TW/template-dispatch.mdx +57 -4
  1982. package/docs/content/locales/zh-TW/template-forms.mdx +58 -4
  1983. package/docs/content/locales/zh-TW/template-mail.mdx +60 -4
  1984. package/docs/content/locales/zh-TW/template-plan.mdx +57 -4
  1985. package/docs/content/locales/zh-TW/template-slides.mdx +49 -4
  1986. package/docs/content/locales/zh-TW/template-videos.mdx +51 -4
  1987. package/docs/content/locales/zh-TW/tracking.mdx +54 -4
  1988. package/docs/content/locales/zh-TW/using-your-agent.mdx +51 -4
  1989. package/docs/content/locales/zh-TW/voice-input.mdx +43 -4
  1990. package/docs/content/locales/zh-TW/what-is-agent-native.mdx +94 -8
  1991. package/docs/content/locales/zh-TW/workspace-connections.mdx +126 -8
  1992. package/docs/content/locales/zh-TW/workspace-management.mdx +50 -4
  1993. package/docs/content/locales/zh-TW/workspace.mdx +111 -8
  1994. package/docs/content/locales/zh-TW/writing-agent-instructions.mdx +38 -4
  1995. package/docs/content/mcp-apps.mdx +120 -10
  1996. package/docs/content/mcp-clients.mdx +161 -8
  1997. package/docs/content/mcp-protocol.mdx +105 -8
  1998. package/docs/content/messaging.mdx +115 -8
  1999. package/docs/content/migration-workbench.mdx +45 -4
  2000. package/docs/content/multi-app-workspace.mdx +91 -8
  2001. package/docs/content/multi-tenancy.mdx +80 -8
  2002. package/docs/content/native-chat-ui.mdx +106 -8
  2003. package/docs/content/notifications.mdx +135 -8
  2004. package/docs/content/observability.mdx +102 -8
  2005. package/docs/content/observational-memory.mdx +89 -8
  2006. package/docs/content/onboarding.mdx +45 -4
  2007. package/docs/content/plan-plugin.mdx +99 -8
  2008. package/docs/content/pr-visual-recap.mdx +125 -8
  2009. package/docs/content/processors.mdx +41 -4
  2010. package/docs/content/progress.mdx +46 -4
  2011. package/docs/content/pure-agent-apps.mdx +46 -4
  2012. package/docs/content/real-time-collaboration.mdx +104 -8
  2013. package/docs/content/recurring-jobs.mdx +59 -4
  2014. package/docs/content/routing.mdx +44 -5
  2015. package/docs/content/sandbox-adapters.mdx +43 -4
  2016. package/docs/content/security.mdx +80 -8
  2017. package/docs/content/server.mdx +173 -12
  2018. package/docs/content/sharing.mdx +45 -4
  2019. package/docs/content/skills-guide.mdx +118 -9
  2020. package/docs/content/template-analytics.mdx +46 -4
  2021. package/docs/content/template-assets.mdx +60 -4
  2022. package/docs/content/template-brain.mdx +67 -4
  2023. package/docs/content/template-calendar.mdx +62 -4
  2024. package/docs/content/template-chat.mdx +61 -4
  2025. package/docs/content/template-clips.mdx +52 -4
  2026. package/docs/content/template-content.mdx +60 -4
  2027. package/docs/content/template-design.mdx +58 -4
  2028. package/docs/content/template-dispatch.mdx +57 -4
  2029. package/docs/content/template-forms.mdx +62 -4
  2030. package/docs/content/template-mail.mdx +60 -4
  2031. package/docs/content/template-plan.mdx +61 -4
  2032. package/docs/content/template-slides.mdx +49 -4
  2033. package/docs/content/template-videos.mdx +51 -4
  2034. package/docs/content/tracking.mdx +54 -4
  2035. package/docs/content/using-your-agent.mdx +51 -4
  2036. package/docs/content/voice-input.mdx +43 -4
  2037. package/docs/content/what-is-agent-native.mdx +188 -8
  2038. package/docs/content/workspace-connections.mdx +128 -8
  2039. package/docs/content/workspace-management.mdx +50 -4
  2040. package/docs/content/workspace.mdx +111 -8
  2041. package/docs/content/writing-agent-instructions.mdx +45 -4
  2042. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../src/org/handlers.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n defineEventHandler,\n getRouterParam,\n getRequestURL,\n createError,\n type H3Event,\n} from \"h3\";\n\n/**\n * Extract the :id from invitation-accept paths. The framework request handler\n * strips the mount prefix before calling the handler, so `event.url.pathname`\n * is the relative tail — e.g. `/some-id/accept`. Falls back to matching the\n * full path for contexts that don't strip, and to the h3 router param.\n */\nfunction extractInvitationId(event: H3Event): string | undefined {\n const fromRouter = getRouterParam(event, \"id\");\n if (fromRouter) return fromRouter;\n const path = getRequestURL(event).pathname;\n const match =\n path.match(/^\\/([^\\/]+)\\/accept\\/?$/) ??\n path.match(/\\/org\\/invitations\\/([^\\/]+)\\/accept\\/?$/);\n return match?.[1] ? decodeURIComponent(match[1]) : undefined;\n}\n\n/** Extract the :email from member-delete and member-role paths. Same prefix-stripping caveat. */\nfunction extractMemberEmail(event: H3Event): string | undefined {\n const fromRouter = getRouterParam(event, \"email\");\n if (fromRouter) return fromRouter;\n const path = getRequestURL(event).pathname;\n const match =\n path.match(/^\\/([^\\/]+)\\/role\\/?$/) ??\n path.match(/^\\/([^\\/]+)\\/?$/) ??\n path.match(/\\/org\\/members\\/([^\\/]+)(?:\\/role)?\\/?$/);\n return match?.[1] ? decodeURIComponent(match[1]) : undefined;\n}\nconst nanoid = (): string =>\n globalThis.crypto?.randomUUID?.().replace(/-/g, \"\") ??\n Math.random().toString(36).slice(2) + Date.now().toString(36);\nimport { getDbExec } from \"../db/client.js\";\nimport { ssrfSafeFetch } from \"../extensions/url-safety.js\";\nimport { getAppProductionUrl } from \"../server/app-url.js\";\nimport { getSession } from \"../server/auth.js\";\nimport { renderInviteEmail } from \"../server/email-templates.js\";\nimport { sendEmail, isEmailConfigured } from \"../server/email.js\";\nimport { readBody } from \"../server/h3-helpers.js\";\nimport { putUserSetting } from \"../settings/user-settings.js\";\nimport { getOrgContext, createOrganization } from \"./context.js\";\nimport { isFreeEmailProvider } from \"./free-email-providers.js\";\nimport type { OrgRole } from \"./types.js\";\n\nfunction getInviteAppUrl(event: H3Event): string {\n return getAppProductionUrl(event);\n}\n\nasync function exec() {\n return getDbExec();\n}\n\nfunction requireAuthEmail(session: { email?: string } | null): string {\n const email = session?.email;\n if (!email) {\n throw createError({ statusCode: 401, message: \"Authentication required\" });\n }\n return email;\n}\n\n/** GET /_agent-native/org/me — current user's active org, all orgs, pending invitations */\nexport const getMyOrgHandler = defineEventHandler(async (event: H3Event) => {\n const ctx = await getOrgContext(event);\n\n const e = await exec();\n const allOrgsRes = await e.execute({\n sql: `SELECT m.org_id AS \"orgId\", m.role AS role, o.name AS \"orgName\"\n FROM org_members m\n INNER JOIN organizations o ON m.org_id = o.id\n WHERE LOWER(m.email) = ?`,\n args: [ctx.email.toLowerCase()],\n });\n const orgs = allOrgsRes.rows.map((r: any) => ({\n orgId: String(r.orgId ?? r.org_id),\n role: String(r.role) as OrgRole,\n orgName: String(r.orgName ?? r.org_name),\n }));\n\n let domainMatches: Array<{ orgId: string; orgName: string }> = [];\n const domain = ctx.email.split(\"@\")[1]?.toLowerCase();\n if (domain) {\n try {\n const dmRes = await e.execute({\n sql: `SELECT o.id, o.name\n FROM organizations o\n WHERE LOWER(o.allowed_domain) = ?\n AND NOT EXISTS (\n SELECT 1\n FROM org_members m\n WHERE m.org_id = o.id\n AND LOWER(m.email) = ?\n )`,\n args: [domain, ctx.email.toLowerCase()],\n });\n domainMatches = dmRes.rows.map((r: any) => ({\n orgId: String(r.id),\n orgName: String(r.name),\n }));\n } catch {\n // allowed_domain column may not exist yet if migration hasn't run\n }\n }\n\n let allowedDomain: string | null = null;\n let a2aSecret: string | null = null;\n if (ctx.orgId) {\n try {\n const adRes = await e.execute({\n sql: `SELECT allowed_domain, a2a_secret FROM organizations WHERE id = ? LIMIT 1`,\n args: [ctx.orgId],\n });\n if (adRes.rows[0]) {\n allowedDomain =\n String((adRes.rows[0] as any).allowed_domain ?? \"\") || null;\n a2aSecret = String((adRes.rows[0] as any).a2a_secret ?? \"\") || null;\n }\n } catch {\n // Column may not exist yet\n }\n }\n\n const isOwnerOrAdmin = ctx.role === \"owner\" || ctx.role === \"admin\";\n\n const invitesRes = await e.execute({\n // Case-insensitive match: invitations are stored with whatever case\n // the inviter typed, but the session email may be normalized\n // differently by the auth provider. LOWER(both sides) keeps these\n // discoverable and matches getOrgContext.hasPendingInvitation.\n sql: `SELECT i.id AS id, i.org_id AS \"orgId\", o.name AS \"orgName\", i.invited_by AS \"invitedBy\"\n FROM org_invitations i\n INNER JOIN organizations o ON i.org_id = o.id\n WHERE LOWER(i.email) = ? AND i.status = 'pending'`,\n args: [ctx.email.toLowerCase()],\n });\n const pendingInvitations = invitesRes.rows.map((r: any) => ({\n id: String(r.id),\n orgId: String(r.orgId ?? r.org_id),\n orgName: String(r.orgName ?? r.org_name),\n invitedBy: String(r.invitedBy ?? r.invited_by),\n }));\n\n return {\n email: ctx.email,\n orgId: ctx.orgId,\n orgName: ctx.orgName,\n role: ctx.role,\n orgs,\n pendingInvitations,\n domainMatches,\n allowedDomain,\n a2aSecret: isOwnerOrAdmin ? a2aSecret : undefined,\n };\n});\n\n/** POST /_agent-native/org — create a new organization */\nexport const createOrgHandler = defineEventHandler(async (event: H3Event) => {\n const session = await getSession(event);\n const email = requireAuthEmail(session);\n\n const body = await readBody(event);\n const name = body?.name?.trim();\n if (!name) {\n throw createError({\n statusCode: 400,\n message: \"Organization name is required\",\n });\n }\n\n const { id, name: createdName, role } = await createOrganization(name, email);\n return { id, name: createdName, role };\n});\n\n/** GET /_agent-native/org/members — list org members */\nexport const listMembersHandler = defineEventHandler(async (event: H3Event) => {\n const ctx = await getOrgContext(event);\n if (!ctx.orgId) return { members: [], hasMore: false, nextOffset: null };\n\n const url = getRequestURL(event);\n const search = (\n url.searchParams.get(\"search\") ??\n url.searchParams.get(\"q\") ??\n \"\"\n )\n .trim()\n .toLowerCase();\n const hasLimit = url.searchParams.has(\"limit\");\n const hasOffset = url.searchParams.has(\"offset\");\n const shouldPaginate = hasLimit || hasOffset || search.length > 0;\n const limit = shouldPaginate\n ? clampInteger(url.searchParams.get(\"limit\"), 25, 1, 100)\n : null;\n const offset = shouldPaginate\n ? clampInteger(url.searchParams.get(\"offset\"), 0, 0, 100_000)\n : 0;\n\n const e = await exec();\n const args: unknown[] = [ctx.orgId];\n let sql = `SELECT email, role, joined_at AS \"joinedAt\" FROM org_members WHERE org_id = ?`;\n if (search) {\n sql += ` AND LOWER(email) LIKE ? ESCAPE '\\\\'`;\n args.push(`%${escapeLike(search)}%`);\n }\n sql += ` ORDER BY LOWER(email) ASC`;\n if (limit !== null) {\n sql += ` LIMIT ? OFFSET ?`;\n args.push(limit + 1, offset);\n }\n\n const { rows } = await e.execute({\n sql,\n args,\n });\n const pageRows = limit !== null ? rows.slice(0, limit) : rows;\n const hasMore = limit !== null && rows.length > limit;\n const members = pageRows.map((r: any) => ({\n email: String(r.email),\n role: String(r.role) as OrgRole,\n joinedAt: Number(r.joinedAt ?? r.joined_at),\n }));\n return {\n members,\n hasMore,\n nextOffset: hasMore ? offset + members.length : null,\n };\n});\n\nfunction clampInteger(\n input: string | null,\n fallback: number,\n min: number,\n max: number,\n): number {\n const value = input === null ? fallback : Number.parseInt(input, 10);\n if (!Number.isFinite(value)) return fallback;\n return Math.min(max, Math.max(min, value));\n}\n\nfunction escapeLike(value: string): string {\n return value.replace(/[\\\\%_]/g, (match) => `\\\\${match}`);\n}\n\nfunction normalizeInviteRole(input: unknown): \"member\" | \"admin\" {\n return input === \"admin\" ? \"admin\" : \"member\";\n}\n\ninterface SingleInviteResult {\n id: string;\n email: string;\n role: \"member\" | \"admin\";\n status: \"pending\";\n emailSent: boolean;\n emailError?: string;\n}\n\ninterface SingleInviteFailure {\n email: string;\n error: string;\n}\n\nasync function inviteOne(\n ctx: { orgId: string; orgName: string | null; email: string },\n rawEmail: string,\n role: \"member\" | \"admin\",\n event: H3Event,\n): Promise<SingleInviteResult> {\n const email = rawEmail.trim().toLowerCase();\n if (!email) {\n throw createError({ statusCode: 400, message: \"Email is required\" });\n }\n if (!/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/.test(email)) {\n throw createError({\n statusCode: 400,\n message: `Invalid email: ${rawEmail}`,\n });\n }\n\n const e = await exec();\n\n const existingMember = await e.execute({\n sql: `SELECT 1 FROM org_members WHERE org_id = ? AND LOWER(email) = ? LIMIT 1`,\n args: [ctx.orgId, email],\n });\n if (existingMember.rows.length > 0) {\n throw createError({\n statusCode: 409,\n message: `${email} is already a member`,\n });\n }\n\n const existingInvite = await e.execute({\n sql: `SELECT 1 FROM org_invitations WHERE org_id = ? AND LOWER(email) = ? AND status = 'pending' LIMIT 1`,\n args: [ctx.orgId, email],\n });\n if (existingInvite.rows.length > 0) {\n throw createError({\n statusCode: 409,\n message: `An invitation is already pending for ${email}`,\n });\n }\n\n const id = nanoid();\n await e.execute({\n sql: `INSERT INTO org_invitations (id, org_id, email, invited_by, created_at, status, role) VALUES (?, ?, ?, ?, ?, 'pending', ?)`,\n args: [id, ctx.orgId, email, ctx.email, Date.now(), role],\n });\n\n let emailSent = false;\n let emailError: string | undefined;\n if (await isEmailConfigured()) {\n try {\n const { subject, html, text } = renderInviteEmail({\n invitee: email,\n orgName: ctx.orgName || \"your team\",\n acceptUrl: getInviteAppUrl(event),\n inviter: ctx.email,\n });\n await sendEmail({ to: email, subject, html, text });\n emailSent = true;\n } catch (err) {\n emailError = err instanceof Error ? err.message : String(err);\n console.error(\"[org/invitations] failed to send invite email\", err);\n }\n }\n\n return { id, email, role, status: \"pending\", emailSent, emailError };\n}\n\n/** POST /_agent-native/org/invitations — invite one or many users by email */\nexport const createInvitationHandler = defineEventHandler(\n async (event: H3Event) => {\n const ctx = await getOrgContext(event);\n if (!ctx.orgId) {\n throw createError({\n statusCode: 400,\n message: \"You must belong to an organization to invite members\",\n });\n }\n if (ctx.role !== \"owner\" && ctx.role !== \"admin\") {\n throw createError({\n statusCode: 403,\n message: \"Only owners and admins can invite members\",\n });\n }\n\n const body = await readBody(event);\n\n // Bulk shape: { invites: [{ email, role }, ...] } — preferred for any\n // multi-recipient flow (paste-many, CSV upload). Single shape:\n // { email, role } — kept for backwards compatibility.\n const invitesInput: Array<{ email: string; role?: string }> | null =\n Array.isArray(body?.invites)\n ? body.invites.map((inv: any) => ({\n email: String(inv?.email ?? \"\"),\n role: inv?.role,\n }))\n : null;\n\n if (invitesInput) {\n const succeeded: SingleInviteResult[] = [];\n const failed: SingleInviteFailure[] = [];\n const seen = new Set<string>();\n\n for (const inv of invitesInput) {\n const lower = inv.email.trim().toLowerCase();\n if (!lower) continue;\n if (seen.has(lower)) continue;\n seen.add(lower);\n\n try {\n const result = await inviteOne(\n { orgId: ctx.orgId, orgName: ctx.orgName, email: ctx.email },\n inv.email,\n normalizeInviteRole(inv.role),\n event,\n );\n succeeded.push(result);\n } catch (err) {\n const message = err instanceof Error ? err.message : String(err);\n failed.push({ email: lower, error: message });\n }\n }\n\n return {\n succeeded,\n failed,\n total: succeeded.length + failed.length,\n };\n }\n\n // Single-invite shape.\n const role = normalizeInviteRole(body?.role);\n const result = await inviteOne(\n { orgId: ctx.orgId, orgName: ctx.orgName, email: ctx.email },\n body?.email ?? \"\",\n role,\n event,\n );\n return result;\n },\n);\n\n/** GET /_agent-native/org/invitations — list pending invitations for the org */\nexport const listInvitationsHandler = defineEventHandler(\n async (event: H3Event) => {\n const ctx = await getOrgContext(event);\n if (!ctx.orgId) return { invitations: [] };\n\n const e = await exec();\n const { rows } = await e.execute({\n sql: `SELECT id, email, invited_by AS \"invitedBy\", created_at AS \"createdAt\", status, role\n FROM org_invitations\n WHERE org_id = ? AND status = 'pending'`,\n args: [ctx.orgId],\n });\n const invitations = rows.map((r: any) => ({\n id: String(r.id),\n email: String(r.email),\n invitedBy: String(r.invitedBy ?? r.invited_by),\n createdAt: Number(r.createdAt ?? r.created_at),\n status: String(r.status),\n role:\n (String(r.role ?? \"member\") as OrgRole) === \"admin\"\n ? \"admin\"\n : \"member\",\n }));\n return { invitations };\n },\n);\n\n/** POST /_agent-native/org/invitations/:id/accept — accept an invitation */\nexport const acceptInvitationHandler = defineEventHandler(\n async (event: H3Event) => {\n const session = await getSession(event);\n const email = requireAuthEmail(session);\n\n const invitationId = extractInvitationId(event);\n if (!invitationId) {\n throw createError({\n statusCode: 400,\n message: \"Invitation ID required\",\n });\n }\n\n const e = await exec();\n\n const invRes = await e.execute({\n // Case-insensitive on email — see comment on the analogous\n // pending-invitations query in getMyOrgHandler.\n sql: `SELECT id, org_id AS \"orgId\", role FROM org_invitations\n WHERE id = ? AND LOWER(email) = ? AND status = 'pending' LIMIT 1`,\n args: [invitationId, email.toLowerCase()],\n });\n if (invRes.rows.length === 0) {\n throw createError({\n statusCode: 404,\n message: \"Invitation not found or already used\",\n });\n }\n const inv = invRes.rows[0] as any;\n const invOrgId = String(inv.orgId ?? inv.org_id);\n const inviteRole: OrgRole = inv.role === \"admin\" ? \"admin\" : \"member\";\n\n const existingMembership = await e.execute({\n sql: `SELECT role FROM org_members WHERE org_id = ? AND LOWER(email) = ? LIMIT 1`,\n args: [invOrgId, email.toLowerCase()],\n });\n\n const orgRes = await e.execute({\n sql: `SELECT name FROM organizations WHERE id = ? LIMIT 1`,\n args: [invOrgId],\n });\n const orgName = String((orgRes.rows[0] as any)?.name ?? \"\");\n\n if (existingMembership.rows.length > 0) {\n await e.execute({\n sql: `UPDATE org_invitations SET status = 'accepted' WHERE id = ?`,\n args: [invitationId],\n });\n await putUserSetting(email, \"active-org-id\", { orgId: invOrgId });\n return {\n orgId: invOrgId,\n orgName,\n role: String((existingMembership.rows[0] as any).role) as OrgRole,\n };\n }\n\n await e.execute({\n sql: `INSERT INTO org_members (id, org_id, email, role, joined_at) VALUES (?, ?, ?, ?, ?)`,\n args: [nanoid(), invOrgId, email, inviteRole, Date.now()],\n });\n\n await e.execute({\n sql: `UPDATE org_invitations SET status = 'accepted' WHERE id = ?`,\n args: [invitationId],\n });\n\n await putUserSetting(email, \"active-org-id\", { orgId: invOrgId });\n\n return { orgId: invOrgId, orgName, role: inviteRole };\n },\n);\n\n/** DELETE /_agent-native/org/members/:email — remove a member (owner/admin only) */\nexport const removeMemberHandler = defineEventHandler(\n async (event: H3Event) => {\n const ctx = await getOrgContext(event);\n if (!ctx.orgId) {\n throw createError({ statusCode: 400, message: \"No organization found\" });\n }\n if (ctx.role !== \"owner\" && ctx.role !== \"admin\") {\n throw createError({\n statusCode: 403,\n message: \"Only owners and admins can remove members\",\n });\n }\n\n const memberEmail = extractMemberEmail(event);\n if (!memberEmail) {\n throw createError({ statusCode: 400, message: \"Email is required\" });\n }\n\n // memberEmail comes from the URL path verbatim; org_members may\n // hold the row with any case. LOWER both sides for the lookup AND\n // the DELETE so removal works regardless of how either side cased\n // it. The self-removal guard ALSO compares case-insensitively —\n // otherwise an owner whose email was stored as Alice@... could\n // remove themselves via the lowercase URL alice@..., bypassing the\n // guard and leaving the org ownerless.\n const memberEmailLower = memberEmail.toLowerCase();\n if (memberEmailLower === ctx.email.toLowerCase() && ctx.role === \"owner\") {\n throw createError({\n statusCode: 400,\n message: \"Organization owner cannot remove themselves\",\n });\n }\n const e = await exec();\n // Look specifically for an OWNER row matching this email rather\n // than just \"any matching row\". Duplicate-case rows are possible\n // (e.g. legacy data with both \"Alice@...\" and \"alice@...\" in\n // org_members), and the prior `SELECT role ... LIMIT 1` could\n // return the non-owner duplicate, pass the role check, and then\n // the case-insensitive DELETE below would remove BOTH rows —\n // including the owner — leaving the org ownerless. Querying for\n // the owner row directly closes that case-mismatch attack.\n const ownerCheck = await e.execute({\n sql: `SELECT 1 FROM org_members WHERE org_id = ? AND LOWER(email) = ? AND role = 'owner' LIMIT 1`,\n args: [ctx.orgId, memberEmailLower],\n });\n if (ownerCheck.rows.length > 0) {\n throw createError({\n statusCode: 403,\n message: \"Cannot remove the organization owner\",\n });\n }\n\n await e.execute({\n sql: `DELETE FROM org_members WHERE org_id = ? AND LOWER(email) = ?`,\n args: [ctx.orgId, memberEmailLower],\n });\n\n return { success: true };\n },\n);\n\n/**\n * PUT /_agent-native/org/members/:email/role — change a member's role\n * (owner/admin only). Body: { role: \"admin\" | \"member\" }.\n *\n * Only owners can promote/demote admins. (Admins can manage members but\n * not other admins — otherwise an admin could escalate themselves to\n * owner-equivalent control by promoting a confederate.)\n */\nexport const changeMemberRoleHandler = defineEventHandler(\n async (event: H3Event) => {\n const ctx = await getOrgContext(event);\n if (!ctx.orgId) {\n throw createError({ statusCode: 400, message: \"No organization found\" });\n }\n if (ctx.role !== \"owner\" && ctx.role !== \"admin\") {\n throw createError({\n statusCode: 403,\n message: \"Only owners and admins can change member roles\",\n });\n }\n\n const memberEmail = extractMemberEmail(event);\n if (!memberEmail) {\n throw createError({ statusCode: 400, message: \"Email is required\" });\n }\n const memberEmailLower = memberEmail.toLowerCase();\n\n const body = await readBody(event);\n const role = body?.role === \"admin\" ? \"admin\" : \"member\";\n\n const e = await exec();\n\n // Look up the target member's current role to enforce sensible rules\n // about what changes are allowed.\n const current = await e.execute({\n sql: `SELECT role FROM org_members WHERE org_id = ? AND LOWER(email) = ? LIMIT 1`,\n args: [ctx.orgId, memberEmailLower],\n });\n if (current.rows.length === 0) {\n throw createError({ statusCode: 404, message: \"Member not found\" });\n }\n const currentRole = String((current.rows[0] as any).role) as OrgRole;\n\n if (currentRole === \"owner\") {\n throw createError({\n statusCode: 400,\n message: \"Cannot change the organization owner's role\",\n });\n }\n\n // Admins are scoped to managing members. If they could promote\n // members to admin, they could grant near-owner powers without owner\n // approval. Restrict admin/admin role transitions to the owner.\n if (ctx.role === \"admin\" && (currentRole === \"admin\" || role === \"admin\")) {\n throw createError({\n statusCode: 403,\n message: \"Only the organization owner can manage admins\",\n });\n }\n\n // Self-demotion guard: prevent the only admin from removing their own\n // ability to manage things, and prevent the owner-self edge case\n // (already filtered above by the currentRole check).\n if (memberEmailLower === ctx.email.toLowerCase() && ctx.role === \"admin\") {\n throw createError({\n statusCode: 400,\n message: \"Use the owner account to change your own admin role\",\n });\n }\n\n await e.execute({\n sql: `UPDATE org_members SET role = ? WHERE org_id = ? AND LOWER(email) = ?`,\n args: [role, ctx.orgId, memberEmailLower],\n });\n\n return { email: memberEmailLower, role };\n },\n);\n\n/** PATCH /_agent-native/org — rename the current organization (owner/admin only) */\nexport const updateOrgHandler = defineEventHandler(async (event: H3Event) => {\n const ctx = await getOrgContext(event);\n if (!ctx.orgId) {\n throw createError({ statusCode: 400, message: \"No organization found\" });\n }\n if (ctx.role !== \"owner\" && ctx.role !== \"admin\") {\n throw createError({\n statusCode: 403,\n message: \"Only owners and admins can update the organization\",\n });\n }\n\n const body = await readBody(event);\n const name = body?.name?.trim();\n if (!name) {\n throw createError({\n statusCode: 400,\n message: \"Organization name is required\",\n });\n }\n\n const e = await exec();\n await e.execute({\n sql: `UPDATE organizations SET name = ? WHERE id = ?`,\n args: [name, ctx.orgId],\n });\n\n return { orgId: ctx.orgId, name };\n});\n\n/** PUT /_agent-native/org/switch — switch the user's active organization */\nexport const switchOrgHandler = defineEventHandler(async (event: H3Event) => {\n const session = await getSession(event);\n const email = requireAuthEmail(session);\n\n const body = await readBody(event);\n const orgId = body?.orgId;\n\n if (!orgId) {\n await putUserSetting(email, \"active-org-id\", { orgId: null });\n return { orgId: null, orgName: null, role: null };\n }\n\n const e = await exec();\n const membership = await e.execute({\n sql: `SELECT m.role AS role, o.name AS \"orgName\"\n FROM org_members m\n INNER JOIN organizations o ON m.org_id = o.id\n WHERE m.org_id = ? AND LOWER(m.email) = ? LIMIT 1`,\n args: [orgId, email.toLowerCase()],\n });\n\n if (membership.rows.length === 0) {\n throw createError({\n statusCode: 403,\n message: \"You are not a member of that organization\",\n });\n }\n\n await putUserSetting(email, \"active-org-id\", { orgId });\n\n const row = membership.rows[0] as any;\n return {\n orgId,\n orgName: String(row.orgName ?? row.org_name),\n role: String(row.role) as OrgRole,\n };\n});\n\n/** POST /_agent-native/org/join-by-domain — join an org whose allowed_domain matches your email */\nexport const joinByDomainHandler = defineEventHandler(\n async (event: H3Event) => {\n const session = await getSession(event);\n const email = requireAuthEmail(session);\n\n const body = await readBody(event);\n const orgId = body?.orgId;\n if (!orgId) {\n throw createError({ statusCode: 400, message: \"orgId is required\" });\n }\n\n const e = await exec();\n\n const orgRes = await e.execute({\n sql: `SELECT id, name, allowed_domain FROM organizations WHERE id = ? LIMIT 1`,\n args: [orgId],\n });\n if (orgRes.rows.length === 0) {\n throw createError({ statusCode: 404, message: \"Organization not found\" });\n }\n const org = orgRes.rows[0] as any;\n const allowedDomain = String(org.allowed_domain || \"\").toLowerCase();\n const userDomain = email.split(\"@\")[1]?.toLowerCase();\n\n if (!allowedDomain || allowedDomain !== userDomain) {\n throw createError({\n statusCode: 403,\n message:\n \"Your email domain does not match this organization's allowed domain\",\n });\n }\n\n const existing = await e.execute({\n sql: `SELECT 1 FROM org_members WHERE org_id = ? AND LOWER(email) = ? LIMIT 1`,\n args: [orgId, email.toLowerCase()],\n });\n if (existing.rows.length > 0) {\n throw createError({\n statusCode: 409,\n message: \"Already a member of this organization\",\n });\n }\n\n await e.execute({\n sql: `INSERT INTO org_members (id, org_id, email, role, joined_at) VALUES (?, ?, ?, 'member', ?)`,\n args: [nanoid(), orgId, email, Date.now()],\n });\n\n await putUserSetting(email, \"active-org-id\", { orgId });\n\n return {\n orgId,\n orgName: String(org.name),\n role: \"member\" as OrgRole,\n };\n },\n);\n\n/** PUT /_agent-native/org/domain — set or clear the allowed email domain (owner/admin only) */\nexport const setDomainHandler = defineEventHandler(async (event: H3Event) => {\n const ctx = await getOrgContext(event);\n if (!ctx.orgId) {\n throw createError({ statusCode: 400, message: \"No active organization\" });\n }\n if (ctx.role !== \"owner\" && ctx.role !== \"admin\") {\n throw createError({\n statusCode: 403,\n message: \"Only owners and admins can set the allowed domain\",\n });\n }\n\n const body = await readBody(event);\n const raw = body?.domain?.trim()?.toLowerCase() || null;\n\n if (raw && !/^([a-z0-9]([a-z0-9-]*[a-z0-9])?\\.)+[a-z]{2,}$/.test(raw)) {\n throw createError({\n statusCode: 400,\n message: \"Invalid domain format\",\n });\n }\n\n if (raw) {\n // Auto-join is \"anyone with this domain joins automatically\". That is\n // safe for company domains (the company controls who gets an address)\n // and catastrophic for shared mailbox providers — anyone in the world\n // could create a matching mailbox and silently join the org.\n if (isFreeEmailProvider(raw)) {\n throw createError({\n statusCode: 400,\n message:\n \"Free email providers (gmail.com, outlook.com, etc.) cannot be used as an auto-join domain. Use your company's own domain.\",\n });\n }\n\n // Restrict to the admin's own email domain. Without this, an admin\n // could set `allowed_domain` to a domain they don't control, and\n // anyone signing up under that domain would join the org. Even with\n // the free-provider blocklist above, that would still let an admin\n // hijack a competitor's domain.\n const ownDomain = ctx.email.split(\"@\")[1]?.toLowerCase() ?? \"\";\n if (raw !== ownDomain) {\n throw createError({\n statusCode: 400,\n message: `You can only auto-join your own email domain (${ownDomain}).`,\n });\n }\n }\n\n const e = await exec();\n\n if (raw) {\n const existing = await e.execute({\n sql: `SELECT id FROM organizations WHERE LOWER(allowed_domain) = ? AND id != ? LIMIT 1`,\n args: [raw, ctx.orgId],\n });\n if (existing.rows.length > 0) {\n throw createError({\n statusCode: 409,\n message: \"Another organization already uses this domain\",\n });\n }\n }\n\n await e.execute({\n sql: `UPDATE organizations SET allowed_domain = ? WHERE id = ?`,\n args: [raw, ctx.orgId],\n });\n\n return { domain: raw };\n});\n\n/** PUT /_agent-native/org/a2a-secret — regenerate or set the org's A2A secret (owner/admin only) */\nexport const setA2ASecretHandler = defineEventHandler(\n async (event: H3Event) => {\n const ctx = await getOrgContext(event);\n if (!ctx.orgId) {\n throw createError({\n statusCode: 400,\n message: \"No active organization\",\n });\n }\n if (ctx.role !== \"owner\" && ctx.role !== \"admin\") {\n throw createError({\n statusCode: 403,\n message: \"Only owners and admins can manage the A2A secret\",\n });\n }\n\n const body = await readBody(event);\n let secret = body?.secret?.trim() || null;\n\n // If no secret provided, auto-generate one\n if (!secret) {\n const { randomBytes } = await import(\"node:crypto\");\n secret = randomBytes(32).toString(\"base64url\");\n }\n\n const e = await exec();\n // Read the previous secret BEFORE overwriting so the client can chain a\n // sync call that signs JWTs with the secret peers still hold.\n const prevRes = await e.execute({\n sql: `SELECT a2a_secret FROM organizations WHERE id = ? LIMIT 1`,\n args: [ctx.orgId],\n });\n const previousSecret =\n String((prevRes.rows[0] as any)?.a2a_secret ?? \"\") || null;\n\n await e.execute({\n sql: `UPDATE organizations SET a2a_secret = ? WHERE id = ?`,\n args: [secret, ctx.orgId],\n });\n\n return { a2aSecret: secret, previousSecret };\n },\n);\n\n/**\n * POST /_agent-native/org/a2a-secret/sync — push the org's A2A secret to all\n * connected apps so cross-app delegation works without manual copy/paste.\n *\n * Auth: standard session — owner/admin only.\n *\n * For each discovered agent, signs a JWT with the org's CURRENT a2a_secret\n * and POSTs to `<app>/_agent-native/org/a2a-secret/receive` with the same\n * secret + the org's domain. The receiving app verifies the JWT using its\n * own copy of the secret (peers must already share a secret to be trusted)\n * — for the first-ever sync this means at least one peer must already hold\n * the secret, which is the bootstrap. For ongoing rotation, regenerate\n * locally and call sync immediately; sync signs with the secret that's\n * currently in DB, which the peers still have.\n *\n * Body (optional): { signSecret?: string } — sign the outbound JWTs with\n * this secret instead of the org's current secret. Used by the regenerate-\n * then-sync flow: regenerate stores the NEW secret, but sync needs to\n * authenticate using the OLD one that peers still hold. Owner/admin only,\n * gated by the session.\n */\nexport const syncA2ASecretHandler = defineEventHandler(\n async (event: H3Event) => {\n const ctx = await getOrgContext(event);\n if (!ctx.orgId) {\n throw createError({\n statusCode: 400,\n message: \"No active organization\",\n });\n }\n if (ctx.role !== \"owner\" && ctx.role !== \"admin\") {\n throw createError({\n statusCode: 403,\n message: \"Only owners and admins can sync the A2A secret\",\n });\n }\n\n const body = await readBody(event).catch(() => null);\n const overrideSignSecret =\n typeof body?.signSecret === \"string\" && body.signSecret.trim()\n ? body.signSecret.trim()\n : null;\n\n const e = await exec();\n const orgRes = await e.execute({\n sql: `SELECT a2a_secret, allowed_domain FROM organizations WHERE id = ? LIMIT 1`,\n args: [ctx.orgId],\n });\n if (orgRes.rows.length === 0) {\n throw createError({\n statusCode: 404,\n message: \"Organization not found\",\n });\n }\n const orgRow = orgRes.rows[0] as any;\n const secret = String(orgRow.a2a_secret ?? \"\") || null;\n const orgDomain = String(orgRow.allowed_domain ?? \"\") || null;\n\n if (!secret) {\n throw createError({\n statusCode: 400,\n message: \"Org has no A2A secret. Generate one first before syncing.\",\n });\n }\n if (!orgDomain) {\n throw createError({\n statusCode: 400,\n message:\n \"Org has no allowed domain set. Set the email domain first so connected apps can identify which org to update.\",\n });\n }\n\n const signSecret = overrideSignSecret || secret;\n\n const { discoverAgents } = await import(\"../server/agent-discovery.js\");\n const { signA2AToken } = await import(\"../a2a/client.js\");\n\n const agents = await discoverAgents();\n\n const results: Array<{\n id: string;\n name: string;\n url: string;\n ok: boolean;\n status?: number;\n error?: string;\n }> = [];\n\n await Promise.all(\n agents.map(async (agent) => {\n try {\n const token = await signA2AToken(ctx.email, orgDomain, signSecret);\n\n const target = `${agent.url.replace(/\\/$/, \"\")}/_agent-native/org/a2a-secret/receive`;\n const res = await ssrfSafeFetch(\n target,\n {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`,\n },\n body: JSON.stringify({ secret, orgDomain }),\n },\n { maxRedirects: 3 },\n );\n\n if (!res.ok) {\n const text = await res.text().catch(() => \"\");\n results.push({\n id: agent.id,\n name: agent.name,\n url: agent.url,\n ok: false,\n status: res.status,\n error: text || res.statusText,\n });\n return;\n }\n results.push({\n id: agent.id,\n name: agent.name,\n url: agent.url,\n ok: true,\n status: res.status,\n });\n } catch (err) {\n results.push({\n id: agent.id,\n name: agent.name,\n url: agent.url,\n ok: false,\n error: err instanceof Error ? err.message : String(err),\n });\n }\n }),\n );\n\n const succeeded = results.filter((r) => r.ok).length;\n return {\n total: results.length,\n succeeded,\n failed: results.length - succeeded,\n results,\n };\n },\n);\n\n/**\n * POST /_agent-native/org/a2a-secret/receive — accept a secret push from a\n * connected agent-native app. Auth-exempt at the route guard; we verify a\n * JWT signed by the calling app using OUR copy of the org's a2a_secret. If\n * verification succeeds the calling app is a trusted peer and we overwrite\n * our local org's secret with the supplied value.\n *\n * Body: { secret: string, orgDomain: string }\n *\n * Header: Authorization: Bearer <JWT signed with the existing shared\n * a2a_secret, with `org_domain` matching the body's orgDomain>.\n */\nexport const receiveA2ASecretHandler = defineEventHandler(\n async (event: H3Event) => {\n const { getRequestHeader } = await import(\"h3\");\n const jose = await import(\"jose\");\n\n const authHeader = getRequestHeader(event, \"authorization\");\n if (!authHeader || !authHeader.startsWith(\"Bearer \")) {\n throw createError({\n statusCode: 401,\n message: \"Bearer token required\",\n });\n }\n const token = authHeader.slice(\"Bearer \".length);\n\n const body = await readBody(event);\n const newSecret =\n typeof body?.secret === \"string\" ? body.secret.trim() : \"\";\n const orgDomain =\n typeof body?.orgDomain === \"string\"\n ? body.orgDomain.trim().toLowerCase()\n : \"\";\n if (!newSecret || !orgDomain) {\n throw createError({\n statusCode: 400,\n message: \"secret and orgDomain are required\",\n });\n }\n\n // Peek at JWT (unverified) to confirm it claims the same domain we're\n // updating. Verification still happens below with the trusted secret.\n let claimedDomain: string | undefined;\n try {\n const unverified = jose.decodeJwt(token);\n claimedDomain =\n (unverified.org_domain as string | undefined) || undefined;\n } catch {\n throw createError({\n statusCode: 401,\n message: \"Malformed JWT\",\n });\n }\n if (\n !claimedDomain ||\n claimedDomain.toLowerCase() !== orgDomain.toLowerCase()\n ) {\n throw createError({\n statusCode: 401,\n message: \"JWT org_domain does not match request body\",\n });\n }\n\n // Look up our local org by the domain and grab the existing secret.\n const e = await exec();\n const orgRes = await e.execute({\n sql: `SELECT id, a2a_secret FROM organizations WHERE LOWER(allowed_domain) = ? LIMIT 1`,\n args: [orgDomain],\n });\n if (orgRes.rows.length === 0) {\n throw createError({\n statusCode: 404,\n message: \"No local org matches that domain\",\n });\n }\n const row = orgRes.rows[0] as any;\n const localOrgId = String(row.id);\n const existingSecret = String(row.a2a_secret ?? \"\") || null;\n\n if (!existingSecret) {\n // Bootstrap requires an existing shared secret to verify the caller.\n // If we have nothing on file, we can't verify trust — refuse.\n throw createError({\n statusCode: 401,\n message:\n \"Local org has no A2A secret yet — cannot verify caller. Set the secret manually for the first time.\",\n });\n }\n\n // Verify the JWT using OUR existing secret. If the caller is a trusted\n // peer they signed with the same secret and verification succeeds.\n try {\n await jose.jwtVerify(token, new TextEncoder().encode(existingSecret));\n } catch {\n throw createError({\n statusCode: 401,\n message: \"Invalid or expired JWT signature\",\n });\n }\n\n // Trusted — apply the new secret.\n await e.execute({\n sql: `UPDATE organizations SET a2a_secret = ? WHERE id = ?`,\n args: [newSecret, localOrgId],\n });\n\n return { ok: true, orgId: localOrgId };\n },\n);\n"]}
1
+ {"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../src/org/handlers.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n defineEventHandler,\n getRouterParam,\n getRequestURL,\n createError,\n type H3Event,\n} from \"h3\";\n\n/**\n * Extract the :id from invitation-accept paths. The framework request handler\n * strips the mount prefix before calling the handler, so `event.url.pathname`\n * is the relative tail — e.g. `/some-id/accept`. Falls back to matching the\n * full path for contexts that don't strip, and to the h3 router param.\n */\nfunction extractInvitationId(event: H3Event): string | undefined {\n const fromRouter = getRouterParam(event, \"id\");\n if (fromRouter) return fromRouter;\n const path = getRequestURL(event).pathname;\n const match =\n path.match(/^\\/([^\\/]+)\\/accept\\/?$/) ??\n path.match(/\\/org\\/invitations\\/([^\\/]+)\\/accept\\/?$/);\n return match?.[1] ? decodeURIComponent(match[1]) : undefined;\n}\n\n/** Extract the :email from member-delete and member-role paths. Same prefix-stripping caveat. */\nfunction extractMemberEmail(event: H3Event): string | undefined {\n const fromRouter = getRouterParam(event, \"email\");\n if (fromRouter) return fromRouter;\n const path = getRequestURL(event).pathname;\n const match =\n path.match(/^\\/([^\\/]+)\\/role\\/?$/) ??\n path.match(/^\\/([^\\/]+)\\/?$/) ??\n path.match(/\\/org\\/members\\/([^\\/]+)(?:\\/role)?\\/?$/);\n return match?.[1] ? decodeURIComponent(match[1]) : undefined;\n}\nconst nanoid = (): string =>\n globalThis.crypto?.randomUUID?.().replace(/-/g, \"\") ??\n Math.random().toString(36).slice(2) + Date.now().toString(36);\nimport { getDbExec } from \"../db/client.js\";\nimport { ssrfSafeFetch } from \"../extensions/url-safety.js\";\nimport { getAppProductionUrl } from \"../server/app-url.js\";\nimport { getSession } from \"../server/auth.js\";\nimport { renderInviteEmail } from \"../server/email-templates.js\";\nimport { sendEmail, isEmailConfigured } from \"../server/email.js\";\nimport { readBody } from \"../server/h3-helpers.js\";\nimport { putUserSetting } from \"../settings/user-settings.js\";\nimport { getOrgContext, createOrganization } from \"./context.js\";\nimport { isFreeEmailProvider } from \"./free-email-providers.js\";\nimport type { OrgRole } from \"./types.js\";\n\nfunction getInviteAppUrl(event: H3Event): string {\n return getAppProductionUrl(event);\n}\n\nasync function exec() {\n return getDbExec();\n}\n\nfunction requireAuthEmail(session: { email?: string } | null): string {\n const email = session?.email;\n if (!email) {\n throw createError({ statusCode: 401, message: \"Authentication required\" });\n }\n return email;\n}\n\n/** GET /_agent-native/org/me — current user's active org, all orgs, pending invitations */\nexport const getMyOrgHandler = defineEventHandler(async (event: H3Event) => {\n const ctx = await getOrgContext(event);\n\n const e = await exec();\n const allOrgsRes = await e.execute({\n sql: `SELECT m.org_id AS \"orgId\", m.role AS role, o.name AS \"orgName\"\n FROM org_members m\n INNER JOIN organizations o ON m.org_id = o.id\n WHERE LOWER(m.email) = ?`,\n args: [ctx.email.toLowerCase()],\n });\n const orgs = allOrgsRes.rows.map((r: any) => ({\n orgId: String(r.orgId ?? r.org_id),\n role: String(r.role) as OrgRole,\n orgName: String(r.orgName ?? r.org_name),\n }));\n\n let domainMatches: Array<{ orgId: string; orgName: string }> = [];\n const domain = ctx.email.split(\"@\")[1]?.toLowerCase();\n if (domain) {\n try {\n const dmRes = await e.execute({\n sql: `SELECT o.id, o.name\n FROM organizations o\n WHERE LOWER(o.allowed_domain) = ?\n AND NOT EXISTS (\n SELECT 1\n FROM org_members m\n WHERE m.org_id = o.id\n AND LOWER(m.email) = ?\n )`,\n args: [domain, ctx.email.toLowerCase()],\n });\n domainMatches = dmRes.rows.map((r: any) => ({\n orgId: String(r.id),\n orgName: String(r.name),\n }));\n } catch {\n // allowed_domain column may not exist yet if migration hasn't run\n }\n }\n\n let allowedDomain: string | null = null;\n let a2aSecret: string | null = null;\n if (ctx.orgId) {\n try {\n const adRes = await e.execute({\n sql: `SELECT allowed_domain, a2a_secret FROM organizations WHERE id = ? LIMIT 1`,\n args: [ctx.orgId],\n });\n if (adRes.rows[0]) {\n allowedDomain =\n String((adRes.rows[0] as any).allowed_domain ?? \"\") || null;\n a2aSecret = String((adRes.rows[0] as any).a2a_secret ?? \"\") || null;\n }\n } catch {\n // Column may not exist yet\n }\n }\n\n const isOwnerOrAdmin = ctx.role === \"owner\" || ctx.role === \"admin\";\n\n const invitesRes = await e.execute({\n // Case-insensitive match: invitations are stored with whatever case\n // the inviter typed, but the session email may be normalized\n // differently by the auth provider. LOWER(both sides) keeps these\n // discoverable and matches getOrgContext.hasPendingInvitation.\n sql: `SELECT i.id AS id, i.org_id AS \"orgId\", o.name AS \"orgName\", i.invited_by AS \"invitedBy\"\n FROM org_invitations i\n INNER JOIN organizations o ON i.org_id = o.id\n WHERE LOWER(i.email) = ? AND i.status = 'pending'`,\n args: [ctx.email.toLowerCase()],\n });\n const pendingInvitations = invitesRes.rows.map((r: any) => ({\n id: String(r.id),\n orgId: String(r.orgId ?? r.org_id),\n orgName: String(r.orgName ?? r.org_name),\n invitedBy: String(r.invitedBy ?? r.invited_by),\n }));\n\n return {\n email: ctx.email,\n orgId: ctx.orgId,\n orgName: ctx.orgName,\n role: ctx.role,\n orgs,\n pendingInvitations,\n domainMatches,\n allowedDomain,\n a2aSecret: isOwnerOrAdmin ? a2aSecret : undefined,\n };\n});\n\n/** POST /_agent-native/org — create a new organization */\nexport const createOrgHandler = defineEventHandler(async (event: H3Event) => {\n const session = await getSession(event);\n const email = requireAuthEmail(session);\n\n const body = await readBody(event);\n const name = body?.name?.trim();\n if (!name) {\n throw createError({\n statusCode: 400,\n message: \"Organization name is required\",\n });\n }\n\n const { id, name: createdName, role } = await createOrganization(name, email);\n return { id, name: createdName, role };\n});\n\n/** GET /_agent-native/org/members — list org members */\nexport const listMembersHandler = defineEventHandler(async (event: H3Event) => {\n const ctx = await getOrgContext(event);\n if (!ctx.orgId) return { members: [], hasMore: false, nextOffset: null };\n\n const url = getRequestURL(event);\n const search = (\n url.searchParams.get(\"search\") ??\n url.searchParams.get(\"q\") ??\n \"\"\n )\n .trim()\n .toLowerCase();\n const hasLimit = url.searchParams.has(\"limit\");\n const hasOffset = url.searchParams.has(\"offset\");\n const shouldPaginate = hasLimit || hasOffset || search.length > 0;\n const limit = shouldPaginate\n ? clampInteger(url.searchParams.get(\"limit\"), 25, 1, 100)\n : null;\n const offset = shouldPaginate\n ? clampInteger(url.searchParams.get(\"offset\"), 0, 0, 100_000)\n : 0;\n\n const e = await exec();\n const args: unknown[] = [ctx.orgId];\n let sql = `SELECT email, role, joined_at AS \"joinedAt\" FROM org_members WHERE org_id = ?`;\n if (search) {\n sql += ` AND LOWER(email) LIKE ? ESCAPE '!'`;\n args.push(`%${escapeLike(search)}%`);\n }\n sql += ` ORDER BY LOWER(email) ASC`;\n if (limit !== null) {\n sql += ` LIMIT ? OFFSET ?`;\n args.push(limit + 1, offset);\n }\n\n const { rows } = await e.execute({\n sql,\n args,\n });\n const pageRows = limit !== null ? rows.slice(0, limit) : rows;\n const hasMore = limit !== null && rows.length > limit;\n const members = pageRows.map((r: any) => ({\n email: String(r.email),\n role: String(r.role) as OrgRole,\n joinedAt: Number(r.joinedAt ?? r.joined_at),\n }));\n return {\n members,\n hasMore,\n nextOffset: hasMore ? offset + members.length : null,\n };\n});\n\nfunction clampInteger(\n input: string | null,\n fallback: number,\n min: number,\n max: number,\n): number {\n const value = input === null ? fallback : Number.parseInt(input, 10);\n if (!Number.isFinite(value)) return fallback;\n return Math.min(max, Math.max(min, value));\n}\n\nfunction escapeLike(value: string): string {\n return value.replace(/[!%_]/g, (match) => `!${match}`);\n}\n\nfunction normalizeInviteRole(input: unknown): \"member\" | \"admin\" {\n return input === \"admin\" ? \"admin\" : \"member\";\n}\n\ninterface SingleInviteResult {\n id: string;\n email: string;\n role: \"member\" | \"admin\";\n status: \"pending\";\n emailSent: boolean;\n emailError?: string;\n}\n\ninterface SingleInviteFailure {\n email: string;\n error: string;\n}\n\nasync function inviteOne(\n ctx: { orgId: string; orgName: string | null; email: string },\n rawEmail: string,\n role: \"member\" | \"admin\",\n event: H3Event,\n): Promise<SingleInviteResult> {\n const email = rawEmail.trim().toLowerCase();\n if (!email) {\n throw createError({ statusCode: 400, message: \"Email is required\" });\n }\n if (!/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/.test(email)) {\n throw createError({\n statusCode: 400,\n message: `Invalid email: ${rawEmail}`,\n });\n }\n\n const e = await exec();\n\n const existingMember = await e.execute({\n sql: `SELECT 1 FROM org_members WHERE org_id = ? AND LOWER(email) = ? LIMIT 1`,\n args: [ctx.orgId, email],\n });\n if (existingMember.rows.length > 0) {\n throw createError({\n statusCode: 409,\n message: `${email} is already a member`,\n });\n }\n\n const existingInvite = await e.execute({\n sql: `SELECT 1 FROM org_invitations WHERE org_id = ? AND LOWER(email) = ? AND status = 'pending' LIMIT 1`,\n args: [ctx.orgId, email],\n });\n if (existingInvite.rows.length > 0) {\n throw createError({\n statusCode: 409,\n message: `An invitation is already pending for ${email}`,\n });\n }\n\n const id = nanoid();\n await e.execute({\n sql: `INSERT INTO org_invitations (id, org_id, email, invited_by, created_at, status, role) VALUES (?, ?, ?, ?, ?, 'pending', ?)`,\n args: [id, ctx.orgId, email, ctx.email, Date.now(), role],\n });\n\n let emailSent = false;\n let emailError: string | undefined;\n if (await isEmailConfigured()) {\n try {\n const { subject, html, text } = renderInviteEmail({\n invitee: email,\n orgName: ctx.orgName || \"your team\",\n acceptUrl: getInviteAppUrl(event),\n inviter: ctx.email,\n });\n await sendEmail({ to: email, subject, html, text });\n emailSent = true;\n } catch (err) {\n emailError = err instanceof Error ? err.message : String(err);\n console.error(\"[org/invitations] failed to send invite email\", err);\n }\n }\n\n return { id, email, role, status: \"pending\", emailSent, emailError };\n}\n\n/** POST /_agent-native/org/invitations — invite one or many users by email */\nexport const createInvitationHandler = defineEventHandler(\n async (event: H3Event) => {\n const ctx = await getOrgContext(event);\n if (!ctx.orgId) {\n throw createError({\n statusCode: 400,\n message: \"You must belong to an organization to invite members\",\n });\n }\n if (ctx.role !== \"owner\" && ctx.role !== \"admin\") {\n throw createError({\n statusCode: 403,\n message: \"Only owners and admins can invite members\",\n });\n }\n\n const body = await readBody(event);\n\n // Bulk shape: { invites: [{ email, role }, ...] } — preferred for any\n // multi-recipient flow (paste-many, CSV upload). Single shape:\n // { email, role } — kept for backwards compatibility.\n const invitesInput: Array<{ email: string; role?: string }> | null =\n Array.isArray(body?.invites)\n ? body.invites.map((inv: any) => ({\n email: String(inv?.email ?? \"\"),\n role: inv?.role,\n }))\n : null;\n\n if (invitesInput) {\n const succeeded: SingleInviteResult[] = [];\n const failed: SingleInviteFailure[] = [];\n const seen = new Set<string>();\n\n for (const inv of invitesInput) {\n const lower = inv.email.trim().toLowerCase();\n if (!lower) continue;\n if (seen.has(lower)) continue;\n seen.add(lower);\n\n try {\n const result = await inviteOne(\n { orgId: ctx.orgId, orgName: ctx.orgName, email: ctx.email },\n inv.email,\n normalizeInviteRole(inv.role),\n event,\n );\n succeeded.push(result);\n } catch (err) {\n const message = err instanceof Error ? err.message : String(err);\n failed.push({ email: lower, error: message });\n }\n }\n\n return {\n succeeded,\n failed,\n total: succeeded.length + failed.length,\n };\n }\n\n // Single-invite shape.\n const role = normalizeInviteRole(body?.role);\n const result = await inviteOne(\n { orgId: ctx.orgId, orgName: ctx.orgName, email: ctx.email },\n body?.email ?? \"\",\n role,\n event,\n );\n return result;\n },\n);\n\n/** GET /_agent-native/org/invitations — list pending invitations for the org */\nexport const listInvitationsHandler = defineEventHandler(\n async (event: H3Event) => {\n const ctx = await getOrgContext(event);\n if (!ctx.orgId) return { invitations: [] };\n\n const e = await exec();\n const { rows } = await e.execute({\n sql: `SELECT id, email, invited_by AS \"invitedBy\", created_at AS \"createdAt\", status, role\n FROM org_invitations\n WHERE org_id = ? AND status = 'pending'`,\n args: [ctx.orgId],\n });\n const invitations = rows.map((r: any) => ({\n id: String(r.id),\n email: String(r.email),\n invitedBy: String(r.invitedBy ?? r.invited_by),\n createdAt: Number(r.createdAt ?? r.created_at),\n status: String(r.status),\n role:\n (String(r.role ?? \"member\") as OrgRole) === \"admin\"\n ? \"admin\"\n : \"member\",\n }));\n return { invitations };\n },\n);\n\n/** POST /_agent-native/org/invitations/:id/accept — accept an invitation */\nexport const acceptInvitationHandler = defineEventHandler(\n async (event: H3Event) => {\n const session = await getSession(event);\n const email = requireAuthEmail(session);\n\n const invitationId = extractInvitationId(event);\n if (!invitationId) {\n throw createError({\n statusCode: 400,\n message: \"Invitation ID required\",\n });\n }\n\n const e = await exec();\n\n const invRes = await e.execute({\n // Case-insensitive on email — see comment on the analogous\n // pending-invitations query in getMyOrgHandler.\n sql: `SELECT id, org_id AS \"orgId\", role FROM org_invitations\n WHERE id = ? AND LOWER(email) = ? AND status = 'pending' LIMIT 1`,\n args: [invitationId, email.toLowerCase()],\n });\n if (invRes.rows.length === 0) {\n throw createError({\n statusCode: 404,\n message: \"Invitation not found or already used\",\n });\n }\n const inv = invRes.rows[0] as any;\n const invOrgId = String(inv.orgId ?? inv.org_id);\n const inviteRole: OrgRole = inv.role === \"admin\" ? \"admin\" : \"member\";\n\n const existingMembership = await e.execute({\n sql: `SELECT role FROM org_members WHERE org_id = ? AND LOWER(email) = ? LIMIT 1`,\n args: [invOrgId, email.toLowerCase()],\n });\n\n const orgRes = await e.execute({\n sql: `SELECT name FROM organizations WHERE id = ? LIMIT 1`,\n args: [invOrgId],\n });\n const orgName = String((orgRes.rows[0] as any)?.name ?? \"\");\n\n if (existingMembership.rows.length > 0) {\n await e.execute({\n sql: `UPDATE org_invitations SET status = 'accepted' WHERE id = ?`,\n args: [invitationId],\n });\n await putUserSetting(email, \"active-org-id\", { orgId: invOrgId });\n return {\n orgId: invOrgId,\n orgName,\n role: String((existingMembership.rows[0] as any).role) as OrgRole,\n };\n }\n\n await e.execute({\n sql: `INSERT INTO org_members (id, org_id, email, role, joined_at) VALUES (?, ?, ?, ?, ?)`,\n args: [nanoid(), invOrgId, email, inviteRole, Date.now()],\n });\n\n await e.execute({\n sql: `UPDATE org_invitations SET status = 'accepted' WHERE id = ?`,\n args: [invitationId],\n });\n\n await putUserSetting(email, \"active-org-id\", { orgId: invOrgId });\n\n return { orgId: invOrgId, orgName, role: inviteRole };\n },\n);\n\n/** DELETE /_agent-native/org/members/:email — remove a member (owner/admin only) */\nexport const removeMemberHandler = defineEventHandler(\n async (event: H3Event) => {\n const ctx = await getOrgContext(event);\n if (!ctx.orgId) {\n throw createError({ statusCode: 400, message: \"No organization found\" });\n }\n if (ctx.role !== \"owner\" && ctx.role !== \"admin\") {\n throw createError({\n statusCode: 403,\n message: \"Only owners and admins can remove members\",\n });\n }\n\n const memberEmail = extractMemberEmail(event);\n if (!memberEmail) {\n throw createError({ statusCode: 400, message: \"Email is required\" });\n }\n\n // memberEmail comes from the URL path verbatim; org_members may\n // hold the row with any case. LOWER both sides for the lookup AND\n // the DELETE so removal works regardless of how either side cased\n // it. The self-removal guard ALSO compares case-insensitively —\n // otherwise an owner whose email was stored as Alice@... could\n // remove themselves via the lowercase URL alice@..., bypassing the\n // guard and leaving the org ownerless.\n const memberEmailLower = memberEmail.toLowerCase();\n if (memberEmailLower === ctx.email.toLowerCase() && ctx.role === \"owner\") {\n throw createError({\n statusCode: 400,\n message: \"Organization owner cannot remove themselves\",\n });\n }\n const e = await exec();\n // Look specifically for an OWNER row matching this email rather\n // than just \"any matching row\". Duplicate-case rows are possible\n // (e.g. legacy data with both \"Alice@...\" and \"alice@...\" in\n // org_members), and the prior `SELECT role ... LIMIT 1` could\n // return the non-owner duplicate, pass the role check, and then\n // the case-insensitive DELETE below would remove BOTH rows —\n // including the owner — leaving the org ownerless. Querying for\n // the owner row directly closes that case-mismatch attack.\n const ownerCheck = await e.execute({\n sql: `SELECT 1 FROM org_members WHERE org_id = ? AND LOWER(email) = ? AND role = 'owner' LIMIT 1`,\n args: [ctx.orgId, memberEmailLower],\n });\n if (ownerCheck.rows.length > 0) {\n throw createError({\n statusCode: 403,\n message: \"Cannot remove the organization owner\",\n });\n }\n\n await e.execute({\n sql: `DELETE FROM org_members WHERE org_id = ? AND LOWER(email) = ?`,\n args: [ctx.orgId, memberEmailLower],\n });\n\n return { success: true };\n },\n);\n\n/**\n * PUT /_agent-native/org/members/:email/role — change a member's role\n * (owner/admin only). Body: { role: \"admin\" | \"member\" }.\n *\n * Only owners can promote/demote admins. (Admins can manage members but\n * not other admins — otherwise an admin could escalate themselves to\n * owner-equivalent control by promoting a confederate.)\n */\nexport const changeMemberRoleHandler = defineEventHandler(\n async (event: H3Event) => {\n const ctx = await getOrgContext(event);\n if (!ctx.orgId) {\n throw createError({ statusCode: 400, message: \"No organization found\" });\n }\n if (ctx.role !== \"owner\" && ctx.role !== \"admin\") {\n throw createError({\n statusCode: 403,\n message: \"Only owners and admins can change member roles\",\n });\n }\n\n const memberEmail = extractMemberEmail(event);\n if (!memberEmail) {\n throw createError({ statusCode: 400, message: \"Email is required\" });\n }\n const memberEmailLower = memberEmail.toLowerCase();\n\n const body = await readBody(event);\n const role = body?.role === \"admin\" ? \"admin\" : \"member\";\n\n const e = await exec();\n\n // Look up the target member's current role to enforce sensible rules\n // about what changes are allowed.\n const current = await e.execute({\n sql: `SELECT role FROM org_members WHERE org_id = ? AND LOWER(email) = ? LIMIT 1`,\n args: [ctx.orgId, memberEmailLower],\n });\n if (current.rows.length === 0) {\n throw createError({ statusCode: 404, message: \"Member not found\" });\n }\n const currentRole = String((current.rows[0] as any).role) as OrgRole;\n\n if (currentRole === \"owner\") {\n throw createError({\n statusCode: 400,\n message: \"Cannot change the organization owner's role\",\n });\n }\n\n // Admins are scoped to managing members. If they could promote\n // members to admin, they could grant near-owner powers without owner\n // approval. Restrict admin/admin role transitions to the owner.\n if (ctx.role === \"admin\" && (currentRole === \"admin\" || role === \"admin\")) {\n throw createError({\n statusCode: 403,\n message: \"Only the organization owner can manage admins\",\n });\n }\n\n // Self-demotion guard: prevent the only admin from removing their own\n // ability to manage things, and prevent the owner-self edge case\n // (already filtered above by the currentRole check).\n if (memberEmailLower === ctx.email.toLowerCase() && ctx.role === \"admin\") {\n throw createError({\n statusCode: 400,\n message: \"Use the owner account to change your own admin role\",\n });\n }\n\n await e.execute({\n sql: `UPDATE org_members SET role = ? WHERE org_id = ? AND LOWER(email) = ?`,\n args: [role, ctx.orgId, memberEmailLower],\n });\n\n return { email: memberEmailLower, role };\n },\n);\n\n/** PATCH /_agent-native/org — rename the current organization (owner/admin only) */\nexport const updateOrgHandler = defineEventHandler(async (event: H3Event) => {\n const ctx = await getOrgContext(event);\n if (!ctx.orgId) {\n throw createError({ statusCode: 400, message: \"No organization found\" });\n }\n if (ctx.role !== \"owner\" && ctx.role !== \"admin\") {\n throw createError({\n statusCode: 403,\n message: \"Only owners and admins can update the organization\",\n });\n }\n\n const body = await readBody(event);\n const name = body?.name?.trim();\n if (!name) {\n throw createError({\n statusCode: 400,\n message: \"Organization name is required\",\n });\n }\n\n const e = await exec();\n await e.execute({\n sql: `UPDATE organizations SET name = ? WHERE id = ?`,\n args: [name, ctx.orgId],\n });\n\n return { orgId: ctx.orgId, name };\n});\n\n/** PUT /_agent-native/org/switch — switch the user's active organization */\nexport const switchOrgHandler = defineEventHandler(async (event: H3Event) => {\n const session = await getSession(event);\n const email = requireAuthEmail(session);\n\n const body = await readBody(event);\n const orgId = body?.orgId;\n\n if (!orgId) {\n await putUserSetting(email, \"active-org-id\", { orgId: null });\n return { orgId: null, orgName: null, role: null };\n }\n\n const e = await exec();\n const membership = await e.execute({\n sql: `SELECT m.role AS role, o.name AS \"orgName\"\n FROM org_members m\n INNER JOIN organizations o ON m.org_id = o.id\n WHERE m.org_id = ? AND LOWER(m.email) = ? LIMIT 1`,\n args: [orgId, email.toLowerCase()],\n });\n\n if (membership.rows.length === 0) {\n throw createError({\n statusCode: 403,\n message: \"You are not a member of that organization\",\n });\n }\n\n await putUserSetting(email, \"active-org-id\", { orgId });\n\n const row = membership.rows[0] as any;\n return {\n orgId,\n orgName: String(row.orgName ?? row.org_name),\n role: String(row.role) as OrgRole,\n };\n});\n\n/** POST /_agent-native/org/join-by-domain — join an org whose allowed_domain matches your email */\nexport const joinByDomainHandler = defineEventHandler(\n async (event: H3Event) => {\n const session = await getSession(event);\n const email = requireAuthEmail(session);\n\n const body = await readBody(event);\n const orgId = body?.orgId;\n if (!orgId) {\n throw createError({ statusCode: 400, message: \"orgId is required\" });\n }\n\n const e = await exec();\n\n const orgRes = await e.execute({\n sql: `SELECT id, name, allowed_domain FROM organizations WHERE id = ? LIMIT 1`,\n args: [orgId],\n });\n if (orgRes.rows.length === 0) {\n throw createError({ statusCode: 404, message: \"Organization not found\" });\n }\n const org = orgRes.rows[0] as any;\n const allowedDomain = String(org.allowed_domain || \"\").toLowerCase();\n const userDomain = email.split(\"@\")[1]?.toLowerCase();\n\n if (!allowedDomain || allowedDomain !== userDomain) {\n throw createError({\n statusCode: 403,\n message:\n \"Your email domain does not match this organization's allowed domain\",\n });\n }\n\n const existing = await e.execute({\n sql: `SELECT 1 FROM org_members WHERE org_id = ? AND LOWER(email) = ? LIMIT 1`,\n args: [orgId, email.toLowerCase()],\n });\n if (existing.rows.length > 0) {\n throw createError({\n statusCode: 409,\n message: \"Already a member of this organization\",\n });\n }\n\n await e.execute({\n sql: `INSERT INTO org_members (id, org_id, email, role, joined_at) VALUES (?, ?, ?, 'member', ?)`,\n args: [nanoid(), orgId, email, Date.now()],\n });\n\n await putUserSetting(email, \"active-org-id\", { orgId });\n\n return {\n orgId,\n orgName: String(org.name),\n role: \"member\" as OrgRole,\n };\n },\n);\n\n/** PUT /_agent-native/org/domain — set or clear the allowed email domain (owner/admin only) */\nexport const setDomainHandler = defineEventHandler(async (event: H3Event) => {\n const ctx = await getOrgContext(event);\n if (!ctx.orgId) {\n throw createError({ statusCode: 400, message: \"No active organization\" });\n }\n if (ctx.role !== \"owner\" && ctx.role !== \"admin\") {\n throw createError({\n statusCode: 403,\n message: \"Only owners and admins can set the allowed domain\",\n });\n }\n\n const body = await readBody(event);\n const raw = body?.domain?.trim()?.toLowerCase() || null;\n\n if (raw && !/^([a-z0-9]([a-z0-9-]*[a-z0-9])?\\.)+[a-z]{2,}$/.test(raw)) {\n throw createError({\n statusCode: 400,\n message: \"Invalid domain format\",\n });\n }\n\n if (raw) {\n // Auto-join is \"anyone with this domain joins automatically\". That is\n // safe for company domains (the company controls who gets an address)\n // and catastrophic for shared mailbox providers — anyone in the world\n // could create a matching mailbox and silently join the org.\n if (isFreeEmailProvider(raw)) {\n throw createError({\n statusCode: 400,\n message:\n \"Free email providers (gmail.com, outlook.com, etc.) cannot be used as an auto-join domain. Use your company's own domain.\",\n });\n }\n\n // Restrict to the admin's own email domain. Without this, an admin\n // could set `allowed_domain` to a domain they don't control, and\n // anyone signing up under that domain would join the org. Even with\n // the free-provider blocklist above, that would still let an admin\n // hijack a competitor's domain.\n const ownDomain = ctx.email.split(\"@\")[1]?.toLowerCase() ?? \"\";\n if (raw !== ownDomain) {\n throw createError({\n statusCode: 400,\n message: `You can only auto-join your own email domain (${ownDomain}).`,\n });\n }\n }\n\n const e = await exec();\n\n if (raw) {\n const existing = await e.execute({\n sql: `SELECT id FROM organizations WHERE LOWER(allowed_domain) = ? AND id != ? LIMIT 1`,\n args: [raw, ctx.orgId],\n });\n if (existing.rows.length > 0) {\n throw createError({\n statusCode: 409,\n message: \"Another organization already uses this domain\",\n });\n }\n }\n\n await e.execute({\n sql: `UPDATE organizations SET allowed_domain = ? WHERE id = ?`,\n args: [raw, ctx.orgId],\n });\n\n return { domain: raw };\n});\n\n/** PUT /_agent-native/org/a2a-secret — regenerate or set the org's A2A secret (owner/admin only) */\nexport const setA2ASecretHandler = defineEventHandler(\n async (event: H3Event) => {\n const ctx = await getOrgContext(event);\n if (!ctx.orgId) {\n throw createError({\n statusCode: 400,\n message: \"No active organization\",\n });\n }\n if (ctx.role !== \"owner\" && ctx.role !== \"admin\") {\n throw createError({\n statusCode: 403,\n message: \"Only owners and admins can manage the A2A secret\",\n });\n }\n\n const body = await readBody(event);\n let secret = body?.secret?.trim() || null;\n\n // If no secret provided, auto-generate one\n if (!secret) {\n const { randomBytes } = await import(\"node:crypto\");\n secret = randomBytes(32).toString(\"base64url\");\n }\n\n const e = await exec();\n // Read the previous secret BEFORE overwriting so the client can chain a\n // sync call that signs JWTs with the secret peers still hold.\n const prevRes = await e.execute({\n sql: `SELECT a2a_secret FROM organizations WHERE id = ? LIMIT 1`,\n args: [ctx.orgId],\n });\n const previousSecret =\n String((prevRes.rows[0] as any)?.a2a_secret ?? \"\") || null;\n\n await e.execute({\n sql: `UPDATE organizations SET a2a_secret = ? WHERE id = ?`,\n args: [secret, ctx.orgId],\n });\n\n return { a2aSecret: secret, previousSecret };\n },\n);\n\n/**\n * POST /_agent-native/org/a2a-secret/sync — push the org's A2A secret to all\n * connected apps so cross-app delegation works without manual copy/paste.\n *\n * Auth: standard session — owner/admin only.\n *\n * For each discovered agent, signs a JWT with the org's CURRENT a2a_secret\n * and POSTs to `<app>/_agent-native/org/a2a-secret/receive` with the same\n * secret + the org's domain. The receiving app verifies the JWT using its\n * own copy of the secret (peers must already share a secret to be trusted)\n * — for the first-ever sync this means at least one peer must already hold\n * the secret, which is the bootstrap. For ongoing rotation, regenerate\n * locally and call sync immediately; sync signs with the secret that's\n * currently in DB, which the peers still have.\n *\n * Body (optional): { signSecret?: string } — sign the outbound JWTs with\n * this secret instead of the org's current secret. Used by the regenerate-\n * then-sync flow: regenerate stores the NEW secret, but sync needs to\n * authenticate using the OLD one that peers still hold. Owner/admin only,\n * gated by the session.\n */\nexport const syncA2ASecretHandler = defineEventHandler(\n async (event: H3Event) => {\n const ctx = await getOrgContext(event);\n if (!ctx.orgId) {\n throw createError({\n statusCode: 400,\n message: \"No active organization\",\n });\n }\n if (ctx.role !== \"owner\" && ctx.role !== \"admin\") {\n throw createError({\n statusCode: 403,\n message: \"Only owners and admins can sync the A2A secret\",\n });\n }\n\n const body = await readBody(event).catch(() => null);\n const overrideSignSecret =\n typeof body?.signSecret === \"string\" && body.signSecret.trim()\n ? body.signSecret.trim()\n : null;\n\n const e = await exec();\n const orgRes = await e.execute({\n sql: `SELECT a2a_secret, allowed_domain FROM organizations WHERE id = ? LIMIT 1`,\n args: [ctx.orgId],\n });\n if (orgRes.rows.length === 0) {\n throw createError({\n statusCode: 404,\n message: \"Organization not found\",\n });\n }\n const orgRow = orgRes.rows[0] as any;\n const secret = String(orgRow.a2a_secret ?? \"\") || null;\n const orgDomain = String(orgRow.allowed_domain ?? \"\") || null;\n\n if (!secret) {\n throw createError({\n statusCode: 400,\n message: \"Org has no A2A secret. Generate one first before syncing.\",\n });\n }\n if (!orgDomain) {\n throw createError({\n statusCode: 400,\n message:\n \"Org has no allowed domain set. Set the email domain first so connected apps can identify which org to update.\",\n });\n }\n\n const signSecret = overrideSignSecret || secret;\n\n const { discoverAgents } = await import(\"../server/agent-discovery.js\");\n const { signA2AToken } = await import(\"../a2a/client.js\");\n\n const agents = await discoverAgents();\n\n const results: Array<{\n id: string;\n name: string;\n url: string;\n ok: boolean;\n status?: number;\n error?: string;\n }> = [];\n\n await Promise.all(\n agents.map(async (agent) => {\n try {\n const token = await signA2AToken(ctx.email, orgDomain, signSecret);\n\n const target = `${agent.url.replace(/\\/$/, \"\")}/_agent-native/org/a2a-secret/receive`;\n const res = await ssrfSafeFetch(\n target,\n {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n Authorization: `Bearer ${token}`,\n },\n body: JSON.stringify({ secret, orgDomain }),\n },\n { maxRedirects: 3 },\n );\n\n if (!res.ok) {\n const text = await res.text().catch(() => \"\");\n results.push({\n id: agent.id,\n name: agent.name,\n url: agent.url,\n ok: false,\n status: res.status,\n error: text || res.statusText,\n });\n return;\n }\n results.push({\n id: agent.id,\n name: agent.name,\n url: agent.url,\n ok: true,\n status: res.status,\n });\n } catch (err) {\n results.push({\n id: agent.id,\n name: agent.name,\n url: agent.url,\n ok: false,\n error: err instanceof Error ? err.message : String(err),\n });\n }\n }),\n );\n\n const succeeded = results.filter((r) => r.ok).length;\n return {\n total: results.length,\n succeeded,\n failed: results.length - succeeded,\n results,\n };\n },\n);\n\n/**\n * POST /_agent-native/org/a2a-secret/receive — accept a secret push from a\n * connected agent-native app. Auth-exempt at the route guard; we verify a\n * JWT signed by the calling app using OUR copy of the org's a2a_secret. If\n * verification succeeds the calling app is a trusted peer and we overwrite\n * our local org's secret with the supplied value.\n *\n * Body: { secret: string, orgDomain: string }\n *\n * Header: Authorization: Bearer <JWT signed with the existing shared\n * a2a_secret, with `org_domain` matching the body's orgDomain>.\n */\nexport const receiveA2ASecretHandler = defineEventHandler(\n async (event: H3Event) => {\n const { getRequestHeader } = await import(\"h3\");\n const jose = await import(\"jose\");\n\n const authHeader = getRequestHeader(event, \"authorization\");\n if (!authHeader || !authHeader.startsWith(\"Bearer \")) {\n throw createError({\n statusCode: 401,\n message: \"Bearer token required\",\n });\n }\n const token = authHeader.slice(\"Bearer \".length);\n\n const body = await readBody(event);\n const newSecret =\n typeof body?.secret === \"string\" ? body.secret.trim() : \"\";\n const orgDomain =\n typeof body?.orgDomain === \"string\"\n ? body.orgDomain.trim().toLowerCase()\n : \"\";\n if (!newSecret || !orgDomain) {\n throw createError({\n statusCode: 400,\n message: \"secret and orgDomain are required\",\n });\n }\n\n // Peek at JWT (unverified) to confirm it claims the same domain we're\n // updating. Verification still happens below with the trusted secret.\n let claimedDomain: string | undefined;\n try {\n const unverified = jose.decodeJwt(token);\n claimedDomain =\n (unverified.org_domain as string | undefined) || undefined;\n } catch {\n throw createError({\n statusCode: 401,\n message: \"Malformed JWT\",\n });\n }\n if (\n !claimedDomain ||\n claimedDomain.toLowerCase() !== orgDomain.toLowerCase()\n ) {\n throw createError({\n statusCode: 401,\n message: \"JWT org_domain does not match request body\",\n });\n }\n\n // Look up our local org by the domain and grab the existing secret.\n const e = await exec();\n const orgRes = await e.execute({\n sql: `SELECT id, a2a_secret FROM organizations WHERE LOWER(allowed_domain) = ? LIMIT 1`,\n args: [orgDomain],\n });\n if (orgRes.rows.length === 0) {\n throw createError({\n statusCode: 404,\n message: \"No local org matches that domain\",\n });\n }\n const row = orgRes.rows[0] as any;\n const localOrgId = String(row.id);\n const existingSecret = String(row.a2a_secret ?? \"\") || null;\n\n if (!existingSecret) {\n // Bootstrap requires an existing shared secret to verify the caller.\n // If we have nothing on file, we can't verify trust — refuse.\n throw createError({\n statusCode: 401,\n message:\n \"Local org has no A2A secret yet — cannot verify caller. Set the secret manually for the first time.\",\n });\n }\n\n // Verify the JWT using OUR existing secret. If the caller is a trusted\n // peer they signed with the same secret and verification succeeds.\n try {\n await jose.jwtVerify(token, new TextEncoder().encode(existingSecret));\n } catch {\n throw createError({\n statusCode: 401,\n message: \"Invalid or expired JWT signature\",\n });\n }\n\n // Trusted — apply the new secret.\n await e.execute({\n sql: `UPDATE organizations SET a2a_secret = ? WHERE id = ?`,\n args: [newSecret, localOrgId],\n });\n\n return { ok: true, orgId: localOrgId };\n },\n);\n"]}
@@ -73,6 +73,7 @@ export declare function createProviderCorpusJobAction(options: CreateProviderCor
73
73
  offset?: unknown;
74
74
  limit?: unknown;
75
75
  }, {
76
+ deleted?: undefined;
76
77
  jobs: {
77
78
  id: string;
78
79
  name: string;
@@ -83,7 +84,6 @@ export declare function createProviderCorpusJobAction(options: CreateProviderCor
83
84
  updatedAt: string;
84
85
  }[];
85
86
  total: number;
86
- deleted?: undefined;
87
87
  jobId?: undefined;
88
88
  } | {
89
89
  jobs?: undefined;
@@ -91,9 +91,9 @@ export declare function createProviderCorpusJobAction(options: CreateProviderCor
91
91
  deleted: boolean;
92
92
  jobId: string;
93
93
  } | {
94
+ deleted?: undefined;
94
95
  jobs?: undefined;
95
96
  total?: undefined;
96
- deleted?: undefined;
97
97
  jobId?: undefined;
98
98
  hits: Record<string, unknown>[];
99
99
  offset: number;
@@ -52,8 +52,8 @@ export declare function handleDeleteResource(event: any): Promise<{
52
52
  error: string;
53
53
  ok?: undefined;
54
54
  } | {
55
- ok: boolean;
56
55
  error?: undefined;
56
+ ok: boolean;
57
57
  }>;
58
58
  /** POST /_agent-native/resources/upload — upload a file as a resource */
59
59
  export declare function handleUploadResource(event: any): Promise<import("./store.js").Resource | {
@@ -73,9 +73,9 @@ export declare function handleUploadResource(event: any): Promise<import("./stor
73
73
  runId: string | null;
74
74
  expiresAt: number | null;
75
75
  metadata: string | null;
76
+ error?: undefined;
76
77
  url: string;
77
78
  provider: string;
78
- error?: undefined;
79
79
  }>;
80
80
  export {};
81
81
  //# sourceMappingURL=handlers.d.ts.map
@@ -8,7 +8,7 @@ import { emitResourceChange, emitResourceDelete } from "./emitter.js";
8
8
  export const SHARED_OWNER = "__shared__";
9
9
  export const WORKSPACE_OWNER = "__workspace__";
10
10
  function escapeLike(value) {
11
- return value.replace(/[\\%_]/g, (char) => `\\${char}`);
11
+ return value.replace(/[!%_]/g, (char) => `!${char}`);
12
12
  }
13
13
  function prefixLike(value) {
14
14
  return `${escapeLike(value)}%`;
@@ -436,7 +436,7 @@ async function selectGrantedWorkspaceResourceRows(input) {
436
436
  args.push(input.path);
437
437
  }
438
438
  if (input.pathPrefix) {
439
- conditions.push("wr.path LIKE ? ESCAPE '\\'");
439
+ conditions.push("wr.path LIKE ? ESCAPE '!'");
440
440
  args.push(prefixLike(input.pathPrefix));
441
441
  }
442
442
  if (orgId) {
@@ -1043,7 +1043,7 @@ export async function resourceList(owner, pathPrefix, options) {
1043
1043
  const visibilitySql = scratchFilterSql(options);
1044
1044
  if (pathPrefix) {
1045
1045
  const { rows } = await client.execute({
1046
- sql: `SELECT ${RESOURCE_META_SELECT} FROM resources WHERE owner = ? AND path LIKE ? ESCAPE '\\'${visibilitySql}`,
1046
+ sql: `SELECT ${RESOURCE_META_SELECT} FROM resources WHERE owner = ? AND path LIKE ? ESCAPE '!'${visibilitySql}`,
1047
1047
  args: [owner, prefixLike(pathPrefix)],
1048
1048
  });
1049
1049
  const resources = rows.map(rowToMeta);
@@ -1080,11 +1080,11 @@ export async function resourceListAccessible(userEmail, pathPrefix, options) {
1080
1080
  const visibilitySql = scratchFilterSql(options);
1081
1081
  if (pathPrefix) {
1082
1082
  const { rows } = await client.execute({
1083
- sql: `SELECT ${RESOURCE_META_SELECT} FROM resources WHERE owner = ? AND path LIKE ? ESCAPE '\\'${visibilitySql}
1083
+ sql: `SELECT ${RESOURCE_META_SELECT} FROM resources WHERE owner = ? AND path LIKE ? ESCAPE '!'${visibilitySql}
1084
1084
  UNION
1085
- SELECT ${RESOURCE_META_SELECT} FROM resources WHERE owner = ? AND path LIKE ? ESCAPE '\\'${visibilitySql}
1085
+ SELECT ${RESOURCE_META_SELECT} FROM resources WHERE owner = ? AND path LIKE ? ESCAPE '!'${visibilitySql}
1086
1086
  UNION
1087
- SELECT ${RESOURCE_META_SELECT} FROM resources WHERE owner = ? AND path LIKE ? ESCAPE '\\'${visibilitySql}`,
1087
+ SELECT ${RESOURCE_META_SELECT} FROM resources WHERE owner = ? AND path LIKE ? ESCAPE '!'${visibilitySql}`,
1088
1088
  args: [
1089
1089
  userEmail,
1090
1090
  prefixLike(pathPrefix),
@@ -1184,7 +1184,7 @@ export async function resourceListAllOwners(pathPrefix) {
1184
1184
  await ensureTable();
1185
1185
  const client = getDbExec();
1186
1186
  const { rows } = await client.execute({
1187
- sql: `SELECT * FROM resources WHERE path LIKE ? ESCAPE '\\'`,
1187
+ sql: `SELECT * FROM resources WHERE path LIKE ? ESCAPE '!'`,
1188
1188
  args: [prefixLike(pathPrefix)],
1189
1189
  });
1190
1190
  const localResources = (await Promise.all((await localWorkspaceResourceMetas(pathPrefix)).map((resource) => resourceGet(resource.id)))).filter((resource) => !!resource);