@agent-native/core 0.32.2 → 0.32.18

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 (241) hide show
  1. package/README.md +3 -1
  2. package/dist/agent/run-store.d.ts.map +1 -1
  3. package/dist/agent/run-store.js +48 -10
  4. package/dist/agent/run-store.js.map +1 -1
  5. package/dist/agent/thread-data-builder.d.ts +12 -0
  6. package/dist/agent/thread-data-builder.d.ts.map +1 -1
  7. package/dist/agent/thread-data-builder.js +104 -6
  8. package/dist/agent/thread-data-builder.js.map +1 -1
  9. package/dist/cli/app-skill.js +2 -2
  10. package/dist/cli/app-skill.js.map +1 -1
  11. package/dist/cli/code-agent-executor.d.ts.map +1 -1
  12. package/dist/cli/code-agent-executor.js +6 -1
  13. package/dist/cli/code-agent-executor.js.map +1 -1
  14. package/dist/cli/code-agent-output-smoother.d.ts +7 -0
  15. package/dist/cli/code-agent-output-smoother.d.ts.map +1 -0
  16. package/dist/cli/code-agent-output-smoother.js +111 -0
  17. package/dist/cli/code-agent-output-smoother.js.map +1 -0
  18. package/dist/cli/connect.d.ts.map +1 -1
  19. package/dist/cli/connect.js +5 -0
  20. package/dist/cli/connect.js.map +1 -1
  21. package/dist/cli/migrate.d.ts.map +1 -1
  22. package/dist/cli/migrate.js +17 -42
  23. package/dist/cli/migrate.js.map +1 -1
  24. package/dist/cli/skills.d.ts +23 -2
  25. package/dist/cli/skills.d.ts.map +1 -1
  26. package/dist/cli/skills.js +405 -41
  27. package/dist/cli/skills.js.map +1 -1
  28. package/dist/cli/templates-meta.d.ts.map +1 -1
  29. package/dist/cli/templates-meta.js +7 -105
  30. package/dist/cli/templates-meta.js.map +1 -1
  31. package/dist/client/AgentPanel.d.ts.map +1 -1
  32. package/dist/client/AgentPanel.js +41 -7
  33. package/dist/client/AgentPanel.js.map +1 -1
  34. package/dist/client/AgentTaskCard.d.ts.map +1 -1
  35. package/dist/client/AgentTaskCard.js +0 -28
  36. package/dist/client/AgentTaskCard.js.map +1 -1
  37. package/dist/client/AssistantChat.d.ts +8 -23
  38. package/dist/client/AssistantChat.d.ts.map +1 -1
  39. package/dist/client/AssistantChat.js +359 -205
  40. package/dist/client/AssistantChat.js.map +1 -1
  41. package/dist/client/MultiTabAssistantChat.d.ts.map +1 -1
  42. package/dist/client/MultiTabAssistantChat.js +254 -14
  43. package/dist/client/MultiTabAssistantChat.js.map +1 -1
  44. package/dist/client/agent-chat-adapter.d.ts.map +1 -1
  45. package/dist/client/agent-chat-adapter.js +14 -9
  46. package/dist/client/agent-chat-adapter.js.map +1 -1
  47. package/dist/client/agent-chat.d.ts +24 -0
  48. package/dist/client/agent-chat.d.ts.map +1 -1
  49. package/dist/client/agent-chat.js +73 -0
  50. package/dist/client/agent-chat.js.map +1 -1
  51. package/dist/client/assistant-ui-recovery.d.ts +34 -0
  52. package/dist/client/assistant-ui-recovery.d.ts.map +1 -0
  53. package/dist/client/assistant-ui-recovery.js +122 -0
  54. package/dist/client/assistant-ui-recovery.js.map +1 -0
  55. package/dist/client/composer/PromptComposer.d.ts.map +1 -1
  56. package/dist/client/composer/PromptComposer.js +7 -1
  57. package/dist/client/composer/PromptComposer.js.map +1 -1
  58. package/dist/client/composer/TiptapComposer.d.ts +7 -1
  59. package/dist/client/composer/TiptapComposer.d.ts.map +1 -1
  60. package/dist/client/composer/TiptapComposer.js +22 -2
  61. package/dist/client/composer/TiptapComposer.js.map +1 -1
  62. package/dist/client/frame-protocol.d.ts +6 -2
  63. package/dist/client/frame-protocol.d.ts.map +1 -1
  64. package/dist/client/frame-protocol.js.map +1 -1
  65. package/dist/client/index.d.ts +2 -1
  66. package/dist/client/index.d.ts.map +1 -1
  67. package/dist/client/index.js +2 -1
  68. package/dist/client/index.js.map +1 -1
  69. package/dist/client/org/OrgSwitcher.d.ts.map +1 -1
  70. package/dist/client/org/OrgSwitcher.js +2 -1
  71. package/dist/client/org/OrgSwitcher.js.map +1 -1
  72. package/dist/client/progress/RunsTray.d.ts +13 -3
  73. package/dist/client/progress/RunsTray.d.ts.map +1 -1
  74. package/dist/client/progress/RunsTray.js +105 -36
  75. package/dist/client/progress/RunsTray.js.map +1 -1
  76. package/dist/client/route-warmup.d.ts +61 -0
  77. package/dist/client/route-warmup.d.ts.map +1 -0
  78. package/dist/client/route-warmup.js +456 -0
  79. package/dist/client/route-warmup.js.map +1 -0
  80. package/dist/client/settings/SettingsPanel.d.ts.map +1 -1
  81. package/dist/client/settings/SettingsPanel.js +2 -1
  82. package/dist/client/settings/SettingsPanel.js.map +1 -1
  83. package/dist/client/settings/useBuilderStatus.d.ts +5 -0
  84. package/dist/client/settings/useBuilderStatus.d.ts.map +1 -1
  85. package/dist/client/settings/useBuilderStatus.js +10 -4
  86. package/dist/client/settings/useBuilderStatus.js.map +1 -1
  87. package/dist/client/use-action.d.ts +1 -0
  88. package/dist/client/use-action.d.ts.map +1 -1
  89. package/dist/client/use-action.js +22 -4
  90. package/dist/client/use-action.js.map +1 -1
  91. package/dist/code-agents/background-run.d.ts +2 -0
  92. package/dist/code-agents/background-run.d.ts.map +1 -1
  93. package/dist/code-agents/background-run.js.map +1 -1
  94. package/dist/db/client.d.ts +1 -1
  95. package/dist/db/client.d.ts.map +1 -1
  96. package/dist/db/client.js +25 -1
  97. package/dist/db/client.js.map +1 -1
  98. package/dist/deploy/build.d.ts +4 -0
  99. package/dist/deploy/build.d.ts.map +1 -1
  100. package/dist/deploy/build.js +171 -14
  101. package/dist/deploy/build.js.map +1 -1
  102. package/dist/deploy/immutable-assets.d.ts +1 -0
  103. package/dist/deploy/immutable-assets.d.ts.map +1 -1
  104. package/dist/deploy/immutable-assets.js +1 -0
  105. package/dist/deploy/immutable-assets.js.map +1 -1
  106. package/dist/index.browser.d.ts +1 -1
  107. package/dist/index.browser.d.ts.map +1 -1
  108. package/dist/index.browser.js +1 -1
  109. package/dist/index.browser.js.map +1 -1
  110. package/dist/index.d.ts +1 -1
  111. package/dist/index.d.ts.map +1 -1
  112. package/dist/index.js +1 -1
  113. package/dist/index.js.map +1 -1
  114. package/dist/mcp/connect-route.d.ts.map +1 -1
  115. package/dist/mcp/connect-route.js +118 -82
  116. package/dist/mcp/connect-route.js.map +1 -1
  117. package/dist/progress/routes.d.ts.map +1 -1
  118. package/dist/progress/routes.js +1 -0
  119. package/dist/progress/routes.js.map +1 -1
  120. package/dist/progress/store.d.ts +13 -0
  121. package/dist/progress/store.d.ts.map +1 -1
  122. package/dist/progress/store.js +18 -0
  123. package/dist/progress/store.js.map +1 -1
  124. package/dist/progress/types.d.ts +2 -0
  125. package/dist/progress/types.d.ts.map +1 -1
  126. package/dist/progress/types.js.map +1 -1
  127. package/dist/scripts/db/wipe-leaked-builder-keys.d.ts +2 -2
  128. package/dist/scripts/db/wipe-leaked-builder-keys.d.ts.map +1 -1
  129. package/dist/scripts/db/wipe-leaked-builder-keys.js +14 -3
  130. package/dist/scripts/db/wipe-leaked-builder-keys.js.map +1 -1
  131. package/dist/server/action-routes.d.ts +1 -0
  132. package/dist/server/action-routes.d.ts.map +1 -1
  133. package/dist/server/action-routes.js +36 -2
  134. package/dist/server/action-routes.js.map +1 -1
  135. package/dist/server/agent-chat-plugin.d.ts +5 -0
  136. package/dist/server/agent-chat-plugin.d.ts.map +1 -1
  137. package/dist/server/agent-chat-plugin.js +131 -26
  138. package/dist/server/agent-chat-plugin.js.map +1 -1
  139. package/dist/server/agent-discovery.d.ts.map +1 -1
  140. package/dist/server/agent-discovery.js +14 -1
  141. package/dist/server/agent-discovery.js.map +1 -1
  142. package/dist/server/agent-teams-run-queue.d.ts +80 -0
  143. package/dist/server/agent-teams-run-queue.d.ts.map +1 -0
  144. package/dist/server/agent-teams-run-queue.js +208 -0
  145. package/dist/server/agent-teams-run-queue.js.map +1 -0
  146. package/dist/server/agent-teams.d.ts +67 -0
  147. package/dist/server/agent-teams.d.ts.map +1 -1
  148. package/dist/server/agent-teams.js +607 -180
  149. package/dist/server/agent-teams.js.map +1 -1
  150. package/dist/server/auth-marketing.d.ts.map +1 -1
  151. package/dist/server/auth-marketing.js +0 -64
  152. package/dist/server/auth-marketing.js.map +1 -1
  153. package/dist/server/auth.d.ts.map +1 -1
  154. package/dist/server/auth.js +67 -14
  155. package/dist/server/auth.js.map +1 -1
  156. package/dist/server/builder-browser.d.ts +12 -2
  157. package/dist/server/builder-browser.d.ts.map +1 -1
  158. package/dist/server/builder-browser.js +24 -0
  159. package/dist/server/builder-browser.js.map +1 -1
  160. package/dist/server/core-routes-plugin.d.ts.map +1 -1
  161. package/dist/server/core-routes-plugin.js +66 -5
  162. package/dist/server/core-routes-plugin.js.map +1 -1
  163. package/dist/server/credential-provider.d.ts +10 -0
  164. package/dist/server/credential-provider.d.ts.map +1 -1
  165. package/dist/server/credential-provider.js +82 -3
  166. package/dist/server/credential-provider.js.map +1 -1
  167. package/dist/server/csrf.d.ts.map +1 -1
  168. package/dist/server/csrf.js +3 -0
  169. package/dist/server/csrf.js.map +1 -1
  170. package/dist/server/index.d.ts +1 -0
  171. package/dist/server/index.d.ts.map +1 -1
  172. package/dist/server/index.js +1 -0
  173. package/dist/server/index.js.map +1 -1
  174. package/dist/server/onboarding-html.d.ts +1 -0
  175. package/dist/server/onboarding-html.d.ts.map +1 -1
  176. package/dist/server/onboarding-html.js +14 -1
  177. package/dist/server/onboarding-html.js.map +1 -1
  178. package/dist/server/self-dispatch.d.ts +44 -0
  179. package/dist/server/self-dispatch.d.ts.map +1 -0
  180. package/dist/server/self-dispatch.js +113 -0
  181. package/dist/server/self-dispatch.js.map +1 -0
  182. package/dist/server/social-og-image.d.ts +14 -0
  183. package/dist/server/social-og-image.d.ts.map +1 -0
  184. package/dist/server/social-og-image.js +251 -0
  185. package/dist/server/social-og-image.js.map +1 -0
  186. package/dist/server/ssr-handler.d.ts +1 -1
  187. package/dist/server/ssr-handler.d.ts.map +1 -1
  188. package/dist/server/ssr-handler.js +27 -11
  189. package/dist/server/ssr-handler.js.map +1 -1
  190. package/dist/shared/cache-control.d.ts +7 -0
  191. package/dist/shared/cache-control.d.ts.map +1 -1
  192. package/dist/shared/cache-control.js +7 -0
  193. package/dist/shared/cache-control.js.map +1 -1
  194. package/dist/shared/index.d.ts +1 -1
  195. package/dist/shared/index.d.ts.map +1 -1
  196. package/dist/shared/index.js +1 -1
  197. package/dist/shared/index.js.map +1 -1
  198. package/dist/shared/route-warmup-config.d.ts +28 -0
  199. package/dist/shared/route-warmup-config.d.ts.map +1 -0
  200. package/dist/shared/route-warmup-config.js +58 -0
  201. package/dist/shared/route-warmup-config.js.map +1 -0
  202. package/dist/shared/social-meta.d.ts +5 -0
  203. package/dist/shared/social-meta.d.ts.map +1 -1
  204. package/dist/shared/social-meta.js +36 -2
  205. package/dist/shared/social-meta.js.map +1 -1
  206. package/dist/shared/streaming-text-smoothing.d.ts +12 -0
  207. package/dist/shared/streaming-text-smoothing.d.ts.map +1 -0
  208. package/dist/shared/streaming-text-smoothing.js +52 -0
  209. package/dist/shared/streaming-text-smoothing.js.map +1 -0
  210. package/dist/styles/agent-native.css +4 -4
  211. package/dist/templates/default/AGENTS.md +9 -4
  212. package/dist/templates/default/DEVELOPING.md +15 -1
  213. package/dist/templates/workspace-core/AGENTS.md +7 -3
  214. package/dist/templates/workspace-root/AGENTS.md +7 -3
  215. package/dist/vite/client.d.ts +13 -0
  216. package/dist/vite/client.d.ts.map +1 -1
  217. package/dist/vite/client.js +26 -0
  218. package/dist/vite/client.js.map +1 -1
  219. package/dist/vite/index.d.ts +1 -0
  220. package/dist/vite/index.d.ts.map +1 -1
  221. package/dist/vite/index.js.map +1 -1
  222. package/docs/content/client.md +62 -1
  223. package/docs/content/code-agents-ui.md +6 -13
  224. package/docs/content/context-awareness.md +186 -21
  225. package/docs/content/deployment.md +8 -11
  226. package/docs/content/dispatch.md +1 -1
  227. package/docs/content/external-agents.md +32 -2
  228. package/docs/content/migration-workbench.md +4 -21
  229. package/docs/content/multi-app-workspace.md +1 -1
  230. package/docs/content/recurring-jobs.md +1 -1
  231. package/docs/content/security.md +0 -1
  232. package/docs/content/sharing.md +1 -3
  233. package/docs/content/skills-guide.md +12 -10
  234. package/docs/content/template-assets.md +21 -1
  235. package/docs/content/template-design.md +23 -5
  236. package/docs/content/template-dispatch.md +1 -1
  237. package/package.json +2 -1
  238. package/src/templates/default/AGENTS.md +9 -4
  239. package/src/templates/default/DEVELOPING.md +15 -1
  240. package/src/templates/workspace-core/AGENTS.md +7 -3
  241. package/src/templates/workspace-root/AGENTS.md +7 -3
