@agent-native/core 0.47.1 → 0.48.2
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 +19 -1
- package/dist/agent/production-agent.d.ts.map +1 -1
- package/dist/agent/production-agent.js +253 -39
- 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 +298 -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/collab/client.d.ts +1 -1
- package/dist/collab/client.js +20 -14
- 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/schema.d.ts +51 -51
- package/dist/extensions/slots/schema.d.ts +13 -13
- 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.map +1 -1
- package/dist/provider-api/custom-registry.js.map +1 -1
- package/dist/provider-api/index.d.ts +10 -10
- package/dist/provider-api/index.js +0 -5
- 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/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 +33 -0
- package/dist/server/agent-chat-plugin.d.ts.map +1 -1
- package/dist/server/agent-chat-plugin.js +251 -180
- 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 +4 -0
- package/dist/server/core-routes-plugin.d.ts.map +1 -1
- package/dist/server/core-routes-plugin.js +49 -29
- 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/schema.d.ts +8 -8
- package/dist/workspace-files/tool.d.ts.map +1 -1
- package/dist/workspace-files/tool.js +0 -1
- package/dist/workspace-files/tool.js.map +1 -1
- 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 +25 -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
|
@@ -0,0 +1,399 @@
|
|
|
1
|
+
import crypto from "node:crypto";
|
|
2
|
+
import fs from "node:fs";
|
|
3
|
+
import path from "node:path";
|
|
4
|
+
import { describe, expect, it } from "vitest";
|
|
5
|
+
|
|
6
|
+
// Guard: all templates/<name>/app/components/ui/*.tsx files that share the
|
|
7
|
+
// same primitive name must be byte-identical, OR must be listed in the
|
|
8
|
+
// ALLOW_LIST below with a documented reason.
|
|
9
|
+
//
|
|
10
|
+
// If you update a primitive, update it in EVERY template that holds it (or
|
|
11
|
+
// use the canonical template as the source and copy with:
|
|
12
|
+
//
|
|
13
|
+
// cp templates/analytics/app/components/ui/<file>.tsx \
|
|
14
|
+
// templates/<other>/app/components/ui/<file>.tsx
|
|
15
|
+
//
|
|
16
|
+
// If a template genuinely needs a behaviorally different variant, add it here
|
|
17
|
+
// with a comment explaining why the deviation is intentional.
|
|
18
|
+
|
|
19
|
+
// Each entry: [primitive filename, template name, reason for deviation]
|
|
20
|
+
const ALLOW_LIST: Array<[string, string, string]> = [
|
|
21
|
+
// scroll-area.tsx — content always renders a horizontal ScrollBar so deeply
|
|
22
|
+
// nested page rows in the document sidebar stay reachable; guarded by
|
|
23
|
+
// templates/content/app/components/sidebar/DocumentSidebar.layout.test.ts.
|
|
24
|
+
[
|
|
25
|
+
"scroll-area.tsx",
|
|
26
|
+
"content",
|
|
27
|
+
"always renders horizontal ScrollBar for nested sidebar rows",
|
|
28
|
+
],
|
|
29
|
+
|
|
30
|
+
// button.tsx — macros has a fully custom design theme (bg-foreground primary,
|
|
31
|
+
// rounded-2xl, active:scale press feedback, custom ghost/link palette).
|
|
32
|
+
// The canonical 13-template version uses standard bg-primary, rounded-md.
|
|
33
|
+
[
|
|
34
|
+
"button.tsx",
|
|
35
|
+
"macros",
|
|
36
|
+
"custom-themed: bg-foreground, rounded-lg, active:scale",
|
|
37
|
+
],
|
|
38
|
+
|
|
39
|
+
// calendar.tsx — DayPicker v9 class-name API split across templates.
|
|
40
|
+
// The majority (7 templates) use the older v9 API (caption, nav_button, …).
|
|
41
|
+
// Two templates are ahead of this:
|
|
42
|
+
// • analytics: new v9 renamed API (month_caption, button_previous, day_button)
|
|
43
|
+
// • forms/mail: newest shadcn with getDefaultClassNames + DayButton + captionLayout
|
|
44
|
+
// Unifying these requires a coordinated DayPicker API migration; defer until
|
|
45
|
+
// the 7-template group catches up.
|
|
46
|
+
[
|
|
47
|
+
"calendar.tsx",
|
|
48
|
+
"analytics",
|
|
49
|
+
"ahead of majority: new v9 renamed classname API (month_caption, button_previous)",
|
|
50
|
+
],
|
|
51
|
+
[
|
|
52
|
+
"calendar.tsx",
|
|
53
|
+
"forms",
|
|
54
|
+
"newest shadcn: getDefaultClassNames + DayButton + captionLayout",
|
|
55
|
+
],
|
|
56
|
+
[
|
|
57
|
+
"calendar.tsx",
|
|
58
|
+
"mail",
|
|
59
|
+
"newest shadcn: getDefaultClassNames + DayButton + captionLayout",
|
|
60
|
+
],
|
|
61
|
+
|
|
62
|
+
// card.tsx — macros uses rounded-2xl, border-border/40, and a custom
|
|
63
|
+
// transition. The canonical 12-template version uses rounded-lg, border.
|
|
64
|
+
[
|
|
65
|
+
"card.tsx",
|
|
66
|
+
"macros",
|
|
67
|
+
"custom-themed: rounded-2xl, border-border/40, custom transition",
|
|
68
|
+
],
|
|
69
|
+
|
|
70
|
+
// chart.tsx — analytics adds the useChartTooltipFlip hook (which only exists
|
|
71
|
+
// in the analytics template's hooks/ dir) and uses `[_, config]` destructuring.
|
|
72
|
+
// forms/mail have a shared variant without that hook and with `[, config]`.
|
|
73
|
+
// The canonical 8-template version (calendar/clips/design/macros/plan/slides/
|
|
74
|
+
// starter/videos) has neither analytics-specific hook nor forms/mail style.
|
|
75
|
+
[
|
|
76
|
+
"chart.tsx",
|
|
77
|
+
"analytics",
|
|
78
|
+
"analytics-specific: useChartTooltipFlip hook (only exists in analytics hooks/)",
|
|
79
|
+
],
|
|
80
|
+
[
|
|
81
|
+
"chart.tsx",
|
|
82
|
+
"forms",
|
|
83
|
+
"no useChartTooltipFlip hook (analytics-specific); minor style differences",
|
|
84
|
+
],
|
|
85
|
+
[
|
|
86
|
+
"chart.tsx",
|
|
87
|
+
"mail",
|
|
88
|
+
"no useChartTooltipFlip hook (analytics-specific); minor style differences",
|
|
89
|
+
],
|
|
90
|
+
|
|
91
|
+
// command.tsx — forms/mail were scaffolded with "use client" (Next.js artifact)
|
|
92
|
+
// and use `const CommandDialog = ({ children, ...props }: DialogProps)` instead
|
|
93
|
+
// of the interface-wrapped variant. Behaviorally equivalent; clean up on next
|
|
94
|
+
// major template refresh.
|
|
95
|
+
[
|
|
96
|
+
"command.tsx",
|
|
97
|
+
"forms",
|
|
98
|
+
'"use client" artifact + inline type (no interface wrapper)',
|
|
99
|
+
],
|
|
100
|
+
[
|
|
101
|
+
"command.tsx",
|
|
102
|
+
"mail",
|
|
103
|
+
'"use client" artifact + inline type (no interface wrapper)',
|
|
104
|
+
],
|
|
105
|
+
|
|
106
|
+
// context-menu.tsx — forms/mail add origin-[--radix-context-menu-content-
|
|
107
|
+
// transform-origin] and max-h CSS variables from a newer shadcn snapshot.
|
|
108
|
+
// Not harmful but haven't been audited for all usage sites yet.
|
|
109
|
+
[
|
|
110
|
+
"context-menu.tsx",
|
|
111
|
+
"forms",
|
|
112
|
+
"newer shadcn: origin CSS var + max-h constraint on sub-content",
|
|
113
|
+
],
|
|
114
|
+
[
|
|
115
|
+
"context-menu.tsx",
|
|
116
|
+
"mail",
|
|
117
|
+
"newer shadcn: origin CSS var + max-h constraint on sub-content",
|
|
118
|
+
],
|
|
119
|
+
|
|
120
|
+
// dialog.tsx — macros has a mobile-optimized layout: top-4 positioned (not
|
|
121
|
+
// centered), max-h with overflow-y-auto for tall forms, backdrop-blur-sm overlay.
|
|
122
|
+
[
|
|
123
|
+
"dialog.tsx",
|
|
124
|
+
"macros",
|
|
125
|
+
"mobile-optimized: top-positioned, scrollable, backdrop-blur overlay",
|
|
126
|
+
],
|
|
127
|
+
|
|
128
|
+
// dropdown-menu.tsx — brain was rewritten with the new shadcn v2 function-
|
|
129
|
+
// component API (data-slot attributes, variant prop on MenuItem, gap-2 layout,
|
|
130
|
+
// overflow-x-hidden content). The canonical 13-template version uses the older
|
|
131
|
+
// React.forwardRef style.
|
|
132
|
+
[
|
|
133
|
+
"dropdown-menu.tsx",
|
|
134
|
+
"brain",
|
|
135
|
+
"shadcn v2 function-component API with data-slot + variant prop",
|
|
136
|
+
],
|
|
137
|
+
|
|
138
|
+
// input.tsx — three intentional variants beyond the canonical 11-template version:
|
|
139
|
+
// • macros: adds transition-all hover:border-ring/50 (custom visual polish)
|
|
140
|
+
// • mail: uses h-9 instead of h-10 (intentional compact sizing for dense UI)
|
|
141
|
+
// • videos: adds text-foreground class (explicit foreground color)
|
|
142
|
+
[
|
|
143
|
+
"input.tsx",
|
|
144
|
+
"macros",
|
|
145
|
+
"custom: transition-all hover:border-ring/50 animation",
|
|
146
|
+
],
|
|
147
|
+
["input.tsx", "mail", "intentional compact sizing: h-9 vs canonical h-10"],
|
|
148
|
+
["input.tsx", "videos", "adds explicit text-foreground class"],
|
|
149
|
+
|
|
150
|
+
// menubar.tsx — macros uses a different trigger style. forms/mail use a newer
|
|
151
|
+
// shadcn snapshot with improved data-[state=open] focus/hover handling and
|
|
152
|
+
// function-component wrappers for MenubarMenu.
|
|
153
|
+
["menubar.tsx", "macros", "custom-themed trigger style"],
|
|
154
|
+
[
|
|
155
|
+
"menubar.tsx",
|
|
156
|
+
"forms",
|
|
157
|
+
"newer shadcn: improved data-[state=open] states + function-component wrappers",
|
|
158
|
+
],
|
|
159
|
+
[
|
|
160
|
+
"menubar.tsx",
|
|
161
|
+
"mail",
|
|
162
|
+
"newer shadcn: improved data-[state=open] states + function-component wrappers",
|
|
163
|
+
],
|
|
164
|
+
|
|
165
|
+
// progress.tsx — macros uses h-1.5 (slim) instead of h-4 and bg-foreground/80
|
|
166
|
+
// instead of bg-primary. Custom design language for the macros app.
|
|
167
|
+
["progress.tsx", "macros", "custom-themed: h-1.5 slim bar, bg-foreground/80"],
|
|
168
|
+
|
|
169
|
+
// sonner.tsx — two intentional variants:
|
|
170
|
+
// • mail: heavily custom-styled toasts (bg-card, rounded-lg, text-13px,
|
|
171
|
+
// custom action/cancel button styles)
|
|
172
|
+
// • calendar: uses w-fit instead of w-[var(--width)] for a compact toast
|
|
173
|
+
[
|
|
174
|
+
"sonner.tsx",
|
|
175
|
+
"mail",
|
|
176
|
+
"heavily custom-styled toasts (bg-card, 13px, custom action styles)",
|
|
177
|
+
],
|
|
178
|
+
["sonner.tsx", "calendar", "compact variant: w-fit instead of fixed-width"],
|
|
179
|
+
|
|
180
|
+
// tabs.tsx — two intentional variants:
|
|
181
|
+
// • plan: adds border border-transparent to TabsTrigger for layout stability
|
|
182
|
+
// • macros: adds duration-200 transition and hover:text-foreground
|
|
183
|
+
[
|
|
184
|
+
"tabs.tsx",
|
|
185
|
+
"plan",
|
|
186
|
+
"border border-transparent on trigger for layout stability",
|
|
187
|
+
],
|
|
188
|
+
[
|
|
189
|
+
"tabs.tsx",
|
|
190
|
+
"macros",
|
|
191
|
+
"adds duration-200 transition + hover:text-foreground",
|
|
192
|
+
],
|
|
193
|
+
|
|
194
|
+
// textarea.tsx — three intentional variants beyond the canonical 10-template version:
|
|
195
|
+
// • assets: adds autoGrow prop for auto-expanding textareas (used at call sites)
|
|
196
|
+
// • macros: adds transition-all hover:border-ring/50 (custom visual polish)
|
|
197
|
+
// • mail: minor whitespace/style difference; same functional behaviour
|
|
198
|
+
[
|
|
199
|
+
"textarea.tsx",
|
|
200
|
+
"assets",
|
|
201
|
+
"autoGrow prop: auto-expanding textarea, used at call sites",
|
|
202
|
+
],
|
|
203
|
+
[
|
|
204
|
+
"textarea.tsx",
|
|
205
|
+
"macros",
|
|
206
|
+
"custom: transition-all hover:border-ring/50 animation",
|
|
207
|
+
],
|
|
208
|
+
["textarea.tsx", "mail", "minor whitespace/style difference from canonical"],
|
|
209
|
+
];
|
|
210
|
+
|
|
211
|
+
function workspaceRoot(): string {
|
|
212
|
+
let current = process.cwd();
|
|
213
|
+
while (current !== path.dirname(current)) {
|
|
214
|
+
if (fs.existsSync(path.join(current, "pnpm-workspace.yaml"))) {
|
|
215
|
+
return current;
|
|
216
|
+
}
|
|
217
|
+
current = path.dirname(current);
|
|
218
|
+
}
|
|
219
|
+
throw new Error("Could not locate workspace root.");
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
const ROOT = workspaceRoot();
|
|
223
|
+
|
|
224
|
+
function md5(content: string): string {
|
|
225
|
+
return crypto.createHash("md5").update(content).digest("hex");
|
|
226
|
+
}
|
|
227
|
+
|
|
228
|
+
function readUiFile(template: string, filename: string): string {
|
|
229
|
+
return fs.readFileSync(
|
|
230
|
+
path.join(ROOT, "templates", template, "app", "components", "ui", filename),
|
|
231
|
+
"utf-8",
|
|
232
|
+
);
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
function getTemplates(): string[] {
|
|
236
|
+
return fs
|
|
237
|
+
.readdirSync(path.join(ROOT, "templates"))
|
|
238
|
+
.filter((t) =>
|
|
239
|
+
fs.existsSync(path.join(ROOT, "templates", t, "app", "components", "ui")),
|
|
240
|
+
);
|
|
241
|
+
}
|
|
242
|
+
|
|
243
|
+
function getPrimitives(template: string): string[] {
|
|
244
|
+
const dir = path.join(ROOT, "templates", template, "app", "components", "ui");
|
|
245
|
+
return fs.readdirSync(dir).filter((f) => f.endsWith(".tsx"));
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
describe("ui-primitives sync guard", () => {
|
|
249
|
+
it("keeps shared ui primitives byte-identical across templates, except documented allow-list", () => {
|
|
250
|
+
const templates = getTemplates();
|
|
251
|
+
|
|
252
|
+
// Build map: primitive → (hash → [templates])
|
|
253
|
+
const hashes = new Map<string, Map<string, string[]>>();
|
|
254
|
+
|
|
255
|
+
for (const template of templates) {
|
|
256
|
+
for (const primitive of getPrimitives(template)) {
|
|
257
|
+
const content = readUiFile(template, primitive);
|
|
258
|
+
const h = md5(content);
|
|
259
|
+
|
|
260
|
+
if (!hashes.has(primitive)) hashes.set(primitive, new Map());
|
|
261
|
+
const byHash = hashes.get(primitive)!;
|
|
262
|
+
if (!byHash.has(h)) byHash.set(h, []);
|
|
263
|
+
byHash.get(h)!.push(template);
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
|
|
267
|
+
// Build allow-list set for fast lookup: "primitive:template"
|
|
268
|
+
const allowed = new Set(ALLOW_LIST.map(([p, t]) => `${p}:${t}`));
|
|
269
|
+
|
|
270
|
+
const violations: string[] = [];
|
|
271
|
+
|
|
272
|
+
for (const [primitive, byHash] of hashes) {
|
|
273
|
+
if (byHash.size <= 1) continue; // all identical — fine
|
|
274
|
+
|
|
275
|
+
// Determine the canonical hash: the one held by the most templates.
|
|
276
|
+
let canonicalHash = "";
|
|
277
|
+
let canonicalCount = 0;
|
|
278
|
+
for (const [h, templates] of byHash) {
|
|
279
|
+
if (templates.length > canonicalCount) {
|
|
280
|
+
canonicalCount = templates.length;
|
|
281
|
+
canonicalHash = h;
|
|
282
|
+
}
|
|
283
|
+
}
|
|
284
|
+
|
|
285
|
+
for (const [h, templates] of byHash) {
|
|
286
|
+
if (h === canonicalHash) continue;
|
|
287
|
+
for (const template of templates) {
|
|
288
|
+
const key = `${primitive}:${template}`;
|
|
289
|
+
if (!allowed.has(key)) {
|
|
290
|
+
violations.push(
|
|
291
|
+
`${primitive} in "${template}" differs from canonical (held by ${canonicalCount} templates) and is not in ALLOW_LIST`,
|
|
292
|
+
);
|
|
293
|
+
}
|
|
294
|
+
}
|
|
295
|
+
}
|
|
296
|
+
}
|
|
297
|
+
|
|
298
|
+
expect(
|
|
299
|
+
violations,
|
|
300
|
+
[
|
|
301
|
+
"Some ui primitives have drifted from the canonical version.",
|
|
302
|
+
"Either update the drifted template(s) to match the canonical,",
|
|
303
|
+
"or add an entry to ALLOW_LIST in ui-primitives-sync.spec.ts",
|
|
304
|
+
"with a comment explaining why the deviation is intentional.",
|
|
305
|
+
"",
|
|
306
|
+
...violations,
|
|
307
|
+
].join("\n"),
|
|
308
|
+
).toEqual([]);
|
|
309
|
+
});
|
|
310
|
+
|
|
311
|
+
it("every allow-list entry references an existing template+primitive pair", () => {
|
|
312
|
+
const templates = getTemplates();
|
|
313
|
+
const templateSet = new Set(templates);
|
|
314
|
+
|
|
315
|
+
for (const [primitive, template, reason] of ALLOW_LIST) {
|
|
316
|
+
expect(
|
|
317
|
+
reason,
|
|
318
|
+
`ALLOW_LIST entry ${primitive}:${template} has no reason`,
|
|
319
|
+
).toBeTruthy();
|
|
320
|
+
expect(
|
|
321
|
+
templateSet.has(template),
|
|
322
|
+
`ALLOW_LIST entry ${primitive}:${template} — template "${template}" does not exist`,
|
|
323
|
+
).toBe(true);
|
|
324
|
+
|
|
325
|
+
const primitiveExists = fs.existsSync(
|
|
326
|
+
path.join(
|
|
327
|
+
ROOT,
|
|
328
|
+
"templates",
|
|
329
|
+
template,
|
|
330
|
+
"app",
|
|
331
|
+
"components",
|
|
332
|
+
"ui",
|
|
333
|
+
primitive,
|
|
334
|
+
),
|
|
335
|
+
);
|
|
336
|
+
expect(
|
|
337
|
+
primitiveExists,
|
|
338
|
+
`ALLOW_LIST entry ${primitive}:${template} — file does not exist; remove stale entry`,
|
|
339
|
+
).toBe(true);
|
|
340
|
+
}
|
|
341
|
+
});
|
|
342
|
+
|
|
343
|
+
it("every allow-listed template actually diverges from canonical (no stale allow-list entries)", () => {
|
|
344
|
+
const templates = getTemplates();
|
|
345
|
+
|
|
346
|
+
// Compute hashes for all primitives
|
|
347
|
+
const hashes = new Map<string, Map<string, string[]>>();
|
|
348
|
+
for (const template of templates) {
|
|
349
|
+
for (const primitive of getPrimitives(template)) {
|
|
350
|
+
const content = readUiFile(template, primitive);
|
|
351
|
+
const h = md5(content);
|
|
352
|
+
if (!hashes.has(primitive)) hashes.set(primitive, new Map());
|
|
353
|
+
const byHash = hashes.get(primitive)!;
|
|
354
|
+
if (!byHash.has(h)) byHash.set(h, []);
|
|
355
|
+
byHash.get(h)!.push(template);
|
|
356
|
+
}
|
|
357
|
+
}
|
|
358
|
+
|
|
359
|
+
const stale: string[] = [];
|
|
360
|
+
for (const [primitive, template] of ALLOW_LIST) {
|
|
361
|
+
const byHash = hashes.get(primitive);
|
|
362
|
+
if (!byHash) continue; // file doesn't exist, caught by other test
|
|
363
|
+
|
|
364
|
+
// Find canonical hash (most templates)
|
|
365
|
+
let canonicalHash = "";
|
|
366
|
+
let canonicalCount = 0;
|
|
367
|
+
for (const [h, ts] of byHash) {
|
|
368
|
+
if (ts.length > canonicalCount) {
|
|
369
|
+
canonicalCount = ts.length;
|
|
370
|
+
canonicalHash = h;
|
|
371
|
+
}
|
|
372
|
+
}
|
|
373
|
+
|
|
374
|
+
// Find this template's hash
|
|
375
|
+
let templateHash = "";
|
|
376
|
+
for (const [h, ts] of byHash) {
|
|
377
|
+
if (ts.includes(template)) {
|
|
378
|
+
templateHash = h;
|
|
379
|
+
break;
|
|
380
|
+
}
|
|
381
|
+
}
|
|
382
|
+
|
|
383
|
+
if (templateHash === canonicalHash) {
|
|
384
|
+
stale.push(
|
|
385
|
+
`${primitive}:${template} is in ALLOW_LIST but is now identical to canonical; remove the stale entry`,
|
|
386
|
+
);
|
|
387
|
+
}
|
|
388
|
+
}
|
|
389
|
+
|
|
390
|
+
expect(
|
|
391
|
+
stale,
|
|
392
|
+
[
|
|
393
|
+
"Stale ALLOW_LIST entries detected (template now matches canonical).",
|
|
394
|
+
"Remove them from ui-primitives-sync.spec.ts:",
|
|
395
|
+
...stale,
|
|
396
|
+
].join("\n"),
|
|
397
|
+
).toEqual([]);
|
|
398
|
+
});
|
|
399
|
+
});
|
|
@@ -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
|
|
package/tsconfig.base.json
CHANGED
|
@@ -17,12 +17,10 @@
|
|
|
17
17
|
"esModuleInterop": true,
|
|
18
18
|
"allowSyntheticDefaultImports": true,
|
|
19
19
|
|
|
20
|
-
"strict":
|
|
20
|
+
"strict": true,
|
|
21
21
|
"noUnusedLocals": false,
|
|
22
22
|
"noUnusedParameters": false,
|
|
23
|
-
"noImplicitAny": false,
|
|
24
23
|
"noFallthroughCasesInSwitch": false,
|
|
25
|
-
"strictNullChecks": false,
|
|
26
24
|
|
|
27
25
|
"rootDirs": [".", "./.react-router/types"],
|
|
28
26
|
"baseUrl": ".",
|
|
@@ -32,12 +30,6 @@
|
|
|
32
30
|
},
|
|
33
31
|
"types": ["vite/client"]
|
|
34
32
|
},
|
|
35
|
-
"include": [
|
|
36
|
-
"app/**/*",
|
|
37
|
-
"server/**/*",
|
|
38
|
-
"shared/**/*",
|
|
39
|
-
"vite.config.ts",
|
|
40
|
-
"vite.config.server.ts"
|
|
41
|
-
],
|
|
33
|
+
"include": ["app/**/*", "server/**/*", "shared/**/*", "vite.config.ts"],
|
|
42
34
|
"exclude": ["node_modules", "dist"]
|
|
43
35
|
}
|
package/dist/cli/app-skill.d.ts
DELETED
|
@@ -1,157 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* `agent-native app-skill` packages an agent-native app as a distributable
|
|
3
|
-
* skill bundle: instructions + MCP connector + embeddable app surfaces.
|
|
4
|
-
*
|
|
5
|
-
* The manifest intentionally contains no user secrets. Hosted installs write
|
|
6
|
-
* URL-only MCP entries; clients that need auth complete OAuth/device setup in
|
|
7
|
-
* the host. Local installs point at a developer-owned app process.
|
|
8
|
-
*/
|
|
9
|
-
import { type ClientId } from "./mcp-config-writers.js";
|
|
10
|
-
export type SkillVisibility = "internal" | "exported" | "both";
|
|
11
|
-
export type AppSkillHostAdapter = "codex-plugin" | "claude-marketplace" | "vercel-skills" | "plain-skill" | "claude-skill" | "chatgpt-mcp" | "generic-mcp";
|
|
12
|
-
export interface AppSkillManifestSkill {
|
|
13
|
-
path: string;
|
|
14
|
-
visibility: SkillVisibility;
|
|
15
|
-
exportAs?: string;
|
|
16
|
-
}
|
|
17
|
-
export interface AppSkillSurface {
|
|
18
|
-
id: string;
|
|
19
|
-
action?: string;
|
|
20
|
-
path: string;
|
|
21
|
-
mediaTypes?: string[];
|
|
22
|
-
defaultMediaType?: string;
|
|
23
|
-
}
|
|
24
|
-
export interface AppSkillManifest {
|
|
25
|
-
schemaVersion: 1;
|
|
26
|
-
id: string;
|
|
27
|
-
displayName: string;
|
|
28
|
-
description: string;
|
|
29
|
-
/**
|
|
30
|
-
* Optional semver base for generated plugin manifests. Codex keys its plugin
|
|
31
|
-
* cache on the version string, so the packer appends a content hash to this
|
|
32
|
-
* base; leave it unset to default to "1.0.0".
|
|
33
|
-
*/
|
|
34
|
-
version?: string;
|
|
35
|
-
hosted: {
|
|
36
|
-
url: string;
|
|
37
|
-
mcpUrl: string;
|
|
38
|
-
};
|
|
39
|
-
mcp: {
|
|
40
|
-
serverName: string;
|
|
41
|
-
aliases?: string[];
|
|
42
|
-
};
|
|
43
|
-
local?: {
|
|
44
|
-
template?: string;
|
|
45
|
-
sourcePath?: string;
|
|
46
|
-
defaultUrl?: string;
|
|
47
|
-
commands?: {
|
|
48
|
-
install?: string;
|
|
49
|
-
dev?: string;
|
|
50
|
-
start?: string;
|
|
51
|
-
};
|
|
52
|
-
};
|
|
53
|
-
auth?: {
|
|
54
|
-
mode?: "oauth" | "device" | "none";
|
|
55
|
-
setup?: string;
|
|
56
|
-
};
|
|
57
|
-
surfaces: AppSkillSurface[];
|
|
58
|
-
skills: AppSkillManifestSkill[];
|
|
59
|
-
hostAdapters: AppSkillHostAdapter[];
|
|
60
|
-
}
|
|
61
|
-
export interface LoadedAppSkillManifest {
|
|
62
|
-
manifest: AppSkillManifest;
|
|
63
|
-
file: string;
|
|
64
|
-
dir: string;
|
|
65
|
-
}
|
|
66
|
-
export interface ParsedAppSkillArgs {
|
|
67
|
-
command: "ensure" | "launch" | "pack" | "help";
|
|
68
|
-
manifest?: string;
|
|
69
|
-
client: string;
|
|
70
|
-
scope: string;
|
|
71
|
-
serverName?: string;
|
|
72
|
-
out?: string;
|
|
73
|
-
into?: string;
|
|
74
|
-
mode: "hosted" | "local";
|
|
75
|
-
dryRun: boolean;
|
|
76
|
-
skipInstall: boolean;
|
|
77
|
-
noRegister: boolean;
|
|
78
|
-
printJson: boolean;
|
|
79
|
-
yes: boolean;
|
|
80
|
-
}
|
|
81
|
-
export interface EnsureAppSkillOptions {
|
|
82
|
-
mode?: "hosted" | "local";
|
|
83
|
-
clients?: ClientId[];
|
|
84
|
-
scope?: string;
|
|
85
|
-
serverName?: string;
|
|
86
|
-
baseDir?: string;
|
|
87
|
-
dryRun?: boolean;
|
|
88
|
-
confirm?: boolean;
|
|
89
|
-
yes?: boolean;
|
|
90
|
-
log?: (message: string) => void;
|
|
91
|
-
}
|
|
92
|
-
export interface EnsureAppSkillResult {
|
|
93
|
-
mode: "hosted" | "local";
|
|
94
|
-
serverName: string;
|
|
95
|
-
mcpUrl: string;
|
|
96
|
-
clients: ClientId[];
|
|
97
|
-
written: {
|
|
98
|
-
client: ClientId;
|
|
99
|
-
file: string;
|
|
100
|
-
}[];
|
|
101
|
-
}
|
|
102
|
-
export interface LaunchAppSkillOptions {
|
|
103
|
-
mode?: "hosted" | "local";
|
|
104
|
-
into?: string;
|
|
105
|
-
dryRun?: boolean;
|
|
106
|
-
skipInstall?: boolean;
|
|
107
|
-
noRegister?: boolean;
|
|
108
|
-
clients?: ClientId[];
|
|
109
|
-
scope?: string;
|
|
110
|
-
serverName?: string;
|
|
111
|
-
baseDir?: string;
|
|
112
|
-
confirm?: boolean;
|
|
113
|
-
yes?: boolean;
|
|
114
|
-
log?: (message: string) => void;
|
|
115
|
-
}
|
|
116
|
-
export interface AppSkillLaunchPlan {
|
|
117
|
-
mode: "hosted" | "local";
|
|
118
|
-
appId: string;
|
|
119
|
-
appDir?: string;
|
|
120
|
-
sourceDir?: string;
|
|
121
|
-
url: string;
|
|
122
|
-
mcpUrl: string;
|
|
123
|
-
serverName: string;
|
|
124
|
-
commands: {
|
|
125
|
-
install?: string;
|
|
126
|
-
dev?: string;
|
|
127
|
-
start?: string;
|
|
128
|
-
};
|
|
129
|
-
}
|
|
130
|
-
export declare function normalizeAppSkillManifest(raw: unknown): AppSkillManifest;
|
|
131
|
-
export declare function findAppSkillManifest(startDir?: string): string;
|
|
132
|
-
export declare function loadAppSkillManifest(file?: string): LoadedAppSkillManifest;
|
|
133
|
-
export declare function exportedSkills(manifest: AppSkillManifest): AppSkillManifestSkill[];
|
|
134
|
-
export declare function internalSkills(manifest: AppSkillManifest): AppSkillManifestSkill[];
|
|
135
|
-
export declare function parseAppSkillArgs(argv: string[]): ParsedAppSkillArgs;
|
|
136
|
-
export declare function exportedSkillContentHash(manifestDir: string, skills: AppSkillManifestSkill[], manifest: AppSkillManifest): string;
|
|
137
|
-
/**
|
|
138
|
-
* Plugin version embeds a content hash of the exported skills + MCP server
|
|
139
|
-
* identity/endpoint.
|
|
140
|
-
* Codex keys its plugin cache on the version string, so a changed skill or MCP
|
|
141
|
-
* URL yields a new version and `codex plugin marketplace upgrade` (which runs
|
|
142
|
-
* on startup) delivers the update automatically — no manual semver bump per
|
|
143
|
-
* edit. Claude Code uses commit-SHA versioning instead (plugin.json omits
|
|
144
|
-
* version), so it auto-updates on every push.
|
|
145
|
-
*/
|
|
146
|
-
export declare function resolvePluginVersion(manifest: AppSkillManifest, manifestDir: string, skills: AppSkillManifestSkill[]): string;
|
|
147
|
-
export interface AppSkillPackResult {
|
|
148
|
-
outDir: string;
|
|
149
|
-
exportedSkillNames: string[];
|
|
150
|
-
files: string[];
|
|
151
|
-
}
|
|
152
|
-
export declare function buildAppSkillPack(loaded: LoadedAppSkillManifest, outDir: string): AppSkillPackResult;
|
|
153
|
-
export declare function resolveLaunchPlan(loaded: LoadedAppSkillManifest, options?: LaunchAppSkillOptions): AppSkillLaunchPlan;
|
|
154
|
-
export declare function ensureAppSkill(loaded: LoadedAppSkillManifest, options?: EnsureAppSkillOptions): Promise<EnsureAppSkillResult>;
|
|
155
|
-
export declare function launchAppSkill(loaded: LoadedAppSkillManifest, options?: LaunchAppSkillOptions): Promise<AppSkillLaunchPlan>;
|
|
156
|
-
export declare function runAppSkill(argv: string[]): Promise<void>;
|
|
157
|
-
//# sourceMappingURL=app-skill.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"app-skill.d.ts","sourceRoot":"","sources":["../../src/cli/app-skill.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"audit-agent-web.d.ts","sourceRoot":"","sources":["../../src/cli/audit-agent-web.ts"],"names":[],"mappings":"AAeA,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA0JpE"}
|