@agent-native/core 0.114.9 → 0.114.11

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 (150) hide show
  1. package/corpus/README.md +2 -2
  2. package/corpus/core/CHANGELOG.md +19 -0
  3. package/corpus/core/package.json +1 -1
  4. package/corpus/core/src/agent/engine/ai-sdk-engine.ts +31 -3
  5. package/corpus/core/src/agent/engine/anthropic-engine.ts +20 -3
  6. package/corpus/core/src/agent/engine/builder-engine.ts +56 -9
  7. package/corpus/core/src/agent/engine/first-event-timeout.ts +64 -0
  8. package/corpus/core/src/cli/pr-visual-recap-workflow.ts +2 -3
  9. package/corpus/core/src/client/AssistantChat.tsx +7 -3
  10. package/corpus/core/src/client/resources/ResourcesPanel.tsx +1 -1
  11. package/corpus/core/src/extensions/actions.ts +219 -0
  12. package/corpus/core/src/integrations/computer-supervision-store.ts +4 -4
  13. package/corpus/core/src/integrations/pending-tasks-store.ts +1 -1
  14. package/corpus/core/src/integrations/remote-commands-store.ts +5 -5
  15. package/corpus/core/src/integrations/remote-devices-store.ts +3 -3
  16. package/corpus/core/src/integrations/remote-push-store.ts +3 -3
  17. package/corpus/core/src/observability/traces.ts +38 -1
  18. package/corpus/core/src/server/action-routes.ts +23 -1
  19. package/corpus/core/src/server/http-response-telemetry.ts +6 -1
  20. package/corpus/core/src/templates/workspace-core/.agents/skills/extensions/SKILL.md +19 -0
  21. package/corpus/core/src/templates/workspace-core/.agents/skills/observability/SKILL.md +1 -1
  22. package/corpus/core/src/templates/workspace-core/.agents/skills/tracking/SKILL.md +1 -1
  23. package/corpus/templates/analytics/actions/account-deep-dive.ts +41 -6
  24. package/corpus/templates/analytics/changelog/2026-07-20-account-deep-dives-finish-with-partial-data-when-hubspot-lo.md +6 -0
  25. package/corpus/templates/analytics/changelog/2026-07-20-dashboard-email-reports-now-include-an-image-when-a-single-p.md +6 -0
  26. package/corpus/templates/analytics/server/lib/dashboard-report.ts +11 -3
  27. package/corpus/templates/calendar/actions/create-event.ts +5 -0
  28. package/corpus/templates/calendar/app/components/ThemeToggle.tsx +4 -1
  29. package/corpus/templates/calendar/app/components/calendar/EventDetailPanel.tsx +0 -1
  30. package/corpus/templates/calendar/app/components/calendar/EventDetailPopover.tsx +309 -421
  31. package/corpus/templates/calendar/app/components/calendar/InlineEventPickers.tsx +349 -0
  32. package/corpus/templates/calendar/app/i18n-data.ts +110 -0
  33. package/corpus/templates/calendar/app/lib/event-form-utils.ts +6 -0
  34. package/corpus/templates/calendar/app/pages/CalendarView.tsx +3 -0
  35. package/corpus/templates/calendar/app/root.tsx +4 -2
  36. package/corpus/templates/calendar/changelog/2026-07-20-events-can-be-updated-inline-with-date-time-timezone-and-rep.md +6 -0
  37. package/corpus/templates/calendar/changelog/2026-07-20-public-booking-pages-no-longer-hydrate-with-a-theme-mismatch.md +6 -0
  38. package/corpus/templates/calendar/shared/api.ts +1 -0
  39. package/corpus/templates/clips/AGENTS.md +7 -0
  40. package/corpus/templates/clips/actions/create-recording.ts +51 -10
  41. package/corpus/templates/clips/actions/get-recording-player-data.ts +34 -5
  42. package/corpus/templates/clips/actions/lib/transcript-preview.ts +48 -0
  43. package/corpus/templates/clips/actions/list-recordings.ts +15 -4
  44. package/corpus/templates/clips/actions/regenerate-summary.ts +32 -0
  45. package/corpus/templates/clips/actions/search-recordings.ts +28 -6
  46. package/corpus/templates/clips/actions/view-screen.ts +54 -47
  47. package/corpus/templates/clips/app/components/library/library-grid.tsx +1 -5
  48. package/corpus/templates/clips/app/components/library/recording-card.tsx +29 -32
  49. package/corpus/templates/clips/app/components/meetings/quick-ask-sidebar.tsx +13 -0
  50. package/corpus/templates/clips/app/components/player/video-player.tsx +48 -0
  51. package/corpus/templates/clips/app/lib/fmp4.ts +26 -4
  52. package/corpus/templates/clips/app/lib/mse-video-loader.ts +13 -2
  53. package/corpus/templates/clips/changelog/2026-07-20-agent-summaries-use-bounded-transcript-context.md +6 -0
  54. package/corpus/templates/clips/changelog/2026-07-20-clip-summaries-now-finish-without-sending-a-long-transcript-.md +6 -0
  55. package/corpus/templates/clips/changelog/2026-07-20-clips-agents-only-discover-recordings-you-own-or-have-alread.md +6 -0
  56. package/corpus/templates/clips/changelog/2026-07-20-hosted-recordings-no-longer-start-with-an-impossible-buffered-upload.md +6 -0
  57. package/corpus/templates/clips/changelog/2026-07-20-meeting-recordings-now-offer-a-cleaner-transcript-view-with-.md +6 -0
  58. package/corpus/templates/clips/changelog/2026-07-20-rewind-capture-status.md +6 -0
  59. package/corpus/templates/clips/changelog/2026-07-20-shared-clips-can-be-shared-with-limited-access-and-cards-sho.md +6 -0
  60. package/corpus/templates/clips/desktop/src/app.tsx +81 -71
  61. package/corpus/templates/clips/desktop/src/hooks/useMeetingTranscription.ts +12 -8
  62. package/corpus/templates/clips/desktop/src/lib/rewind-status.ts +103 -0
  63. package/corpus/templates/clips/desktop/src/overlays/pill-logo.tsx +2 -15
  64. package/corpus/templates/clips/desktop/src/overlays/recording-pill.tsx +107 -340
  65. package/corpus/templates/clips/desktop/src/styles.css +37 -145
  66. package/corpus/templates/clips/desktop/src-tauri/src/recording_indicator.rs +6 -7
  67. package/corpus/templates/clips/server/lib/agent-recording-access.ts +73 -0
  68. package/corpus/templates/clips/server/plugins/agent-chat.ts +5 -2
  69. package/corpus/templates/plan/app/lib/plan-local-bridge.ts +18 -0
  70. package/corpus/templates/plan/app/pages/PlansPage.tsx +10 -11
  71. package/corpus/templates/plan/changelog/2026-07-20-bridged-local-plans-now-load-comments-from-the-local-workspace.md +6 -0
  72. package/dist/agent/engine/ai-sdk-engine.d.ts.map +1 -1
  73. package/dist/agent/engine/ai-sdk-engine.js +27 -4
  74. package/dist/agent/engine/ai-sdk-engine.js.map +1 -1
  75. package/dist/agent/engine/anthropic-engine.d.ts.map +1 -1
  76. package/dist/agent/engine/anthropic-engine.js +19 -4
  77. package/dist/agent/engine/anthropic-engine.js.map +1 -1
  78. package/dist/agent/engine/builder-engine.d.ts.map +1 -1
  79. package/dist/agent/engine/builder-engine.js +40 -7
  80. package/dist/agent/engine/builder-engine.js.map +1 -1
  81. package/dist/agent/engine/first-event-timeout.d.ts +25 -0
  82. package/dist/agent/engine/first-event-timeout.d.ts.map +1 -0
  83. package/dist/agent/engine/first-event-timeout.js +49 -0
  84. package/dist/agent/engine/first-event-timeout.js.map +1 -0
  85. package/dist/cli/pr-visual-recap-workflow.d.ts +2 -2
  86. package/dist/cli/pr-visual-recap-workflow.d.ts.map +1 -1
  87. package/dist/cli/pr-visual-recap-workflow.js +2 -2
  88. package/dist/cli/pr-visual-recap-workflow.js.map +1 -1
  89. package/dist/client/AssistantChat.d.ts.map +1 -1
  90. package/dist/client/AssistantChat.js +7 -3
  91. package/dist/client/AssistantChat.js.map +1 -1
  92. package/dist/client/resources/ResourcesPanel.js +1 -1
  93. package/dist/client/resources/ResourcesPanel.js.map +1 -1
  94. package/dist/collab/awareness.d.ts +2 -2
  95. package/dist/collab/awareness.d.ts.map +1 -1
  96. package/dist/collab/routes.d.ts +1 -1
  97. package/dist/collab/struct-routes.d.ts +1 -1
  98. package/dist/extensions/actions.d.ts.map +1 -1
  99. package/dist/extensions/actions.js +193 -1
  100. package/dist/extensions/actions.js.map +1 -1
  101. package/dist/file-upload/actions/upload-image.d.ts +1 -1
  102. package/dist/integrations/computer-supervision-store.js +4 -4
  103. package/dist/integrations/computer-supervision-store.js.map +1 -1
  104. package/dist/integrations/pending-tasks-store.js +1 -1
  105. package/dist/integrations/pending-tasks-store.js.map +1 -1
  106. package/dist/integrations/remote-commands-store.js +5 -5
  107. package/dist/integrations/remote-commands-store.js.map +1 -1
  108. package/dist/integrations/remote-devices-store.js +3 -3
  109. package/dist/integrations/remote-devices-store.js.map +1 -1
  110. package/dist/integrations/remote-push-store.js +3 -3
  111. package/dist/integrations/remote-push-store.js.map +1 -1
  112. package/dist/notifications/routes.d.ts +2 -2
  113. package/dist/observability/routes.d.ts +3 -3
  114. package/dist/observability/traces.d.ts.map +1 -1
  115. package/dist/observability/traces.js +23 -1
  116. package/dist/observability/traces.js.map +1 -1
  117. package/dist/progress/routes.d.ts +1 -1
  118. package/dist/resources/handlers.d.ts +1 -1
  119. package/dist/secrets/routes.d.ts +3 -3
  120. package/dist/server/action-routes.d.ts.map +1 -1
  121. package/dist/server/action-routes.js +23 -1
  122. package/dist/server/action-routes.js.map +1 -1
  123. package/dist/server/agent-engine-api-key-route.d.ts +1 -1
  124. package/dist/server/http-response-telemetry.d.ts +2 -0
  125. package/dist/server/http-response-telemetry.d.ts.map +1 -1
  126. package/dist/server/http-response-telemetry.js +5 -1
  127. package/dist/server/http-response-telemetry.js.map +1 -1
  128. package/dist/templates/workspace-core/.agents/skills/extensions/SKILL.md +19 -0
  129. package/dist/templates/workspace-core/.agents/skills/observability/SKILL.md +1 -1
  130. package/dist/templates/workspace-core/.agents/skills/tracking/SKILL.md +1 -1
  131. package/package.json +2 -2
  132. package/src/agent/engine/ai-sdk-engine.ts +31 -3
  133. package/src/agent/engine/anthropic-engine.ts +20 -3
  134. package/src/agent/engine/builder-engine.ts +56 -9
  135. package/src/agent/engine/first-event-timeout.ts +64 -0
  136. package/src/cli/pr-visual-recap-workflow.ts +2 -3
  137. package/src/client/AssistantChat.tsx +7 -3
  138. package/src/client/resources/ResourcesPanel.tsx +1 -1
  139. package/src/extensions/actions.ts +219 -0
  140. package/src/integrations/computer-supervision-store.ts +4 -4
  141. package/src/integrations/pending-tasks-store.ts +1 -1
  142. package/src/integrations/remote-commands-store.ts +5 -5
  143. package/src/integrations/remote-devices-store.ts +3 -3
  144. package/src/integrations/remote-push-store.ts +3 -3
  145. package/src/observability/traces.ts +38 -1
  146. package/src/server/action-routes.ts +23 -1
  147. package/src/server/http-response-telemetry.ts +6 -1
  148. package/src/templates/workspace-core/.agents/skills/extensions/SKILL.md +19 -0
  149. package/src/templates/workspace-core/.agents/skills/observability/SKILL.md +1 -1
  150. package/src/templates/workspace-core/.agents/skills/tracking/SKILL.md +1 -1