@@ -47,7 +47,7 @@ import { isEnvVarWriteAllowed } from "./env-var-writes.js";
47
47
  import { llmConnectionTrackingProperties } from "../shared/llm-connection.js";
48
48
  import { mountBrowserSessionRoutes } from "../browser-sessions/routes.js";
49
49
  import { mountDbAdminRoutes } from "../db-admin/routes.js";
50
- import { DEFAULT_SSR_CACHE_CONTROL, EMPTY_SPECULATION_RULES, } from "../shared/cache-control.js";
50
+ import { DEFAULT_SSR_CACHE_HEADERS, EMPTY_SPECULATION_RULES, } from "../shared/cache-control.js";
51
51
  /**
52
52
  * The base path prefix for all framework-level routes.
53
53
  * All agent-native core routes live under this namespace to avoid
@@ -55,6 +55,11 @@ import { DEFAULT_SSR_CACHE_CONTROL, EMPTY_SPECULATION_RULES, } from "../shared/c
55
55
  */
56
56
  export const FRAMEWORK_ROUTE_PREFIX = "/_agent-native";
57
57
  registerBuiltinEngines();
58
+ function parseBuilderCallbackBoolean(value) {
59
+ if (value == null || value === "")
60
+ return null;
61
+ return /^(1|true)$/i.test(value);
62
+ }
58
63
  const PROVIDER_ENV_VAR_KEYS = new Set(Object.values(PROVIDER_ENV_META).map(({ envVar }) => envVar));
