@agent-native/core 0.12.22 → 0.12.24

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 (118) hide show
  1. package/dist/agent/engine/ai-sdk-engine.d.ts +2 -0
  2. package/dist/agent/engine/ai-sdk-engine.d.ts.map +1 -1
  3. package/dist/agent/engine/ai-sdk-engine.js +4 -2
  4. package/dist/agent/engine/ai-sdk-engine.js.map +1 -1
  5. package/dist/agent/engine/anthropic-engine.d.ts.map +1 -1
  6. package/dist/agent/engine/anthropic-engine.js +2 -1
  7. package/dist/agent/engine/anthropic-engine.js.map +1 -1
  8. package/dist/agent/engine/builder-engine.d.ts.map +1 -1
  9. package/dist/agent/engine/builder-engine.js +117 -8
  10. package/dist/agent/engine/builder-engine.js.map +1 -1
  11. package/dist/agent/engine/registry.d.ts.map +1 -1
  12. package/dist/agent/engine/registry.js +24 -13
  13. package/dist/agent/engine/registry.js.map +1 -1
  14. package/dist/agent/production-agent.d.ts +1 -0
  15. package/dist/agent/production-agent.d.ts.map +1 -1
  16. package/dist/agent/production-agent.js +20 -10
  17. package/dist/agent/production-agent.js.map +1 -1
  18. package/dist/agent/thread-data-builder.d.ts +10 -0
  19. package/dist/agent/thread-data-builder.d.ts.map +1 -1
  20. package/dist/agent/thread-data-builder.js +80 -0
  21. package/dist/agent/thread-data-builder.js.map +1 -1
  22. package/dist/agent/types.d.ts +7 -0
  23. package/dist/agent/types.d.ts.map +1 -1
  24. package/dist/agent/types.js.map +1 -1
  25. package/dist/cli/create.d.ts.map +1 -1
  26. package/dist/cli/create.js +3 -3
  27. package/dist/cli/create.js.map +1 -1
  28. package/dist/client/AgentPanel.d.ts.map +1 -1
  29. package/dist/client/AgentPanel.js +10 -2
  30. package/dist/client/AgentPanel.js.map +1 -1
  31. package/dist/client/AssistantChat.d.ts.map +1 -1
  32. package/dist/client/AssistantChat.js +169 -15
  33. package/dist/client/AssistantChat.js.map +1 -1
  34. package/dist/client/ErrorBoundary.d.ts.map +1 -1
  35. package/dist/client/ErrorBoundary.js +3 -2
  36. package/dist/client/ErrorBoundary.js.map +1 -1
  37. package/dist/client/FeedbackButton.js +1 -1
  38. package/dist/client/FeedbackButton.js.map +1 -1
  39. package/dist/client/agent-chat-adapter.d.ts.map +1 -1
  40. package/dist/client/agent-chat-adapter.js +93 -45
  41. package/dist/client/agent-chat-adapter.js.map +1 -1
  42. package/dist/client/analytics.d.ts.map +1 -1
  43. package/dist/client/analytics.js +26 -0
  44. package/dist/client/analytics.js.map +1 -1
  45. package/dist/client/components/ui/tooltip.js +1 -1
  46. package/dist/client/components/ui/tooltip.js.map +1 -1
  47. package/dist/client/composer/PromptComposer.js +1 -1
  48. package/dist/client/composer/PromptComposer.js.map +1 -1
  49. package/dist/client/composer/TiptapComposer.d.ts +5 -0
  50. package/dist/client/composer/TiptapComposer.d.ts.map +1 -1
  51. package/dist/client/composer/TiptapComposer.js +12 -7
  52. package/dist/client/composer/TiptapComposer.js.map +1 -1
  53. package/dist/client/onboarding/OnboardingPanel.js +2 -1
  54. package/dist/client/onboarding/OnboardingPanel.js.map +1 -1
  55. package/dist/client/progress/RunsTray.d.ts.map +1 -1
  56. package/dist/client/progress/RunsTray.js +18 -3
  57. package/dist/client/progress/RunsTray.js.map +1 -1
  58. package/dist/client/resources/ResourceTree.d.ts.map +1 -1
  59. package/dist/client/resources/ResourceTree.js +5 -4
  60. package/dist/client/resources/ResourceTree.js.map +1 -1
  61. package/dist/client/resources/ResourcesPanel.js +1 -1
  62. package/dist/client/resources/ResourcesPanel.js.map +1 -1
  63. package/dist/client/settings/useBuilderStatus.d.ts.map +1 -1
  64. package/dist/client/settings/useBuilderStatus.js +5 -3
  65. package/dist/client/settings/useBuilderStatus.js.map +1 -1
  66. package/dist/client/sse-event-processor.d.ts.map +1 -1
  67. package/dist/client/sse-event-processor.js +3 -0
  68. package/dist/client/sse-event-processor.js.map +1 -1
  69. package/dist/collab/client.d.ts +9 -0
  70. package/dist/collab/client.d.ts.map +1 -1
  71. package/dist/collab/client.js +36 -10
  72. package/dist/collab/client.js.map +1 -1
  73. package/dist/extensions/html-shell.d.ts.map +1 -1
  74. package/dist/extensions/html-shell.js +12 -0
  75. package/dist/extensions/html-shell.js.map +1 -1
  76. package/dist/mcp-client/errors.d.ts +2 -0
  77. package/dist/mcp-client/errors.d.ts.map +1 -0
  78. package/dist/mcp-client/errors.js +47 -0
  79. package/dist/mcp-client/errors.js.map +1 -0
  80. package/dist/mcp-client/manager.d.ts.map +1 -1
  81. package/dist/mcp-client/manager.js +44 -15
  82. package/dist/mcp-client/manager.js.map +1 -1
  83. package/dist/mcp-client/routes.d.ts +1 -2
  84. package/dist/mcp-client/routes.d.ts.map +1 -1
  85. package/dist/mcp-client/routes.js +2 -27
  86. package/dist/mcp-client/routes.js.map +1 -1
  87. package/dist/onboarding/default-steps.js +1 -1
  88. package/dist/onboarding/default-steps.js.map +1 -1
  89. package/dist/progress/store.d.ts +2 -0
  90. package/dist/progress/store.d.ts.map +1 -1
  91. package/dist/progress/store.js +44 -0
  92. package/dist/progress/store.js.map +1 -1
  93. package/dist/server/action-routes.d.ts +2 -0
  94. package/dist/server/action-routes.d.ts.map +1 -1
  95. package/dist/server/action-routes.js +4 -1
  96. package/dist/server/action-routes.js.map +1 -1
  97. package/dist/server/agent-chat-plugin.d.ts.map +1 -1
  98. package/dist/server/agent-chat-plugin.js +27 -15
  99. package/dist/server/agent-chat-plugin.js.map +1 -1
  100. package/dist/server/core-routes-plugin.d.ts.map +1 -1
  101. package/dist/server/core-routes-plugin.js +31 -9
  102. package/dist/server/core-routes-plugin.js.map +1 -1
  103. package/dist/server/credential-provider.d.ts +8 -0
  104. package/dist/server/credential-provider.d.ts.map +1 -1
  105. package/dist/server/credential-provider.js +29 -3
  106. package/dist/server/credential-provider.js.map +1 -1
  107. package/dist/server/index.d.ts +1 -1
  108. package/dist/server/index.d.ts.map +1 -1
  109. package/dist/server/index.js +1 -1
  110. package/dist/server/index.js.map +1 -1
  111. package/dist/server/request-context.d.ts +9 -0
  112. package/dist/server/request-context.d.ts.map +1 -1
  113. package/dist/server/request-context.js +13 -0
  114. package/dist/server/request-context.js.map +1 -1
  115. package/dist/terminal/terminal-plugin.d.ts.map +1 -1
  116. package/dist/terminal/terminal-plugin.js +4 -3
  117. package/dist/terminal/terminal-plugin.js.map +1 -1
  118. package/package.json +1 -1