@@ -361,7 +361,7 @@ function positiveIntEnv(name: string): number | null {
361
361
  async function waitForDashboardReportReady(
362
362
  page: any,
363
363
  timeout: number,
364
- ): Promise<void> {
364
+ ): Promise<boolean> {
365
365
  try {
366
366
  await page.waitForFunction(
367
367
  `(() => {
@@ -379,6 +379,7 @@ async function waitForDashboardReportReady(
379
379
  await document.fonts?.ready;
380
380
  })()`);
381
381
  await page.waitForTimeout(750);
382
+ return true;
382
383
  } catch (err: any) {
383
384
  const detail = await page
384
385
  .evaluate(`(() => {
@@ -391,6 +392,12 @@ async function waitForDashboardReportReady(
391
392
  };
392
393
  })()`)
393
394
  .catch(() => null);
395
+ if (detail?.ready === "true") {
396
+ console.warn(
397
+ "[dashboard-report] Dashboard surface stayed partially loaded; capturing the available panels.",
398
+ );
399
+ return false;
400
+ }
394
401
  const message = detail
395
402
  ? `${err?.message ?? String(err)}; dashboard state: ${JSON.stringify(detail)}`
396
403
  : `${err?.message ?? String(err)}; dashboard page was not inspectable`;
@@ -788,6 +795,7 @@ async function captureDashboardPngWithFallback(
788
795
  captureScale: 0.85,
789
796
  ...(serverless
790
797
  ? {
798
+ readyTimeout: 45_000,
791
799
  secondReadyTimeout: 25_000,
792
800
  totalTimeout: SERVERLESS_FULL_ATTEMPT_TIMEOUT_MS,
793
801
  }
@@ -799,7 +807,7 @@ async function captureDashboardPngWithFallback(
799
807
  captureScale: 0.7,
800
808
  ...(serverless
801
809
  ? {
802
- readyTimeout: 55_000,
810
+ readyTimeout: 35_000,
803
811
  secondReadyTimeout: 15_000,
804
812
  totalTimeout: SERVERLESS_LIGHTWEIGHT_ATTEMPT_TIMEOUT_MS,
805
813
  }
@@ -818,7 +826,7 @@ async function captureDashboardPngWithFallback(
818
826
  reportPanelLimit: 8,
819
827
  ...(serverless
820
828
  ? {
821
- readyTimeout: 40_000,
829
+ readyTimeout: 25_000,
822
830
  secondReadyTimeout: 10_000,
823
831
  totalTimeout: 45_000,
824
832
  }
@@ -69,6 +69,10 @@ export default defineAction({
69
69
  colorId: googleColorIdInput.describe(
70
70
  "Google Calendar event color id, 1 through 11.",
71
71
  ),
72
+ recurrence: z
73
+ .array(z.string())
74
+ .optional()
75
+ .describe("Google recurrence rules such as RRULE:FREQ=WEEKLY;BYDAY=MO."),
72
76
  reminderMinutes: reminderMinutesInput.describe(
73
77
  "Convenience field for a single reminder in minutes before the event.",
74
78
  ),
@@ -168,6 +172,7 @@ export default defineAction({
168
172
  attendees,
169
173
  attachments: args.attachments,
170
174
  colorId: args.colorId,
175
+ recurrence: args.recurrence,
171
176
  ...reminderFields,
172
177
  ...statusEventFields,
173
178
  createdAt: new Date().toISOString(),
@@ -1,6 +1,7 @@
1
1
  import { useT } from "@agent-native/core/client/i18n";
2
2
  import { IconSun, IconMoon } from "@tabler/icons-react";
3
3
  import { useTheme } from "next-themes";
4
+ import { useEffect, useState } from "react";
4
5
 
5
6
  import { Button } from "@/components/ui/button";
6
7
  import {
@@ -12,7 +13,9 @@ import { cn } from "@/lib/utils";
12
13
 
13
14
  export function ThemeToggle({ className }: { className?: string }) {
14
15
  const { resolvedTheme, setTheme } = useTheme();
15
- const isDark = resolvedTheme === "dark";
16
+ const [mounted, setMounted] = useState(false);
17
+ useEffect(() => setMounted(true), []);
18
+ const isDark = mounted && resolvedTheme === "dark";
16
19
  const t = useT();
17
20
 
18
21
  return (
@@ -539,7 +539,6 @@ export function EventDetailPanel({
539
539
  <ExtensionSlot
540
540
  id="calendar.event-detail.bottom"
541
541
  context={eventDetailSlotContext}
542
- showEmptyAffordance
543
542
  />
544
543
  )}
545
544
  </div>