59
64
  async function detectUsageEngineName(event, userEmail) {
60
65
  try {
@@ -486,9 +491,15 @@ export function createCoreRoutesPlugin(options = {}) {
486
491
  // edge prefetch rules. Keep this route public and side-effect free:
487
492
  // browsers may request it while parsing any SSR HTML document.
488
493
  setResponseHeader(event, "content-type", "application/speculationrules+json; charset=utf-8");
489
- setResponseHeader(event, "cache-control", DEFAULT_SSR_CACHE_CONTROL);
494
+ for (const [name, value] of Object.entries(DEFAULT_SSR_CACHE_HEADERS)) {
495
+ setResponseHeader(event, name, value);
496
+ }
490
497
  return EMPTY_SPECULATION_RULES;
491
498
  }));
499
+ {
500
+ const { createAgentNativeOgImageHandler } = await import("./social-og-image.js");
501
+ getH3App(nitroApp).use(`${P}/og-image.png`, createAgentNativeOgImageHandler());
502
+ }
492
503
  mountBrowserSessionRoutes(nitroApp, { routePrefix: P });
493
504
  // Dev-mode DB admin (Supabase-Studio-like). Mounted unconditionally; every
494
505
  // handler self-gates on dev + localhost (the authoritative gate lives in
@@ -565,6 +576,11 @@ export function createCoreRoutesPlugin(options = {}) {
565
576
  userId: undefined,
566
577
  orgName: undefined,
567
578
  orgKind: undefined,
579
+ subscription: undefined,
580
+ subscriptionLevel: undefined,
581
+ subscriptionName: undefined,
582
+ isEnterprise: undefined,
583
+ isFreeAccount: undefined,
568
584
  connectError: {
569
585
  message: errRow.message,
570
586
  at: typeof errRow.at === "number"
@@ -597,6 +613,11 @@ export function createCoreRoutesPlugin(options = {}) {
597
613
  userId: undefined,
598
614
  orgName: undefined,
599
615
  orgKind: undefined,
616
+ subscription: undefined,
617
+ subscriptionLevel: undefined,
618
+ subscriptionName: undefined,
619
+ isEnterprise: undefined,
620
+ isFreeAccount: undefined,
600
621
  credentialSource: credentialSource ?? undefined,
601
622
  // Surface durable credential rejection separately from
602
623
  // one-shot cli-auth callback failures. The reconnect UI keeps
@@ -618,6 +639,15 @@ export function createCoreRoutesPlugin(options = {}) {
618
639
  userId: creds.userId || envStatus.userId,
619
640
  orgName: creds.orgName || envStatus.orgName,
620
641
  orgKind: creds.orgKind || envStatus.orgKind,
642
+ subscription: creds.subscription || envStatus.subscription || undefined,
643
+ subscriptionLevel: creds.subscriptionLevel ||
644
+ envStatus.subscriptionLevel ||
645
+ undefined,
646
+ subscriptionName: creds.subscriptionName ||
647
+ envStatus.subscriptionName ||
648
+ undefined,
649
+ isEnterprise: creds.isEnterprise ?? envStatus.isEnterprise ?? undefined,
650
+ isFreeAccount: creds.isFreeAccount ?? envStatus.isFreeAccount ?? undefined,
621
651
  credentialSource: credentialSource ?? undefined,
622
652
  });
623
653
  }
@@ -637,6 +667,11 @@ export function createCoreRoutesPlugin(options = {}) {
637
667
  userId: undefined,
638
668
  orgName: undefined,
639
669
  orgKind: undefined,
670
+ subscription: undefined,
671
+ subscriptionLevel: undefined,
672
+ subscriptionName: undefined,
673
+ isEnterprise: undefined,
674
+ isFreeAccount: undefined,
640
675
  });
