@agent-native/core 0.8.2 → 0.9.1

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 (169) hide show
  1. package/dist/agent/run-manager.d.ts +10 -0
  2. package/dist/agent/run-manager.d.ts.map +1 -1
  3. package/dist/agent/run-manager.js +77 -4
  4. package/dist/agent/run-manager.js.map +1 -1
  5. package/dist/agent/run-store.d.ts +4 -1
  6. package/dist/agent/run-store.d.ts.map +1 -1
  7. package/dist/agent/run-store.js +6 -5
  8. package/dist/agent/run-store.js.map +1 -1
  9. package/dist/cli/create.d.ts +9 -0
  10. package/dist/cli/create.d.ts.map +1 -1
  11. package/dist/cli/create.js +13 -1
  12. package/dist/cli/create.js.map +1 -1
  13. package/dist/cli/index.js +177 -22
  14. package/dist/cli/index.js.map +1 -1
  15. package/dist/cli/workspace-dev.js +66 -5
  16. package/dist/cli/workspace-dev.js.map +1 -1
  17. package/dist/client/AgentPanel.d.ts.map +1 -1
  18. package/dist/client/AgentPanel.js +1 -1
  19. package/dist/client/AgentPanel.js.map +1 -1
  20. package/dist/client/AssistantChat.d.ts.map +1 -1
  21. package/dist/client/AssistantChat.js +38 -84
  22. package/dist/client/AssistantChat.js.map +1 -1
  23. package/dist/client/agent-chat-adapter.d.ts.map +1 -1
  24. package/dist/client/agent-chat-adapter.js +122 -15
  25. package/dist/client/agent-chat-adapter.js.map +1 -1
  26. package/dist/client/analytics.d.ts +14 -0
  27. package/dist/client/analytics.d.ts.map +1 -1
  28. package/dist/client/analytics.js +34 -0
  29. package/dist/client/analytics.js.map +1 -1
  30. package/dist/client/components/PresenceBar.d.ts.map +1 -1
  31. package/dist/client/components/PresenceBar.js +21 -15
  32. package/dist/client/components/PresenceBar.js.map +1 -1
  33. package/dist/client/composer/ComposerPlusMenu.d.ts.map +1 -1
  34. package/dist/client/composer/ComposerPlusMenu.js +12 -11
  35. package/dist/client/composer/ComposerPlusMenu.js.map +1 -1
  36. package/dist/client/composer/TiptapComposer.d.ts.map +1 -1
  37. package/dist/client/composer/TiptapComposer.js +5 -4
  38. package/dist/client/composer/TiptapComposer.js.map +1 -1
  39. package/dist/client/composer/VoiceButton.d.ts.map +1 -1
  40. package/dist/client/composer/VoiceButton.js +9 -8
  41. package/dist/client/composer/VoiceButton.js.map +1 -1
  42. package/dist/client/dev-overlay/DevOverlay.d.ts.map +1 -1
  43. package/dist/client/dev-overlay/DevOverlay.js +4 -3
  44. package/dist/client/dev-overlay/DevOverlay.js.map +1 -1
  45. package/dist/client/extensions/EmbeddedExtension.d.ts.map +1 -1
  46. package/dist/client/extensions/EmbeddedExtension.js +2 -1
  47. package/dist/client/extensions/EmbeddedExtension.js.map +1 -1
  48. package/dist/client/extensions/ExtensionEditor.d.ts.map +1 -1
  49. package/dist/client/extensions/ExtensionEditor.js +2 -1
  50. package/dist/client/extensions/ExtensionEditor.js.map +1 -1
  51. package/dist/client/extensions/ExtensionSlot.d.ts.map +1 -1
  52. package/dist/client/extensions/ExtensionSlot.js +2 -1
  53. package/dist/client/extensions/ExtensionSlot.js.map +1 -1
  54. package/dist/client/extensions/ExtensionViewer.d.ts.map +1 -1
  55. package/dist/client/extensions/ExtensionViewer.js +4 -3
  56. package/dist/client/extensions/ExtensionViewer.js.map +1 -1
  57. package/dist/client/extensions/ExtensionsSidebarSection.d.ts.map +1 -1
  58. package/dist/client/extensions/ExtensionsSidebarSection.js +10 -9
  59. package/dist/client/extensions/ExtensionsSidebarSection.js.map +1 -1
  60. package/dist/client/index.d.ts +2 -1
  61. package/dist/client/index.d.ts.map +1 -1
  62. package/dist/client/index.js +2 -1
  63. package/dist/client/index.js.map +1 -1
  64. package/dist/client/integrations/IntegrationCard.d.ts.map +1 -1
  65. package/dist/client/integrations/IntegrationCard.js +2 -1
  66. package/dist/client/integrations/IntegrationCard.js.map +1 -1
  67. package/dist/client/integrations/IntegrationsPanel.d.ts.map +1 -1
  68. package/dist/client/integrations/IntegrationsPanel.js +3 -2
  69. package/dist/client/integrations/IntegrationsPanel.js.map +1 -1
  70. package/dist/client/onboarding/OnboardingPanel.d.ts.map +1 -1
  71. package/dist/client/onboarding/OnboardingPanel.js +3 -2
  72. package/dist/client/onboarding/OnboardingPanel.js.map +1 -1
  73. package/dist/client/onboarding/SetupButton.d.ts.map +1 -1
  74. package/dist/client/onboarding/SetupButton.js +14 -13
  75. package/dist/client/onboarding/SetupButton.js.map +1 -1
  76. package/dist/client/org/InvitationBanner.d.ts +8 -2
  77. package/dist/client/org/InvitationBanner.d.ts.map +1 -1
  78. package/dist/client/org/InvitationBanner.js +27 -6
  79. package/dist/client/org/InvitationBanner.js.map +1 -1
  80. package/dist/client/org/OrgSwitcher.d.ts.map +1 -1
  81. package/dist/client/org/OrgSwitcher.js +29 -5
  82. package/dist/client/org/OrgSwitcher.js.map +1 -1
  83. package/dist/client/org/TeamPage.d.ts.map +1 -1
  84. package/dist/client/org/TeamPage.js +7 -6
  85. package/dist/client/org/TeamPage.js.map +1 -1
  86. package/dist/client/resources/ResourceEditor.d.ts.map +1 -1
  87. package/dist/client/resources/ResourceEditor.js +2 -1
  88. package/dist/client/resources/ResourceEditor.js.map +1 -1
  89. package/dist/client/resources/ResourcesPanel.d.ts.map +1 -1
  90. package/dist/client/resources/ResourcesPanel.js +9 -9
  91. package/dist/client/resources/ResourcesPanel.js.map +1 -1
  92. package/dist/client/settings/AgentsSection.d.ts.map +1 -1
  93. package/dist/client/settings/AgentsSection.js +8 -7
  94. package/dist/client/settings/AgentsSection.js.map +1 -1
  95. package/dist/client/settings/AutomationsSection.d.ts.map +1 -1
  96. package/dist/client/settings/AutomationsSection.js +4 -3
  97. package/dist/client/settings/AutomationsSection.js.map +1 -1
  98. package/dist/client/settings/SecretsSection.d.ts.map +1 -1
  99. package/dist/client/settings/SecretsSection.js +2 -1
  100. package/dist/client/settings/SecretsSection.js.map +1 -1
  101. package/dist/client/settings/SettingsPanel.d.ts.map +1 -1
  102. package/dist/client/settings/SettingsPanel.js +3 -2
  103. package/dist/client/settings/SettingsPanel.js.map +1 -1
  104. package/dist/client/settings/index.d.ts +1 -1
  105. package/dist/client/settings/index.d.ts.map +1 -1
  106. package/dist/client/settings/index.js.map +1 -1
  107. package/dist/client/sse-event-processor.d.ts.map +1 -1
  108. package/dist/client/sse-event-processor.js +45 -4
  109. package/dist/client/sse-event-processor.js.map +1 -1
  110. package/dist/client/use-session.d.ts.map +1 -1
  111. package/dist/client/use-session.js +14 -2
  112. package/dist/client/use-session.js.map +1 -1
  113. package/dist/collab/client.d.ts +1 -0
  114. package/dist/collab/client.d.ts.map +1 -1
  115. package/dist/collab/client.js +18 -1
  116. package/dist/collab/client.js.map +1 -1
  117. package/dist/org/auto-join-domain.d.ts +28 -0
  118. package/dist/org/auto-join-domain.d.ts.map +1 -0
  119. package/dist/org/auto-join-domain.js +92 -0
  120. package/dist/org/auto-join-domain.js.map +1 -0
  121. package/dist/org/index.d.ts +2 -0
  122. package/dist/org/index.d.ts.map +1 -1
  123. package/dist/org/index.js +1 -0
  124. package/dist/org/index.js.map +1 -1
  125. package/dist/scripts/db/exec.d.ts.map +1 -1
  126. package/dist/scripts/db/exec.js +27 -1
  127. package/dist/scripts/db/exec.js.map +1 -1
  128. package/dist/scripts/db/index.d.ts.map +1 -1
  129. package/dist/scripts/db/index.js +1 -0
  130. package/dist/scripts/db/index.js.map +1 -1
  131. package/dist/scripts/db/reset-dev-owner.d.ts +27 -0
  132. package/dist/scripts/db/reset-dev-owner.d.ts.map +1 -0
  133. package/dist/scripts/db/reset-dev-owner.js +225 -0
  134. package/dist/scripts/db/reset-dev-owner.js.map +1 -0
  135. package/dist/scripts/db/scoping.d.ts.map +1 -1
  136. package/dist/scripts/db/scoping.js +15 -30
  137. package/dist/scripts/db/scoping.js.map +1 -1
  138. package/dist/scripts/dev-session.d.ts +46 -0
  139. package/dist/scripts/dev-session.d.ts.map +1 -0
  140. package/dist/scripts/dev-session.js +81 -0
  141. package/dist/scripts/dev-session.js.map +1 -0
  142. package/dist/scripts/runner.d.ts.map +1 -1
  143. package/dist/scripts/runner.js +21 -0
  144. package/dist/scripts/runner.js.map +1 -1
  145. package/dist/secrets/register.d.ts +1 -1
  146. package/dist/secrets/register.d.ts.map +1 -1
  147. package/dist/secrets/register.js +4 -2
  148. package/dist/secrets/register.js.map +1 -1
  149. package/dist/secrets/routes.d.ts.map +1 -1
  150. package/dist/secrets/routes.js +32 -0
  151. package/dist/secrets/routes.js.map +1 -1
  152. package/dist/server/better-auth-instance.d.ts.map +1 -1
  153. package/dist/server/better-auth-instance.js +11 -0
  154. package/dist/server/better-auth-instance.js.map +1 -1
  155. package/dist/server/core-routes-plugin.d.ts.map +1 -1
  156. package/dist/server/core-routes-plugin.js +56 -13
  157. package/dist/server/core-routes-plugin.js.map +1 -1
  158. package/dist/server/credential-provider.d.ts +47 -4
  159. package/dist/server/credential-provider.d.ts.map +1 -1
  160. package/dist/server/credential-provider.js +105 -29
  161. package/dist/server/credential-provider.js.map +1 -1
  162. package/dist/server/design-token-utils.d.ts +13 -2
  163. package/dist/server/design-token-utils.d.ts.map +1 -1
  164. package/dist/server/design-token-utils.js +48 -16
  165. package/dist/server/design-token-utils.js.map +1 -1
  166. package/dist/server/onboarding-html.d.ts.map +1 -1
  167. package/dist/server/onboarding-html.js +97 -8
  168. package/dist/server/onboarding-html.js.map +1 -1
  169. package/package.json +1 -1