@@ -9,7 +9,7 @@ import { attachToolSearch } from "../agent/tool-search.js";
9
9
  import { McpClientManager, loadMcpConfig, autoDetectMcpConfig, mcpToolsToActionEntries, syncMcpActionEntries, mountMcpServersRoutes, mountMcpHubRoutes, buildMergedConfig, getHubStatus, isHubServeEnabled, } from "../mcp-client/index.js";
10
10
  import { discoverAgents } from "./agent-discovery.js";
11
11
  import { loadSchemaPromptBlock } from "./schema-prompt.js";
12
- import { buildAssistantMessage, extractThreadMeta, upsertAssistantMessage, } from "../agent/thread-data-builder.js";
12
+ import { buildAssistantMessage, extractThreadMeta, mergeThreadDataForClientSave, upsertAssistantMessage, } from "../agent/thread-data-builder.js";
13
13
  import { defineEventHandler, setResponseStatus, setResponseHeader, getMethod, getQuery, getHeader, } from "h3";
14
14
  import { getSession } from "./auth.js";
15
15
  import { getOrigin } from "./google-oauth.js";
@@ -2570,7 +2570,11 @@ export function createAgentChatPlugin(options) {
2570
2570
  }
2571
2571
  const session = await getSession(event);
2572
2572
  if (session?.email) {
2573
- const resolved = { owner: session.email, anonymous: false };
2573
+ const resolved = {
2574
+ owner: session.email,
2575
+ anonymous: false,
2576
+ name: session.name,
2577
+ };
2574
2578
  if (eventContext)
2575
2579
  eventContext[OWNER_CONTEXT_KEY] = resolved;
2576
2580
  return resolved;
@@ -2591,6 +2595,9 @@ export function createAgentChatPlugin(options) {
2591
2595
  const getOwnerFromEvent = async (event) => {
2592
2596
  return (await resolveOwnerContext(event)).owner;
2593
2597
  };
2598
+ const getUserNameFromEvent = async (event) => {
2599
+ return (await resolveOwnerContext(event)).name;
2600
+ };
2594
2601
  // Auto-mount template actions as HTTP endpoints under /_agent-native/actions/
2595
2602
  // Include engine management script so the UI can call manage-agent-engine.
2596
2603
  const httpActions = {
@@ -2615,6 +2622,7 @@ export function createAgentChatPlugin(options) {
2615
2622
  const { mountActionRoutes } = await import("./action-routes.js");
2616
2623
  mountActionRoutes(nitroApp, httpActions, {
2617
2624
  getOwnerFromEvent,
2625
+ getUserNameFromEvent,
2618
2626
  resolveOrgId: options?.resolveOrgId,
2619
2627
  });
2620
2628
  }
@@ -3819,27 +3827,26 @@ export function createAgentChatPlugin(options) {
3819
3827
  }
3820
3828
  const body = await readBody(event);
3821
3829
  let newThreadData = body.threadData || thread.threadData;
3822
- // Preserve queuedMessages from the existing thread_data when the
3823
- // incoming blob doesn't include it. Periodic full-thread saves
3824
- // (exported via threadRuntime.export) don't carry the queue, and
3825
- // we don't want them to clobber queued-message state persisted
3826
- // via POST /threads/:id/queued.
3830
+ let newMessageCount = body.messageCount ?? thread.messageCount;
3831
+ // Merge the incoming full-thread blob over the current SQL
3832
+ // copy. Periodic saves can be stale relative to server-side
3833
+ // run completion, and threadRuntime.export() does not carry
3834
+ // queuedMessages.
3827
3835
  if (body.threadData) {
3828
3836
  try {
3829
3837
  const existing = JSON.parse(thread.threadData);
3830
- if (existing.queuedMessages !== undefined) {
3831
- const incoming = JSON.parse(newThreadData);
3832
- if (incoming.queuedMessages === undefined) {
3833
- incoming.queuedMessages = existing.queuedMessages;
3834
- newThreadData = JSON.stringify(incoming);
3835
- }
3838
+ const incoming = JSON.parse(newThreadData);
3839
+ const merged = mergeThreadDataForClientSave(existing, incoming);
3840
+ newThreadData = JSON.stringify(merged);
3841
+ if (Array.isArray(merged.messages)) {
3842
+ newMessageCount = merged.messages.length;
3836
3843
  }
3837
3844
  }
3838
3845
  catch {
3839
3846
  // Invalid JSON in either side — fall back to raw body blob.
3840
3847
  }
3841
3848
  }
3842
- await updateThreadData(threadId, newThreadData, body.title ?? thread.title, body.preview ?? thread.preview, body.messageCount || thread.messageCount);
3849
+ await updateThreadData(threadId, newThreadData, body.title ?? thread.title, body.preview ?? thread.preview, newMessageCount);
3843
3850
  return { ok: true };
3844
3851
  });
3845
3852
  }
@@ -3949,7 +3956,12 @@ export function createAgentChatPlugin(options) {
3949
3956
  tzRaw.trim().length < 64
3950
3957
  ? tzRaw.trim()
3951
3958
  : undefined;
3952
- return runWithRequestContext({ userEmail: owner, orgId: resolvedOrgId, timezone }, () => {
3959
+ return runWithRequestContext({
3960
+ userEmail: owner,
3961
+ userName: ownerContext.name,
3962
+ orgId: resolvedOrgId,
3963
+ timezone,
3964
+ }, () => {
3953
3965
  const handler = ownerContext.anonymous && anonymousHandler
3954
3966
  ? anonymousHandler
3955
3967
  : currentDevMode && devHandler