641
676
  }
642
677
  }
@@ -654,6 +689,11 @@ export function createCoreRoutesPlugin(options = {}) {
654
689
  userId: undefined,
655
690
  orgName: undefined,
656
691
  orgKind: undefined,
692
+ subscription: undefined,
693
+ subscriptionLevel: undefined,
694
+ subscriptionName: undefined,
695
+ isEnterprise: undefined,
696
+ isFreeAccount: undefined,
657
697
  });
658
698
  });
659
699
  }));
@@ -1082,6 +1122,11 @@ export function createCoreRoutesPlugin(options = {}) {
1082
1122
  const userId = requestUrl.searchParams.get("user-id");
1083
1123
  const orgName = requestUrl.searchParams.get("org-name");
1084
1124
  const orgKind = requestUrl.searchParams.get("kind");
1125
+ const subscription = requestUrl.searchParams.get("subscription");
1126
+ const subscriptionLevel = requestUrl.searchParams.get("subscription-level");
1127
+ const subscriptionName = requestUrl.searchParams.get("subscription-name");
1128
+ const isEnterprise = parseBuilderCallbackBoolean(requestUrl.searchParams.get("is-enterprise"));
1129
+ const isFreeAccount = parseBuilderCallbackBoolean(requestUrl.searchParams.get("is-free-account"));
1085
1130
  // Store per-user in app_secrets so each user's Builder connection
1086
1131
  // is independent. No more shared env vars that the last connector
1087
1132
  // overwrites.
@@ -1115,7 +1160,18 @@ export function createCoreRoutesPlugin(options = {}) {
1115
1160
  /* org module not present in this template — keep user scope */
1116
1161
  }
1117
1162
  }
