@agent-native/core 0.46.0 → 0.48.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.
- package/bin/agent-native.js +41 -0
- package/dist/a2a/handlers.js +2 -2
- package/dist/a2a/handlers.js.map +1 -1
- package/dist/a2a/server.js +2 -2
- package/dist/a2a/server.js.map +1 -1
- package/dist/action.d.ts +43 -2
- package/dist/action.d.ts.map +1 -1
- package/dist/action.js.map +1 -1
- package/dist/agent/context-xray/actions/context-evict.d.ts +7 -1
- package/dist/agent/context-xray/actions/context-evict.d.ts.map +1 -1
- package/dist/agent/context-xray/actions/context-manifest-get.d.ts +4 -1
- package/dist/agent/context-xray/actions/context-manifest-get.d.ts.map +1 -1
- package/dist/agent/context-xray/actions/context-pin.d.ts +7 -1
- package/dist/agent/context-xray/actions/context-pin.d.ts.map +1 -1
- package/dist/agent/context-xray/actions/context-report.d.ts +12 -1
- package/dist/agent/context-xray/actions/context-report.d.ts.map +1 -1
- package/dist/agent/context-xray/actions/context-restore.d.ts +7 -1
- package/dist/agent/context-xray/actions/context-restore.d.ts.map +1 -1
- package/dist/agent/context-xray/apply-directives.d.ts.map +1 -1
- package/dist/agent/context-xray/apply-directives.js.map +1 -1
- package/dist/agent/context-xray/schema.d.ts +10 -10
- package/dist/agent/engine/ai-sdk-engine.d.ts.map +1 -1
- package/dist/agent/engine/ai-sdk-engine.js +26 -3
- package/dist/agent/engine/ai-sdk-engine.js.map +1 -1
- package/dist/agent/engine/anthropic-engine.d.ts +1 -1
- package/dist/agent/engine/anthropic-engine.d.ts.map +1 -1
- package/dist/agent/engine/builder-engine.d.ts +1 -1
- package/dist/agent/engine/builder-engine.d.ts.map +1 -1
- package/dist/agent/engine/builder-engine.js +47 -8
- package/dist/agent/engine/builder-engine.js.map +1 -1
- package/dist/agent/engine/builtin.js +1 -1
- package/dist/agent/engine/builtin.js.map +1 -1
- package/dist/agent/engine/output-tokens.d.ts +1 -1
- package/dist/agent/engine/output-tokens.d.ts.map +1 -1
- package/dist/agent/engine/output-tokens.js +6 -2
- package/dist/agent/engine/output-tokens.js.map +1 -1
- package/dist/agent/engine/registry.d.ts.map +1 -1
- package/dist/agent/engine/registry.js +7 -4
- package/dist/agent/engine/registry.js.map +1 -1
- package/dist/agent/engine/types.d.ts +19 -0
- package/dist/agent/engine/types.d.ts.map +1 -1
- package/dist/agent/engine/types.js +6 -0
- package/dist/agent/engine/types.js.map +1 -1
- package/dist/agent/model-config.d.ts +22 -14
- package/dist/agent/model-config.d.ts.map +1 -1
- package/dist/agent/model-config.js +113 -8
- package/dist/agent/model-config.js.map +1 -1
- package/dist/agent/production-agent.d.ts +47 -1
- package/dist/agent/production-agent.d.ts.map +1 -1
- package/dist/agent/production-agent.js +267 -46
- package/dist/agent/production-agent.js.map +1 -1
- package/dist/agent/run-loop-with-resume.d.ts.map +1 -1
- package/dist/agent/run-loop-with-resume.js +10 -0
- package/dist/agent/run-loop-with-resume.js.map +1 -1
- package/dist/agent/run-manager.d.ts +1 -0
- package/dist/agent/run-manager.d.ts.map +1 -1
- package/dist/agent/run-manager.js +36 -9
- package/dist/agent/run-manager.js.map +1 -1
- package/dist/agent/run-store.d.ts +47 -4
- package/dist/agent/run-store.d.ts.map +1 -1
- package/dist/agent/run-store.js +154 -4
- package/dist/agent/run-store.js.map +1 -1
- package/dist/agent/thread-data-builder.d.ts.map +1 -1
- package/dist/agent/thread-data-builder.js +57 -2
- package/dist/agent/thread-data-builder.js.map +1 -1
- package/dist/agent/types.d.ts +3 -0
- package/dist/agent/types.d.ts.map +1 -1
- package/dist/agent/types.js.map +1 -1
- package/dist/agent-web/generator.d.ts +3 -3
- package/dist/appearance/actions/change-appearance.d.ts +6 -1
- package/dist/appearance/actions/change-appearance.d.ts.map +1 -1
- package/dist/application-state/handlers.d.ts +2 -2
- package/dist/application-state/handlers.d.ts.map +1 -1
- package/dist/application-state/store.d.ts.map +1 -1
- package/dist/application-state/store.js +17 -0
- package/dist/application-state/store.js.map +1 -1
- package/dist/catalog.json +2 -1
- package/dist/cli/code-agent-commands.d.ts.map +1 -1
- package/dist/cli/code-agent-commands.js +2 -0
- package/dist/cli/code-agent-commands.js.map +1 -1
- package/dist/cli/code-agent-connector.js +7 -13
- package/dist/cli/code-agent-connector.js.map +1 -1
- package/dist/cli/code-agent-executor.d.ts +54 -2
- package/dist/cli/code-agent-executor.d.ts.map +1 -1
- package/dist/cli/code-agent-executor.js +504 -48
- package/dist/cli/code-agent-executor.js.map +1 -1
- package/dist/cli/code-agent-runs.d.ts +13 -0
- package/dist/cli/code-agent-runs.d.ts.map +1 -1
- package/dist/cli/code-agent-runs.js +36 -0
- package/dist/cli/code-agent-runs.js.map +1 -1
- package/dist/cli/code.js +59 -5
- package/dist/cli/code.js.map +1 -1
- package/dist/cli/connect.js +141 -3
- package/dist/cli/connect.js.map +1 -1
- package/dist/cli/index.js +0 -0
- package/dist/cli/pr-visual-recap-workflow.js +1 -1
- package/dist/cli/pr-visual-recap-workflow.js.map +1 -1
- package/dist/cli/recap.js +476 -46
- package/dist/cli/recap.js.map +1 -1
- package/dist/cli/skills.js +331 -179
- package/dist/cli/skills.js.map +1 -1
- package/dist/client/AgentPanel.d.ts.map +1 -1
- package/dist/client/AgentPanel.js +29 -2
- package/dist/client/AgentPanel.js.map +1 -1
- package/dist/client/AgentTaskCard.d.ts.map +1 -1
- package/dist/client/AgentTaskCard.js +17 -2
- package/dist/client/AgentTaskCard.js.map +1 -1
- package/dist/client/AssistantChat.d.ts +1 -1
- package/dist/client/AssistantChat.d.ts.map +1 -1
- package/dist/client/AssistantChat.js +310 -1732
- package/dist/client/AssistantChat.js.map +1 -1
- package/dist/client/CommandMenu.d.ts +1 -1
- package/dist/client/CommandMenu.d.ts.map +1 -1
- package/dist/client/CommandMenu.js +1 -1
- package/dist/client/CommandMenu.js.map +1 -1
- package/dist/client/HighlightedCodeBlock.d.ts +40 -0
- package/dist/client/HighlightedCodeBlock.d.ts.map +1 -0
- package/dist/client/HighlightedCodeBlock.js +110 -0
- package/dist/client/HighlightedCodeBlock.js.map +1 -0
- package/dist/client/MultiTabAssistantChat.d.ts.map +1 -1
- package/dist/client/MultiTabAssistantChat.js +8 -1
- package/dist/client/MultiTabAssistantChat.js.map +1 -1
- package/dist/client/PoweredByBadge.d.ts +2 -2
- package/dist/client/PoweredByBadge.d.ts.map +1 -1
- package/dist/client/RunStuckBanner.d.ts +1 -1
- package/dist/client/RunStuckBanner.d.ts.map +1 -1
- package/dist/client/StarfieldBackground.d.ts.map +1 -1
- package/dist/client/StarfieldBackground.js +10 -5
- package/dist/client/StarfieldBackground.js.map +1 -1
- package/dist/client/Turnstile.d.ts +1 -1
- package/dist/client/Turnstile.d.ts.map +1 -1
- package/dist/client/agent-chat-adapter.d.ts +3 -2
- package/dist/client/agent-chat-adapter.d.ts.map +1 -1
- package/dist/client/agent-chat-adapter.js +13 -9
- package/dist/client/agent-chat-adapter.js.map +1 -1
- package/dist/client/app-providers.d.ts +99 -0
- package/dist/client/app-providers.d.ts.map +1 -0
- package/dist/client/app-providers.js +19 -0
- package/dist/client/app-providers.js.map +1 -0
- package/dist/client/assistant-ui-recovery.d.ts +1 -1
- package/dist/client/auth-redirect-url.d.ts +1 -1
- package/dist/client/auth-redirect-url.d.ts.map +1 -1
- package/dist/client/blocks/library/AnnotatedCodeBlock.d.ts +0 -19
- package/dist/client/blocks/library/AnnotatedCodeBlock.d.ts.map +1 -1
- package/dist/client/blocks/library/AnnotatedCodeBlock.js +141 -55
- package/dist/client/blocks/library/AnnotatedCodeBlock.js.map +1 -1
- package/dist/client/blocks/library/DiffBlock.js +1 -1
- package/dist/client/blocks/library/DiffBlock.js.map +1 -1
- package/dist/client/blocks/library/FileTreeBlock.d.ts.map +1 -1
- package/dist/client/blocks/library/FileTreeBlock.js +1 -1
- package/dist/client/blocks/library/FileTreeBlock.js.map +1 -1
- package/dist/client/blocks/library/HighlightedCode.d.ts.map +1 -1
- package/dist/client/blocks/library/HighlightedCode.js +5 -3
- package/dist/client/blocks/library/HighlightedCode.js.map +1 -1
- package/dist/client/blocks/library/annotation-rail.d.ts +5 -4
- package/dist/client/blocks/library/annotation-rail.d.ts.map +1 -1
- package/dist/client/blocks/library/annotation-rail.js +22 -3
- package/dist/client/blocks/library/annotation-rail.js.map +1 -1
- package/dist/client/blocks/library/diagram.js +1 -1
- package/dist/client/blocks/library/diagram.js.map +1 -1
- package/dist/client/blocks/library/diff.config.d.ts +3 -2
- package/dist/client/blocks/library/diff.config.d.ts.map +1 -1
- package/dist/client/blocks/library/diff.config.js +4 -3
- package/dist/client/blocks/library/diff.config.js.map +1 -1
- package/dist/client/blocks/library/question-form.d.ts.map +1 -1
- package/dist/client/blocks/library/question-form.js +2 -1
- package/dist/client/blocks/library/question-form.js.map +1 -1
- package/dist/client/blocks/library/wireframe-kit.d.ts +1 -1
- package/dist/client/blocks/library/wireframe-kit.d.ts.map +1 -1
- package/dist/client/blocks/library/wireframe.js +1 -1
- package/dist/client/blocks/library/wireframe.js.map +1 -1
- package/dist/client/chat/attachment-adapters.d.ts +58 -0
- package/dist/client/chat/attachment-adapters.d.ts.map +1 -0
- package/dist/client/chat/attachment-adapters.js +331 -0
- package/dist/client/chat/attachment-adapters.js.map +1 -0
- package/dist/client/chat/index.d.ts +13 -0
- package/dist/client/chat/index.d.ts.map +1 -0
- package/dist/client/chat/index.js +13 -0
- package/dist/client/chat/index.js.map +1 -0
- package/dist/client/chat/markdown-renderer.d.ts +49 -0
- package/dist/client/chat/markdown-renderer.d.ts.map +1 -0
- package/dist/client/chat/markdown-renderer.js +391 -0
- package/dist/client/chat/markdown-renderer.js.map +1 -0
- package/dist/client/chat/message-components.d.ts +35 -0
- package/dist/client/chat/message-components.d.ts.map +1 -0
- package/dist/client/chat/message-components.js +452 -0
- package/dist/client/chat/message-components.js.map +1 -0
- package/dist/client/chat/repo-helpers.d.ts +41 -0
- package/dist/client/chat/repo-helpers.d.ts.map +1 -0
- package/dist/client/chat/repo-helpers.js +61 -0
- package/dist/client/chat/repo-helpers.js.map +1 -0
- package/dist/client/chat/run-recovery.d.ts +41 -0
- package/dist/client/chat/run-recovery.d.ts.map +1 -0
- package/dist/client/chat/run-recovery.js +348 -0
- package/dist/client/chat/run-recovery.js.map +1 -0
- package/dist/client/chat/tool-call-display.d.ts +34 -0
- package/dist/client/chat/tool-call-display.d.ts.map +1 -0
- package/dist/client/chat/tool-call-display.js +284 -0
- package/dist/client/chat/tool-call-display.js.map +1 -0
- package/dist/client/code-agent-chat-adapter.d.ts.map +1 -1
- package/dist/client/code-agent-chat-adapter.js +20 -0
- package/dist/client/code-agent-chat-adapter.js.map +1 -1
- package/dist/client/collab/index.d.ts +10 -0
- package/dist/client/collab/index.d.ts.map +1 -0
- package/dist/client/collab/index.js +10 -0
- package/dist/client/collab/index.js.map +1 -0
- package/dist/client/components/AgentPresenceChip.d.ts +1 -1
- package/dist/client/components/AgentPresenceChip.d.ts.map +1 -1
- package/dist/client/components/ApiKeySettings.d.ts +1 -1
- package/dist/client/components/ApiKeySettings.d.ts.map +1 -1
- package/dist/client/components/CodeAgentIndicator.d.ts +1 -1
- package/dist/client/components/CodeAgentIndicator.d.ts.map +1 -1
- package/dist/client/components/CodeRequiredDialog.d.ts +1 -1
- package/dist/client/components/CodeRequiredDialog.d.ts.map +1 -1
- package/dist/client/components/LiveCursorOverlay.d.ts.map +1 -1
- package/dist/client/components/LiveCursorOverlay.js.map +1 -1
- package/dist/client/components/PresenceBar.d.ts +1 -1
- package/dist/client/components/PresenceBar.d.ts.map +1 -1
- package/dist/client/composer/PromptComposer.d.ts.map +1 -1
- package/dist/client/composer/PromptComposer.js +6 -26
- package/dist/client/composer/PromptComposer.js.map +1 -1
- package/dist/client/composer/TiptapComposer.d.ts +8 -2
- package/dist/client/composer/TiptapComposer.d.ts.map +1 -1
- package/dist/client/composer/TiptapComposer.js +21 -9
- package/dist/client/composer/TiptapComposer.js.map +1 -1
- package/dist/client/composer/VoiceButton.d.ts +2 -2
- package/dist/client/composer/VoiceButton.d.ts.map +1 -1
- package/dist/client/composer/index.d.ts +1 -1
- package/dist/client/composer/index.d.ts.map +1 -1
- package/dist/client/composer/index.js +1 -1
- package/dist/client/composer/index.js.map +1 -1
- package/dist/client/composer/use-skills.d.ts +1 -1
- package/dist/client/context-xray/ContextMeter.d.ts +1 -1
- package/dist/client/context-xray/ContextMeter.d.ts.map +1 -1
- package/dist/client/context-xray/ContextMeter.js +3 -3
- package/dist/client/context-xray/ContextMeter.js.map +1 -1
- package/dist/client/context-xray/ContextXRayPanel.d.ts.map +1 -1
- package/dist/client/context-xray/ContextXRayPanel.js +4 -3
- package/dist/client/context-xray/ContextXRayPanel.js.map +1 -1
- package/dist/client/context-xray/format.d.ts +11 -0
- package/dist/client/context-xray/format.d.ts.map +1 -1
- package/dist/client/context-xray/format.js +16 -0
- package/dist/client/context-xray/format.js.map +1 -1
- package/dist/client/conversation/AgentConversation.d.ts.map +1 -1
- package/dist/client/conversation/AgentConversation.js +8 -53
- package/dist/client/conversation/AgentConversation.js.map +1 -1
- package/dist/client/conversation/use-near-bottom-autoscroll.d.ts +1 -1
- package/dist/client/conversation/use-near-bottom-autoscroll.d.ts.map +1 -1
- package/dist/client/conversation/use-near-bottom-autoscroll.js +14 -1
- package/dist/client/conversation/use-near-bottom-autoscroll.js.map +1 -1
- package/dist/client/create-query-client.d.ts +28 -0
- package/dist/client/create-query-client.d.ts.map +1 -0
- package/dist/client/create-query-client.js +78 -0
- package/dist/client/create-query-client.js.map +1 -0
- package/dist/client/db-admin/DevDatabaseLink.d.ts +1 -1
- package/dist/client/db-admin/DevDatabaseLink.d.ts.map +1 -1
- package/dist/client/db-admin/RowSidePanel.d.ts +1 -1
- package/dist/client/db-admin/RowSidePanel.d.ts.map +1 -1
- package/dist/client/db-admin/RowSidePanel.js +2 -2
- package/dist/client/db-admin/RowSidePanel.js.map +1 -1
- package/dist/client/db-admin/TableEditor.d.ts +1 -1
- package/dist/client/db-admin/TableEditor.d.ts.map +1 -1
- package/dist/client/db-admin/TableEditor.js +1 -1
- package/dist/client/db-admin/TableEditor.js.map +1 -1
- package/dist/client/db-admin/cell-format.d.ts +1 -1
- package/dist/client/db-admin/cell-format.d.ts.map +1 -1
- package/dist/client/dev-overlay/DevOverlay.d.ts +1 -1
- package/dist/client/dev-overlay/DevOverlay.d.ts.map +1 -1
- package/dist/client/editor/index.d.ts +2 -0
- package/dist/client/editor/index.d.ts.map +1 -0
- package/dist/client/editor/index.js +2 -0
- package/dist/client/editor/index.js.map +1 -0
- package/dist/client/error-format.d.ts.map +1 -1
- package/dist/client/error-format.js +4 -0
- package/dist/client/error-format.js.map +1 -1
- package/dist/client/extensions/AgentNativeExtensionFrame.d.ts +1 -1
- package/dist/client/extensions/AgentNativeExtensionFrame.d.ts.map +1 -1
- package/dist/client/extensions/EmbeddedExtension.d.ts +1 -1
- package/dist/client/extensions/EmbeddedExtension.d.ts.map +1 -1
- package/dist/client/extensions/ExtensionSlot.d.ts +1 -1
- package/dist/client/extensions/ExtensionSlot.d.ts.map +1 -1
- package/dist/client/extensions/ExtensionViewerPage.d.ts +1 -1
- package/dist/client/extensions/ExtensionViewerPage.d.ts.map +1 -1
- package/dist/client/guided-questions.d.ts +6 -6
- package/dist/client/host-bridge.d.ts.map +1 -1
- package/dist/client/host-bridge.js +2 -0
- package/dist/client/host-bridge.js.map +1 -1
- package/dist/client/index.d.ts +7 -6
- package/dist/client/index.d.ts.map +1 -1
- package/dist/client/index.js +5 -3
- package/dist/client/index.js.map +1 -1
- package/dist/client/onboarding/OnboardingBanner.d.ts +1 -1
- package/dist/client/onboarding/OnboardingBanner.d.ts.map +1 -1
- package/dist/client/onboarding/OnboardingPanel.d.ts +1 -1
- package/dist/client/onboarding/OnboardingPanel.d.ts.map +1 -1
- package/dist/client/onboarding/SetupButton.d.ts +1 -1
- package/dist/client/onboarding/SetupButton.d.ts.map +1 -1
- package/dist/client/org/InvitationBanner.d.ts +1 -1
- package/dist/client/org/InvitationBanner.d.ts.map +1 -1
- package/dist/client/org/OrgSwitcher.d.ts +1 -1
- package/dist/client/org/OrgSwitcher.d.ts.map +1 -1
- package/dist/client/org/RequireActiveOrg.d.ts +1 -1
- package/dist/client/org/RequireActiveOrg.d.ts.map +1 -1
- package/dist/client/org/hooks.d.ts +3 -3
- package/dist/client/org/hooks.d.ts.map +1 -1
- package/dist/client/progress/RunsTray.d.ts +2 -2
- package/dist/client/progress/RunsTray.d.ts.map +1 -1
- package/dist/client/progress/RunsTray.js +34 -9
- package/dist/client/progress/RunsTray.js.map +1 -1
- package/dist/client/resources/ResourceEditor.d.ts.map +1 -1
- package/dist/client/resources/ResourceEditor.js +1 -1
- package/dist/client/resources/ResourceEditor.js.map +1 -1
- package/dist/client/resources/ResourcesPanel.d.ts.map +1 -1
- package/dist/client/resources/ResourcesPanel.js +2 -0
- package/dist/client/resources/ResourcesPanel.js.map +1 -1
- package/dist/client/rich-markdown-editor/BubbleToolbar.d.ts +1 -1
- package/dist/client/rich-markdown-editor/BubbleToolbar.d.ts.map +1 -1
- package/dist/client/rich-markdown-editor/CodeBlockNode.d.ts.map +1 -1
- package/dist/client/rich-markdown-editor/CodeBlockNode.js +2 -1
- package/dist/client/rich-markdown-editor/CodeBlockNode.js.map +1 -1
- package/dist/client/rich-markdown-editor/ImageExtension.d.ts.map +1 -1
- package/dist/client/rich-markdown-editor/ImageExtension.js +2 -1
- package/dist/client/rich-markdown-editor/ImageExtension.js.map +1 -1
- package/dist/client/rich-markdown-editor/RegistryBlockNode.d.ts +1 -1
- package/dist/client/rich-markdown-editor/RegistryBlockNode.d.ts.map +1 -1
- package/dist/client/rich-markdown-editor/RegistryBlockNode.js +1 -1
- package/dist/client/rich-markdown-editor/RegistryBlockNode.js.map +1 -1
- package/dist/client/rich-markdown-editor/RichMarkdownEditor.d.ts +1 -1
- package/dist/client/rich-markdown-editor/SharedRichEditor.d.ts.map +1 -1
- package/dist/client/rich-markdown-editor/SharedRichEditor.js +2 -3
- package/dist/client/rich-markdown-editor/SharedRichEditor.js.map +1 -1
- package/dist/client/rich-markdown-editor/SlashCommandMenu.d.ts +1 -1
- package/dist/client/rich-markdown-editor/SlashCommandMenu.d.ts.map +1 -1
- package/dist/client/route-state.d.ts +12 -2
- package/dist/client/route-state.d.ts.map +1 -1
- package/dist/client/route-state.js +1 -1
- package/dist/client/route-state.js.map +1 -1
- package/dist/client/route-warmup.d.ts +1 -1
- package/dist/client/route-warmup.d.ts.map +1 -1
- package/dist/client/settings/VoiceTranscriptionSection.js +1 -1
- package/dist/client/settings/VoiceTranscriptionSection.js.map +1 -1
- package/dist/client/settings/useBuilderStatus.d.ts +2 -2
- package/dist/client/sharing/ShareDialog.d.ts +1 -1
- package/dist/client/sharing/ShareDialog.d.ts.map +1 -1
- package/dist/client/sse-event-processor.d.ts +8 -0
- package/dist/client/sse-event-processor.d.ts.map +1 -1
- package/dist/client/sse-event-processor.js +33 -10
- package/dist/client/sse-event-processor.js.map +1 -1
- package/dist/client/terminal/AgentTerminal.d.ts +1 -1
- package/dist/client/terminal/AgentTerminal.d.ts.map +1 -1
- package/dist/client/terminal/AgentTerminal.js +4 -2
- package/dist/client/terminal/AgentTerminal.js.map +1 -1
- package/dist/client/tool-cells/BashCell.d.ts +25 -0
- package/dist/client/tool-cells/BashCell.d.ts.map +1 -0
- package/dist/client/tool-cells/BashCell.js +49 -0
- package/dist/client/tool-cells/BashCell.js.map +1 -0
- package/dist/client/tool-cells/EditCell.d.ts +24 -0
- package/dist/client/tool-cells/EditCell.d.ts.map +1 -0
- package/dist/client/tool-cells/EditCell.js +126 -0
- package/dist/client/tool-cells/EditCell.js.map +1 -0
- package/dist/client/tool-cells/FilesChangedSummary.d.ts +13 -0
- package/dist/client/tool-cells/FilesChangedSummary.d.ts.map +1 -0
- package/dist/client/tool-cells/FilesChangedSummary.js +98 -0
- package/dist/client/tool-cells/FilesChangedSummary.js.map +1 -0
- package/dist/client/tool-cells/WriteCell.d.ts +17 -0
- package/dist/client/tool-cells/WriteCell.d.ts.map +1 -0
- package/dist/client/tool-cells/WriteCell.js +26 -0
- package/dist/client/tool-cells/WriteCell.js.map +1 -0
- package/dist/client/tool-cells/index.d.ts +8 -0
- package/dist/client/tool-cells/index.d.ts.map +1 -0
- package/dist/client/tool-cells/index.js +5 -0
- package/dist/client/tool-cells/index.js.map +1 -0
- package/dist/client/transcription/BuilderTranscriptionCta.d.ts +1 -1
- package/dist/client/transcription/BuilderTranscriptionCta.d.ts.map +1 -1
- package/dist/client/use-chat-threads.d.ts +1 -1
- package/dist/client/use-chat-threads.d.ts.map +1 -1
- package/dist/client/use-chat-threads.js +11 -8
- package/dist/client/use-chat-threads.js.map +1 -1
- package/dist/client/use-db-sync.d.ts +2 -0
- package/dist/client/use-db-sync.d.ts.map +1 -1
- package/dist/client/use-db-sync.js +329 -302
- package/dist/client/use-db-sync.js.map +1 -1
- package/dist/code-agents/transcript-normalizer.d.ts +15 -1
- package/dist/code-agents/transcript-normalizer.d.ts.map +1 -1
- package/dist/code-agents/transcript-normalizer.js +47 -0
- package/dist/code-agents/transcript-normalizer.js.map +1 -1
- package/dist/coding-tools/index.d.ts +75 -0
- package/dist/coding-tools/index.d.ts.map +1 -1
- package/dist/coding-tools/index.js +137 -10
- package/dist/coding-tools/index.js.map +1 -1
- package/dist/coding-tools/run-code.d.ts +40 -0
- package/dist/coding-tools/run-code.d.ts.map +1 -0
- package/dist/coding-tools/run-code.js +511 -0
- package/dist/coding-tools/run-code.js.map +1 -0
- package/dist/collab/client.d.ts.map +1 -1
- package/dist/collab/client.js +15 -9
- package/dist/collab/client.js.map +1 -1
- package/dist/collab/ydoc-manager.d.ts +1 -1
- package/dist/collab/ydoc-manager.d.ts.map +1 -1
- package/dist/collab/ydoc-manager.js +1 -1
- package/dist/collab/ydoc-manager.js.map +1 -1
- package/dist/db/client.d.ts +9 -1
- package/dist/db/client.d.ts.map +1 -1
- package/dist/db/client.js +204 -48
- package/dist/db/client.js.map +1 -1
- package/dist/db/create-get-db.d.ts +38 -0
- package/dist/db/create-get-db.d.ts.map +1 -1
- package/dist/db/create-get-db.js +204 -4
- package/dist/db/create-get-db.js.map +1 -1
- package/dist/db/migrations.d.ts.map +1 -1
- package/dist/db/migrations.js +159 -67
- package/dist/db/migrations.js.map +1 -1
- package/dist/demo/actions/toggle-demo-mode.d.ts +6 -1
- package/dist/demo/actions/toggle-demo-mode.d.ts.map +1 -1
- package/dist/deploy/build.d.ts.map +1 -1
- package/dist/deploy/build.js +80 -39
- package/dist/deploy/build.js.map +1 -1
- package/dist/deploy/workspace-deploy.js +20 -10
- package/dist/deploy/workspace-deploy.js.map +1 -1
- package/dist/extensions/fetch-tool.d.ts.map +1 -1
- package/dist/extensions/fetch-tool.js +62 -7
- package/dist/extensions/fetch-tool.js.map +1 -1
- package/dist/extensions/schema.d.ts +51 -51
- package/dist/extensions/slots/schema.d.ts +13 -13
- package/dist/extensions/web-search-tool.d.ts +41 -0
- package/dist/extensions/web-search-tool.d.ts.map +1 -0
- package/dist/extensions/web-search-tool.js +200 -0
- package/dist/extensions/web-search-tool.js.map +1 -0
- package/dist/file-upload/actions/upload-image.d.ts +26 -1
- package/dist/file-upload/actions/upload-image.d.ts.map +1 -1
- package/dist/file-upload/index.d.ts +1 -1
- package/dist/file-upload/index.d.ts.map +1 -1
- package/dist/file-upload/index.js +1 -1
- package/dist/file-upload/index.js.map +1 -1
- package/dist/file-upload/pre-upload-attachments.d.ts +37 -0
- package/dist/file-upload/pre-upload-attachments.d.ts.map +1 -1
- package/dist/file-upload/pre-upload-attachments.js +79 -19
- package/dist/file-upload/pre-upload-attachments.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/integrations/adapters/slack.js +1 -1
- package/dist/integrations/adapters/slack.js.map +1 -1
- package/dist/integrations/plugin.js +1 -1
- package/dist/integrations/plugin.js.map +1 -1
- package/dist/jobs/scheduler.js +70 -21
- package/dist/jobs/scheduler.js.map +1 -1
- package/dist/mcp/actions/create-org-service-token.d.ts +14 -0
- package/dist/mcp/actions/create-org-service-token.d.ts.map +1 -0
- package/dist/mcp/actions/create-org-service-token.js +74 -0
- package/dist/mcp/actions/create-org-service-token.js.map +1 -0
- package/dist/mcp/actions/list-org-service-tokens.d.ts +17 -0
- package/dist/mcp/actions/list-org-service-tokens.d.ts.map +1 -0
- package/dist/mcp/actions/list-org-service-tokens.js +42 -0
- package/dist/mcp/actions/list-org-service-tokens.js.map +1 -0
- package/dist/mcp/actions/revoke-org-service-token.d.ts +7 -0
- package/dist/mcp/actions/revoke-org-service-token.d.ts.map +1 -0
- package/dist/mcp/actions/revoke-org-service-token.js +28 -0
- package/dist/mcp/actions/revoke-org-service-token.js.map +1 -0
- package/dist/mcp/actions/service-token-access.d.ts +24 -0
- package/dist/mcp/actions/service-token-access.d.ts.map +1 -0
- package/dist/mcp/actions/service-token-access.js +63 -0
- package/dist/mcp/actions/service-token-access.js.map +1 -0
- package/dist/mcp/build-server.d.ts +42 -11
- package/dist/mcp/build-server.d.ts.map +1 -1
- package/dist/mcp/build-server.js +53 -3
- package/dist/mcp/build-server.js.map +1 -1
- package/dist/mcp/connect-route.d.ts +35 -0
- package/dist/mcp/connect-route.d.ts.map +1 -1
- package/dist/mcp/connect-route.js +57 -2
- package/dist/mcp/connect-route.js.map +1 -1
- package/dist/mcp/connect-store.d.ts +43 -0
- package/dist/mcp/connect-store.d.ts.map +1 -1
- package/dist/mcp/connect-store.js +129 -12
- package/dist/mcp/connect-store.js.map +1 -1
- package/dist/mcp/oauth-token.d.ts +10 -0
- package/dist/mcp/oauth-token.d.ts.map +1 -1
- package/dist/mcp/oauth-token.js +2 -0
- package/dist/mcp/oauth-token.js.map +1 -1
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +3 -0
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp-client/routes.js +1 -1
- package/dist/mcp-client/routes.js.map +1 -1
- package/dist/org/context.d.ts +4 -0
- package/dist/org/context.d.ts.map +1 -1
- package/dist/org/context.js +10 -0
- package/dist/org/context.js.map +1 -1
- package/dist/org/handlers.d.ts +11 -7
- package/dist/org/handlers.d.ts.map +1 -1
- package/dist/org/handlers.js +0 -8
- package/dist/org/handlers.js.map +1 -1
- package/dist/org/migrations.d.ts.map +1 -1
- package/dist/org/migrations.js +8 -0
- package/dist/org/migrations.js.map +1 -1
- package/dist/org/schema.d.ts +15 -15
- package/dist/progress/actions.d.ts.map +1 -1
- package/dist/progress/actions.js +13 -5
- package/dist/progress/actions.js.map +1 -1
- package/dist/provider-api/actions/delete-staged-dataset.d.ts +9 -0
- package/dist/provider-api/actions/delete-staged-dataset.d.ts.map +1 -0
- package/dist/provider-api/actions/delete-staged-dataset.js +35 -0
- package/dist/provider-api/actions/delete-staged-dataset.js.map +1 -0
- package/dist/provider-api/actions/list-staged-datasets.d.ts +15 -0
- package/dist/provider-api/actions/list-staged-datasets.d.ts.map +1 -0
- package/dist/provider-api/actions/list-staged-datasets.js +41 -0
- package/dist/provider-api/actions/list-staged-datasets.js.map +1 -0
- package/dist/provider-api/actions/query-staged-dataset.d.ts +29 -0
- package/dist/provider-api/actions/query-staged-dataset.d.ts.map +1 -0
- package/dist/provider-api/actions/query-staged-dataset.js +116 -0
- package/dist/provider-api/actions/query-staged-dataset.js.map +1 -0
- package/dist/provider-api/custom-registry.d.ts +92 -0
- package/dist/provider-api/custom-registry.d.ts.map +1 -0
- package/dist/provider-api/custom-registry.js +289 -0
- package/dist/provider-api/custom-registry.js.map +1 -0
- package/dist/provider-api/index.d.ts +88 -52
- package/dist/provider-api/index.d.ts.map +1 -1
- package/dist/provider-api/index.js +569 -23
- package/dist/provider-api/index.js.map +1 -1
- package/dist/provider-api/staged-datasets-aggregate.d.ts +46 -0
- package/dist/provider-api/staged-datasets-aggregate.d.ts.map +1 -0
- package/dist/provider-api/staged-datasets-aggregate.js +209 -0
- package/dist/provider-api/staged-datasets-aggregate.js.map +1 -0
- package/dist/provider-api/staged-datasets-store.d.ts +76 -0
- package/dist/provider-api/staged-datasets-store.d.ts.map +1 -0
- package/dist/provider-api/staged-datasets-store.js +319 -0
- package/dist/provider-api/staged-datasets-store.js.map +1 -0
- package/dist/provider-api/staging.d.ts +100 -0
- package/dist/provider-api/staging.d.ts.map +1 -0
- package/dist/provider-api/staging.js +281 -0
- package/dist/provider-api/staging.js.map +1 -0
- package/dist/resources/handlers.d.ts.map +1 -1
- package/dist/resources/handlers.js +13 -1
- package/dist/resources/handlers.js.map +1 -1
- package/dist/scripts/call-agent.d.ts.map +1 -1
- package/dist/scripts/call-agent.js +1 -2
- package/dist/scripts/call-agent.js.map +1 -1
- package/dist/scripts/resources/migrate-learnings.d.ts +1 -1
- package/dist/scripts/resources/migrate-learnings.d.ts.map +1 -1
- package/dist/scripts/resources/migrate-learnings.js +1 -1
- package/dist/scripts/resources/migrate-learnings.js.map +1 -1
- package/dist/secrets/register-framework-secrets.d.ts.map +1 -1
- package/dist/secrets/register-framework-secrets.js +36 -3
- package/dist/secrets/register-framework-secrets.js.map +1 -1
- package/dist/secrets/schema.d.ts +7 -7
- package/dist/server/action-discovery.d.ts.map +1 -1
- package/dist/server/action-discovery.js +14 -0
- package/dist/server/action-discovery.js.map +1 -1
- package/dist/server/action-routes.d.ts.map +1 -1
- package/dist/server/action-routes.js +3 -2
- package/dist/server/action-routes.js.map +1 -1
- package/dist/server/agent-chat-plugin.d.ts +69 -0
- package/dist/server/agent-chat-plugin.d.ts.map +1 -1
- package/dist/server/agent-chat-plugin.js +369 -179
- package/dist/server/agent-chat-plugin.js.map +1 -1
- package/dist/server/agent-discovery.d.ts.map +1 -1
- package/dist/server/agent-discovery.js +13 -16
- package/dist/server/agent-discovery.js.map +1 -1
- package/dist/server/agent-teams-run-queue.d.ts +31 -8
- package/dist/server/agent-teams-run-queue.d.ts.map +1 -1
- package/dist/server/agent-teams-run-queue.js +61 -18
- package/dist/server/agent-teams-run-queue.js.map +1 -1
- package/dist/server/agent-teams.d.ts +27 -1
- package/dist/server/agent-teams.d.ts.map +1 -1
- package/dist/server/agent-teams.js +214 -14
- package/dist/server/agent-teams.js.map +1 -1
- package/dist/server/app-base-path.d.ts +20 -0
- package/dist/server/app-base-path.d.ts.map +1 -1
- package/dist/server/app-base-path.js +36 -0
- package/dist/server/app-base-path.js.map +1 -1
- package/dist/server/attachment-actions.d.ts +43 -0
- package/dist/server/attachment-actions.d.ts.map +1 -0
- package/dist/server/attachment-actions.js +214 -0
- package/dist/server/attachment-actions.js.map +1 -0
- package/dist/server/auth.js +1 -1
- package/dist/server/auth.js.map +1 -1
- package/dist/server/complete-text.d.ts +56 -0
- package/dist/server/complete-text.d.ts.map +1 -0
- package/dist/server/complete-text.js +147 -0
- package/dist/server/complete-text.js.map +1 -0
- package/dist/server/core-routes-plugin.d.ts +1 -0
- package/dist/server/core-routes-plugin.d.ts.map +1 -1
- package/dist/server/core-routes-plugin.js +37 -27
- package/dist/server/core-routes-plugin.js.map +1 -1
- package/dist/server/cors-origins.d.ts.map +1 -1
- package/dist/server/cors-origins.js +6 -1
- package/dist/server/cors-origins.js.map +1 -1
- package/dist/server/create-server.d.ts.map +1 -1
- package/dist/server/create-server.js +2 -1
- package/dist/server/create-server.js.map +1 -1
- package/dist/server/csrf.d.ts +1 -1
- package/dist/server/csrf.d.ts.map +1 -1
- package/dist/server/email-actions.d.ts +19 -0
- package/dist/server/email-actions.d.ts.map +1 -0
- package/dist/server/email-actions.js +191 -0
- package/dist/server/email-actions.js.map +1 -0
- package/dist/server/embed-route.js +1 -1
- package/dist/server/embed-route.js.map +1 -1
- package/dist/server/embed-session.d.ts.map +1 -1
- package/dist/server/embed-session.js +5 -1
- package/dist/server/embed-session.js.map +1 -1
- package/dist/server/entry-server.d.ts +24 -0
- package/dist/server/entry-server.d.ts.map +1 -0
- package/dist/server/entry-server.js +54 -0
- package/dist/server/entry-server.js.map +1 -0
- package/dist/server/framework-request-handler.d.ts.map +1 -1
- package/dist/server/framework-request-handler.js +2 -10
- package/dist/server/framework-request-handler.js.map +1 -1
- package/dist/server/google-oauth.d.ts.map +1 -1
- package/dist/server/google-oauth.js +2 -9
- package/dist/server/google-oauth.js.map +1 -1
- package/dist/server/google-realtime-session.d.ts.map +1 -1
- package/dist/server/google-realtime-session.js +6 -4
- package/dist/server/google-realtime-session.js.map +1 -1
- package/dist/server/h3-helpers.d.ts +39 -0
- package/dist/server/h3-helpers.d.ts.map +1 -1
- package/dist/server/h3-helpers.js +104 -1
- package/dist/server/h3-helpers.js.map +1 -1
- package/dist/server/index.d.ts +2 -1
- package/dist/server/index.d.ts.map +1 -1
- package/dist/server/index.js +2 -1
- package/dist/server/index.js.map +1 -1
- package/dist/server/onboarding-html.d.ts.map +1 -1
- package/dist/server/onboarding-html.js +1 -8
- package/dist/server/onboarding-html.js.map +1 -1
- package/dist/server/open-route.d.ts.map +1 -1
- package/dist/server/open-route.js +1 -0
- package/dist/server/open-route.js.map +1 -1
- package/dist/server/prompts/framework-core-compact.d.ts +19 -0
- package/dist/server/prompts/framework-core-compact.d.ts.map +1 -0
- package/dist/server/prompts/framework-core-compact.js +69 -0
- package/dist/server/prompts/framework-core-compact.js.map +1 -0
- package/dist/server/prompts/framework-core.d.ts +26 -0
- package/dist/server/prompts/framework-core.d.ts.map +1 -0
- package/dist/server/prompts/framework-core.js +130 -0
- package/dist/server/prompts/framework-core.js.map +1 -0
- package/dist/server/prompts/index.d.ts +9 -0
- package/dist/server/prompts/index.d.ts.map +1 -0
- package/dist/server/prompts/index.js +9 -0
- package/dist/server/prompts/index.js.map +1 -0
- package/dist/server/prompts/model-overlays.d.ts +18 -0
- package/dist/server/prompts/model-overlays.d.ts.map +1 -0
- package/dist/server/prompts/model-overlays.js +46 -0
- package/dist/server/prompts/model-overlays.js.map +1 -0
- package/dist/server/prompts/shared-rules.d.ts +29 -0
- package/dist/server/prompts/shared-rules.d.ts.map +1 -0
- package/dist/server/prompts/shared-rules.js +54 -0
- package/dist/server/prompts/shared-rules.js.map +1 -0
- package/dist/server/security-headers.d.ts +7 -1
- package/dist/server/security-headers.d.ts.map +1 -1
- package/dist/server/security-headers.js +11 -0
- package/dist/server/security-headers.js.map +1 -1
- package/dist/server/ssr-handler.d.ts.map +1 -1
- package/dist/server/ssr-handler.js +135 -46
- package/dist/server/ssr-handler.js.map +1 -1
- package/dist/server/transcribe-voice.d.ts.map +1 -1
- package/dist/server/transcribe-voice.js +7 -4
- package/dist/server/transcribe-voice.js.map +1 -1
- package/dist/settings/store.d.ts.map +1 -1
- package/dist/settings/store.js +9 -0
- package/dist/settings/store.js.map +1 -1
- package/dist/shared/markdown-block-split.d.ts +39 -0
- package/dist/shared/markdown-block-split.d.ts.map +1 -0
- package/dist/shared/markdown-block-split.js +97 -0
- package/dist/shared/markdown-block-split.js.map +1 -0
- package/dist/shared/reasoning-effort.js +13 -1
- package/dist/shared/reasoning-effort.js.map +1 -1
- package/dist/shared/streaming-text-smoothing.d.ts +18 -0
- package/dist/shared/streaming-text-smoothing.d.ts.map +1 -1
- package/dist/shared/streaming-text-smoothing.js +70 -4
- package/dist/shared/streaming-text-smoothing.js.map +1 -1
- package/dist/sharing/actions/list-resource-shares.d.ts +24 -1
- package/dist/sharing/actions/list-resource-shares.d.ts.map +1 -1
- package/dist/sharing/actions/set-resource-visibility.d.ts +8 -1
- package/dist/sharing/actions/set-resource-visibility.d.ts.map +1 -1
- package/dist/sharing/actions/share-resource.d.ts +12 -1
- package/dist/sharing/actions/share-resource.d.ts.map +1 -1
- package/dist/sharing/actions/unshare-resource.d.ts +8 -1
- package/dist/sharing/actions/unshare-resource.d.ts.map +1 -1
- package/dist/sharing/schema.d.ts +10 -10
- package/dist/styles/agent-conversation.css +239 -0
- package/dist/templates/default/.agents/skills/delegate-to-agent/SKILL.md +50 -2
- package/dist/templates/default/AGENTS.md +1 -1
- package/dist/templates/default/DEVELOPING.md +19 -0
- package/dist/templates/default/app/entry.client.tsx +4 -1
- package/dist/templates/default/app/entry.server.tsx +4 -56
- package/dist/templates/default/app/global.css +3 -2
- package/dist/templates/default/app/root.tsx +8 -24
- package/dist/templates/default/app/routes/_index.tsx +0 -13
- package/dist/templates/default/package.json +6 -5
- package/dist/templates/default/tsconfig.json +2 -1
- package/dist/templates/starter-shell-sync.spec.ts +118 -0
- package/dist/templates/ui-primitives-sync.spec.ts +399 -0
- package/dist/templates/workspace-core/.agents/skills/delegate-to-agent/SKILL.md +50 -2
- package/dist/terminal/pty-server.js +1 -1
- package/dist/terminal/pty-server.js.map +1 -1
- package/dist/triggers/dispatcher.js +1 -1
- package/dist/triggers/dispatcher.js.map +1 -1
- package/dist/usage/store.d.ts.map +1 -1
- package/dist/usage/store.js +60 -7
- package/dist/usage/store.js.map +1 -1
- package/dist/vite/client.d.ts.map +1 -1
- package/dist/vite/client.js +44 -12
- package/dist/vite/client.js.map +1 -1
- package/dist/workspace-files/index.d.ts +4 -0
- package/dist/workspace-files/index.d.ts.map +1 -0
- package/dist/workspace-files/index.js +4 -0
- package/dist/workspace-files/index.js.map +1 -0
- package/dist/workspace-files/schema.d.ts +195 -0
- package/dist/workspace-files/schema.d.ts.map +1 -0
- package/dist/workspace-files/schema.js +48 -0
- package/dist/workspace-files/schema.js.map +1 -0
- package/dist/workspace-files/store.d.ts +89 -0
- package/dist/workspace-files/store.d.ts.map +1 -0
- package/dist/workspace-files/store.js +298 -0
- package/dist/workspace-files/store.js.map +1 -0
- package/dist/workspace-files/tool.d.ts +15 -0
- package/dist/workspace-files/tool.d.ts.map +1 -0
- package/dist/workspace-files/tool.js +225 -0
- package/dist/workspace-files/tool.js.map +1 -0
- package/docs/content/a2a-protocol.md +18 -12
- package/docs/content/actions.md +42 -10
- package/docs/content/agent-mentions.md +7 -8
- package/docs/content/agent-teams.md +23 -37
- package/docs/content/agent-web-surfaces.md +18 -9
- package/docs/content/authentication.md +6 -17
- package/docs/content/automations.md +43 -15
- package/docs/content/cli-adapters.md +25 -24
- package/docs/content/client.md +66 -17
- package/docs/content/cloneable-saas.md +19 -23
- package/docs/content/code-agents-ui.md +3 -31
- package/docs/content/components.md +308 -0
- package/docs/content/context-awareness.md +4 -0
- package/docs/content/creating-templates.md +4 -2
- package/docs/content/cross-app-sso.md +45 -19
- package/docs/content/database.md +26 -1
- package/docs/content/deployment.md +3 -1
- package/docs/content/dispatch.md +9 -37
- package/docs/content/drop-in-agent.md +123 -2
- package/docs/content/embedding-sdk.md +35 -0
- package/docs/content/extensions.md +2 -2
- package/docs/content/external-agents.md +86 -171
- package/docs/content/faq.md +6 -27
- package/docs/content/frames.md +9 -12
- package/docs/content/getting-started.md +80 -77
- package/docs/content/key-concepts.md +29 -19
- package/docs/content/mcp-apps.md +103 -0
- package/docs/content/mcp-clients.md +2 -2
- package/docs/content/mcp-protocol.md +40 -17
- package/docs/content/messaging.md +11 -4
- package/docs/content/migration-workbench.md +4 -47
- package/docs/content/multi-app-workspace.md +48 -17
- package/docs/content/multi-tenancy.md +1 -1
- package/docs/content/notifications.md +8 -6
- package/docs/content/observability.md +26 -15
- package/docs/content/onboarding.md +7 -1
- package/docs/content/pr-visual-recap.md +203 -23
- package/docs/content/progress.md +5 -5
- package/docs/content/pure-agent-apps.md +3 -1
- package/docs/content/real-time-collaboration.md +106 -0
- package/docs/content/recurring-jobs.md +17 -1
- package/docs/content/security.md +17 -3
- package/docs/content/server.md +39 -3
- package/docs/content/sharing.md +20 -1
- package/docs/content/skills-guide.md +151 -125
- package/docs/content/template-analytics.md +8 -0
- package/docs/content/template-assets.md +2 -0
- package/docs/content/template-brain.md +59 -3
- package/docs/content/template-calendar.md +8 -0
- package/docs/content/template-clips.md +11 -2
- package/docs/content/template-content.md +24 -4
- package/docs/content/template-design.md +19 -17
- package/docs/content/template-dispatch.md +2 -0
- package/docs/content/template-forms.md +28 -1
- package/docs/content/template-mail.md +17 -0
- package/docs/content/template-plan.md +177 -10
- package/docs/content/template-slides.md +51 -12
- package/docs/content/template-videos.md +17 -0
- package/docs/content/tracking.md +17 -13
- package/docs/content/using-your-agent.md +15 -5
- package/docs/content/voice-input.md +1 -1
- package/docs/content/what-is-agent-native.md +5 -6
- package/docs/content/workspace-connections.md +138 -424
- package/docs/content/workspace-management.md +12 -128
- package/docs/content/workspace.md +125 -199
- package/docs/content/writing-agent-instructions.md +17 -1
- package/package.json +26 -6
- package/src/templates/default/.agents/skills/delegate-to-agent/SKILL.md +50 -2
- package/src/templates/default/AGENTS.md +1 -1
- package/src/templates/default/DEVELOPING.md +19 -0
- package/src/templates/default/app/entry.client.tsx +4 -1
- package/src/templates/default/app/entry.server.tsx +4 -56
- package/src/templates/default/app/global.css +3 -2
- package/src/templates/default/app/root.tsx +8 -24
- package/src/templates/default/app/routes/_index.tsx +0 -13
- package/src/templates/default/package.json +6 -5
- package/src/templates/default/tsconfig.json +2 -1
- package/src/templates/starter-shell-sync.spec.ts +118 -0
- package/src/templates/ui-primitives-sync.spec.ts +399 -0
- package/src/templates/workspace-core/.agents/skills/delegate-to-agent/SKILL.md +50 -2
- package/tsconfig.base.json +2 -10
- package/dist/cli/app-skill.d.ts +0 -157
- package/dist/cli/app-skill.d.ts.map +0 -1
- package/dist/cli/audit-agent-web.d.ts +0 -2
- package/dist/cli/audit-agent-web.d.ts.map +0 -1
- package/dist/cli/code-agent-connector.d.ts +0 -17
- package/dist/cli/code-agent-connector.d.ts.map +0 -1
- package/dist/cli/code.d.ts +0 -66
- package/dist/cli/code.d.ts.map +0 -1
- package/dist/cli/connect.d.ts +0 -140
- package/dist/cli/connect.d.ts.map +0 -1
- package/dist/cli/context-xray-local.d.ts +0 -16
- package/dist/cli/context-xray-local.d.ts.map +0 -1
- package/dist/cli/create-workspace.d.ts +0 -8
- package/dist/cli/create-workspace.d.ts.map +0 -1
- package/dist/cli/index.d.ts +0 -3
- package/dist/cli/index.d.ts.map +0 -1
- package/dist/cli/info.d.ts +0 -2
- package/dist/cli/info.d.ts.map +0 -1
- package/dist/cli/mcp-config-writers.d.ts +0 -82
- package/dist/cli/mcp-config-writers.d.ts.map +0 -1
- package/dist/cli/mcp.d.ts +0 -16
- package/dist/cli/mcp.d.ts.map +0 -1
- package/dist/cli/migrate.d.ts +0 -38
- package/dist/cli/migrate.d.ts.map +0 -1
- package/dist/cli/plan-local.d.ts +0 -43
- package/dist/cli/plan-local.d.ts.map +0 -1
- package/dist/cli/plan-publish-store.d.ts +0 -62
- package/dist/cli/plan-publish-store.d.ts.map +0 -1
- package/dist/cli/pr-visual-recap-workflow.d.ts +0 -11
- package/dist/cli/pr-visual-recap-workflow.d.ts.map +0 -1
- package/dist/cli/recap.d.ts +0 -297
- package/dist/cli/recap.d.ts.map +0 -1
- package/dist/cli/skills.d.ts +0 -162
- package/dist/cli/skills.d.ts.map +0 -1
- package/dist/cli/workspace-dev.d.ts +0 -96
- package/dist/cli/workspace-dev.d.ts.map +0 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agent-native/core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.48.1",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"engines": {
|
|
6
6
|
"node": ">=22"
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
"provenance": true
|
|
22
22
|
},
|
|
23
23
|
"bin": {
|
|
24
|
-
"agent-native": "
|
|
24
|
+
"agent-native": "bin/agent-native.js"
|
|
25
25
|
},
|
|
26
26
|
"exports": {
|
|
27
27
|
".": {
|
|
@@ -30,6 +30,7 @@
|
|
|
30
30
|
},
|
|
31
31
|
"./vite": "./dist/vite/index.js",
|
|
32
32
|
"./server": "./dist/server/index.js",
|
|
33
|
+
"./server/entry-server": "./dist/server/entry-server.js",
|
|
33
34
|
"./server/ssr-handler": "./dist/server/ssr-handler.js",
|
|
34
35
|
"./server/agent-discovery": "./dist/server/agent-discovery.js",
|
|
35
36
|
"./server/request-context": "./dist/server/request-context.js",
|
|
@@ -41,6 +42,12 @@
|
|
|
41
42
|
"./db/schema": "./dist/db/schema.js",
|
|
42
43
|
"./db/drizzle-config": "./dist/db/drizzle-config.js",
|
|
43
44
|
"./client": "./dist/client/index.js",
|
|
45
|
+
"./client/chat": "./dist/client/chat/index.js",
|
|
46
|
+
"./client/collab": "./dist/client/collab/index.js",
|
|
47
|
+
"./client/composer": "./dist/client/composer/index.js",
|
|
48
|
+
"./client/conversation": "./dist/client/conversation/index.js",
|
|
49
|
+
"./client/editor": "./dist/client/editor/index.js",
|
|
50
|
+
"./client/resources": "./dist/client/resources/index.js",
|
|
44
51
|
"./blocks": "./dist/client/blocks/index.js",
|
|
45
52
|
"./blocks/server": "./dist/client/blocks/server.js",
|
|
46
53
|
"./client/AgentPanel": "./dist/client/AgentPanel.js",
|
|
@@ -97,6 +104,13 @@
|
|
|
97
104
|
"./usage": "./dist/usage/store.js",
|
|
98
105
|
"./connections": "./dist/connections/index.js",
|
|
99
106
|
"./provider-api": "./dist/provider-api/index.js",
|
|
107
|
+
"./provider-api/staging": "./dist/provider-api/staging.js",
|
|
108
|
+
"./provider-api/staged-datasets-store": "./dist/provider-api/staged-datasets-store.js",
|
|
109
|
+
"./provider-api/staged-datasets-aggregate": "./dist/provider-api/staged-datasets-aggregate.js",
|
|
110
|
+
"./provider-api/actions/query-staged-dataset": "./dist/provider-api/actions/query-staged-dataset.js",
|
|
111
|
+
"./provider-api/actions/list-staged-datasets": "./dist/provider-api/actions/list-staged-datasets.js",
|
|
112
|
+
"./provider-api/actions/delete-staged-dataset": "./dist/provider-api/actions/delete-staged-dataset.js",
|
|
113
|
+
"./workspace-files": "./dist/workspace-files/index.js",
|
|
100
114
|
"./code-agents": "./dist/code-agents/index.js",
|
|
101
115
|
"./code-agents/transcript-normalizer": "./dist/code-agents/transcript-normalizer.js",
|
|
102
116
|
"./workspace-connections": "./dist/workspace-connections/index.js",
|
|
@@ -112,14 +126,18 @@
|
|
|
112
126
|
"./agent/engine": "./dist/agent/engine/index.js",
|
|
113
127
|
"./tsconfig.base.json": "./tsconfig.base.json"
|
|
114
128
|
},
|
|
129
|
+
"sideEffects": [
|
|
130
|
+
"*.css"
|
|
131
|
+
],
|
|
115
132
|
"files": [
|
|
133
|
+
"bin",
|
|
116
134
|
"dist",
|
|
117
135
|
"docs",
|
|
118
136
|
"tsconfig.base.json",
|
|
119
137
|
"src/templates"
|
|
120
138
|
],
|
|
121
139
|
"scripts": {
|
|
122
|
-
"build": "tsc && node scripts/finalize-build.mjs",
|
|
140
|
+
"build": "tsc && tsc -p tsconfig.cli.json && node scripts/finalize-build.mjs",
|
|
123
141
|
"dev": "tsc --watch",
|
|
124
142
|
"typecheck": "tsc --noEmit",
|
|
125
143
|
"test": "vitest --run src",
|
|
@@ -153,7 +171,6 @@
|
|
|
153
171
|
"@sentry/browser": "^10.50.0",
|
|
154
172
|
"@sentry/node": "^10.50.0",
|
|
155
173
|
"@standard-schema/spec": "^1.1.0",
|
|
156
|
-
"@tabler/icons-react": "^3",
|
|
157
174
|
"@tailwindcss/typography": "^0.5.19",
|
|
158
175
|
"@tanstack/react-table": "^8.21.3",
|
|
159
176
|
"@tiptap/core": "^3.26.0",
|
|
@@ -174,7 +191,7 @@
|
|
|
174
191
|
"@tiptap/starter-kit": "^3.26.0",
|
|
175
192
|
"@tiptap/y-tiptap": "^3.0.4",
|
|
176
193
|
"@uiw/react-codemirror": "^4.25.10",
|
|
177
|
-
"better-auth": "1.6.
|
|
194
|
+
"better-auth": "1.6.16",
|
|
178
195
|
"better-sqlite3": "^12.8.0",
|
|
179
196
|
"clsx": "^2.1.1",
|
|
180
197
|
"cron-parser": "^5.5.0",
|
|
@@ -197,7 +214,7 @@
|
|
|
197
214
|
"prettier": "^3.8.3",
|
|
198
215
|
"react-markdown": "^10.1.0",
|
|
199
216
|
"react-router": "^7.16.0",
|
|
200
|
-
"recharts": "3.8.1",
|
|
217
|
+
"recharts": "^3.8.1",
|
|
201
218
|
"remark-gfm": "^4.0.1",
|
|
202
219
|
"roughjs": "4.6.6",
|
|
203
220
|
"shiki": "^4.0.2",
|
|
@@ -353,6 +370,7 @@
|
|
|
353
370
|
"@types/node": "^24.2.1",
|
|
354
371
|
"@types/pako": "^2.0.4",
|
|
355
372
|
"@types/react": "^19.2.14",
|
|
373
|
+
"@types/react-dom": "^19.2.3",
|
|
356
374
|
"@types/ws": "^8.18.1",
|
|
357
375
|
"@vitejs/plugin-react-swc": "^4.0.0",
|
|
358
376
|
"@vitest/coverage-v8": "4.1.5",
|
|
@@ -363,6 +381,8 @@
|
|
|
363
381
|
"autoprefixer": "^10.4.21",
|
|
364
382
|
"drizzle-kit": "^0.31.10",
|
|
365
383
|
"express": "^5.2.1",
|
|
384
|
+
"next-themes": "^0.4.6",
|
|
385
|
+
"sonner": "^2.0.7",
|
|
366
386
|
"mermaid": "11.15.0",
|
|
367
387
|
"node-pty": "^1.1.0",
|
|
368
388
|
"playwright": "^1.60.0",
|
|
@@ -13,7 +13,11 @@ metadata:
|
|
|
13
13
|
|
|
14
14
|
## Rule
|
|
15
15
|
|
|
16
|
-
The UI
|
|
16
|
+
The UI never calls an LLM directly. Product workflows are delegated to the
|
|
17
|
+
agent through the chat bridge so users can see, steer, and audit the work.
|
|
18
|
+
Server-side one-shot model calls are an explicit escape hatch for narrow text
|
|
19
|
+
transforms only; use `completeText()` from `@agent-native/core/server` when the
|
|
20
|
+
work intentionally does not need tools, chat history, or run state.
|
|
17
21
|
|
|
18
22
|
## Why
|
|
19
23
|
|
|
@@ -33,6 +37,24 @@ sendToAgentChat({
|
|
|
33
37
|
});
|
|
34
38
|
```
|
|
35
39
|
|
|
40
|
+
**From the UI, in the background:**
|
|
41
|
+
|
|
42
|
+
```ts
|
|
43
|
+
import { sendToAgentChat } from "@agent-native/core";
|
|
44
|
+
|
|
45
|
+
sendToAgentChat({
|
|
46
|
+
message: "Analyze this import and create any missing records",
|
|
47
|
+
context: `Import batch id: ${batchId}`,
|
|
48
|
+
submit: true,
|
|
49
|
+
newTab: true,
|
|
50
|
+
background: true,
|
|
51
|
+
openSidebar: false,
|
|
52
|
+
});
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
This is still a full agent run: tools, actions, thread state, and run tracking
|
|
56
|
+
all remain active. It simply does not focus or open the sidebar.
|
|
57
|
+
|
|
36
58
|
**From scripts (Node):**
|
|
37
59
|
|
|
38
60
|
```ts
|
|
@@ -41,6 +63,22 @@ import { agentChat } from "@agent-native/core";
|
|
|
41
63
|
agentChat.submit("Process the uploaded images and create thumbnails");
|
|
42
64
|
```
|
|
43
65
|
|
|
66
|
+
**For narrow server-side text transforms:**
|
|
67
|
+
|
|
68
|
+
```ts
|
|
69
|
+
import { completeText } from "@agent-native/core/server";
|
|
70
|
+
|
|
71
|
+
const result = await completeText({
|
|
72
|
+
systemPrompt: "Return exactly one sentiment label.",
|
|
73
|
+
input: messageBody,
|
|
74
|
+
maxOutputTokens: 12,
|
|
75
|
+
temperature: 0,
|
|
76
|
+
});
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
Wrap user-facing uses in actions so the UI and agent share the same operation.
|
|
80
|
+
Do not call provider SDKs directly.
|
|
81
|
+
|
|
44
82
|
**From the UI, detecting when agent is done:**
|
|
45
83
|
|
|
46
84
|
```ts
|
|
@@ -183,10 +221,20 @@ rather than ad-hoc LLM calls.
|
|
|
183
221
|
- Don't use AI SDK functions like `generateText()`, `streamText()`, etc.
|
|
184
222
|
- Don't build "AI features" that bypass the agent chat
|
|
185
223
|
- Don't auto-submit a hardcoded prompt for generative actions — capture user input first (see above)
|
|
224
|
+
- Don't use `completeText()` for workflows that need tools, database writes,
|
|
225
|
+
auditability, user steering, or multi-step reasoning. Use the agent chat
|
|
226
|
+
instead, optionally with `background: true`.
|
|
186
227
|
|
|
187
228
|
## Exception
|
|
188
229
|
|
|
189
|
-
Scripts may call external APIs (image generation, search, etc.) — but the AI
|
|
230
|
+
Scripts may call external APIs (image generation, search, etc.) — but the AI
|
|
231
|
+
reasoning and orchestration still goes through the agent. A script is a tool
|
|
232
|
+
the agent uses, not a replacement for the agent.
|
|
233
|
+
|
|
234
|
+
`completeText()` is allowed for small server-side transforms such as
|
|
235
|
+
classification, extraction, rewriting a short string, or normalizing messy
|
|
236
|
+
provider text. It deliberately runs with `tools: []` and does not create chat
|
|
237
|
+
thread state.
|
|
190
238
|
|
|
191
239
|
## When to Use A2A Instead
|
|
192
240
|
|
|
@@ -7,7 +7,7 @@ This is an **@agent-native/core** application -- the AI agent and UI share state
|
|
|
7
7
|
### Core Principles
|
|
8
8
|
|
|
9
9
|
1. **Shared SQL database** -- All app state lives in SQL. Local SQLite at `data/app.db` is the zero-setup dev fallback; deployed apps need a persistent `DATABASE_URL` so data survives container/serverless restarts. Turso is optional, not required: Neon, Supabase, Turso/libSQL, plain Postgres, durable SQLite, D1 bindings, and Builder.io-managed environments are all valid when supported by the deploy. Core stores: `application_state`, `settings`, `oauth_tokens`, `sessions`, `resources`.
|
|
10
|
-
2. **
|
|
10
|
+
2. **AI through the right framework surface** -- Product workflows delegate to the agent via `sendToAgentChat()` / `agentChat.submit()`. Use `sendToAgentChat({ message, context, submit })` for simple UI handoffs and prefill/review flows; add `newTab: true, background: true, openSidebar: false` when the agent should work silently without focusing the sidebar. Only use the agent-chat context state helpers (`useAgentChatContext`, `setAgentChatContextItem`, `listAgentChatContext`, `removeAgentChatContextItem`, `clearAgentChatContext`) when the UI needs two-way sync with staged context chips. For rare server-side text transforms that intentionally need no tools, chat history, or run state, use `completeText()` from `@agent-native/core/server` inside an action instead of importing provider SDKs directly.
|
|
11
11
|
3. **Actions for app operations** -- `pnpm action <name>` dispatches to callable action files in `actions/`; `defineAction` also auto-exposes those operations at `/_agent-native/actions/:name` for the UI. Do not create custom REST routes that re-export actions.
|
|
12
12
|
4. **Live sync keeps the UI current** -- Database writes stream over `/_agent-native/events` first, with `/_agent-native/poll` as the fallback. **When you (the agent) write data, the UI must reflect the change without a manual refresh.** This is non-negotiable. Use `useActionQuery` / `useActionMutation` for action-backed data (preferred). If you use raw `useQuery`, fold `useChangeVersions([<source>, "action"])` into the key for targeted refreshes. See the `real-time-sync` and `adding-a-feature` skills.
|
|
13
13
|
5. **Agent can update code** -- The agent can modify this app's source code directly.
|
|
@@ -101,6 +101,8 @@ sendToAgentChat({
|
|
|
101
101
|
|
|
102
102
|
For most UI handoffs, pass hidden context directly with `sendToAgentChat()`. Use
|
|
103
103
|
`submit: false` when the user should review the draft first. Use
|
|
104
|
+
`newTab: true, background: true, openSidebar: false` when a button should start
|
|
105
|
+
a full agent run without opening or focusing the sidebar. Use
|
|
104
106
|
`useAgentChatContext`, `setAgentChatContextItem`, `listAgentChatContext`,
|
|
105
107
|
`removeAgentChatContextItem`, and `clearAgentChatContext` only for advanced UI
|
|
106
108
|
that needs to read, mirror, stage, remove, or clear staged context chips as local
|
|
@@ -113,6 +115,23 @@ import { agentChat } from "@agent-native/core";
|
|
|
113
115
|
agentChat.submit("Generate something");
|
|
114
116
|
```
|
|
115
117
|
|
|
118
|
+
**Server-side one-shot text transforms:**
|
|
119
|
+
|
|
120
|
+
```ts
|
|
121
|
+
import { completeText } from "@agent-native/core/server";
|
|
122
|
+
|
|
123
|
+
const result = await completeText({
|
|
124
|
+
systemPrompt: "Return exactly one category label.",
|
|
125
|
+
input: body,
|
|
126
|
+
maxOutputTokens: 16,
|
|
127
|
+
temperature: 0,
|
|
128
|
+
});
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
Use this only for narrow transforms that intentionally need no tools, chat
|
|
132
|
+
history, or run state. For user-facing operations, call it inside an action so
|
|
133
|
+
the UI and agent share the same capability.
|
|
134
|
+
|
|
116
135
|
## Database
|
|
117
136
|
|
|
118
137
|
Local development defaults to a SQLite file at `data/app.db`. That local file is for development; containers, previews, and serverless deploys can reset their filesystem. For production/cloud deployment, set `DATABASE_URL` to point to a persistent SQL database. Turso is optional, not required; common choices include Neon, Supabase, Turso/libSQL, plain Postgres, durable SQLite, D1 bindings, and Builder.io-managed environments when available.
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
// Import only the tiny URL-helper module, not the full client barrel.
|
|
2
|
+
// This keeps the ~650-700 KB gzip chat stack off the static import closure
|
|
3
|
+
// of the client entry point so it can't block the first page parse.
|
|
4
|
+
import { appBasePath } from "@agent-native/core/client/api-path";
|
|
2
5
|
import { hydrateRoot } from "react-dom/client";
|
|
3
6
|
import { HydratedRouter } from "react-router/dom";
|
|
4
7
|
|
|
@@ -1,56 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
import { isbot } from "isbot";
|
|
6
|
-
import { wrapWithAnalytics } from "@agent-native/core/server";
|
|
7
|
-
|
|
8
|
-
export const streamTimeout = 5_000;
|
|
9
|
-
|
|
10
|
-
export default async function handleRequest(
|
|
11
|
-
request: Request,
|
|
12
|
-
responseStatusCode: number,
|
|
13
|
-
responseHeaders: Headers,
|
|
14
|
-
routerContext: EntryContext,
|
|
15
|
-
_loadContext: AppLoadContext,
|
|
16
|
-
) {
|
|
17
|
-
if (request.method.toUpperCase() === "HEAD") {
|
|
18
|
-
return new Response(null, {
|
|
19
|
-
status: responseStatusCode,
|
|
20
|
-
headers: responseHeaders,
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
const userAgent = request.headers.get("user-agent");
|
|
25
|
-
const waitForAll = (userAgent && isbot(userAgent)) || routerContext.isSpaMode;
|
|
26
|
-
|
|
27
|
-
const abortController = new AbortController();
|
|
28
|
-
const timeoutId = setTimeout(() => abortController.abort(), streamTimeout);
|
|
29
|
-
|
|
30
|
-
try {
|
|
31
|
-
const body = await renderToReadableStream(
|
|
32
|
-
<ServerRouter context={routerContext} url={request.url} />,
|
|
33
|
-
{
|
|
34
|
-
signal: abortController.signal,
|
|
35
|
-
onError(error: unknown) {
|
|
36
|
-
if (!abortController.signal.aborted) {
|
|
37
|
-
responseStatusCode = 500;
|
|
38
|
-
console.error(error);
|
|
39
|
-
}
|
|
40
|
-
},
|
|
41
|
-
},
|
|
42
|
-
);
|
|
43
|
-
|
|
44
|
-
if (waitForAll) {
|
|
45
|
-
await body.allReady;
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
responseHeaders.set("Content-Type", "text/html");
|
|
49
|
-
return new Response(wrapWithAnalytics(body), {
|
|
50
|
-
headers: responseHeaders,
|
|
51
|
-
status: responseStatusCode,
|
|
52
|
-
});
|
|
53
|
-
} finally {
|
|
54
|
-
clearTimeout(timeoutId);
|
|
55
|
-
}
|
|
56
|
-
}
|
|
1
|
+
export {
|
|
2
|
+
handleDocumentRequest as default,
|
|
3
|
+
streamTimeout,
|
|
4
|
+
} from "@agent-native/core/server/entry-server";
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
@
|
|
1
|
+
/* Self-hosted via @fontsource-variable/inter — no render-blocking Google Fonts request */
|
|
2
|
+
@import "@fontsource-variable/inter";
|
|
2
3
|
|
|
3
4
|
@import "tailwindcss";
|
|
4
5
|
@import "@agent-native/core/styles/agent-native.css";
|
|
@@ -71,7 +72,7 @@
|
|
|
71
72
|
body {
|
|
72
73
|
background: hsl(var(--background));
|
|
73
74
|
color: hsl(var(--foreground));
|
|
74
|
-
font-family: "Inter", sans-serif;
|
|
75
|
+
font-family: "Inter Variable", "Inter", sans-serif;
|
|
75
76
|
font-feature-settings: "cv02", "cv03", "cv04", "cv11";
|
|
76
77
|
}
|
|
77
78
|
}
|
|
@@ -9,20 +9,14 @@ import {
|
|
|
9
9
|
useRouteError,
|
|
10
10
|
} from "react-router";
|
|
11
11
|
import { useEffect, useState } from "react";
|
|
12
|
-
import {
|
|
13
|
-
QueryClient,
|
|
14
|
-
QueryClientProvider,
|
|
15
|
-
useQueryClient,
|
|
16
|
-
} from "@tanstack/react-query";
|
|
17
|
-
import { ThemeProvider } from "next-themes";
|
|
12
|
+
import { useQueryClient } from "@tanstack/react-query";
|
|
18
13
|
import { useDbSync } from "@agent-native/core";
|
|
19
14
|
import {
|
|
20
|
-
|
|
21
|
-
DefaultSpinner,
|
|
15
|
+
AppProviders,
|
|
22
16
|
appPath,
|
|
23
17
|
getThemeInitScript,
|
|
18
|
+
createAgentNativeQueryClient,
|
|
24
19
|
} from "@agent-native/core/client";
|
|
25
|
-
import { Toaster } from "sonner";
|
|
26
20
|
import { configureTracking } from "@agent-native/core/client";
|
|
27
21
|
import { useNavigationState } from "./hooks/use-navigation-state";
|
|
28
22
|
import { TAB_ID } from "./lib/tab-id";
|
|
@@ -92,22 +86,12 @@ function DbSyncSetup() {
|
|
|
92
86
|
}
|
|
93
87
|
|
|
94
88
|
export default function Root() {
|
|
95
|
-
const [queryClient] = useState(() =>
|
|
89
|
+
const [queryClient] = useState(() => createAgentNativeQueryClient());
|
|
96
90
|
return (
|
|
97
|
-
<
|
|
98
|
-
<
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
enableSystem
|
|
102
|
-
disableTransitionOnChange
|
|
103
|
-
>
|
|
104
|
-
<QueryClientProvider client={queryClient}>
|
|
105
|
-
<DbSyncSetup />
|
|
106
|
-
<Outlet />
|
|
107
|
-
<Toaster richColors position="bottom-left" />
|
|
108
|
-
</QueryClientProvider>
|
|
109
|
-
</ThemeProvider>
|
|
110
|
-
</ClientOnly>
|
|
91
|
+
<AppProviders queryClient={queryClient}>
|
|
92
|
+
<DbSyncSetup />
|
|
93
|
+
<Outlet />
|
|
94
|
+
</AppProviders>
|
|
111
95
|
);
|
|
112
96
|
}
|
|
113
97
|
|
|
@@ -1,23 +1,10 @@
|
|
|
1
1
|
import { useTheme } from "next-themes";
|
|
2
|
-
import { IconLoader2 } from "@tabler/icons-react";
|
|
3
2
|
import { useActionQuery } from "@agent-native/core/client";
|
|
4
3
|
|
|
5
4
|
export function meta() {
|
|
6
5
|
return [{ title: "{{APP_TITLE}}" }];
|
|
7
6
|
}
|
|
8
7
|
|
|
9
|
-
export function HydrateFallback() {
|
|
10
|
-
return (
|
|
11
|
-
<div className="flex items-center justify-center h-screen">
|
|
12
|
-
<IconLoader2
|
|
13
|
-
className="size-8 animate-spin text-foreground"
|
|
14
|
-
role="status"
|
|
15
|
-
aria-label="Loading"
|
|
16
|
-
/>
|
|
17
|
-
</div>
|
|
18
|
-
);
|
|
19
|
-
}
|
|
20
|
-
|
|
21
8
|
export default function IndexPage() {
|
|
22
9
|
const { resolvedTheme, setTheme } = useTheme();
|
|
23
10
|
const isDark = resolvedTheme === "dark";
|
|
@@ -14,7 +14,8 @@
|
|
|
14
14
|
"@agent-native/core": "latest",
|
|
15
15
|
"@assistant-ui/react": "^0.12.19",
|
|
16
16
|
"@assistant-ui/react-markdown": "^0.12.6",
|
|
17
|
-
"@
|
|
17
|
+
"@fontsource-variable/inter": "^5.2.8",
|
|
18
|
+
"@tabler/icons-react": "catalog:",
|
|
18
19
|
"h3": "^2.0.1-rc.20",
|
|
19
20
|
"isbot": "^5",
|
|
20
21
|
"postgres": "^3.4.9",
|
|
@@ -26,14 +27,14 @@
|
|
|
26
27
|
"@tailwindcss/vite": "^4.1.18",
|
|
27
28
|
"@tanstack/react-query": "^5.99.2",
|
|
28
29
|
"@types/node": "^24.2.1",
|
|
29
|
-
"@types/react": "
|
|
30
|
-
"@types/react-dom": "
|
|
30
|
+
"@types/react": "catalog:",
|
|
31
|
+
"@types/react-dom": "catalog:",
|
|
31
32
|
"class-variance-authority": "^0.7.1",
|
|
32
33
|
"clsx": "^2.1.1",
|
|
33
34
|
"next-themes": "^0.4.6",
|
|
34
35
|
"prettier": "^3.6.2",
|
|
35
|
-
"react": "
|
|
36
|
-
"react-dom": "
|
|
36
|
+
"react": "catalog:",
|
|
37
|
+
"react-dom": "catalog:",
|
|
37
38
|
"react-router": "^7.16.0",
|
|
38
39
|
"sonner": "^2.0.7",
|
|
39
40
|
"tailwind-merge": "^3.5.0",
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Guard: the scaffold template (packages/core/src/templates/default) and
|
|
3
|
+
* templates/starter must ship byte-identical shell files so that scaffolded
|
|
4
|
+
* apps start from exactly the same code as the reference starter template.
|
|
5
|
+
*
|
|
6
|
+
* When you update entry.server.tsx or entry.client.tsx in either location,
|
|
7
|
+
* update the other copy to match (copy in either direction — the content is
|
|
8
|
+
* canonical, not the direction).
|
|
9
|
+
*
|
|
10
|
+
* Sync commands:
|
|
11
|
+
* # scaffold → starter
|
|
12
|
+
* cp packages/core/src/templates/default/app/entry.server.tsx \
|
|
13
|
+
* templates/starter/app/entry.server.tsx
|
|
14
|
+
* cp packages/core/src/templates/default/app/entry.client.tsx \
|
|
15
|
+
* templates/starter/app/entry.client.tsx
|
|
16
|
+
*
|
|
17
|
+
* # starter → scaffold
|
|
18
|
+
* cp templates/starter/app/entry.server.tsx \
|
|
19
|
+
* packages/core/src/templates/default/app/entry.server.tsx
|
|
20
|
+
* cp templates/starter/app/entry.client.tsx \
|
|
21
|
+
* packages/core/src/templates/default/app/entry.client.tsx
|
|
22
|
+
*/
|
|
23
|
+
|
|
24
|
+
import crypto from "node:crypto";
|
|
25
|
+
import fs from "node:fs";
|
|
26
|
+
import path from "node:path";
|
|
27
|
+
import { describe, expect, it } from "vitest";
|
|
28
|
+
|
|
29
|
+
function workspaceRoot(): string {
|
|
30
|
+
let current = process.cwd();
|
|
31
|
+
while (current !== path.dirname(current)) {
|
|
32
|
+
if (fs.existsSync(path.join(current, "pnpm-workspace.yaml"))) {
|
|
33
|
+
return current;
|
|
34
|
+
}
|
|
35
|
+
current = path.dirname(current);
|
|
36
|
+
}
|
|
37
|
+
throw new Error("Could not locate workspace root (pnpm-workspace.yaml).");
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
const ROOT = workspaceRoot();
|
|
41
|
+
|
|
42
|
+
const SCAFFOLD_DIR = path.join(ROOT, "packages/core/src/templates/default/app");
|
|
43
|
+
const STARTER_DIR = path.join(ROOT, "templates/starter/app");
|
|
44
|
+
|
|
45
|
+
function md5(content: string): string {
|
|
46
|
+
return crypto.createHash("md5").update(content).digest("hex");
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
function readFile(dir: string, filename: string): string {
|
|
50
|
+
return fs.readFileSync(path.join(dir, filename), "utf-8");
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* Shell files that must be byte-identical between scaffold and starter.
|
|
55
|
+
* Each entry is [filename, reason]:
|
|
56
|
+
* entry.server.tsx — both now re-export the shared core handler; any
|
|
57
|
+
* future change to the pattern must land in both places at once.
|
|
58
|
+
* entry.client.tsx — lightweight hydration entry that sets basename from
|
|
59
|
+
* APP_BASE_PATH; must stay in sync for workspace-mount correctness.
|
|
60
|
+
*/
|
|
61
|
+
const SHELL_FILES: Array<[string, string]> = [
|
|
62
|
+
[
|
|
63
|
+
"entry.server.tsx",
|
|
64
|
+
"re-exports @agent-native/core/server/entry-server; must be identical",
|
|
65
|
+
],
|
|
66
|
+
[
|
|
67
|
+
"entry.client.tsx",
|
|
68
|
+
"basename hydration from APP_BASE_PATH; must be identical",
|
|
69
|
+
],
|
|
70
|
+
];
|
|
71
|
+
|
|
72
|
+
describe("starter-shell sync guard", () => {
|
|
73
|
+
it("keeps scaffold and starter shell files byte-identical", () => {
|
|
74
|
+
const violations: string[] = [];
|
|
75
|
+
|
|
76
|
+
for (const [filename] of SHELL_FILES) {
|
|
77
|
+
const scaffoldContent = readFile(SCAFFOLD_DIR, filename);
|
|
78
|
+
const starterContent = readFile(STARTER_DIR, filename);
|
|
79
|
+
|
|
80
|
+
const scaffoldHash = md5(scaffoldContent);
|
|
81
|
+
const starterHash = md5(starterContent);
|
|
82
|
+
|
|
83
|
+
if (scaffoldHash !== starterHash) {
|
|
84
|
+
violations.push(
|
|
85
|
+
`${filename}: scaffold (packages/core/src/templates/default/app) and starter (templates/starter/app) differ.\n` +
|
|
86
|
+
` Update both to match or copy one to the other.`,
|
|
87
|
+
);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
expect(
|
|
92
|
+
violations,
|
|
93
|
+
[
|
|
94
|
+
"Scaffold/starter shell files have drifted.",
|
|
95
|
+
"Copy the updated file to the other location to fix.",
|
|
96
|
+
"",
|
|
97
|
+
...violations,
|
|
98
|
+
].join("\n"),
|
|
99
|
+
).toEqual([]);
|
|
100
|
+
});
|
|
101
|
+
|
|
102
|
+
it("every listed shell file exists in both scaffold and starter", () => {
|
|
103
|
+
for (const [filename, reason] of SHELL_FILES) {
|
|
104
|
+
const scaffoldPath = path.join(SCAFFOLD_DIR, filename);
|
|
105
|
+
const starterPath = path.join(STARTER_DIR, filename);
|
|
106
|
+
|
|
107
|
+
expect(
|
|
108
|
+
fs.existsSync(scaffoldPath),
|
|
109
|
+
`${filename} missing from scaffold (${reason})`,
|
|
110
|
+
).toBe(true);
|
|
111
|
+
|
|
112
|
+
expect(
|
|
113
|
+
fs.existsSync(starterPath),
|
|
114
|
+
`${filename} missing from starter (${reason})`,
|
|
115
|
+
).toBe(true);
|
|
116
|
+
}
|
|
117
|
+
});
|
|
118
|
+
});
|