@@ -299,7 +299,21 @@ export function createCoreRoutesPlugin(options = {}) {
299
299
  if (envStatus.envManaged) {
300
300
  return envStatus;
301
301
  }
302
- return runWithRequestContext({ userEmail }, async () => {
302
+ // Pass the user's active orgId so the status read can fall back
303
+ // to org-scoped credentials. Without it, an admin's org-scope
304
+ // OAuth result is invisible to every other org member's status
305
+ // poller and the UI would show "not connected" forever even
306
+ // though the chat actually resolves the org-shared credential.
307
+ let orgId = null;
308
+ try {
309
+ const { getOrgContext } = await import("../org/context.js");
310
+ const orgCtx = await getOrgContext(event);
311
+ orgId = orgCtx.orgId ?? null;
312
+ }
313
+ catch {
314
+ /* org module not present in this template — keep userEmail-only */
315
+ }
316
+ return runWithRequestContext({ userEmail, orgId }, async () => {
303
317
  // Per-user OAuth mode: read the user's app_secrets-stored creds.
304
318
  try {
305
319
  const { resolveBuilderCredentials } = await import("./credential-provider.js");
@@ -720,17 +734,28 @@ export function createCoreRoutesPlugin(options = {}) {
720
734
  let writeError = null;
721
735
  try {
722
736
  const { writeBuilderCredentials } = await import("./credential-provider.js");
723
- await writeBuilderCredentials(session.email, {
724
- privateKey,
725
- publicKey,
726
- userId,
727
- orgName,
728
- orgKind,
729
- });
737
+ // Resolve the user's active org / role so the credentials land
738
+ // at org scope when an owner/admin is connecting (everyone in
739
+ // the org auto-resolves them on next chat call). Members and
740
+ // users with no active org silently fall back to user scope.
741
+ // Failure to read org context is non-fatal — we just keep the
742
+ // legacy per-user behaviour for that connection.
743
+ let orgId = null;
744
+ let role = null;
745
+ try {
746
+ const { getOrgContext } = await import("../org/context.js");
747
+ const orgCtx = await getOrgContext(event);
748
+ orgId = orgCtx.orgId ?? null;
749
+ role = orgCtx.role ?? null;
750
+ }
751
+ catch {
752
+ /* org module not present in this template — keep user scope */
753
+ }
754
+ await writeBuilderCredentials(session.email, { privateKey, publicKey, userId, orgName, orgKind }, { orgId, role });
730
755
  }
731
756
  catch (err) {
732
757
  writeError = err?.message ?? String(err);
733
- console.error("[builder] Failed to persist per-user credentials:", writeError);
758
+ console.error("[builder] Failed to persist Builder credentials:", writeError);
734
759
  }
735
760
  if (writeError) {
736
761
  trackBuilderLifecycle("builder connect failed", session.email, {
@@ -800,9 +825,25 @@ export function createCoreRoutesPlugin(options = {}) {
800
825
  envManaged: true,
801
826
  };
802
827
  }
803
- // Delete per-user Builder credentials from app_secrets.
828
+ // Mirror the connect-side scope decision so disconnect undoes
829
+ // exactly what connect wrote: owner/admin connections land at
830
+ // org scope and tear down at org scope; member or no-org
831
+ // connections stay user-scoped on both ends. Symmetric, so a
832
+ // single Disconnect press always reverses what the same user's
833
+ // Connect press did.
834
+ let orgId = null;
835
+ let role = null;
836
+ try {
837
+ const { getOrgContext } = await import("../org/context.js");
838
+ const orgCtx = await getOrgContext(event);
839
+ orgId = orgCtx.orgId ?? null;
840
+ role = orgCtx.role ?? null;
841
+ }
842
+ catch {
843
+ /* org module not present — keep user scope */
844
+ }
804
845
  try {
805
- await deleteBuilderCredentials(session.email);
846
+ await deleteBuilderCredentials(session.email, { orgId, role });
806
847
  }
807
848
  catch (err) {
808
849
  trackBuilderLifecycle("builder disconnect failed", session.email, {
@@ -996,8 +1037,10 @@ export function createCoreRoutesPlugin(options = {}) {
996
1037
  // is configured (settings row, settings+env, or auto-detected from env).
997
1038
  // The agent-chat UI uses this to skip the onboarding gate for providers
998
1039
  // not in the env-status list (OpenRouter, Groq, Ollama, …).
999
- getH3App(nitroApp).use(`${P}/agent-engine/status`, defineEventHandler(async () => {
1040
+ getH3App(nitroApp).use(`${P}/agent-engine/status`, defineEventHandler(async (event) => {
1000
1041
  try {
1042
+ const session = await getSession(event).catch(() => null);
1043
+ const userEmail = session?.email;
1001
1044
  const stored = (await getSetting("agent-engine"));
1002
1045
  if (isAgentEngineSettingConfigured(stored)) {
1003
1046
  return {
@@ -1021,7 +1064,7 @@ export function createCoreRoutesPlugin(options = {}) {
1021
1064
  // their own provider key) may not have any deploy-level env vars
1022
1065
  // set, so check their per-user secret store before reporting "no
1023
1066
  // engine configured" and re-showing the onboarding gate.
1024
- const detectedFromUser = await detectEngineFromUserSecrets();
1067
+ const detectedFromUser = await runWithRequestContext({ userEmail }, () => detectEngineFromUserSecrets());
1025
1068
  if (detectedFromUser) {
1026
1069
  return {
1027
1070
  configured: true,