1118
- const target = await writeBuilderCredentials(ownerEmail, { privateKey, publicKey, userId, orgName, orgKind }, { orgId, role });
1163
+ const target = await writeBuilderCredentials(ownerEmail, {
1164
+ privateKey,
1165
+ publicKey,
1166
+ userId,
1167
+ orgName,
1168
+ orgKind,
1169
+ subscription,
1170
+ subscriptionLevel,
1171
+ subscriptionName,
1172
+ isEnterprise,
1173
+ isFreeAccount,
1174
+ }, { orgId, role });
1119
1175
  console.log(`[builder-connect] wrote credentials email=${ownerEmail} requestOrgId=${orgId ?? "(none)"} role=${role ?? "(none)"} scope=${target.scope} scopeId=${target.scopeId}`);
1120
1176
  }
1121
1177
  catch (err) {
@@ -1170,6 +1226,11 @@ export function createCoreRoutesPlugin(options = {}) {
1170
1226
  stage: "callback",
1171
1227
  has_preview_url: Boolean(previewUrl),
1172
1228
  org_kind: orgKind || undefined,
1229
+ subscription: subscription || undefined,
1230
+ subscription_level: subscriptionLevel || undefined,
1231
+ subscription_name: subscriptionName || undefined,
1232
+ is_enterprise: isEnterprise ?? undefined,
1233
+ is_free_account: isFreeAccount ?? undefined,
1173
1234
  });
