@agent-native/core 0.6.1 → 0.7.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/README.md +43 -3
- package/dist/agent/production-agent.d.ts.map +1 -1
- package/dist/agent/production-agent.js +154 -4
- package/dist/agent/production-agent.js.map +1 -1
- package/dist/agent/types.d.ts +1 -1
- package/dist/agent/types.d.ts.map +1 -1
- package/dist/cli/create-workspace.d.ts +8 -0
- package/dist/cli/create-workspace.d.ts.map +1 -0
- package/dist/cli/create-workspace.js +18 -0
- package/dist/cli/create-workspace.js.map +1 -0
- package/dist/cli/create.d.ts +35 -7
- package/dist/cli/create.d.ts.map +1 -1
- package/dist/cli/create.js +444 -251
- package/dist/cli/create.js.map +1 -1
- package/dist/cli/index.js +59 -5
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/workspacify.d.ts +18 -0
- package/dist/cli/workspacify.d.ts.map +1 -0
- package/dist/cli/workspacify.js +74 -0
- package/dist/cli/workspacify.js.map +1 -0
- package/dist/client/AgentPanel.d.ts +1 -1
- package/dist/client/AgentPanel.d.ts.map +1 -1
- package/dist/client/AgentPanel.js +63 -225
- package/dist/client/AgentPanel.js.map +1 -1
- package/dist/client/components/CodeRequiredDialog.d.ts.map +1 -1
- package/dist/client/components/CodeRequiredDialog.js +86 -5
- package/dist/client/components/CodeRequiredDialog.js.map +1 -1
- package/dist/client/composer/MentionPopover.d.ts.map +1 -1
- package/dist/client/composer/MentionPopover.js +15 -2
- package/dist/client/composer/MentionPopover.js.map +1 -1
- package/dist/client/composer/TiptapComposer.d.ts.map +1 -1
- package/dist/client/composer/TiptapComposer.js +3 -1
- package/dist/client/composer/TiptapComposer.js.map +1 -1
- package/dist/client/composer/types.d.ts +1 -1
- package/dist/client/composer/types.d.ts.map +1 -1
- package/dist/client/integrations/IntegrationsPanel.d.ts.map +1 -1
- package/dist/client/integrations/IntegrationsPanel.js +22 -9
- package/dist/client/integrations/IntegrationsPanel.js.map +1 -1
- package/dist/client/onboarding/OnboardingBanner.d.ts +13 -0
- package/dist/client/onboarding/OnboardingBanner.d.ts.map +1 -0
- package/dist/client/onboarding/OnboardingBanner.js +36 -0
- package/dist/client/onboarding/OnboardingBanner.js.map +1 -0
- package/dist/client/onboarding/OnboardingPanel.d.ts +16 -0
- package/dist/client/onboarding/OnboardingPanel.d.ts.map +1 -0
- package/dist/client/onboarding/OnboardingPanel.js +360 -0
- package/dist/client/onboarding/OnboardingPanel.js.map +1 -0
- package/dist/client/onboarding/SetupButton.d.ts +10 -0
- package/dist/client/onboarding/SetupButton.d.ts.map +1 -0
- package/dist/client/onboarding/SetupButton.js +26 -0
- package/dist/client/onboarding/SetupButton.js.map +1 -0
- package/dist/client/onboarding/index.d.ts +12 -0
- package/dist/client/onboarding/index.d.ts.map +1 -0
- package/dist/client/onboarding/index.js +11 -0
- package/dist/client/onboarding/index.js.map +1 -0
- package/dist/client/onboarding/use-onboarding.d.ts +34 -0
- package/dist/client/onboarding/use-onboarding.d.ts.map +1 -0
- package/dist/client/onboarding/use-onboarding.js +101 -0
- package/dist/client/onboarding/use-onboarding.js.map +1 -0
- package/dist/client/org/TeamPage.d.ts +6 -1
- package/dist/client/org/TeamPage.d.ts.map +1 -1
- package/dist/client/org/TeamPage.js +85 -14
- package/dist/client/org/TeamPage.js.map +1 -1
- package/dist/client/resources/ResourceEditor.d.ts.map +1 -1
- package/dist/client/resources/ResourceEditor.js +48 -77
- package/dist/client/resources/ResourceEditor.js.map +1 -1
- package/dist/client/resources/ResourceTree.d.ts.map +1 -1
- package/dist/client/resources/ResourceTree.js +16 -3
- package/dist/client/resources/ResourceTree.js.map +1 -1
- package/dist/client/resources/ResourcesPanel.d.ts.map +1 -1
- package/dist/client/resources/ResourcesPanel.js +135 -9
- package/dist/client/resources/ResourcesPanel.js.map +1 -1
- package/dist/client/resources/use-resources.d.ts +5 -0
- package/dist/client/resources/use-resources.d.ts.map +1 -1
- package/dist/client/resources/use-resources.js.map +1 -1
- package/dist/client/settings/AgentsSection.d.ts +2 -0
- package/dist/client/settings/AgentsSection.d.ts.map +1 -0
- package/dist/client/settings/AgentsSection.js +198 -0
- package/dist/client/settings/AgentsSection.js.map +1 -0
- package/dist/client/settings/BackgroundAgentSection.d.ts +2 -0
- package/dist/client/settings/BackgroundAgentSection.d.ts.map +1 -0
- package/dist/client/settings/BackgroundAgentSection.js +46 -0
- package/dist/client/settings/BackgroundAgentSection.js.map +1 -0
- package/dist/client/settings/BrowserSection.d.ts +2 -0
- package/dist/client/settings/BrowserSection.d.ts.map +1 -0
- package/dist/client/settings/BrowserSection.js +10 -0
- package/dist/client/settings/BrowserSection.js.map +1 -0
- package/dist/client/settings/ComingSoonSection.d.ts +13 -0
- package/dist/client/settings/ComingSoonSection.d.ts.map +1 -0
- package/dist/client/settings/ComingSoonSection.js +9 -0
- package/dist/client/settings/ComingSoonSection.js.map +1 -0
- package/dist/client/settings/LLMSection.d.ts +2 -0
- package/dist/client/settings/LLMSection.d.ts.map +1 -0
- package/dist/client/settings/LLMSection.js +64 -0
- package/dist/client/settings/LLMSection.js.map +1 -0
- package/dist/client/settings/SettingsPanel.d.ts +8 -0
- package/dist/client/settings/SettingsPanel.d.ts.map +1 -0
- package/dist/client/settings/SettingsPanel.js +118 -0
- package/dist/client/settings/SettingsPanel.js.map +1 -0
- package/dist/client/settings/SettingsSection.d.ts +19 -0
- package/dist/client/settings/SettingsSection.d.ts.map +1 -0
- package/dist/client/settings/SettingsSection.js +10 -0
- package/dist/client/settings/SettingsSection.js.map +1 -0
- package/dist/client/settings/index.d.ts +3 -0
- package/dist/client/settings/index.d.ts.map +1 -0
- package/dist/client/settings/index.js +3 -0
- package/dist/client/settings/index.js.map +1 -0
- package/dist/client/settings/useBuilderStatus.d.ts +22 -0
- package/dist/client/settings/useBuilderStatus.d.ts.map +1 -0
- package/dist/client/settings/useBuilderStatus.js +41 -0
- package/dist/client/settings/useBuilderStatus.js.map +1 -0
- package/dist/deploy/build.js +198 -54
- package/dist/deploy/build.js.map +1 -1
- package/dist/deploy/route-discovery.d.ts +5 -0
- package/dist/deploy/route-discovery.d.ts.map +1 -1
- package/dist/deploy/route-discovery.js +38 -7
- package/dist/deploy/route-discovery.js.map +1 -1
- package/dist/deploy/workspace-core.d.ts +28 -0
- package/dist/deploy/workspace-core.d.ts.map +1 -0
- package/dist/deploy/workspace-core.js +223 -0
- package/dist/deploy/workspace-core.js.map +1 -0
- package/dist/deploy/workspace-deploy.d.ts +11 -0
- package/dist/deploy/workspace-deploy.d.ts.map +1 -0
- package/dist/deploy/workspace-deploy.js +148 -0
- package/dist/deploy/workspace-deploy.js.map +1 -0
- package/dist/file-upload/builder.d.ts +11 -0
- package/dist/file-upload/builder.d.ts.map +1 -0
- package/dist/file-upload/builder.js +53 -0
- package/dist/file-upload/builder.js.map +1 -0
- package/dist/file-upload/index.d.ts +4 -0
- package/dist/file-upload/index.d.ts.map +1 -0
- package/dist/file-upload/index.js +3 -0
- package/dist/file-upload/index.js.map +1 -0
- package/dist/file-upload/registry.d.ts +23 -0
- package/dist/file-upload/registry.d.ts.map +1 -0
- package/dist/file-upload/registry.js +52 -0
- package/dist/file-upload/registry.js.map +1 -0
- package/dist/file-upload/types.d.ts +37 -0
- package/dist/file-upload/types.d.ts.map +1 -0
- package/dist/file-upload/types.js +10 -0
- package/dist/file-upload/types.js.map +1 -0
- package/dist/integrations/adapters/google-docs.d.ts +89 -0
- package/dist/integrations/adapters/google-docs.d.ts.map +1 -0
- package/dist/integrations/adapters/google-docs.js +261 -0
- package/dist/integrations/adapters/google-docs.js.map +1 -0
- package/dist/integrations/adapters/slack.d.ts.map +1 -1
- package/dist/integrations/adapters/slack.js +34 -0
- package/dist/integrations/adapters/slack.js.map +1 -1
- package/dist/integrations/adapters/telegram.d.ts.map +1 -1
- package/dist/integrations/adapters/telegram.js +32 -0
- package/dist/integrations/adapters/telegram.js.map +1 -1
- package/dist/integrations/google-docs-poller.d.ts +54 -0
- package/dist/integrations/google-docs-poller.d.ts.map +1 -0
- package/dist/integrations/google-docs-poller.js +442 -0
- package/dist/integrations/google-docs-poller.js.map +1 -0
- package/dist/integrations/index.d.ts +2 -0
- package/dist/integrations/index.d.ts.map +1 -1
- package/dist/integrations/index.js +3 -0
- package/dist/integrations/index.js.map +1 -1
- package/dist/integrations/plugin.d.ts.map +1 -1
- package/dist/integrations/plugin.js +49 -2
- package/dist/integrations/plugin.js.map +1 -1
- package/dist/integrations/types.d.ts +33 -0
- package/dist/integrations/types.d.ts.map +1 -1
- package/dist/integrations/webhook-handler.d.ts +10 -1
- package/dist/integrations/webhook-handler.d.ts.map +1 -1
- package/dist/integrations/webhook-handler.js +13 -3
- package/dist/integrations/webhook-handler.js.map +1 -1
- package/dist/jobs/scheduler.d.ts +3 -0
- package/dist/jobs/scheduler.d.ts.map +1 -1
- package/dist/jobs/scheduler.js +81 -60
- package/dist/jobs/scheduler.js.map +1 -1
- package/dist/jobs/tools.d.ts.map +1 -1
- package/dist/jobs/tools.js +20 -3
- package/dist/jobs/tools.js.map +1 -1
- package/dist/mcp-client/config.d.ts +46 -0
- package/dist/mcp-client/config.d.ts.map +1 -0
- package/dist/mcp-client/config.js +152 -0
- package/dist/mcp-client/config.js.map +1 -0
- package/dist/mcp-client/index.d.ts +17 -0
- package/dist/mcp-client/index.d.ts.map +1 -0
- package/dist/mcp-client/index.js +53 -0
- package/dist/mcp-client/index.js.map +1 -0
- package/dist/mcp-client/manager.d.ts +76 -0
- package/dist/mcp-client/manager.d.ts.map +1 -0
- package/dist/mcp-client/manager.js +212 -0
- package/dist/mcp-client/manager.js.map +1 -0
- package/dist/oauth-tokens/store.d.ts.map +1 -1
- package/dist/oauth-tokens/store.js +3 -1
- package/dist/oauth-tokens/store.js.map +1 -1
- package/dist/onboarding/default-steps.d.ts +10 -0
- package/dist/onboarding/default-steps.d.ts.map +1 -0
- package/dist/onboarding/default-steps.js +164 -0
- package/dist/onboarding/default-steps.js.map +1 -0
- package/dist/onboarding/index.d.ts +12 -0
- package/dist/onboarding/index.d.ts.map +1 -0
- package/dist/onboarding/index.js +11 -0
- package/dist/onboarding/index.js.map +1 -0
- package/dist/onboarding/plugin.d.ts +19 -0
- package/dist/onboarding/plugin.d.ts.map +1 -0
- package/dist/onboarding/plugin.js +147 -0
- package/dist/onboarding/plugin.js.map +1 -0
- package/dist/onboarding/registry.d.ts +24 -0
- package/dist/onboarding/registry.d.ts.map +1 -0
- package/dist/onboarding/registry.js +40 -0
- package/dist/onboarding/registry.js.map +1 -0
- package/dist/onboarding/types.d.ts +71 -0
- package/dist/onboarding/types.d.ts.map +1 -0
- package/dist/onboarding/types.js +10 -0
- package/dist/onboarding/types.js.map +1 -0
- package/dist/resources/agents.d.ts +4 -0
- package/dist/resources/agents.d.ts.map +1 -0
- package/dist/resources/agents.js +44 -0
- package/dist/resources/agents.js.map +1 -0
- package/dist/resources/handlers.d.ts +17 -0
- package/dist/resources/handlers.d.ts.map +1 -1
- package/dist/resources/handlers.js +49 -12
- package/dist/resources/handlers.js.map +1 -1
- package/dist/resources/metadata.d.ts +48 -0
- package/dist/resources/metadata.d.ts.map +1 -0
- package/dist/resources/metadata.js +150 -0
- package/dist/resources/metadata.js.map +1 -0
- package/dist/resources/script-helpers.d.ts.map +1 -1
- package/dist/resources/script-helpers.js +3 -2
- package/dist/resources/script-helpers.js.map +1 -1
- package/dist/resources/store.d.ts.map +1 -1
- package/dist/resources/store.js +32 -17
- package/dist/resources/store.js.map +1 -1
- package/dist/scripts/call-agent.d.ts.map +1 -1
- package/dist/scripts/call-agent.js +3 -2
- package/dist/scripts/call-agent.js.map +1 -1
- package/dist/scripts/chat/search-chats.d.ts.map +1 -1
- package/dist/scripts/chat/search-chats.js +2 -1
- package/dist/scripts/chat/search-chats.js.map +1 -1
- package/dist/scripts/core-scripts.d.ts.map +1 -1
- package/dist/scripts/core-scripts.js +2 -0
- package/dist/scripts/core-scripts.js.map +1 -1
- package/dist/scripts/db/scoping.d.ts.map +1 -1
- package/dist/scripts/db/scoping.js +3 -2
- package/dist/scripts/db/scoping.js.map +1 -1
- package/dist/scripts/docs/index.d.ts +2 -0
- package/dist/scripts/docs/index.d.ts.map +1 -0
- package/dist/scripts/docs/index.js +4 -0
- package/dist/scripts/docs/index.js.map +1 -0
- package/dist/scripts/docs/search.d.ts +13 -0
- package/dist/scripts/docs/search.d.ts.map +1 -0
- package/dist/scripts/docs/search.js +130 -0
- package/dist/scripts/docs/search.js.map +1 -0
- package/dist/scripts/resources/delete-memory.d.ts +7 -0
- package/dist/scripts/resources/delete-memory.d.ts.map +1 -0
- package/dist/scripts/resources/delete-memory.js +49 -0
- package/dist/scripts/resources/delete-memory.js.map +1 -0
- package/dist/scripts/resources/delete.d.ts.map +1 -1
- package/dist/scripts/resources/delete.js +2 -1
- package/dist/scripts/resources/delete.js.map +1 -1
- package/dist/scripts/resources/index.d.ts.map +1 -1
- package/dist/scripts/resources/index.js +2 -0
- package/dist/scripts/resources/index.js.map +1 -1
- package/dist/scripts/resources/list.d.ts.map +1 -1
- package/dist/scripts/resources/list.js +2 -1
- package/dist/scripts/resources/list.js.map +1 -1
- package/dist/scripts/resources/migrate-learnings.d.ts.map +1 -1
- package/dist/scripts/resources/migrate-learnings.js +2 -1
- package/dist/scripts/resources/migrate-learnings.js.map +1 -1
- package/dist/scripts/resources/read.d.ts.map +1 -1
- package/dist/scripts/resources/read.js +2 -1
- package/dist/scripts/resources/read.js.map +1 -1
- package/dist/scripts/resources/save-memory.d.ts +9 -0
- package/dist/scripts/resources/save-memory.d.ts.map +1 -0
- package/dist/scripts/resources/save-memory.js +78 -0
- package/dist/scripts/resources/save-memory.js.map +1 -0
- package/dist/scripts/resources/write.d.ts.map +1 -1
- package/dist/scripts/resources/write.js +2 -1
- package/dist/scripts/resources/write.js.map +1 -1
- package/dist/scripts/utils.d.ts +10 -1
- package/dist/scripts/utils.d.ts.map +1 -1
- package/dist/scripts/utils.js +45 -2
- package/dist/scripts/utils.js.map +1 -1
- package/dist/server/action-discovery.d.ts +5 -0
- package/dist/server/action-discovery.d.ts.map +1 -1
- package/dist/server/action-discovery.js +51 -20
- 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 +63 -57
- package/dist/server/action-routes.js.map +1 -1
- package/dist/server/agent-chat-plugin.d.ts +3 -0
- package/dist/server/agent-chat-plugin.d.ts.map +1 -1
- package/dist/server/agent-chat-plugin.js +363 -48
- 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 +11 -23
- package/dist/server/agent-discovery.js.map +1 -1
- package/dist/server/agent-teams.d.ts.map +1 -1
- package/dist/server/agent-teams.js +2 -1
- package/dist/server/agent-teams.js.map +1 -1
- package/dist/server/agents-bundle.d.ts +33 -5
- package/dist/server/agents-bundle.d.ts.map +1 -1
- package/dist/server/agents-bundle.js +108 -64
- package/dist/server/agents-bundle.js.map +1 -1
- package/dist/server/auth.d.ts +1 -0
- package/dist/server/auth.d.ts.map +1 -1
- package/dist/server/auth.js +172 -60
- package/dist/server/auth.js.map +1 -1
- package/dist/server/better-auth-instance.d.ts.map +1 -1
- package/dist/server/better-auth-instance.js +202 -6
- package/dist/server/better-auth-instance.js.map +1 -1
- package/dist/server/builder-browser.d.ts +40 -0
- package/dist/server/builder-browser.d.ts.map +1 -0
- package/dist/server/builder-browser.js +166 -0
- package/dist/server/builder-browser.js.map +1 -0
- package/dist/server/core-routes-plugin.d.ts.map +1 -1
- package/dist/server/core-routes-plugin.js +152 -6
- package/dist/server/core-routes-plugin.js.map +1 -1
- package/dist/server/credential-provider.d.ts +37 -0
- package/dist/server/credential-provider.d.ts.map +1 -0
- package/dist/server/credential-provider.js +49 -0
- package/dist/server/credential-provider.js.map +1 -0
- package/dist/server/framework-request-handler.d.ts.map +1 -1
- package/dist/server/framework-request-handler.js +42 -3
- package/dist/server/framework-request-handler.js.map +1 -1
- package/dist/server/google-auth-plugin.js +1 -1
- package/dist/server/google-oauth.d.ts +1 -1
- package/dist/server/google-oauth.d.ts.map +1 -1
- package/dist/server/google-oauth.js +15 -10
- package/dist/server/google-oauth.js.map +1 -1
- package/dist/server/index.d.ts +3 -0
- package/dist/server/index.d.ts.map +1 -1
- package/dist/server/index.js +3 -0
- package/dist/server/index.js.map +1 -1
- package/dist/server/oauth-helpers.d.ts +1 -0
- package/dist/server/oauth-helpers.d.ts.map +1 -1
- package/dist/server/oauth-helpers.js +5 -4
- package/dist/server/oauth-helpers.js.map +1 -1
- package/dist/server/onboarding-html.d.ts.map +1 -1
- package/dist/server/onboarding-html.js +94 -3
- package/dist/server/onboarding-html.js.map +1 -1
- package/dist/server/request-context.d.ts +20 -0
- package/dist/server/request-context.d.ts.map +1 -0
- package/dist/server/request-context.js +41 -0
- package/dist/server/request-context.js.map +1 -0
- package/dist/templates/default/.agents/skills/actions/SKILL.md +2 -1
- package/dist/templates/default/.agents/skills/security/SKILL.md +145 -40
- package/dist/templates/default/.agents/skills/storing-data/SKILL.md +7 -1
- package/dist/templates/default/_gitignore +1 -0
- package/dist/templates/default/app/root.tsx +4 -1
- package/dist/templates/workspace-core/AGENTS.md +62 -0
- package/dist/templates/workspace-core/actions/company-directory.ts +38 -0
- package/dist/templates/workspace-core/package.json +39 -0
- package/dist/templates/workspace-core/skills/company-policies/SKILL.md +42 -0
- package/dist/templates/workspace-core/src/client/AuthenticatedLayout.tsx +37 -0
- package/dist/templates/workspace-core/src/client/index.ts +26 -0
- package/dist/templates/workspace-core/src/credentials.ts +29 -0
- package/dist/templates/workspace-core/src/index.ts +21 -0
- package/dist/templates/workspace-core/src/server/agent-chat-plugin.ts +30 -0
- package/dist/templates/workspace-core/src/server/auth-plugin.ts +35 -0
- package/dist/templates/workspace-core/src/server/index.ts +22 -0
- package/dist/templates/workspace-core/tailwind.preset.ts +34 -0
- package/dist/templates/workspace-core/tsconfig.json +9 -0
- package/dist/templates/workspace-root/.env.example +37 -0
- package/dist/templates/workspace-root/README.md +62 -0
- package/dist/templates/workspace-root/_gitignore +23 -0
- package/dist/templates/workspace-root/package.json +18 -0
- package/dist/templates/workspace-root/pnpm-workspace.yaml +3 -0
- package/dist/templates/workspace-root/tsconfig.base.json +21 -0
- package/dist/vite/agents-bundle-plugin.d.ts.map +1 -1
- package/dist/vite/agents-bundle-plugin.js +65 -15
- package/dist/vite/agents-bundle-plugin.js.map +1 -1
- package/dist/vite/client.d.ts +16 -0
- package/dist/vite/client.d.ts.map +1 -1
- package/dist/vite/client.js +75 -0
- package/dist/vite/client.js.map +1 -1
- package/docs/content/a2a-protocol.md +223 -0
- package/docs/content/actions.md +129 -0
- package/docs/content/agent-mentions.md +171 -0
- package/docs/content/authentication.md +155 -0
- package/docs/content/cli-adapters.md +244 -0
- package/docs/content/client.md +175 -0
- package/docs/content/context-awareness.md +168 -0
- package/docs/content/creating-templates.md +311 -0
- package/docs/content/database.md +82 -0
- package/docs/content/deployment.md +180 -0
- package/docs/content/enterprise-workspace.md +235 -0
- package/docs/content/faq.md +101 -0
- package/docs/content/file-uploads.md +102 -0
- package/docs/content/frames.md +47 -0
- package/docs/content/getting-started.md +104 -0
- package/docs/content/integrations.md +198 -0
- package/docs/content/key-concepts.md +246 -0
- package/docs/content/mcp-clients.md +110 -0
- package/docs/content/mcp-protocol.md +168 -0
- package/docs/content/onboarding.md +107 -0
- package/docs/content/real-time-collaboration.md +185 -0
- package/docs/content/resources.md +277 -0
- package/docs/content/security.md +158 -0
- package/docs/content/server.md +200 -0
- package/docs/content/skills-guide.md +107 -0
- package/docs/content/what-is-agent-native.md +100 -0
- package/docs/content/workspace-management.md +224 -0
- package/package.json +12 -2
- package/src/templates/default/.agents/skills/actions/SKILL.md +2 -1
- package/src/templates/default/.agents/skills/security/SKILL.md +145 -40
- package/src/templates/default/.agents/skills/storing-data/SKILL.md +7 -1
- package/src/templates/default/_gitignore +1 -0
- package/src/templates/default/app/root.tsx +4 -1
- package/src/templates/workspace-core/AGENTS.md +62 -0
- package/src/templates/workspace-core/actions/company-directory.ts +38 -0
- package/src/templates/workspace-core/package.json +39 -0
- package/src/templates/workspace-core/skills/company-policies/SKILL.md +42 -0
- package/src/templates/workspace-core/src/client/AuthenticatedLayout.tsx +37 -0
- package/src/templates/workspace-core/src/client/index.ts +26 -0
- package/src/templates/workspace-core/src/credentials.ts +29 -0
- package/src/templates/workspace-core/src/index.ts +21 -0
- package/src/templates/workspace-core/src/server/agent-chat-plugin.ts +30 -0
- package/src/templates/workspace-core/src/server/auth-plugin.ts +35 -0
- package/src/templates/workspace-core/src/server/index.ts +22 -0
- package/src/templates/workspace-core/tailwind.preset.ts +34 -0
- package/src/templates/workspace-core/tsconfig.json +9 -0
- package/src/templates/workspace-root/.env.example +37 -0
- package/src/templates/workspace-root/README.md +62 -0
- package/src/templates/workspace-root/_gitignore +23 -0
- package/src/templates/workspace-root/package.json +18 -0
- package/src/templates/workspace-root/pnpm-workspace.yaml +3 -0
- package/src/templates/workspace-root/tsconfig.base.json +21 -0
- package/dist/templates/templates/default/.agents/skills/actions/SKILL.md +0 -142
- package/dist/templates/templates/default/.agents/skills/agent-engines/SKILL.md +0 -127
- package/dist/templates/templates/default/.agents/skills/capture-learnings/SKILL.md +0 -50
- package/dist/templates/templates/default/.agents/skills/create-skill/SKILL.md +0 -167
- package/dist/templates/templates/default/.agents/skills/delegate-to-agent/SKILL.md +0 -90
- package/dist/templates/templates/default/.agents/skills/frontend-design/SKILL.md +0 -69
- package/dist/templates/templates/default/.agents/skills/real-time-collab/SKILL.md +0 -183
- package/dist/templates/templates/default/.agents/skills/real-time-sync/SKILL.md +0 -112
- package/dist/templates/templates/default/.agents/skills/security/SKILL.md +0 -108
- package/dist/templates/templates/default/.agents/skills/self-modifying-code/SKILL.md +0 -79
- package/dist/templates/templates/default/.agents/skills/storing-data/SKILL.md +0 -110
- package/dist/templates/templates/default/.claude/settings.json +0 -100
- package/dist/templates/templates/default/.env.example +0 -5
- package/dist/templates/templates/default/.ignore +0 -0
- package/dist/templates/templates/default/.prettierrc +0 -5
- package/dist/templates/templates/default/AGENTS.md +0 -110
- package/dist/templates/templates/default/DEVELOPING.md +0 -117
- package/dist/templates/templates/default/_gitignore +0 -37
- package/dist/templates/templates/default/actions/hello.ts +0 -20
- package/dist/templates/templates/default/actions/navigate.ts +0 -53
- package/dist/templates/templates/default/actions/run.ts +0 -2
- package/dist/templates/templates/default/actions/view-screen.ts +0 -39
- package/dist/templates/templates/default/app/entry.client.tsx +0 -4
- package/dist/templates/templates/default/app/entry.server.tsx +0 -56
- package/dist/templates/templates/default/app/global.css +0 -95
- package/dist/templates/templates/default/app/lib/utils.ts +0 -1
- package/dist/templates/templates/default/app/root.tsx +0 -107
- package/dist/templates/templates/default/app/routes/_index.tsx +0 -62
- package/dist/templates/templates/default/app/routes.ts +0 -4
- package/dist/templates/templates/default/app/vite-env.d.ts +0 -6
- package/dist/templates/templates/default/components.json +0 -20
- package/dist/templates/templates/default/data/.gitkeep +0 -0
- package/dist/templates/templates/default/data/sync-config.json +0 -1
- package/dist/templates/templates/default/learnings.defaults.md +0 -5
- package/dist/templates/templates/default/learnings.md +0 -0
- package/dist/templates/templates/default/package.json +0 -46
- package/dist/templates/templates/default/postcss.config.js +0 -6
- package/dist/templates/templates/default/public/icon-180.svg +0 -4
- package/dist/templates/templates/default/public/icon-192.svg +0 -4
- package/dist/templates/templates/default/public/icon-512.svg +0 -4
- package/dist/templates/templates/default/public/manifest.json +0 -13
- package/dist/templates/templates/default/react-router.config.ts +0 -6
- package/dist/templates/templates/default/server/middleware/auth.ts +0 -15
- package/dist/templates/templates/default/server/plugins/.gitkeep +0 -0
- package/dist/templates/templates/default/server/routes/[...page].get.ts +0 -5
- package/dist/templates/templates/default/server/routes/api/hello.get.ts +0 -5
- package/dist/templates/templates/default/shared/api.ts +0 -6
- package/dist/templates/templates/default/ssr-entry.ts +0 -20
- package/dist/templates/templates/default/tailwind.config.ts +0 -7
- package/dist/templates/templates/default/tsconfig.json +0 -11
- package/dist/templates/templates/default/vite.config.ts +0 -6
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SettingsPanel.js","sourceRoot":"","sources":["../../../src/client/settings/SettingsPanel.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { ReactNode } from "react";
|
|
2
|
+
interface SettingsSectionProps {
|
|
3
|
+
icon: ReactNode;
|
|
4
|
+
title: string;
|
|
5
|
+
subtitle?: string;
|
|
6
|
+
badge?: string;
|
|
7
|
+
required?: boolean;
|
|
8
|
+
connected?: boolean;
|
|
9
|
+
open?: boolean;
|
|
10
|
+
onToggle?: () => void;
|
|
11
|
+
children: ReactNode;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Collapsible settings section card with icon, title, status dot, and optional badge.
|
|
15
|
+
* Controlled via `open` / `onToggle` for accordion behaviour.
|
|
16
|
+
*/
|
|
17
|
+
export declare function SettingsSection({ icon, title, subtitle, badge, required, connected, open, onToggle, children, }: SettingsSectionProps): import("react/jsx-runtime").JSX.Element;
|
|
18
|
+
export {};
|
|
19
|
+
//# sourceMappingURL=SettingsSection.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SettingsSection.d.ts","sourceRoot":"","sources":["../../../src/client/settings/SettingsSection.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC,UAAU,oBAAoB;IAC5B,IAAI,EAAE,SAAS,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,EAC9B,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,SAAS,EACT,IAAY,EACZ,QAAQ,EACR,QAAQ,GACT,EAAE,oBAAoB,2CA8CtB"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { IconChevronDown } from "@tabler/icons-react";
|
|
3
|
+
/**
|
|
4
|
+
* Collapsible settings section card with icon, title, status dot, and optional badge.
|
|
5
|
+
* Controlled via `open` / `onToggle` for accordion behaviour.
|
|
6
|
+
*/
|
|
7
|
+
export function SettingsSection({ icon, title, subtitle, badge, required, connected, open = false, onToggle, children, }) {
|
|
8
|
+
return (_jsxs("div", { className: "rounded-lg border border-border bg-background/50", children: [_jsxs("button", { type: "button", onClick: onToggle, className: "flex w-full items-center justify-between px-3 py-2.5 text-left", children: [_jsxs("div", { className: "flex items-center gap-2 min-w-0", children: [_jsx("span", { className: "shrink-0 text-muted-foreground", children: icon }), _jsx("span", { className: "text-[12px] font-medium text-foreground truncate", children: title }), connected && (_jsx("span", { className: "flex items-center gap-1 shrink-0 text-[9px] font-medium text-green-500", children: "Connected" })), required && !connected && (_jsx("span", { className: "shrink-0 rounded-full bg-accent/60 px-1.5 py-0.5 text-[9px] font-semibold uppercase tracking-wide text-muted-foreground", children: "Required" })), badge && (_jsx("span", { className: "shrink-0 rounded-full bg-accent/60 px-1.5 py-0.5 text-[9px] font-semibold uppercase tracking-wide text-muted-foreground", children: badge }))] }), _jsx(IconChevronDown, { size: 12, className: `shrink-0 text-muted-foreground transition-transform ${open ? "rotate-180" : ""}` })] }), open && (_jsxs("div", { className: "border-t border-border px-3 pb-3 pt-2.5", children: [subtitle && (_jsx("p", { className: "text-[10px] text-muted-foreground mb-2.5", children: subtitle })), children] }))] }));
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=SettingsSection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SettingsSection.js","sourceRoot":"","sources":["../../../src/client/settings/SettingsSection.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AActD;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,EAC9B,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,SAAS,EACT,IAAI,GAAG,KAAK,EACZ,QAAQ,EACR,QAAQ,GACa;IACrB,OAAO,CACL,eAAK,SAAS,EAAC,kDAAkD,aAC/D,kBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,QAAQ,EACjB,SAAS,EAAC,gEAAgE,aAE1E,eAAK,SAAS,EAAC,iCAAiC,aAC9C,eAAM,SAAS,EAAC,gCAAgC,YAAE,IAAI,GAAQ,EAC9D,eAAM,SAAS,EAAC,kDAAkD,YAC/D,KAAK,GACD,EACN,SAAS,IAAI,CACZ,eAAM,SAAS,EAAC,wEAAwE,0BAEjF,CACR,EACA,QAAQ,IAAI,CAAC,SAAS,IAAI,CACzB,eAAM,SAAS,EAAC,yHAAyH,yBAElI,CACR,EACA,KAAK,IAAI,CACR,eAAM,SAAS,EAAC,yHAAyH,YACtI,KAAK,GACD,CACR,IACG,EACN,KAAC,eAAe,IACd,IAAI,EAAE,EAAE,EACR,SAAS,EAAE,uDAAuD,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,GAC5F,IACK,EACR,IAAI,IAAI,CACP,eAAK,SAAS,EAAC,yCAAyC,aACrD,QAAQ,IAAI,CACX,YAAG,SAAS,EAAC,0CAA0C,YACpD,QAAQ,GACP,CACL,EACA,QAAQ,IACL,CACP,IACG,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/settings/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/client/settings/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export interface BuilderStatus {
|
|
2
|
+
configured: boolean;
|
|
3
|
+
builderEnabled: boolean;
|
|
4
|
+
connectUrl: string;
|
|
5
|
+
appHost: string;
|
|
6
|
+
apiHost: string;
|
|
7
|
+
publicKeyConfigured: boolean;
|
|
8
|
+
privateKeyConfigured: boolean;
|
|
9
|
+
userId?: string;
|
|
10
|
+
orgName?: string;
|
|
11
|
+
orgKind?: string;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Fetches Builder connection status from /_agent-native/builder/status.
|
|
15
|
+
* Re-fetches on window focus to detect post-redirect state changes.
|
|
16
|
+
*/
|
|
17
|
+
export declare function useBuilderStatus(): {
|
|
18
|
+
status: BuilderStatus;
|
|
19
|
+
loading: boolean;
|
|
20
|
+
refetch: () => Promise<void>;
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=useBuilderStatus.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useBuilderStatus.d.ts","sourceRoot":"","sources":["../../../src/client/settings/useBuilderStatus.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,OAAO,CAAC;IACpB,cAAc,EAAE,OAAO,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,oBAAoB,EAAE,OAAO,CAAC;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;GAGG;AACH,wBAAgB,gBAAgB;;;;EAmC/B"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { useState, useEffect, useCallback } from "react";
|
|
2
|
+
/**
|
|
3
|
+
* Fetches Builder connection status from /_agent-native/builder/status.
|
|
4
|
+
* Re-fetches on window focus to detect post-redirect state changes.
|
|
5
|
+
*/
|
|
6
|
+
export function useBuilderStatus() {
|
|
7
|
+
const [status, setStatus] = useState(null);
|
|
8
|
+
const [loading, setLoading] = useState(true);
|
|
9
|
+
const fetchStatus = useCallback(async () => {
|
|
10
|
+
try {
|
|
11
|
+
const res = await fetch("/_agent-native/builder/status");
|
|
12
|
+
if (!res.ok) {
|
|
13
|
+
setStatus(null);
|
|
14
|
+
return;
|
|
15
|
+
}
|
|
16
|
+
setStatus(await res.json());
|
|
17
|
+
}
|
|
18
|
+
catch {
|
|
19
|
+
setStatus(null);
|
|
20
|
+
}
|
|
21
|
+
finally {
|
|
22
|
+
setLoading(false);
|
|
23
|
+
}
|
|
24
|
+
}, []);
|
|
25
|
+
useEffect(() => {
|
|
26
|
+
fetchStatus();
|
|
27
|
+
function onFocus() {
|
|
28
|
+
fetchStatus();
|
|
29
|
+
}
|
|
30
|
+
window.addEventListener("focus", onFocus);
|
|
31
|
+
window.addEventListener("visibilitychange", () => {
|
|
32
|
+
if (document.visibilityState === "visible")
|
|
33
|
+
fetchStatus();
|
|
34
|
+
});
|
|
35
|
+
return () => {
|
|
36
|
+
window.removeEventListener("focus", onFocus);
|
|
37
|
+
};
|
|
38
|
+
}, [fetchStatus]);
|
|
39
|
+
return { status, loading, refetch: fetchStatus };
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=useBuilderStatus.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useBuilderStatus.js","sourceRoot":"","sources":["../../../src/client/settings/useBuilderStatus.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAezD;;;GAGG;AACH,MAAM,UAAU,gBAAgB;IAC9B,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAuB,IAAI,CAAC,CAAC;IACjE,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAE7C,MAAM,WAAW,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;QACzC,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,+BAA+B,CAAC,CAAC;YACzD,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACZ,SAAS,CAAC,IAAI,CAAC,CAAC;gBAChB,OAAO;YACT,CAAC;YACD,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;QAC9B,CAAC;QAAC,MAAM,CAAC;YACP,SAAS,CAAC,IAAI,CAAC,CAAC;QAClB,CAAC;gBAAS,CAAC;YACT,UAAU,CAAC,KAAK,CAAC,CAAC;QACpB,CAAC;IACH,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,SAAS,CAAC,GAAG,EAAE;QACb,WAAW,EAAE,CAAC;QAEd,SAAS,OAAO;YACd,WAAW,EAAE,CAAC;QAChB,CAAC;QACD,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC1C,MAAM,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,GAAG,EAAE;YAC/C,IAAI,QAAQ,CAAC,eAAe,KAAK,SAAS;gBAAE,WAAW,EAAE,CAAC;QAC5D,CAAC,CAAC,CAAC;QACH,OAAO,GAAG,EAAE;YACV,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC/C,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;AACnD,CAAC"}
|
package/dist/deploy/build.js
CHANGED
|
@@ -17,6 +17,7 @@ import fs from "fs";
|
|
|
17
17
|
import { execFileSync } from "child_process";
|
|
18
18
|
import { createRequire } from "module";
|
|
19
19
|
import { discoverApiRoutes, discoverPlugins, discoverActionFiles, getMissingDefaultPlugins, DEFAULT_PLUGIN_REGISTRY, } from "./route-discovery.js";
|
|
20
|
+
import { getWorkspaceCoreExports, } from "./workspace-core.js";
|
|
20
21
|
const cwd = process.cwd();
|
|
21
22
|
const preset = process.env.NITRO_PRESET || "node";
|
|
22
23
|
/** Plugins that require Node.js runtime and cannot run on edge/serverless */
|
|
@@ -29,8 +30,14 @@ function isNodeOnlyPlugin(filePath) {
|
|
|
29
30
|
}
|
|
30
31
|
/**
|
|
31
32
|
* Generate the worker entry source code that wires up H3 + React Router SSR.
|
|
33
|
+
*
|
|
34
|
+
* If a workspace core is present (monorepo with `agent-native.workspaceCore`
|
|
35
|
+
* configured and the named package resolves), any plugin slot that the
|
|
36
|
+
* workspace core exports is imported from there instead of from
|
|
37
|
+
* `@agent-native/core/server`. This is the middle layer of the three-layer
|
|
38
|
+
* inheritance model: app local > workspace core > framework default.
|
|
32
39
|
*/
|
|
33
|
-
function generateWorkerEntry(routes, pluginPaths, defaultPluginStems = [], actions = []) {
|
|
40
|
+
function generateWorkerEntry(routes, pluginPaths, defaultPluginStems = [], actions = [], workspaceCore = null) {
|
|
34
41
|
const routeImports = [];
|
|
35
42
|
const routeRegistrations = [];
|
|
36
43
|
for (let i = 0; i < routes.length; i++) {
|
|
@@ -69,15 +76,25 @@ function generateWorkerEntry(routes, pluginPaths, defaultPluginStems = [], actio
|
|
|
69
76
|
await ${varName}(nitroApp);
|
|
70
77
|
}`);
|
|
71
78
|
}
|
|
72
|
-
// Auto-mounted default plugins (
|
|
79
|
+
// Auto-mounted default plugins (for slots the template doesn't override
|
|
80
|
+
// locally). For each slot, prefer a workspace-core export over the
|
|
81
|
+
// @agent-native/core default, if the workspace core provides one.
|
|
73
82
|
const edgeDefaultStems = defaultPluginStems.filter((stem) => !NODE_ONLY_PLUGINS.has(stem));
|
|
74
83
|
for (let i = 0; i < edgeDefaultStems.length; i++) {
|
|
75
84
|
const stem = edgeDefaultStems[i];
|
|
76
|
-
const exportName = DEFAULT_PLUGIN_REGISTRY[stem];
|
|
77
|
-
if (!exportName)
|
|
78
|
-
continue;
|
|
79
85
|
const varName = `defaultPlugin_${i}`;
|
|
80
|
-
|
|
86
|
+
const workspaceExportName = workspaceCore?.plugins?.[stem];
|
|
87
|
+
if (workspaceCore && workspaceExportName) {
|
|
88
|
+
// Workspace-core layer wins over the framework default.
|
|
89
|
+
pluginImports.push(`import { ${workspaceExportName} as ${varName} } from ${JSON.stringify(`${workspaceCore.packageName}/server`)};`);
|
|
90
|
+
}
|
|
91
|
+
else {
|
|
92
|
+
// Fall back to the framework default from @agent-native/core.
|
|
93
|
+
const defaultExportName = DEFAULT_PLUGIN_REGISTRY[stem];
|
|
94
|
+
if (!defaultExportName)
|
|
95
|
+
continue;
|
|
96
|
+
pluginImports.push(`import { ${defaultExportName} as ${varName} } from "@agent-native/core/server";`);
|
|
97
|
+
}
|
|
81
98
|
pluginCalls.push(` if (typeof ${varName} === "function") {
|
|
82
99
|
await ${varName}(nitroApp);
|
|
83
100
|
}`);
|
|
@@ -211,18 +228,26 @@ async function buildCloudflarePages() {
|
|
|
211
228
|
copyDir(clientDir, distDir);
|
|
212
229
|
// Exclude _worker.js from being served as a public asset
|
|
213
230
|
fs.writeFileSync(path.join(distDir, ".assetsignore"), "_worker.js\n");
|
|
231
|
+
// Write a package.json inside _worker.js/ to tell wrangler this is a
|
|
232
|
+
// pre-bundled ES module worker — skip re-bundling our esbuild output.
|
|
233
|
+
fs.mkdirSync(path.join(distDir, "_worker.js"), { recursive: true });
|
|
234
|
+
fs.writeFileSync(path.join(distDir, "_worker.js", "package.json"), JSON.stringify({ main: "index.js", type: "module" }));
|
|
214
235
|
// Create empty stub for native modules that wrangler's bundler needs to resolve
|
|
215
236
|
const stubsDir = path.join(distDir, "_worker.js", "stubs");
|
|
216
237
|
fs.mkdirSync(stubsDir, { recursive: true });
|
|
217
238
|
fs.writeFileSync(path.join(stubsDir, "empty.js"), "export default {}; export const watch = () => ({ close() {} }); export const Database = class {};\n");
|
|
218
|
-
// Discover routes, plugins, and
|
|
239
|
+
// Discover routes, plugins, actions, and the workspace core (if any).
|
|
219
240
|
const routes = await discoverApiRoutes(cwd);
|
|
220
241
|
const plugins = await discoverPlugins(cwd);
|
|
221
242
|
const actions = await discoverActionFiles(cwd);
|
|
222
243
|
const missingDefaults = await getMissingDefaultPlugins(cwd);
|
|
223
|
-
|
|
244
|
+
const workspaceCore = await getWorkspaceCoreExports(cwd);
|
|
245
|
+
const workspaceSlotCount = workspaceCore
|
|
246
|
+
? Object.keys(workspaceCore.plugins).length
|
|
247
|
+
: 0;
|
|
248
|
+
console.log(`[deploy] ${routes.length} API routes, ${actions.length} actions, ${plugins.length} plugins (${plugins.filter((p) => isNodeOnlyPlugin(p)).length} skipped as Node-only), ${missingDefaults.length} auto-mounted defaults${workspaceCore ? `, workspace-core ${workspaceCore.packageName} (${workspaceSlotCount} plugin slots)` : ""}`);
|
|
224
249
|
// Generate the worker entry
|
|
225
|
-
const entrySource = generateWorkerEntry(routes, plugins, missingDefaults, actions);
|
|
250
|
+
const entrySource = generateWorkerEntry(routes, plugins, missingDefaults, actions, workspaceCore);
|
|
226
251
|
// Create _worker.js output directory
|
|
227
252
|
const workerOutDir = path.join(distDir, "_worker.js");
|
|
228
253
|
fs.mkdirSync(workerOutDir, { recursive: true });
|
|
@@ -234,7 +259,9 @@ async function buildCloudflarePages() {
|
|
|
234
259
|
// The server build (React Router SSR) is copied to tmp so esbuild can resolve it.
|
|
235
260
|
const tmpDir = path.join(cwd, ".deploy-tmp");
|
|
236
261
|
fs.mkdirSync(tmpDir, { recursive: true });
|
|
237
|
-
|
|
262
|
+
// Name the entry "index.js" so esbuild outputs index.js in the outdir,
|
|
263
|
+
// matching the _worker.js/index.js entry point that Cloudflare Pages expects.
|
|
264
|
+
const tmpEntry = path.join(tmpDir, "index.js");
|
|
238
265
|
fs.writeFileSync(tmpEntry, adjustedEntry);
|
|
239
266
|
// Copy server build files so esbuild can resolve the import
|
|
240
267
|
copyDir(serverDir, path.join(tmpDir, "server"));
|
|
@@ -260,12 +287,32 @@ async function buildCloudflarePages() {
|
|
|
260
287
|
fs.writeFileSync(path.join(modDir, "package.json"), JSON.stringify({ name: mod, main: "index.js", type: "module" }));
|
|
261
288
|
}
|
|
262
289
|
const esbuildBin = findEsbuild();
|
|
263
|
-
// Externalize node builtins (both bare and node: prefixed) — the require
|
|
264
|
-
//
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
290
|
+
// Externalize node builtins (both bare and node: prefixed) — the require
|
|
291
|
+
// shim handles bare ones. Also alias every `node:*` specifier to its bare
|
|
292
|
+
// name so esbuild emits `import from "fs"` everywhere, never
|
|
293
|
+
// `import from "node:fs"`. CF Pages Functions (wrangler 3.x, nodejs_compat
|
|
294
|
+
// v1) rejects the `node:` prefix in chunks with:
|
|
295
|
+
// No such module "node:fs" imported from chunks/...
|
|
296
|
+
// The alias is the authoritative fix; the post-build strip stays as belt
|
|
297
|
+
// & suspenders in case esbuild emits a node: string via some other path.
|
|
298
|
+
const builtinNames = getNodeBuiltinNames();
|
|
299
|
+
// Only externalize bare names. node:* externals would otherwise pin
|
|
300
|
+
// the prefix in output; instead we alias node:* → bare so anything that
|
|
301
|
+
// resolves past alias land as bare externals.
|
|
302
|
+
const nodeExternals = builtinNames.map((n) => `--external:${n}`);
|
|
303
|
+
const nodeAliases = builtinNames.map((n) => `--alias:node:${n}=${n}`);
|
|
304
|
+
// Hard externalize large client-only / node-only libraries so they don't
|
|
305
|
+
// bloat the edge worker. These are never executed in the CF Pages runtime
|
|
306
|
+
// — mermaid/excalidraw render in the browser, pdf-parse and @google/genai
|
|
307
|
+
// run from node-only action scripts. Without this, slides' bundle hits
|
|
308
|
+
// the 25 MiB Pages Functions limit.
|
|
309
|
+
const heavyClientExternals = [
|
|
310
|
+
"mermaid",
|
|
311
|
+
"@excalidraw/excalidraw",
|
|
312
|
+
"@excalidraw/mermaid-to-excalidraw",
|
|
313
|
+
"pdf-parse",
|
|
314
|
+
"@google/genai",
|
|
315
|
+
].map((p) => `--external:${p}`);
|
|
269
316
|
execFileSync(esbuildBin, [
|
|
270
317
|
tmpEntry,
|
|
271
318
|
"--bundle",
|
|
@@ -274,8 +321,14 @@ async function buildCloudflarePages() {
|
|
|
274
321
|
// browser platform for npm resolution; node builtins externalized separately
|
|
275
322
|
"--platform=browser",
|
|
276
323
|
"--minify",
|
|
277
|
-
|
|
324
|
+
// Single-file bundle (no --splitting). CF Pages Functions' deploy
|
|
325
|
+
// validator fails to load chunked _worker.js/ bundles even when the
|
|
326
|
+
// chunks contain only bare node-builtin imports (wrangler 3.101.0
|
|
327
|
+
// + nodejs_compat v2). Matches main's working config.
|
|
328
|
+
`--outdir=${workerOutDir}`,
|
|
278
329
|
"--conditions=workerd,worker,import",
|
|
330
|
+
// The ssr-handler imports a virtual module that only exists at dev time
|
|
331
|
+
"--external:virtual:react-router/server-build",
|
|
279
332
|
// Banner: override the __require shim that esbuild generates for CJS modules.
|
|
280
333
|
// This provides a real require() backed by ESM imports of node builtins.
|
|
281
334
|
// Without this, CF Workers rejects the bundle because esbuild's default
|
|
@@ -283,47 +336,102 @@ async function buildCloudflarePages() {
|
|
|
283
336
|
`--banner:js=${generateRequireShim()}`,
|
|
284
337
|
// Externalize node: builtins — CF Workers runtime provides them
|
|
285
338
|
...nodeExternals,
|
|
339
|
+
...heavyClientExternals,
|
|
340
|
+
// Rewrite node:* -> bare names so chunks never contain node: imports
|
|
341
|
+
...nodeAliases,
|
|
286
342
|
], { stdio: "inherit", cwd });
|
|
287
343
|
// Clean up tmp
|
|
288
344
|
fs.rmSync(tmpDir, { recursive: true });
|
|
289
|
-
//
|
|
290
|
-
//
|
|
291
|
-
//
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
//
|
|
296
|
-
|
|
297
|
-
|
|
345
|
+
// Rewrite the external virtual import to a local stub.
|
|
346
|
+
// esbuild externalizes "virtual:react-router/server-build" (used by ssr-handler),
|
|
347
|
+
// but wrangler re-bundles and chokes on it. Replace the import with a no-op stub.
|
|
348
|
+
const virtualStub = path.join(workerOutDir, "chunks", "_virtual-stub.js");
|
|
349
|
+
fs.mkdirSync(path.dirname(virtualStub), { recursive: true });
|
|
350
|
+
fs.writeFileSync(virtualStub, "export default {};\n");
|
|
351
|
+
// Post-build patches — apply to ALL .js files in the worker output directory
|
|
352
|
+
// (entry + chunks) since code can land in any chunk after splitting.
|
|
353
|
+
const allJsFiles = getAllJsFiles(workerOutDir);
|
|
354
|
+
for (const jsFile of allJsFiles) {
|
|
355
|
+
let code = fs.readFileSync(jsFile, "utf-8");
|
|
356
|
+
const isEntry = path.basename(jsFile) === "index.js";
|
|
357
|
+
// Strip "node:" prefix from all imports/requires. Cloudflare Pages
|
|
358
|
+
// Functions runs under nodejs_compat v1, which exposes builtins as
|
|
359
|
+
// bare names ("fs") and rejects "node:fs" at worker init:
|
|
360
|
+
// No such module "node:fs" imported from chunks/...
|
|
361
|
+
// (Workers-on-the-edge use v2 and require the prefix; Pages lags.)
|
|
362
|
+
// Preserve the original quote char (single vs double) when rewriting —
|
|
363
|
+
// esbuild's minifier sometimes places `import('node:buffer')` inside a
|
|
364
|
+
// double-quoted string literal; swapping to double quotes breaks the
|
|
365
|
+
// outer literal and produces `Unexpected identifier 'buffer'`.
|
|
366
|
+
code = code.replace(/\bfrom(\s*)(["'])node:([^"']+)\2/g, (_, ws, q, mod) => `from${ws}${q}${mod}${q}`);
|
|
367
|
+
code = code.replace(/\bimport(\s*)(["'])node:([^"']+)\2/g, (_, ws, q, mod) => `import${ws}${q}${mod}${q}`);
|
|
368
|
+
// Strip `node:` prefix from any string literal that names a node
|
|
369
|
+
// builtin. Covers dynamic imports, require(), getBuiltinModule(),
|
|
370
|
+
// and minified wrappers like `Ut("node:fs")` that Nitro/h3 emit.
|
|
371
|
+
// Pages' loader scans chunks for `"node:*"` literals and fails with
|
|
372
|
+
// 'No such module "node:fs"' whether or not the string is reached
|
|
373
|
+
// at runtime. Scoping to known builtins avoids touching user data.
|
|
374
|
+
const builtinsPattern = [
|
|
375
|
+
"fs",
|
|
376
|
+
"fs/promises",
|
|
377
|
+
"path",
|
|
378
|
+
"os",
|
|
379
|
+
"crypto",
|
|
380
|
+
"http",
|
|
381
|
+
"https",
|
|
382
|
+
"stream",
|
|
383
|
+
"stream/web",
|
|
384
|
+
"url",
|
|
385
|
+
"util",
|
|
386
|
+
"events",
|
|
387
|
+
"buffer",
|
|
388
|
+
"querystring",
|
|
389
|
+
"zlib",
|
|
390
|
+
"net",
|
|
391
|
+
"tls",
|
|
392
|
+
"assert",
|
|
393
|
+
"timers",
|
|
394
|
+
"child_process",
|
|
395
|
+
"module",
|
|
396
|
+
"async_hooks",
|
|
397
|
+
"process",
|
|
398
|
+
"worker_threads",
|
|
399
|
+
"sqlite",
|
|
400
|
+
].join("|");
|
|
401
|
+
const builtinRe = new RegExp(`(["'])node:(${builtinsPattern})\\1`, "g");
|
|
402
|
+
code = code.replace(builtinRe, (_, q, mod) => `${q}${mod}${q}`);
|
|
403
|
+
// Rewrite virtual:react-router/server-build imports to the local stub.
|
|
404
|
+
// The generated entry handles SSR directly; this import is dead code from ssr-handler.
|
|
405
|
+
const relStub = path
|
|
406
|
+
.relative(path.dirname(jsFile), virtualStub)
|
|
407
|
+
.replace(/\\/g, "/");
|
|
408
|
+
code = code.replace(/["']virtual:react-router\/server-build["']/g, `"./${relStub}"`);
|
|
409
|
+
// Patch createRequire(import.meta.url) — import.meta.url is undefined in CF Workers.
|
|
410
|
+
// Matches both `from "module"` and `from "node:module"` — with the node:
|
|
411
|
+
// prefix preserved (for nodejs_compat_v2), the latter is what esbuild now emits.
|
|
412
|
+
code = code.replace(/\bimport\s*\{\s*createRequire\s+as\s+([\w$]+)\s*\}\s*from\s*["'](?:node:)?module["']\s*;/g, "var $1 = function() { return typeof require !== 'undefined' ? require : function(m) { throw new Error('require not supported: ' + m); }; };");
|
|
413
|
+
// Patch setInterval/setTimeout at module scope — CF Workers disallows timers in global scope.
|
|
414
|
+
// Some dependencies (e.g. Anthropic SDK rate limiter) call setInterval at module init.
|
|
415
|
+
// With code splitting, chunks evaluate before the entry, so the shim must be in every file.
|
|
416
|
+
// The restore only happens in the entry's fetch() handler.
|
|
417
|
+
if (!code.includes("__origSetInterval")) {
|
|
418
|
+
const timerShim = [
|
|
419
|
+
"var __origSetInterval=globalThis.setInterval;",
|
|
420
|
+
"globalThis.setInterval=function(){return{unref(){},ref(){},close(){}}};",
|
|
421
|
+
].join("");
|
|
422
|
+
code = timerShim + code;
|
|
423
|
+
}
|
|
424
|
+
if (isEntry) {
|
|
425
|
+
const timerRestore = "if(__origSetInterval)globalThis.setInterval=__origSetInterval;";
|
|
426
|
+
code = code.replace(/async fetch\(request,\s*env,\s*ctx\)\s*\{/, (match) => match + timerRestore);
|
|
427
|
+
}
|
|
428
|
+
fs.writeFileSync(jsFile, code);
|
|
298
429
|
}
|
|
299
|
-
fs.writeFileSync(entryFile, workerCode2);
|
|
300
|
-
// Patch setInterval/setTimeout at module scope — CF Workers disallows timers in global scope.
|
|
301
|
-
// Some dependencies (e.g. Anthropic SDK rate limiter) call setInterval at module init.
|
|
302
|
-
// Inject a banner that makes setInterval/setTimeout safe during module evaluation,
|
|
303
|
-
// then restores them inside the first fetch() call.
|
|
304
|
-
let workerCode = fs.readFileSync(entryFile, "utf-8");
|
|
305
|
-
const timerShim = [
|
|
306
|
-
"var __origSetInterval=globalThis.setInterval;",
|
|
307
|
-
"globalThis.setInterval=function(){return{unref(){},ref(){},close(){}}};",
|
|
308
|
-
].join("");
|
|
309
|
-
// Restore real setInterval inside the fetch handler
|
|
310
|
-
const timerRestore = "if(__origSetInterval)globalThis.setInterval=__origSetInterval;";
|
|
311
|
-
workerCode = timerShim + workerCode;
|
|
312
|
-
// Inject restore right after "async fetch(request, env, ctx) {"
|
|
313
|
-
workerCode = workerCode.replace(/async fetch\(request,\s*env,\s*ctx\)\s*\{/, (match) => match + timerRestore);
|
|
314
|
-
// Strip "node:" prefix from all imports/requires — nodejs_compat v1 only provides bare names.
|
|
315
|
-
// Handles minified output (no space before quotes) and subpaths like node:fs/promises.
|
|
316
|
-
workerCode = workerCode.replace(/from\s*["']node:([^"']+)["']/g, (_, mod) => `from"${mod}"`);
|
|
317
|
-
workerCode = workerCode.replace(/import\s*["']node:([^"']+)["']/g, (_, mod) => `import"${mod}"`);
|
|
318
|
-
// Patch createRequire(import.meta.url) — import.meta.url is undefined in CF Workers.
|
|
319
|
-
// React Router's server build uses createRequire for CJS compat. Replace it with a
|
|
320
|
-
// stub that returns our require shim (which is already injected via the banner).
|
|
321
|
-
workerCode = workerCode.replace(/\bimport\s*\{\s*createRequire\s+as\s+([\w$]+)\s*\}\s*from\s*["']module["']\s*;/g, "var $1 = function() { return typeof require !== 'undefined' ? require : function(m) { throw new Error('require not supported: ' + m); }; };");
|
|
322
|
-
fs.writeFileSync(entryFile, workerCode);
|
|
323
430
|
// Report size
|
|
324
431
|
const entrySize = fs.statSync(entryFile).size;
|
|
325
432
|
const totalSize = getDirSize(workerOutDir);
|
|
326
|
-
|
|
433
|
+
const chunkCount = allJsFiles.length - 1; // exclude entry
|
|
434
|
+
console.log(`[deploy] Cloudflare Pages output written to dist/ (entry: ${(entrySize / 1024).toFixed(0)}KB, ${chunkCount} chunks, total: ${(totalSize / 1024 / 1024).toFixed(1)}MB)`);
|
|
327
435
|
}
|
|
328
436
|
const NODE_BUILTINS = [
|
|
329
437
|
"assert",
|
|
@@ -401,11 +509,21 @@ function generateRequireShim() {
|
|
|
401
509
|
"child_process",
|
|
402
510
|
"module",
|
|
403
511
|
];
|
|
512
|
+
// Bare module names — CF Pages Functions runs under nodejs_compat v1,
|
|
513
|
+
// which rejects "node:fs" and only accepts "fs". The post-build pass in
|
|
514
|
+
// buildCloudflarePages() also strips any `node:` prefix that esbuild or
|
|
515
|
+
// dependencies emit elsewhere.
|
|
404
516
|
const imports = shimmed
|
|
405
517
|
.map((m) => `import __${m.replace("/", "_")} from "${m}";`)
|
|
406
518
|
.join("");
|
|
519
|
+
// Only bare-name keys. Pages' Functions loader appears to scan chunks
|
|
520
|
+
// for "node:*" string literals and pre-resolves them as module specs —
|
|
521
|
+
// so keeping "node:fs" as an object key caused deploy to fail with
|
|
522
|
+
// 'No such module "node:fs"' even though nothing imported it. The
|
|
523
|
+
// post-build strip turns every runtime `require("node:fs")` into
|
|
524
|
+
// `require("fs")` so bare keys are sufficient.
|
|
407
525
|
const entries = shimmed
|
|
408
|
-
.map((m) => `"${m}":__${m.replace("/", "_")}
|
|
526
|
+
.map((m) => `"${m}":__${m.replace("/", "_")}`)
|
|
409
527
|
.join(",");
|
|
410
528
|
return `${imports}\nconst __mods={${entries}};export var require=globalThis.require||function(m){const r=__mods[m];if(r!==undefined)return r;throw new Error("Cannot require: "+m)};\n`;
|
|
411
529
|
}
|
|
@@ -443,6 +561,21 @@ function findWorkspaceRoot(dir) {
|
|
|
443
561
|
}
|
|
444
562
|
return null;
|
|
445
563
|
}
|
|
564
|
+
/** Recursively collect all .js files in a directory. */
|
|
565
|
+
function getAllJsFiles(dir) {
|
|
566
|
+
const results = [];
|
|
567
|
+
const entries = fs.readdirSync(dir, { withFileTypes: true });
|
|
568
|
+
for (const entry of entries) {
|
|
569
|
+
const fullPath = path.join(dir, entry.name);
|
|
570
|
+
if (entry.isDirectory()) {
|
|
571
|
+
results.push(...getAllJsFiles(fullPath));
|
|
572
|
+
}
|
|
573
|
+
else if (entry.name.endsWith(".js")) {
|
|
574
|
+
results.push(fullPath);
|
|
575
|
+
}
|
|
576
|
+
}
|
|
577
|
+
return results;
|
|
578
|
+
}
|
|
446
579
|
function getDirSize(dir) {
|
|
447
580
|
let size = 0;
|
|
448
581
|
const entries = fs.readdirSync(dir, { withFileTypes: true });
|
|
@@ -630,10 +763,21 @@ async function buildWithNitro() {
|
|
|
630
763
|
// own virtual module registration. Both paths reuse `readAgentsBundleFromFs`
|
|
631
764
|
// from `server/agents-bundle.ts` to guarantee identical content.
|
|
632
765
|
const { readAgentsBundleFromFs } = await import("../server/agents-bundle.js");
|
|
766
|
+
// Resolve the workspace core (if present) up front so the bundle embeds
|
|
767
|
+
// enterprise-wide AGENTS.md + skills alongside the template's.
|
|
768
|
+
const nitroWorkspaceCore = await getWorkspaceCoreExports(cwd);
|
|
769
|
+
const nitroWorkspaceSource = nitroWorkspaceCore
|
|
770
|
+
? {
|
|
771
|
+
skillsDir: nitroWorkspaceCore.skillsDir,
|
|
772
|
+
agentsMdPath: nitroWorkspaceCore.agentsMdPath,
|
|
773
|
+
rootDir: nitroWorkspaceCore.packageDir,
|
|
774
|
+
}
|
|
775
|
+
: null;
|
|
633
776
|
const agentsBundleModuleSource = () => {
|
|
634
|
-
const bundle = readAgentsBundleFromFs(cwd);
|
|
777
|
+
const bundle = readAgentsBundleFromFs(cwd, nitroWorkspaceSource);
|
|
635
778
|
return `// AUTO-GENERATED by @agent-native/core deploy build (Nitro virtual)
|
|
636
|
-
// Contains the inlined AGENTS.md + .agents/skills/ content from the template
|
|
779
|
+
// Contains the inlined AGENTS.md + .agents/skills/ content from the template,
|
|
780
|
+
// merged with the workspace core's AGENTS.md + skills/ when present.
|
|
637
781
|
const bundle = ${JSON.stringify(bundle)};
|
|
638
782
|
export default bundle;
|
|
639
783
|
`;
|