1174
1235
  setResponseHeader(event, "Content-Type", "text/html; charset=utf-8");
1175
1236
  // The parent (opener) is the original preview surface that started the
@@ -1661,7 +1722,7 @@ export function createCoreRoutesPlugin(options = {}) {
1661
1722
  const { resolveBuilderPrivateKey } = await import("./credential-provider.js");
1662
1723
  const resolve = () => resolveBuilderPrivateKey().then((k) => !!k);
1663
1724
  builderConfigured = userEmail
1664
- ? await runWithRequestContext({ userEmail }, resolve)
1725
+ ? await runWithRequestContext({ userEmail, orgId: session?.orgId }, resolve)
1665
1726
  : await resolve();
1666
1727
  }
1667
1728
  catch {
@@ -1712,7 +1773,7 @@ export function createCoreRoutesPlugin(options = {}) {
1712
1773
  return { error: "Unauthorized" };
1713
1774
  }
1714
1775
  const userEmail = session.email;
1715
- const result = await runWithRequestContext({ userEmail }, () => uploadFile({
1776
+ const result = await runWithRequestContext({ userEmail, orgId: session.orgId }, () => uploadFile({
1716
1777
  data: filePart.data,
1717
1778
  filename: filePart.filename,
1718
1779
  mimeType: filePart.type,