@agent-native/core 0.152.0 → 0.153.0
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/corpus/README.md +1 -1
- package/corpus/templates/analytics/.agents/skills/adding-a-feature/SKILL.md +208 -0
- package/corpus/templates/analytics/.agents/skills/context-awareness/SKILL.md +206 -0
- package/corpus/templates/analytics/.agents/skills/data-querying/SKILL.md +6 -4
- package/corpus/templates/analytics/.agents/skills/frontend-design/SKILL.md +73 -80
- package/corpus/templates/analytics/.agents/skills/portability/SKILL.md +107 -0
- package/corpus/templates/analytics/.agents/skills/secrets/SKILL.md +339 -0
- package/corpus/templates/analytics/.agents/skills/self-modifying-code/SKILL.md +3 -3
- package/corpus/templates/analytics/.agents/skills/shadcn-ui/SKILL.md +1 -1
- package/corpus/templates/analytics/.agents/skills/sharing/SKILL.md +1 -0
- package/corpus/templates/analytics/.agents/skills/turn-into-app/SKILL.md +116 -44
- package/corpus/templates/analytics/.agents/skills/turn-into-app/references/fresh-project.md +9 -3
- package/corpus/templates/analytics/.agents/skills/turn-into-app/references/spreadsheet-source.md +148 -0
- package/corpus/templates/analytics/.agents/skills/workspace-conventions/SKILL.md +93 -0
- package/corpus/templates/analytics/actions/data-source-status.ts +4 -1
- package/corpus/templates/analytics/actions/migrate-first-party-analytics-to-bigquery.ts +2 -2
- package/corpus/templates/analytics/app/components/dashboard/SqlChart.tsx +7 -2
- package/corpus/templates/analytics/app/components/layout/NewDashboardDialog.tsx +7 -1
- package/corpus/templates/analytics/app/components/layout/Sidebar.tsx +30 -32
- package/corpus/templates/analytics/app/components/layout/layout-route-policy.ts +10 -0
- package/corpus/templates/analytics/app/global.css +5 -1
- package/corpus/templates/analytics/app/lib/data-source-status.ts +3 -3
- package/corpus/templates/analytics/app/lib/resource-access.ts +6 -1
- package/corpus/templates/analytics/app/pages/DataSources.tsx +79 -51
- package/corpus/templates/analytics/app/pages/adhoc/sql-dashboard/index.tsx +1 -0
- package/corpus/templates/analytics/app/pages/analyses/AnalysisDetail.tsx +1 -0
- package/corpus/templates/analytics/changelog/2026-08-12-analytics-sidebar-ask-toggle-and-compact-rail.md +6 -0
- package/corpus/templates/analytics/changelog/2026-08-12-data-source-statuses-now-distinguish-workspace-access-from-c.md +6 -0
- package/corpus/templates/analytics/server/jobs/analytics-bigquery-backfill.ts +559 -147
- package/corpus/templates/analytics/server/lib/first-party-analytics-backend.ts +79 -5
- package/corpus/templates/analytics/server/plugins/db.ts +84 -0
- package/corpus/templates/assets/.agents/skills/adding-a-feature/SKILL.md +208 -0
- package/corpus/templates/assets/.agents/skills/context-awareness/SKILL.md +206 -0
- package/corpus/templates/assets/.agents/skills/frontend-design/SKILL.md +73 -80
- package/corpus/templates/assets/.agents/skills/portability/SKILL.md +107 -0
- package/corpus/templates/assets/.agents/skills/secrets/SKILL.md +339 -0
- package/corpus/templates/assets/.agents/skills/self-modifying-code/SKILL.md +3 -3
- package/corpus/templates/assets/.agents/skills/shadcn-ui/SKILL.md +1 -1
- package/corpus/templates/assets/.agents/skills/sharing/SKILL.md +1 -0
- package/corpus/templates/assets/.agents/skills/turn-into-app/SKILL.md +116 -44
- package/corpus/templates/assets/.agents/skills/turn-into-app/references/fresh-project.md +9 -3
- package/corpus/templates/assets/.agents/skills/turn-into-app/references/spreadsheet-source.md +148 -0
- package/corpus/templates/assets/.agents/skills/workspace-conventions/SKILL.md +93 -0
- package/corpus/templates/assets/app/components/asset/AssetPreviewDialog.tsx +13 -5
- package/corpus/templates/assets/app/lib/asset-urls.ts +13 -0
- package/corpus/templates/assets/app/routes/asset.$id.tsx +16 -6
- package/corpus/templates/assets/app/routes/brand-kits.$id.tsx +1 -0
- package/corpus/templates/assets/app/routes/library.tsx +336 -78
- package/corpus/templates/assets/shared/api.ts +1 -1
- package/corpus/templates/brain/.agents/skills/adding-a-feature/SKILL.md +3 -2
- package/corpus/templates/brain/.agents/skills/brain/SKILL.md +8 -6
- package/corpus/templates/brain/.agents/skills/context-awareness/SKILL.md +206 -0
- package/corpus/templates/brain/.agents/skills/frontend-design/SKILL.md +73 -80
- package/corpus/templates/brain/.agents/skills/ingestion-and-connectors/SKILL.md +7 -0
- package/corpus/templates/brain/.agents/skills/portability/SKILL.md +107 -0
- package/corpus/templates/brain/.agents/skills/secrets/SKILL.md +339 -0
- package/corpus/templates/brain/.agents/skills/self-modifying-code/SKILL.md +3 -3
- package/corpus/templates/brain/.agents/skills/shadcn-ui/SKILL.md +1 -1
- package/corpus/templates/brain/.agents/skills/sharing/SKILL.md +1 -0
- package/corpus/templates/brain/.agents/skills/turn-into-app/SKILL.md +116 -44
- package/corpus/templates/brain/.agents/skills/turn-into-app/references/fresh-project.md +9 -3
- package/corpus/templates/brain/.agents/skills/turn-into-app/references/spreadsheet-source.md +148 -0
- package/corpus/templates/brain/.agents/skills/workspace-conventions/SKILL.md +93 -0
- package/corpus/templates/brain/AGENTS.md +2 -1
- package/corpus/templates/brain/actions/ask-brain.ts +19 -16
- package/corpus/templates/brain/actions/create-source.ts +11 -2
- package/corpus/templates/brain/actions/import-markdown-files.ts +237 -0
- package/corpus/templates/brain/actions/resanitize-captures.ts +3 -1
- package/corpus/templates/brain/actions/test-slack-connection.ts +12 -3
- package/corpus/templates/brain/actions/update-source.ts +10 -1
- package/corpus/templates/brain/app/components/brain/Surface.tsx +1 -11
- package/corpus/templates/brain/app/i18n-data.ts +111 -0
- package/corpus/templates/brain/app/lib/brain.ts +23 -1
- package/corpus/templates/brain/app/routes/knowledge.tsx +0 -2
- package/corpus/templates/brain/app/routes/ops.tsx +0 -2
- package/corpus/templates/brain/app/routes/review.tsx +0 -2
- package/corpus/templates/brain/app/routes/search.tsx +0 -2
- package/corpus/templates/brain/app/routes/sources.tsx +354 -6
- package/corpus/templates/brain/server/lib/brain-response-guard.ts +63 -1
- package/corpus/templates/brain/server/lib/brain.ts +9 -6
- package/corpus/templates/brain/server/lib/connectors.ts +20 -6
- package/corpus/templates/brain/server/lib/search.ts +9 -1
- package/corpus/templates/brain/server/lib/source-credentials.ts +95 -57
- package/corpus/templates/brain/server/plugins/agent-chat.ts +5 -2
- package/corpus/templates/brain/server/plugins/auth.ts +2 -0
- package/corpus/templates/calendar/.agents/skills/adding-a-feature/SKILL.md +208 -0
- package/corpus/templates/calendar/.agents/skills/context-awareness/SKILL.md +206 -0
- package/corpus/templates/calendar/.agents/skills/frontend-design/SKILL.md +73 -80
- package/corpus/templates/calendar/.agents/skills/portability/SKILL.md +107 -0
- package/corpus/templates/calendar/.agents/skills/secrets/SKILL.md +339 -0
- package/corpus/templates/calendar/.agents/skills/self-modifying-code/SKILL.md +3 -3
- package/corpus/templates/calendar/.agents/skills/shadcn-ui/SKILL.md +1 -1
- package/corpus/templates/calendar/.agents/skills/sharing/SKILL.md +1 -0
- package/corpus/templates/calendar/.agents/skills/turn-into-app/SKILL.md +116 -44
- package/corpus/templates/calendar/.agents/skills/turn-into-app/references/fresh-project.md +9 -3
- package/corpus/templates/calendar/.agents/skills/turn-into-app/references/spreadsheet-source.md +148 -0
- package/corpus/templates/calendar/.agents/skills/workspace-conventions/SKILL.md +93 -0
- package/corpus/templates/calendar/app/pages/BookingLinksPage.tsx +1 -0
- package/corpus/templates/chat/.agents/skills/adding-a-feature/SKILL.md +3 -2
- package/corpus/templates/chat/.agents/skills/context-awareness/SKILL.md +206 -0
- package/corpus/templates/chat/.agents/skills/frontend-design/SKILL.md +73 -80
- package/corpus/templates/chat/.agents/skills/portability/SKILL.md +107 -0
- package/corpus/templates/chat/.agents/skills/secrets/SKILL.md +339 -0
- package/corpus/templates/chat/.agents/skills/self-modifying-code/SKILL.md +3 -3
- package/corpus/templates/chat/.agents/skills/shadcn-ui/SKILL.md +1 -1
- package/corpus/templates/chat/.agents/skills/sharing/SKILL.md +1 -0
- package/corpus/templates/chat/.agents/skills/turn-into-app/SKILL.md +116 -44
- package/corpus/templates/chat/.agents/skills/turn-into-app/references/fresh-project.md +9 -3
- package/corpus/templates/chat/.agents/skills/turn-into-app/references/spreadsheet-source.md +148 -0
- package/corpus/templates/chat/.agents/skills/workspace-conventions/SKILL.md +93 -0
- package/corpus/templates/chat/AGENTS.md +4 -5
- package/corpus/templates/clips/.agents/skills/frontend-design/SKILL.md +73 -80
- package/corpus/templates/clips/.agents/skills/meetings/SKILL.md +1 -1
- package/corpus/templates/clips/.agents/skills/secrets/SKILL.md +339 -0
- package/corpus/templates/clips/.agents/skills/self-modifying-code/SKILL.md +3 -3
- package/corpus/templates/clips/.agents/skills/shadcn-ui/SKILL.md +1 -1
- package/corpus/templates/clips/.agents/skills/turn-into-app/SKILL.md +116 -44
- package/corpus/templates/clips/.agents/skills/turn-into-app/references/fresh-project.md +9 -3
- package/corpus/templates/clips/.agents/skills/turn-into-app/references/spreadsheet-source.md +148 -0
- package/corpus/templates/clips/.agents/skills/workspace-conventions/SKILL.md +93 -0
- package/corpus/templates/clips/actions/add-comment.ts +1 -2
- package/corpus/templates/clips/actions/delete-comment.ts +2 -0
- package/corpus/templates/clips/actions/get-recording-insights.ts +9 -8
- package/corpus/templates/clips/actions/get-recording-player-data.ts +4 -1
- package/corpus/templates/clips/actions/react-to-comment.ts +1 -1
- package/corpus/templates/clips/actions/react-to-recording.ts +1 -1
- package/corpus/templates/clips/actions/reply-to-comment.ts +1 -1
- package/corpus/templates/clips/actions/resolve-comment.ts +1 -2
- package/corpus/templates/clips/actions/update-comment.ts +1 -1
- package/corpus/templates/clips/app/components/editor/editor-layout.tsx +1 -0
- package/corpus/templates/clips/app/components/editor/thumbnail-picker.tsx +59 -16
- package/corpus/templates/clips/app/components/player/comments-panel.tsx +88 -39
- package/corpus/templates/clips/app/components/player/share-dialog.tsx +12 -8
- package/corpus/templates/clips/app/components/player/timestamped-comment-button.tsx +3 -1
- package/corpus/templates/clips/app/components/player/video-player.tsx +1 -1
- package/corpus/templates/clips/app/components/sharing/share-ui.tsx +2 -1
- package/corpus/templates/clips/app/i18n/en-US.ts +2 -1
- package/corpus/templates/clips/app/lib/public-meeting.ts +1 -1
- package/corpus/templates/clips/app/lib/thumbnail-capture.ts +71 -0
- package/corpus/templates/clips/app/lib/thumbnail-picker-state.ts +93 -0
- package/corpus/templates/clips/app/routes/_app.meetings.$meetingId.tsx +1 -1
- package/corpus/templates/clips/app/routes/r.$recordingId.tsx +25 -19
- package/corpus/templates/clips/app/routes/share.$shareId.tsx +8 -0
- package/corpus/templates/clips/changelog/2026-07-23-meeting-recording-meters-and-dismissed-prompts.md +1 -1
- package/corpus/templates/clips/changelog/2026-08-11-clips-asks-to-take-notes-again-when-you-join-an-adhoc-zoom-o.md +6 -0
- package/corpus/templates/clips/changelog/2026-08-12-viewers-are-read-only-and-commenters-can-comment.md +6 -0
- package/corpus/templates/clips/desktop/src-tauri/src/adhoc_meetings_watcher.rs +166 -14
- package/corpus/templates/clips/desktop/src-tauri/src/call_activity.rs +146 -0
- package/corpus/templates/clips/desktop/src-tauri/src/lib.rs +1 -0
- package/corpus/templates/clips/desktop/src-tauri/src/silence_detector.rs +2 -122
- package/corpus/templates/clips/server/lib/recording-page-access.ts +6 -1
- package/corpus/templates/clips/server/routes/api/public-recording.get.ts +5 -0
- package/corpus/templates/clips/shared/share-meta.ts +19 -3
- package/corpus/templates/content/.agents/skills/adding-a-feature/SKILL.md +208 -0
- package/corpus/templates/content/.agents/skills/context-awareness/SKILL.md +206 -0
- package/corpus/templates/content/.agents/skills/frontend-design/SKILL.md +73 -80
- package/corpus/templates/content/.agents/skills/portability/SKILL.md +107 -0
- package/corpus/templates/content/.agents/skills/secrets/SKILL.md +339 -0
- package/corpus/templates/content/.agents/skills/self-modifying-code/SKILL.md +3 -3
- package/corpus/templates/content/.agents/skills/shadcn-ui/SKILL.md +1 -1
- package/corpus/templates/content/.agents/skills/sharing/SKILL.md +1 -0
- package/corpus/templates/content/.agents/skills/turn-into-app/SKILL.md +116 -44
- package/corpus/templates/content/.agents/skills/turn-into-app/references/fresh-project.md +9 -3
- package/corpus/templates/content/.agents/skills/turn-into-app/references/spreadsheet-source.md +148 -0
- package/corpus/templates/content/.agents/skills/workspace-conventions/SKILL.md +93 -0
- package/corpus/templates/content/actions/_database-utils.ts +10 -0
- package/corpus/templates/content/actions/add-comment.ts +1 -1
- package/corpus/templates/content/actions/attach-content-database-source.ts +158 -61
- package/corpus/templates/content/actions/create-document.ts +1 -0
- package/corpus/templates/content/actions/delete-comment.ts +1 -1
- package/corpus/templates/content/actions/get-document.ts +9 -1
- package/corpus/templates/content/actions/import-content-source.ts +8 -0
- package/corpus/templates/content/actions/list-documents.ts +10 -1
- package/corpus/templates/content/actions/update-comment.ts +1 -1
- package/corpus/templates/content/actions/update-document.ts +11 -0
- package/corpus/templates/content/app/components/editor/BubbleToolbar.tsx +196 -30
- package/corpus/templates/content/app/components/editor/CommentsSidebar.tsx +52 -29
- package/corpus/templates/content/app/components/editor/DocumentEditor.tsx +13 -8
- package/corpus/templates/content/app/components/editor/DocumentProperties.tsx +62 -2
- package/corpus/templates/content/app/components/editor/database/DatabaseView.tsx +163 -53
- package/corpus/templates/content/app/components/editor/database/TimelineView.tsx +16 -0
- package/corpus/templates/content/app/components/editor/database/settings.tsx +22 -13
- package/corpus/templates/content/app/components/sidebar/DocumentSidebar.tsx +7 -7
- package/corpus/templates/content/app/hooks/use-documents.ts +2 -0
- package/corpus/templates/content/app/i18n-data.ts +10 -0
- package/corpus/templates/content/app/root.tsx +1 -21
- package/corpus/templates/content/changelog/2026-08-03-choose-text-or-a-heading-from-one-compact-formatting-control.md +6 -0
- package/corpus/templates/content/changelog/2026-08-05-connect-sources-from-add-column.md +6 -0
- package/corpus/templates/content/changelog/2026-08-12-viewers-are-read-only-and-commenters-can-comment.md +6 -0
- package/corpus/templates/content/docs/solutions/evidence/content-text-selector/README.md +26 -0
- package/corpus/templates/content/shared/api.ts +7 -1
- package/corpus/templates/crm/.agents/skills/actions/SKILL.md +146 -0
- package/corpus/templates/crm/.agents/skills/actions/references/action-fields.md +136 -0
- package/corpus/templates/crm/.agents/skills/actions/references/examples.md +94 -0
- package/corpus/templates/crm/.agents/skills/actions/references/provider-apis.md +95 -0
- package/corpus/templates/crm/.agents/skills/adding-a-feature/SKILL.md +208 -0
- package/corpus/templates/crm/.agents/skills/context-awareness/SKILL.md +206 -0
- package/corpus/templates/crm/.agents/skills/delegate-to-agent/SKILL.md +289 -0
- package/corpus/templates/crm/.agents/skills/frontend-design/SKILL.md +296 -0
- package/corpus/templates/crm/.agents/skills/frontend-design/references/visual-direction.md +99 -0
- package/corpus/templates/crm/.agents/skills/portability/SKILL.md +107 -0
- package/corpus/templates/crm/.agents/skills/real-time-sync/SKILL.md +232 -0
- package/corpus/templates/crm/.agents/skills/secrets/SKILL.md +339 -0
- package/corpus/templates/crm/.agents/skills/security/SKILL.md +324 -0
- package/corpus/templates/crm/.agents/skills/self-modifying-code/SKILL.md +123 -0
- package/corpus/templates/crm/.agents/skills/shadcn-ui/SKILL.md +123 -0
- package/corpus/templates/crm/.agents/skills/sharing/SKILL.md +1 -0
- package/corpus/templates/crm/.agents/skills/turn-into-app/SKILL.md +116 -44
- package/corpus/templates/crm/.agents/skills/turn-into-app/references/fresh-project.md +9 -3
- package/corpus/templates/crm/.agents/skills/turn-into-app/references/spreadsheet-source.md +148 -0
- package/corpus/templates/crm/.agents/skills/workspace-conventions/SKILL.md +93 -0
- package/corpus/templates/design/.agents/skills/adding-a-feature/SKILL.md +208 -0
- package/corpus/templates/design/.agents/skills/context-awareness/SKILL.md +206 -0
- package/corpus/templates/design/.agents/skills/frontend-design/SKILL.md +73 -80
- package/corpus/templates/design/.agents/skills/portability/SKILL.md +107 -0
- package/corpus/templates/design/.agents/skills/real-time-sync/SKILL.md +232 -0
- package/corpus/templates/design/.agents/skills/secrets/SKILL.md +339 -0
- package/corpus/templates/design/.agents/skills/self-modifying-code/SKILL.md +3 -3
- package/corpus/templates/design/.agents/skills/shadcn-ui/SKILL.md +1 -1
- package/corpus/templates/design/.agents/skills/sharing/SKILL.md +1 -0
- package/corpus/templates/design/.agents/skills/turn-into-app/SKILL.md +116 -44
- package/corpus/templates/design/.agents/skills/turn-into-app/references/fresh-project.md +9 -3
- package/corpus/templates/design/.agents/skills/turn-into-app/references/spreadsheet-source.md +148 -0
- package/corpus/templates/design/.agents/skills/workspace-conventions/SKILL.md +93 -0
- package/corpus/templates/design/actions/index-design-system-with-builder.ts +16 -2
- package/corpus/templates/design/app/components/design-system/ProductionDesignSystemShowcase.tsx +6 -18
- package/corpus/templates/design/app/i18n/en-US.ts +1 -1
- package/corpus/templates/design/app/i18n-data.ts +40 -0
- package/corpus/templates/design/app/pages/DesignSystemSetup.tsx +153 -131
- package/corpus/templates/design/app/pages/DesignSystems.tsx +7 -61
- package/corpus/templates/design/app/pages/Present.tsx +8 -2
- package/corpus/templates/design/app/pages/Templates.tsx +1 -0
- package/corpus/templates/design/app/pages/design-editor/tool-state.ts +4 -1
- package/corpus/templates/design/app/pages/design-editor/types.ts +6 -1
- package/corpus/templates/design/changelog/2026-08-12-viewers-are-read-only-and-commenters-can-comment.md +6 -0
- package/corpus/templates/dispatch/.agents/skills/adding-a-feature/SKILL.md +208 -0
- package/corpus/templates/dispatch/.agents/skills/context-awareness/SKILL.md +206 -0
- package/corpus/templates/dispatch/.agents/skills/frontend-design/SKILL.md +73 -80
- package/corpus/templates/dispatch/.agents/skills/portability/SKILL.md +107 -0
- package/corpus/templates/dispatch/.agents/skills/real-time-sync/SKILL.md +232 -0
- package/corpus/templates/dispatch/.agents/skills/secrets/SKILL.md +339 -0
- package/corpus/templates/dispatch/.agents/skills/self-modifying-code/SKILL.md +3 -3
- package/corpus/templates/dispatch/.agents/skills/shadcn-ui/SKILL.md +1 -1
- package/corpus/templates/dispatch/.agents/skills/sharing/SKILL.md +1 -0
- package/corpus/templates/dispatch/.agents/skills/turn-into-app/SKILL.md +116 -44
- package/corpus/templates/dispatch/.agents/skills/turn-into-app/references/fresh-project.md +9 -3
- package/corpus/templates/dispatch/.agents/skills/turn-into-app/references/spreadsheet-source.md +148 -0
- package/corpus/templates/dispatch/.agents/skills/workspace-conventions/SKILL.md +93 -0
- package/corpus/templates/dispatch/actions/apply-workspace-connection-setup.ts +97 -15
- package/corpus/templates/dispatch/actions/connection-permissions.ts +77 -0
- package/corpus/templates/dispatch/actions/delete-workspace-connection.ts +12 -2
- package/corpus/templates/dispatch/actions/list-workspace-user-groups.ts +19 -0
- package/corpus/templates/dispatch/actions/plan-workspace-connection-setup.ts +9 -2
- package/corpus/templates/dispatch/actions/set-workspace-connection-grant.ts +21 -2
- package/corpus/templates/dispatch/actions/upsert-workspace-connection.ts +66 -1
- package/corpus/templates/dispatch/actions/upsert-workspace-user-group.ts +27 -0
- package/corpus/templates/dispatch/app/chat-first-pages.ts +84 -0
- package/corpus/templates/dispatch/app/i18n-data.ts +3989 -3527
- package/corpus/templates/dispatch/app/routes/integrations.tsx +1568 -685
- package/corpus/templates/dispatch/app/routes/settings.tsx +14 -9
- package/corpus/templates/dispatch/changelog/2026-08-12-search-and-pin-workspace-apps-from-the-app-catalog.md +6 -0
- package/corpus/templates/dispatch/changelog/2026-08-12-workspace-integration-access-now-shows-exactly-which-apps-ca.md +6 -0
- package/corpus/templates/dispatch/server/lib/app-roles.ts +5 -0
- package/corpus/templates/dispatch/shared/app-roles.ts +1 -0
- package/corpus/templates/factory/.agents/skills/adding-a-feature/SKILL.md +3 -2
- package/corpus/templates/factory/.agents/skills/context-awareness/SKILL.md +206 -0
- package/corpus/templates/factory/.agents/skills/frontend-design/SKILL.md +73 -80
- package/corpus/templates/factory/.agents/skills/portability/SKILL.md +107 -0
- package/corpus/templates/factory/.agents/skills/secrets/SKILL.md +339 -0
- package/corpus/templates/factory/.agents/skills/self-modifying-code/SKILL.md +3 -3
- package/corpus/templates/factory/.agents/skills/shadcn-ui/SKILL.md +1 -1
- package/corpus/templates/factory/.agents/skills/sharing/SKILL.md +1 -0
- package/corpus/templates/factory/.agents/skills/turn-into-app/SKILL.md +116 -44
- package/corpus/templates/factory/.agents/skills/turn-into-app/references/fresh-project.md +9 -3
- package/corpus/templates/factory/.agents/skills/turn-into-app/references/spreadsheet-source.md +148 -0
- package/corpus/templates/factory/.agents/skills/workspace-conventions/SKILL.md +93 -0
- package/corpus/templates/factory/AGENTS.md +10 -1
- package/corpus/templates/factory/README.md +18 -7
- package/corpus/templates/factory/actions/list-triage-items.ts +10 -4
- package/corpus/templates/factory/actions/poll-github-sources.ts +53 -14
- package/corpus/templates/factory/actions/poll-sentry-errors.ts +31 -13
- package/corpus/templates/factory/actions/poll-slack-channel.ts +41 -5
- package/corpus/templates/factory/actions/provider-api-catalog.ts +13 -0
- package/corpus/templates/factory/actions/provider-api-docs.ts +11 -0
- package/corpus/templates/factory/actions/provider-api-request.ts +17 -0
- package/corpus/templates/factory/actions/save-triage-config.ts +87 -38
- package/corpus/templates/factory/app/components/factory/FactoryAuditView.tsx +14 -12
- package/corpus/templates/factory/app/components/factory/FactoryCanvas.tsx +60 -77
- package/corpus/templates/factory/app/components/factory/FactoryInspector.tsx +66 -125
- package/corpus/templates/factory/app/components/layout/Header.tsx +1 -0
- package/corpus/templates/factory/app/components/layout/Layout.tsx +8 -3
- package/corpus/templates/factory/app/components/layout/Sidebar.tsx +9 -5
- package/corpus/templates/factory/app/components/ui/input.tsx +15 -1
- package/corpus/templates/factory/app/components/ui/popover.tsx +1 -0
- package/corpus/templates/factory/app/components/ui/switch.tsx +1 -0
- package/corpus/templates/factory/app/components/ui/textarea.tsx +20 -1
- package/corpus/templates/factory/app/hooks/use-navigation-state.ts +5 -3
- package/corpus/templates/factory/app/i18n/en-US.ts +17 -0
- package/corpus/templates/factory/app/routes/_index.tsx +5 -87
- package/corpus/templates/factory/app/routes/chat.$threadId.tsx +1 -1
- package/corpus/templates/factory/app/routes/chat.tsx +91 -0
- package/corpus/templates/factory/app/routes/factory.tsx +554 -427
- package/corpus/templates/factory/app/routes/settings.tsx +1 -1
- package/corpus/templates/factory/server/connectors/credentials.ts +25 -0
- package/corpus/templates/factory/server/lib/provider-api.ts +34 -0
- package/corpus/templates/factory/server/plugins/agent-chat.ts +15 -3
- package/corpus/templates/factory/server/plugins/factory-scheduler-job.ts +96 -24
- package/corpus/templates/factory/server/triage/review-state.ts +33 -0
- package/corpus/templates/factory/server/triage/slack-poller.ts +1 -0
- package/corpus/templates/forms/.agents/skills/adding-a-feature/SKILL.md +208 -0
- package/corpus/templates/forms/.agents/skills/context-awareness/SKILL.md +206 -0
- package/corpus/templates/forms/.agents/skills/frontend-design/SKILL.md +73 -80
- package/corpus/templates/forms/.agents/skills/portability/SKILL.md +107 -0
- package/corpus/templates/forms/.agents/skills/secrets/SKILL.md +339 -0
- package/corpus/templates/forms/.agents/skills/self-modifying-code/SKILL.md +3 -3
- package/corpus/templates/forms/.agents/skills/shadcn-ui/SKILL.md +1 -1
- package/corpus/templates/forms/.agents/skills/sharing/SKILL.md +1 -0
- package/corpus/templates/forms/.agents/skills/turn-into-app/SKILL.md +116 -44
- package/corpus/templates/forms/.agents/skills/turn-into-app/references/fresh-project.md +9 -3
- package/corpus/templates/forms/.agents/skills/turn-into-app/references/spreadsheet-source.md +148 -0
- package/corpus/templates/forms/.agents/skills/workspace-conventions/SKILL.md +93 -0
- package/corpus/templates/forms/app/pages/FormBuilderPage.tsx +1 -0
- package/corpus/templates/forms/shared/types.ts +1 -1
- package/corpus/templates/macros/.agents/skills/adding-a-feature/SKILL.md +208 -0
- package/corpus/templates/macros/.agents/skills/context-awareness/SKILL.md +206 -0
- package/corpus/templates/macros/.agents/skills/delegate-to-agent/SKILL.md +289 -0
- package/corpus/templates/macros/.agents/skills/frontend-design/SKILL.md +73 -80
- package/corpus/templates/macros/.agents/skills/portability/SKILL.md +107 -0
- package/corpus/templates/macros/.agents/skills/real-time-sync/SKILL.md +232 -0
- package/corpus/templates/macros/.agents/skills/secrets/SKILL.md +339 -0
- package/corpus/templates/macros/.agents/skills/self-modifying-code/SKILL.md +123 -0
- package/corpus/templates/macros/.agents/skills/shadcn-ui/SKILL.md +1 -1
- package/corpus/templates/macros/.agents/skills/sharing/SKILL.md +1 -0
- package/corpus/templates/macros/.agents/skills/turn-into-app/SKILL.md +116 -44
- package/corpus/templates/macros/.agents/skills/turn-into-app/references/fresh-project.md +9 -3
- package/corpus/templates/macros/.agents/skills/turn-into-app/references/spreadsheet-source.md +148 -0
- package/corpus/templates/macros/.agents/skills/workspace-conventions/SKILL.md +93 -0
- package/corpus/templates/mail/.agents/skills/adding-a-feature/SKILL.md +208 -0
- package/corpus/templates/mail/.agents/skills/context-awareness/SKILL.md +206 -0
- package/corpus/templates/mail/.agents/skills/frontend-design/SKILL.md +73 -80
- package/corpus/templates/mail/.agents/skills/portability/SKILL.md +107 -0
- package/corpus/templates/mail/.agents/skills/secrets/SKILL.md +339 -0
- package/corpus/templates/mail/.agents/skills/self-modifying-code/SKILL.md +3 -3
- package/corpus/templates/mail/.agents/skills/shadcn-ui/SKILL.md +1 -1
- package/corpus/templates/mail/.agents/skills/sharing/SKILL.md +1 -0
- package/corpus/templates/mail/.agents/skills/turn-into-app/SKILL.md +116 -44
- package/corpus/templates/mail/.agents/skills/turn-into-app/references/fresh-project.md +9 -3
- package/corpus/templates/mail/.agents/skills/turn-into-app/references/spreadsheet-source.md +148 -0
- package/corpus/templates/mail/.agents/skills/workspace-conventions/SKILL.md +93 -0
- package/corpus/templates/mail/actions/send-email.ts +9 -0
- package/corpus/templates/mail/app/components/layout/AppLayout.tsx +4 -4
- package/corpus/templates/mail/changelog/2026-08-12-agent-sent-messages-appear-immediately.md +6 -0
- package/corpus/templates/plan/.agents/skills/adding-a-feature/SKILL.md +3 -2
- package/corpus/templates/plan/.agents/skills/context-awareness/SKILL.md +206 -0
- package/corpus/templates/plan/.agents/skills/frontend-design/SKILL.md +73 -80
- package/corpus/templates/plan/.agents/skills/portability/SKILL.md +107 -0
- package/corpus/templates/plan/.agents/skills/secrets/SKILL.md +339 -0
- package/corpus/templates/plan/.agents/skills/self-modifying-code/SKILL.md +3 -3
- package/corpus/templates/plan/.agents/skills/shadcn-ui/SKILL.md +1 -1
- package/corpus/templates/plan/.agents/skills/sharing/SKILL.md +1 -0
- package/corpus/templates/plan/.agents/skills/turn-into-app/SKILL.md +116 -44
- package/corpus/templates/plan/.agents/skills/turn-into-app/references/fresh-project.md +9 -3
- package/corpus/templates/plan/.agents/skills/turn-into-app/references/spreadsheet-source.md +148 -0
- package/corpus/templates/plan/.agents/skills/workspace-conventions/SKILL.md +93 -0
- package/corpus/templates/plan/actions/delete-plan-comment.ts +6 -0
- package/corpus/templates/plan/actions/reply-to-plan-comment.ts +7 -1
- package/corpus/templates/plan/actions/resolve-plan-comment.ts +7 -1
- package/corpus/templates/plan/actions/update-visual-plan.ts +6 -0
- package/corpus/templates/plan/app/hooks/use-plans.ts +1 -1
- package/corpus/templates/plan/app/pages/PlansPage.tsx +51 -23
- package/corpus/templates/plan/changelog/2026-08-12-viewers-are-read-only-and-commenters-can-comment.md +6 -0
- package/corpus/templates/plan/server/plans.ts +2 -2
- package/corpus/templates/plan/shared/types.ts +1 -1
- package/corpus/templates/slides/.agents/skills/adding-a-feature/SKILL.md +208 -0
- package/corpus/templates/slides/.agents/skills/context-awareness/SKILL.md +206 -0
- package/corpus/templates/slides/.agents/skills/create-deck/SKILL.md +6 -0
- package/corpus/templates/slides/.agents/skills/frontend-design/SKILL.md +73 -80
- package/corpus/templates/slides/.agents/skills/portability/SKILL.md +107 -0
- package/corpus/templates/slides/.agents/skills/real-time-sync/SKILL.md +232 -0
- package/corpus/templates/slides/.agents/skills/secrets/SKILL.md +339 -0
- package/corpus/templates/slides/.agents/skills/self-modifying-code/SKILL.md +3 -3
- package/corpus/templates/slides/.agents/skills/shadcn-ui/SKILL.md +1 -1
- package/corpus/templates/slides/.agents/skills/sharing/SKILL.md +1 -0
- package/corpus/templates/slides/.agents/skills/turn-into-app/SKILL.md +116 -44
- package/corpus/templates/slides/.agents/skills/turn-into-app/references/fresh-project.md +9 -3
- package/corpus/templates/slides/.agents/skills/turn-into-app/references/spreadsheet-source.md +148 -0
- package/corpus/templates/slides/.agents/skills/workspace-conventions/SKILL.md +93 -0
- package/corpus/templates/slides/AGENTS.md +4 -0
- package/corpus/templates/slides/actions/add-slide-comment.ts +1 -1
- package/corpus/templates/slides/actions/delete-slide-comment.ts +1 -1
- package/corpus/templates/slides/actions/get-layout-overflows.ts +67 -2
- package/corpus/templates/slides/actions/update-slide-comment.ts +1 -1
- package/corpus/templates/slides/actions/view-screen.ts +76 -26
- package/corpus/templates/slides/app/components/comments/SlideCommentsPanel.tsx +30 -8
- package/corpus/templates/slides/app/components/design-system/DesignSystemCard.tsx +2 -1
- package/corpus/templates/slides/app/components/editor/AlignmentGuides.tsx +75 -0
- package/corpus/templates/slides/app/components/editor/EditorToolbar.tsx +80 -80
- package/corpus/templates/slides/app/components/editor/SlideContextToolbar.tsx +125 -10
- package/corpus/templates/slides/app/components/editor/SlideEditor.tsx +244 -9
- package/corpus/templates/slides/app/components/editor/SlideOverflowWarning.tsx +1 -1
- package/corpus/templates/slides/app/components/editor/canvas-interactions/slides-canvas-adapter.ts +3 -3
- package/corpus/templates/slides/app/components/editor/slide-object-interactions.ts +218 -0
- package/corpus/templates/slides/app/context/DeckContext.tsx +56 -30
- package/corpus/templates/slides/app/hooks/use-deck-role.ts +13 -5
- package/corpus/templates/slides/app/hooks/use-design-systems.ts +1 -1
- package/corpus/templates/slides/app/i18n/en-US.ts +6 -2
- package/corpus/templates/slides/app/lib/create-deck-generation.ts +1 -0
- package/corpus/templates/slides/app/lib/pending-deck-changes.ts +32 -0
- package/corpus/templates/slides/app/pages/DeckEditor.tsx +85 -4
- package/corpus/templates/slides/app/pages/Index.tsx +65 -66
- package/corpus/templates/slides/changelog/2026-08-12-viewers-are-read-only-and-commenters-can-comment.md +6 -0
- package/corpus/templates/tasks/.agents/skills/adding-a-feature/SKILL.md +3 -2
- package/corpus/templates/tasks/.agents/skills/context-awareness/SKILL.md +206 -0
- package/corpus/templates/tasks/.agents/skills/frontend-design/SKILL.md +73 -80
- package/corpus/templates/tasks/.agents/skills/portability/SKILL.md +107 -0
- package/corpus/templates/tasks/.agents/skills/secrets/SKILL.md +339 -0
- package/corpus/templates/tasks/.agents/skills/self-modifying-code/SKILL.md +3 -3
- package/corpus/templates/tasks/.agents/skills/shadcn-ui/SKILL.md +1 -1
- package/corpus/templates/tasks/.agents/skills/sharing/SKILL.md +1 -0
- package/corpus/templates/tasks/.agents/skills/turn-into-app/SKILL.md +116 -44
- package/corpus/templates/tasks/.agents/skills/turn-into-app/references/fresh-project.md +9 -3
- package/corpus/templates/tasks/.agents/skills/turn-into-app/references/spreadsheet-source.md +148 -0
- package/corpus/templates/tasks/.agents/skills/workspace-conventions/SKILL.md +93 -0
- package/corpus/templates/tasks/app/components/custom-fields/FieldsPage.tsx +1 -4
- package/corpus/templates/tasks/app/components/inbox/InboxList.tsx +0 -1
- package/corpus/templates/tasks/app/components/inbox/InboxListPage.tsx +0 -1
- package/corpus/templates/tasks/app/components/shared/ListViewHeader.tsx +0 -3
- package/corpus/templates/tasks/app/components/shared/PageHeader.tsx +1 -4
- package/corpus/templates/tasks/app/components/tasks/TaskList.tsx +0 -1
- package/corpus/templates/tasks/app/components/tasks/TaskListPage.tsx +0 -1
- package/dist/agent/engine/ai-sdk-engine.js +5 -0
- package/dist/agent/engine/anthropic-engine.js +8 -0
- package/dist/agent/engine/registry.js +24 -19
- package/dist/agent/engine/translate-anthropic.js +16 -1
- package/dist/agent/production-agent.d.ts +8 -0
- package/dist/agent/production-agent.js +66 -0
- package/dist/automations/service.d.ts +2 -0
- package/dist/automations/service.js +5 -1
- package/dist/chat-threads/schema.d.ts +2 -2
- package/dist/cli/changelog.js +21 -4
- package/dist/cli/create.d.ts +12 -1
- package/dist/cli/create.js +99 -11
- package/dist/cli/index.js +6 -6
- package/dist/cli/process.d.ts +7 -0
- package/dist/cli/process.js +12 -0
- package/dist/cli/workspace-skill-policy.d.ts +15 -0
- package/dist/cli/workspace-skill-policy.js +62 -0
- package/dist/cli/workspacify.js +36 -0
- package/dist/client/AgentPanel.d.ts +14 -2
- package/dist/client/AgentPanel.js +40 -24
- package/dist/client/AssistantChat.js +93 -183
- package/dist/client/FeedbackButton.js +15 -2
- package/dist/client/RouteTransitionIndicator.d.ts +14 -2
- package/dist/client/RouteTransitionIndicator.js +16 -5
- package/dist/client/agent-page/AgentTabsPage.js +19 -6
- package/dist/client/app-config.d.ts +3 -0
- package/dist/client/app-config.js +6 -0
- package/dist/client/app-providers.js +2 -1
- package/dist/client/changelog/Changelog.d.ts +2 -1
- package/dist/client/changelog/Changelog.js +7 -5
- package/dist/client/chat/markdown-renderer.d.ts +3 -1
- package/dist/client/chat/markdown-renderer.js +24 -24
- package/dist/client/chat/message-components.d.ts +23 -0
- package/dist/client/chat/message-components.js +27 -44
- package/dist/client/chat/tool-call-display.d.ts +2 -2
- package/dist/client/chat/tool-call-display.js +6 -3
- package/dist/client/chat-first/app-open-actions.d.ts +28 -0
- package/dist/client/chat-first/app-open-actions.js +25 -0
- package/dist/client/chat-first/index.d.ts +1 -0
- package/dist/client/chat-first/index.js +1 -0
- package/dist/client/chat-first/primary-nav.d.ts +2 -1
- package/dist/client/chat-first/primary-nav.js +12 -5
- package/dist/client/conversation/use-near-bottom-autoscroll.d.ts +14 -0
- package/dist/client/conversation/use-near-bottom-autoscroll.js +14 -0
- package/dist/client/error-format.js +32 -3
- package/dist/client/extensions/EmbeddedExtension.js +1 -0
- package/dist/client/extensions/ExtensionViewer.js +3 -1
- package/dist/client/extensions/InlineExtensionFrame.js +1 -0
- package/dist/client/extensions/iframe-bridge.d.ts +3 -2
- package/dist/client/extensions/iframe-bridge.js +4 -2
- package/dist/client/guided-questions.d.ts +15 -1
- package/dist/client/guided-questions.js +33 -15
- package/dist/client/i18n.js +28 -5
- package/dist/client/integrations/IntegrationConnectionChoice.d.ts +11 -0
- package/dist/client/integrations/IntegrationConnectionChoice.js +6 -0
- package/dist/client/integrations/IntegrationGrid.d.ts +23 -0
- package/dist/client/integrations/IntegrationGrid.js +12 -0
- package/dist/client/integrations/IntegrationsPanel.js +92 -26
- package/dist/client/integrations/index.d.ts +2 -0
- package/dist/client/integrations/index.js +2 -0
- package/dist/client/onboarding/FirstRunOnboarding.d.ts +3 -1
- package/dist/client/onboarding/FirstRunOnboarding.js +26 -16
- package/dist/client/onboarding/first-run-enabled.js +1 -5
- package/dist/client/onboarding/first-run-startup-gate.d.ts +5 -0
- package/dist/client/onboarding/first-run-startup-gate.js +51 -0
- package/dist/client/onboarding/first-run-status.d.ts +7 -0
- package/dist/client/onboarding/first-run-status.js +26 -0
- package/dist/client/onboarding/index.d.ts +3 -0
- package/dist/client/onboarding/index.js +3 -0
- package/dist/client/onboarding/use-onboarding.d.ts +1 -0
- package/dist/client/onboarding/use-onboarding.js +13 -11
- package/dist/client/org/TeamPage.js +174 -28
- package/dist/client/resources/McpConnectionSuggestion.js +29 -72
- package/dist/client/resources/McpIntegrationDialog.d.ts +3 -1
- package/dist/client/resources/McpIntegrationDialog.js +176 -51
- package/dist/client/resources/index.d.ts +1 -0
- package/dist/client/resources/index.js +1 -0
- package/dist/client/resources/mcp-integration-catalog.d.ts +8 -0
- package/dist/client/resources/mcp-integration-catalog.js +28 -0
- package/dist/client/settings/ExtensionsSettingsContent.js +2 -2
- package/dist/client/settings/SettingsPanel.d.ts +6 -0
- package/dist/client/settings/SettingsPanel.js +21 -8
- package/dist/client/settings/SettingsRow.d.ts +3 -1
- package/dist/client/settings/SettingsRow.js +4 -2
- package/dist/client/settings/SettingsSkeleton.js +5 -3
- package/dist/client/settings/SettingsTabsPage.js +2 -2
- package/dist/client/settings/UsageSection.d.ts +4 -1
- package/dist/client/settings/UsageSection.js +187 -93
- package/dist/client/settings/agent-settings-search.js +6 -2
- package/dist/client/setup-connections/useBuilderConnectCardController.d.ts +1 -1
- package/dist/client/setup-connections/useBuilderConnectCardController.js +2 -2
- package/dist/client/sharing/ShareButton.d.ts +2 -0
- package/dist/client/sharing/ShareButton.js +9 -2
- package/dist/client/sharing/ShareDialog.js +4 -1
- package/dist/client/sharing/useShareButtonController.d.ts +2 -1
- package/dist/client/sharing/useShareButtonController.js +8 -0
- package/dist/client/sharing/useShareDialogController.d.ts +1 -1
- package/dist/client/sharing/useShareDialogController.js +2 -1
- package/dist/config.d.ts +13 -0
- package/dist/config.js +53 -0
- package/dist/dashboard-storage/schema.d.ts +2 -2
- package/dist/data-programs/schema.d.ts +2 -2
- package/dist/extensions/actions.js +2 -1
- package/dist/extensions/html-shell.d.ts +2 -2
- package/dist/extensions/routes.js +4 -1
- package/dist/extensions/schema.d.ts +2 -2
- package/dist/file-upload/pre-upload-attachments.js +1 -1
- package/dist/framework-tools.js +3 -0
- package/dist/history/types.d.ts +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.js +2 -1
- package/dist/integrations/webhook-handler.js +11 -3
- package/dist/jobs/background-automation-runner.d.ts +1 -0
- package/dist/jobs/background-automation-runner.js +4 -2
- package/dist/jobs/frontmatter.d.ts +4 -0
- package/dist/jobs/frontmatter.js +16 -0
- package/dist/jobs/run-history.js +1 -1
- package/dist/jobs/tools.js +9 -5
- package/dist/localization/default-messages.d.ts +27 -0
- package/dist/localization/default-messages.js +28 -1
- package/dist/mcp/screen-memory-stdio.d.ts +7 -7
- package/dist/notifications/routes.d.ts +2 -2
- package/dist/observability/routes.d.ts +3 -3
- package/dist/onboarding/plugin.js +17 -2
- package/dist/org/context.js +16 -0
- package/dist/progress/routes.d.ts +1 -1
- package/dist/provider-api/actions/custom-provider-registration.d.ts +12 -12
- package/dist/provider-api/actions/provider-api.d.ts +8 -8
- package/dist/review/actions/create-review-comment.js +1 -1
- package/dist/review/actions/delete-review-comment.js +4 -1
- package/dist/review/actions/list-review-comments.js +4 -2
- package/dist/review/actions/reply-review-comment.js +1 -1
- package/dist/review/types.d.ts +1 -1
- package/dist/server/action-discovery.js +29 -0
- package/dist/server/agent-chat/context-tools.js +27 -6
- package/dist/server/agent-chat/plugin-options.d.ts +7 -0
- package/dist/server/agent-chat-plugin.d.ts +2 -0
- package/dist/server/agent-chat-plugin.js +12 -4
- package/dist/server/agent-engine-api-key-route.d.ts +1 -1
- package/dist/server/builder-browser.js +31 -0
- package/dist/server/onboarding-html.js +1 -1
- package/dist/server/realtime-token.d.ts +1 -1
- package/dist/server/workspace-provider-oauth.js +38 -26
- package/dist/setup-connections/index.d.ts +1 -1
- package/dist/setup-connections/index.js +1 -1
- package/dist/shared/first-run-onboarding.d.ts +6 -0
- package/dist/shared/first-run-onboarding.js +6 -0
- package/dist/sharing/access.d.ts +1 -1
- package/dist/sharing/access.js +4 -1
- package/dist/sharing/actions/share-resource.d.ts +1 -1
- package/dist/sharing/actions/share-resource.js +2 -2
- package/dist/sharing/registry.d.ts +2 -2
- package/dist/sharing/schema.d.ts +5 -5
- package/dist/sharing/schema.js +9 -6
- package/dist/styles/agent-native.css +21 -0
- package/dist/styles/chat-history-list.css +1 -1
- package/dist/templates/chat/.agents/skills/adding-a-feature/SKILL.md +3 -2
- package/dist/templates/chat/.agents/skills/context-awareness/SKILL.md +206 -0
- package/dist/templates/chat/.agents/skills/frontend-design/SKILL.md +73 -80
- package/dist/templates/chat/.agents/skills/portability/SKILL.md +107 -0
- package/dist/templates/chat/.agents/skills/secrets/SKILL.md +339 -0
- package/dist/templates/chat/.agents/skills/self-modifying-code/SKILL.md +3 -3
- package/dist/templates/chat/.agents/skills/shadcn-ui/SKILL.md +1 -1
- package/dist/templates/chat/.agents/skills/sharing/SKILL.md +1 -0
- package/dist/templates/chat/.agents/skills/turn-into-app/SKILL.md +116 -44
- package/dist/templates/chat/.agents/skills/turn-into-app/references/fresh-project.md +9 -3
- package/dist/templates/chat/.agents/skills/turn-into-app/references/spreadsheet-source.md +148 -0
- package/dist/templates/chat/.agents/skills/workspace-conventions/SKILL.md +93 -0
- package/dist/templates/chat/AGENTS.md +4 -5
- package/dist/templates/default/.agents/skills/adding-a-feature/SKILL.md +3 -2
- package/dist/templates/default/.agents/skills/context-awareness/SKILL.md +206 -0
- package/dist/templates/default/.agents/skills/frontend-design/SKILL.md +73 -80
- package/dist/templates/default/.agents/skills/portability/SKILL.md +107 -0
- package/dist/templates/default/.agents/skills/self-modifying-code/SKILL.md +3 -3
- package/dist/templates/default/.agents/skills/shadcn-ui/SKILL.md +1 -1
- package/dist/templates/default/.agents/skills/sharing/SKILL.md +233 -0
- package/dist/templates/default/.agents/skills/turn-into-app/SKILL.md +116 -44
- package/dist/templates/default/.agents/skills/turn-into-app/references/fresh-project.md +9 -3
- package/dist/templates/default/.agents/skills/turn-into-app/references/spreadsheet-source.md +148 -0
- package/dist/templates/default/.agents/skills/workspace-conventions/SKILL.md +93 -0
- package/dist/templates/default/AGENTS.md +17 -2
- package/dist/templates/default/agent-native.config.ts +6 -0
- package/dist/templates/default/app/i18n/ar-SA.ts +2 -0
- package/dist/templates/default/app/i18n/de-DE.ts +2 -0
- package/dist/templates/default/app/i18n/en-US.ts +3 -1
- package/dist/templates/default/app/i18n/es-ES.ts +2 -0
- package/dist/templates/default/app/i18n/fr-FR.ts +2 -0
- package/dist/templates/default/app/i18n/hi-IN.ts +2 -0
- package/dist/templates/default/app/i18n/ja-JP.ts +2 -0
- package/dist/templates/default/app/i18n/ko-KR.ts +2 -0
- package/dist/templates/default/app/i18n/pt-BR.ts +2 -0
- package/dist/templates/default/app/i18n/zh-CN.ts +2 -0
- package/dist/templates/default/app/i18n/zh-TW.ts +2 -0
- package/dist/templates/headless/.agents/skills/delegate-to-agent/SKILL.md +289 -0
- package/dist/templates/headless/.agents/skills/security/SKILL.md +324 -0
- package/dist/templates/headless/.agents/skills/storing-data/SKILL.md +178 -0
- package/dist/templates/workspace-core/.agents/skills/adding-a-feature/SKILL.md +3 -2
- package/dist/templates/workspace-core/.agents/skills/frontend-design/SKILL.md +73 -80
- package/dist/templates/workspace-core/.agents/skills/self-modifying-code/SKILL.md +3 -3
- package/dist/templates/workspace-core/.agents/skills/shadcn-ui/SKILL.md +1 -1
- package/dist/templates/workspace-core/.agents/skills/sharing/SKILL.md +1 -0
- package/dist/templates/workspace-core/.agents/skills/turn-into-app/SKILL.md +116 -44
- package/dist/templates/workspace-core/.agents/skills/turn-into-app/references/fresh-project.md +9 -3
- package/dist/templates/workspace-core/.agents/skills/turn-into-app/references/spreadsheet-source.md +148 -0
- package/dist/templates/workspace-core/.agents/skills/workspace-conventions/SKILL.md +3 -2
- package/dist/templates/workspace-core/AGENTS.md +9 -3
- package/dist/templates/workspace-root/AGENTS.md +26 -1
- package/dist/templates/workspace-root/agent-native.config.ts +8 -0
- package/dist/triggers/actions.js +2 -2
- package/dist/usage/actions/get-usage-alerts.d.ts +5 -0
- package/dist/usage/actions/get-usage-alerts.js +16 -0
- package/dist/usage/actions/get-usage-metrics.d.ts +7 -0
- package/dist/usage/actions/get-usage-metrics.js +26 -0
- package/dist/usage/actions/manage-usage-alert.d.ts +14 -0
- package/dist/usage/actions/manage-usage-alert.js +48 -0
- package/dist/usage/alerts-store.d.ts +78 -0
- package/dist/usage/alerts-store.js +592 -0
- package/dist/usage/metrics-store.d.ts +95 -0
- package/dist/usage/metrics-store.js +386 -0
- package/dist/usage/store.js +10 -0
- package/dist/vite/action-types-plugin.js +28 -0
- package/dist/vite/agent-native-config-loader.d.ts +6 -0
- package/dist/vite/agent-native-config-loader.js +54 -2
- package/dist/vite/client.js +11 -5
- package/dist/workspace-connections/actions/bulk-update-workspace-user-groups.d.ts +6 -0
- package/dist/workspace-connections/actions/bulk-update-workspace-user-groups.js +24 -0
- package/dist/workspace-connections/actions/delete-workspace-user-group.d.ts +7 -0
- package/dist/workspace-connections/actions/delete-workspace-user-group.js +29 -0
- package/dist/workspace-connections/actions/list-workspace-user-groups.d.ts +2 -0
- package/dist/workspace-connections/actions/list-workspace-user-groups.js +13 -0
- package/dist/workspace-connections/actions/upsert-workspace-user-group.d.ts +6 -0
- package/dist/workspace-connections/actions/upsert-workspace-user-group.js +22 -0
- package/dist/workspace-connections/credential-key-aliases.d.ts +3 -0
- package/dist/workspace-connections/credential-key-aliases.js +31 -0
- package/dist/workspace-connections/credentials.js +1 -25
- package/dist/workspace-connections/groups.d.ts +32 -0
- package/dist/workspace-connections/groups.js +288 -0
- package/dist/workspace-connections/index.d.ts +3 -1
- package/dist/workspace-connections/index.js +3 -1
- package/dist/workspace-connections/store.d.ts +9 -0
- package/dist/workspace-connections/store.js +68 -8
- package/docs/content/components.mdx +2 -2
- package/docs/content/sharing.mdx +2 -1
- package/package.json +10 -2
- package/src/templates/chat/.agents/skills/adding-a-feature/SKILL.md +3 -2
- package/src/templates/chat/.agents/skills/context-awareness/SKILL.md +206 -0
- package/src/templates/chat/.agents/skills/frontend-design/SKILL.md +73 -80
- package/src/templates/chat/.agents/skills/portability/SKILL.md +107 -0
- package/src/templates/chat/.agents/skills/secrets/SKILL.md +339 -0
- package/src/templates/chat/.agents/skills/self-modifying-code/SKILL.md +3 -3
- package/src/templates/chat/.agents/skills/shadcn-ui/SKILL.md +1 -1
- package/src/templates/chat/.agents/skills/sharing/SKILL.md +1 -0
- package/src/templates/chat/.agents/skills/turn-into-app/SKILL.md +116 -44
- package/src/templates/chat/.agents/skills/turn-into-app/references/fresh-project.md +9 -3
- package/src/templates/chat/.agents/skills/turn-into-app/references/spreadsheet-source.md +148 -0
- package/src/templates/chat/.agents/skills/workspace-conventions/SKILL.md +93 -0
- package/src/templates/chat/AGENTS.md +4 -5
- package/src/templates/default/.agents/skills/adding-a-feature/SKILL.md +3 -2
- package/src/templates/default/.agents/skills/context-awareness/SKILL.md +206 -0
- package/src/templates/default/.agents/skills/frontend-design/SKILL.md +73 -80
- package/src/templates/default/.agents/skills/portability/SKILL.md +107 -0
- package/src/templates/default/.agents/skills/self-modifying-code/SKILL.md +3 -3
- package/src/templates/default/.agents/skills/shadcn-ui/SKILL.md +1 -1
- package/src/templates/default/.agents/skills/sharing/SKILL.md +233 -0
- package/src/templates/default/.agents/skills/turn-into-app/SKILL.md +116 -44
- package/src/templates/default/.agents/skills/turn-into-app/references/fresh-project.md +9 -3
- package/src/templates/default/.agents/skills/turn-into-app/references/spreadsheet-source.md +148 -0
- package/src/templates/default/.agents/skills/workspace-conventions/SKILL.md +93 -0
- package/src/templates/default/AGENTS.md +17 -2
- package/src/templates/default/agent-native.config.ts +6 -0
- package/src/templates/default/app/i18n/ar-SA.ts +2 -0
- package/src/templates/default/app/i18n/de-DE.ts +2 -0
- package/src/templates/default/app/i18n/en-US.ts +3 -1
- package/src/templates/default/app/i18n/es-ES.ts +2 -0
- package/src/templates/default/app/i18n/fr-FR.ts +2 -0
- package/src/templates/default/app/i18n/hi-IN.ts +2 -0
- package/src/templates/default/app/i18n/ja-JP.ts +2 -0
- package/src/templates/default/app/i18n/ko-KR.ts +2 -0
- package/src/templates/default/app/i18n/pt-BR.ts +2 -0
- package/src/templates/default/app/i18n/zh-CN.ts +2 -0
- package/src/templates/default/app/i18n/zh-TW.ts +2 -0
- package/src/templates/headless/.agents/skills/delegate-to-agent/SKILL.md +289 -0
- package/src/templates/headless/.agents/skills/security/SKILL.md +324 -0
- package/src/templates/headless/.agents/skills/storing-data/SKILL.md +178 -0
- package/src/templates/workspace-core/.agents/skills/adding-a-feature/SKILL.md +3 -2
- package/src/templates/workspace-core/.agents/skills/frontend-design/SKILL.md +73 -80
- package/src/templates/workspace-core/.agents/skills/self-modifying-code/SKILL.md +3 -3
- package/src/templates/workspace-core/.agents/skills/shadcn-ui/SKILL.md +1 -1
- package/src/templates/workspace-core/.agents/skills/sharing/SKILL.md +1 -0
- package/src/templates/workspace-core/.agents/skills/turn-into-app/SKILL.md +116 -44
- package/src/templates/workspace-core/.agents/skills/turn-into-app/references/fresh-project.md +9 -3
- package/src/templates/workspace-core/.agents/skills/turn-into-app/references/spreadsheet-source.md +148 -0
- package/src/templates/workspace-core/.agents/skills/workspace-conventions/SKILL.md +3 -2
- package/src/templates/workspace-core/AGENTS.md +9 -3
- package/src/templates/workspace-root/AGENTS.md +26 -1
- package/src/templates/workspace-root/agent-native.config.ts +8 -0
- package/corpus/templates/analytics/.agents/skills/capture-learnings/SKILL.md +0 -89
- package/corpus/templates/analytics/.agents/skills/create-skill/SKILL.md +0 -195
- package/corpus/templates/analytics/.agents/skills/feature-flags/SKILL.md +0 -169
- package/corpus/templates/analytics/.agents/skills/upgrade-agent-native/SKILL.md +0 -127
- package/corpus/templates/assets/.agents/skills/capture-learnings/SKILL.md +0 -89
- package/corpus/templates/assets/.agents/skills/create-skill/SKILL.md +0 -195
- package/corpus/templates/assets/.agents/skills/feature-flags/SKILL.md +0 -169
- package/corpus/templates/assets/.agents/skills/real-time-collab/SKILL.md +0 -392
- package/corpus/templates/assets/.agents/skills/upgrade-agent-native/SKILL.md +0 -127
- package/corpus/templates/brain/.agents/skills/capture-learnings/SKILL.md +0 -89
- package/corpus/templates/brain/.agents/skills/create-skill/SKILL.md +0 -195
- package/corpus/templates/brain/.agents/skills/feature-flags/SKILL.md +0 -169
- package/corpus/templates/brain/.agents/skills/upgrade-agent-native/SKILL.md +0 -127
- package/corpus/templates/calendar/.agents/skills/capture-learnings/SKILL.md +0 -89
- package/corpus/templates/calendar/.agents/skills/create-skill/SKILL.md +0 -195
- package/corpus/templates/calendar/.agents/skills/feature-flags/SKILL.md +0 -169
- package/corpus/templates/calendar/.agents/skills/upgrade-agent-native/SKILL.md +0 -127
- package/corpus/templates/chat/.agents/skills/capture-learnings/SKILL.md +0 -89
- package/corpus/templates/chat/.agents/skills/create-skill/SKILL.md +0 -195
- package/corpus/templates/chat/.agents/skills/feature-flags/SKILL.md +0 -169
- package/corpus/templates/chat/.agents/skills/upgrade-agent-native/SKILL.md +0 -127
- package/corpus/templates/clips/.agents/skills/capture-learnings/SKILL.md +0 -89
- package/corpus/templates/clips/.agents/skills/create-skill/SKILL.md +0 -195
- package/corpus/templates/clips/.agents/skills/feature-flags/SKILL.md +0 -169
- package/corpus/templates/clips/.agents/skills/upgrade-agent-native/SKILL.md +0 -127
- package/corpus/templates/content/.agents/skills/capture-learnings/SKILL.md +0 -89
- package/corpus/templates/content/.agents/skills/create-skill/SKILL.md +0 -195
- package/corpus/templates/content/.agents/skills/feature-flags/SKILL.md +0 -169
- package/corpus/templates/content/.agents/skills/upgrade-agent-native/SKILL.md +0 -127
- package/corpus/templates/crm/.agents/skills/feature-flags/SKILL.md +0 -169
- package/corpus/templates/crm/.agents/skills/upgrade-agent-native/SKILL.md +0 -127
- package/corpus/templates/design/.agents/skills/capture-learnings/SKILL.md +0 -89
- package/corpus/templates/design/.agents/skills/create-skill/SKILL.md +0 -195
- package/corpus/templates/design/.agents/skills/feature-flags/SKILL.md +0 -169
- package/corpus/templates/design/.agents/skills/upgrade-agent-native/SKILL.md +0 -127
- package/corpus/templates/dispatch/.agents/skills/capture-learnings/SKILL.md +0 -89
- package/corpus/templates/dispatch/.agents/skills/create-skill/SKILL.md +0 -195
- package/corpus/templates/dispatch/.agents/skills/feature-flags/SKILL.md +0 -169
- package/corpus/templates/dispatch/.agents/skills/upgrade-agent-native/SKILL.md +0 -127
- package/corpus/templates/factory/.agents/skills/capture-learnings/SKILL.md +0 -89
- package/corpus/templates/factory/.agents/skills/create-skill/SKILL.md +0 -195
- package/corpus/templates/factory/.agents/skills/feature-flags/SKILL.md +0 -169
- package/corpus/templates/factory/.agents/skills/upgrade-agent-native/SKILL.md +0 -127
- package/corpus/templates/forms/.agents/skills/capture-learnings/SKILL.md +0 -89
- package/corpus/templates/forms/.agents/skills/create-skill/SKILL.md +0 -195
- package/corpus/templates/forms/.agents/skills/feature-flags/SKILL.md +0 -169
- package/corpus/templates/forms/.agents/skills/upgrade-agent-native/SKILL.md +0 -127
- package/corpus/templates/macros/.agents/skills/feature-flags/SKILL.md +0 -169
- package/corpus/templates/macros/.agents/skills/upgrade-agent-native/SKILL.md +0 -127
- package/corpus/templates/mail/.agents/skills/capture-learnings/SKILL.md +0 -89
- package/corpus/templates/mail/.agents/skills/create-skill/SKILL.md +0 -195
- package/corpus/templates/mail/.agents/skills/feature-flags/SKILL.md +0 -169
- package/corpus/templates/mail/.agents/skills/upgrade-agent-native/SKILL.md +0 -127
- package/corpus/templates/plan/.agents/skills/capture-learnings/SKILL.md +0 -89
- package/corpus/templates/plan/.agents/skills/create-skill/SKILL.md +0 -195
- package/corpus/templates/plan/.agents/skills/feature-flags/SKILL.md +0 -169
- package/corpus/templates/plan/.agents/skills/upgrade-agent-native/SKILL.md +0 -127
- package/corpus/templates/slides/.agents/skills/capture-learnings/SKILL.md +0 -89
- package/corpus/templates/slides/.agents/skills/create-skill/SKILL.md +0 -195
- package/corpus/templates/slides/.agents/skills/feature-flags/SKILL.md +0 -169
- package/corpus/templates/slides/.agents/skills/upgrade-agent-native/SKILL.md +0 -127
- package/corpus/templates/tasks/.agents/skills/capture-learnings/SKILL.md +0 -89
- package/corpus/templates/tasks/.agents/skills/create-skill/SKILL.md +0 -195
- package/corpus/templates/tasks/.agents/skills/feature-flags/SKILL.md +0 -169
- package/corpus/templates/tasks/.agents/skills/upgrade-agent-native/SKILL.md +0 -127
- package/dist/templates/chat/.agents/skills/capture-learnings/SKILL.md +0 -89
- package/dist/templates/chat/.agents/skills/create-skill/SKILL.md +0 -195
- package/dist/templates/chat/.agents/skills/feature-flags/SKILL.md +0 -169
- package/dist/templates/chat/.agents/skills/upgrade-agent-native/SKILL.md +0 -127
- package/dist/templates/default/.agents/skills/capture-learnings/SKILL.md +0 -89
- package/dist/templates/default/.agents/skills/create-skill/SKILL.md +0 -195
- package/dist/templates/default/.agents/skills/feature-flags/SKILL.md +0 -169
- package/dist/templates/default/.agents/skills/integration-webhooks/SKILL.md +0 -364
- package/dist/templates/default/.agents/skills/internationalization/SKILL.md +0 -82
- package/dist/templates/default/.agents/skills/onboarding/SKILL.md +0 -56
- package/dist/templates/default/.agents/skills/real-time-collab/SKILL.md +0 -392
- package/dist/templates/default/.agents/skills/upgrade-agent-native/SKILL.md +0 -127
- package/dist/templates/headless/.agents/skills/feature-flags/SKILL.md +0 -169
- package/dist/templates/headless/.agents/skills/integration-webhooks/SKILL.md +0 -364
- package/dist/templates/headless/.agents/skills/turn-into-app/SKILL.md +0 -402
- package/dist/templates/headless/.agents/skills/turn-into-app/agents/openai.yaml +0 -4
- package/dist/templates/headless/.agents/skills/turn-into-app/references/fresh-project.md +0 -90
- package/dist/templates/headless/.agents/skills/turn-into-skill/SKILL.md +0 -112
- package/dist/templates/headless/.agents/skills/turn-into-skill/agents/openai.yaml +0 -4
- package/dist/templates/headless/.agents/skills/upgrade-agent-native/SKILL.md +0 -127
- package/dist/templates/workspace-core/.agents/skills/a2a-protocol/SKILL.md +0 -411
- package/dist/templates/workspace-core/.agents/skills/adding-workspace-apps/SKILL.md +0 -107
- package/dist/templates/workspace-core/.agents/skills/address-feedback/SKILL.md +0 -176
- package/dist/templates/workspace-core/.agents/skills/agent-page/SKILL.md +0 -63
- package/dist/templates/workspace-core/.agents/skills/audit-log/SKILL.md +0 -96
- package/dist/templates/workspace-core/.agents/skills/authentication/SKILL.md +0 -295
- package/dist/templates/workspace-core/.agents/skills/automations/SKILL.md +0 -242
- package/dist/templates/workspace-core/.agents/skills/browser-sessions/SKILL.md +0 -131
- package/dist/templates/workspace-core/.agents/skills/capture-learnings/SKILL.md +0 -89
- package/dist/templates/workspace-core/.agents/skills/changelog/SKILL.md +0 -114
- package/dist/templates/workspace-core/.agents/skills/client-methods/SKILL.md +0 -115
- package/dist/templates/workspace-core/.agents/skills/client-methods/references/legacy-client-fetch-audit-2026-06-03.md +0 -62
- package/dist/templates/workspace-core/.agents/skills/client-side-routing/SKILL.md +0 -87
- package/dist/templates/workspace-core/.agents/skills/composable-mini-apps/SKILL.md +0 -139
- package/dist/templates/workspace-core/.agents/skills/context-xray/SKILL.md +0 -72
- package/dist/templates/workspace-core/.agents/skills/create-skill/SKILL.md +0 -195
- package/dist/templates/workspace-core/.agents/skills/data-programs/SKILL.md +0 -128
- package/dist/templates/workspace-core/.agents/skills/extension-points/SKILL.md +0 -219
- package/dist/templates/workspace-core/.agents/skills/extensions/SKILL.md +0 -533
- package/dist/templates/workspace-core/.agents/skills/extensions/references/api.md +0 -340
- package/dist/templates/workspace-core/.agents/skills/extensions/references/examples.md +0 -259
- package/dist/templates/workspace-core/.agents/skills/external-agents/SKILL.md +0 -547
- package/dist/templates/workspace-core/.agents/skills/external-agents/references/mcp-apps-embedding.md +0 -157
- package/dist/templates/workspace-core/.agents/skills/feature-flags/SKILL.md +0 -169
- package/dist/templates/workspace-core/.agents/skills/generative-ui/SKILL.md +0 -117
- package/dist/templates/workspace-core/.agents/skills/harness-agents/SKILL.md +0 -170
- package/dist/templates/workspace-core/.agents/skills/integration-webhooks/SKILL.md +0 -364
- package/dist/templates/workspace-core/.agents/skills/internationalization/SKILL.md +0 -82
- package/dist/templates/workspace-core/.agents/skills/mvp-followup/SKILL.md +0 -52
- package/dist/templates/workspace-core/.agents/skills/native-navigation/SKILL.md +0 -67
- package/dist/templates/workspace-core/.agents/skills/observability/SKILL.md +0 -329
- package/dist/templates/workspace-core/.agents/skills/onboarding/SKILL.md +0 -56
- package/dist/templates/workspace-core/.agents/skills/performance/SKILL.md +0 -299
- package/dist/templates/workspace-core/.agents/skills/qa/SKILL.md +0 -333
- package/dist/templates/workspace-core/.agents/skills/real-time-collab/SKILL.md +0 -392
- package/dist/templates/workspace-core/.agents/skills/recurring-jobs/SKILL.md +0 -74
- package/dist/templates/workspace-core/.agents/skills/reliable-mutations/SKILL.md +0 -70
- package/dist/templates/workspace-core/.agents/skills/server-plugins/SKILL.md +0 -84
- package/dist/templates/workspace-core/.agents/skills/tracking/SKILL.md +0 -278
- package/dist/templates/workspace-core/.agents/skills/upgrade-agent-native/SKILL.md +0 -127
- package/dist/templates/workspace-core/.agents/skills/visual-answer/SKILL.md +0 -101
- package/dist/templates/workspace-core/.agents/skills/voice-transcription/SKILL.md +0 -222
- package/dist/templates/workspace-core/.agents/skills/writing-agent-instructions/SKILL.md +0 -363
- package/src/templates/chat/.agents/skills/capture-learnings/SKILL.md +0 -89
- package/src/templates/chat/.agents/skills/create-skill/SKILL.md +0 -195
- package/src/templates/chat/.agents/skills/feature-flags/SKILL.md +0 -169
- package/src/templates/chat/.agents/skills/upgrade-agent-native/SKILL.md +0 -127
- package/src/templates/default/.agents/skills/capture-learnings/SKILL.md +0 -89
- package/src/templates/default/.agents/skills/create-skill/SKILL.md +0 -195
- package/src/templates/default/.agents/skills/feature-flags/SKILL.md +0 -169
- package/src/templates/default/.agents/skills/integration-webhooks/SKILL.md +0 -364
- package/src/templates/default/.agents/skills/internationalization/SKILL.md +0 -82
- package/src/templates/default/.agents/skills/onboarding/SKILL.md +0 -56
- package/src/templates/default/.agents/skills/real-time-collab/SKILL.md +0 -392
- package/src/templates/default/.agents/skills/upgrade-agent-native/SKILL.md +0 -127
- package/src/templates/headless/.agents/skills/feature-flags/SKILL.md +0 -169
- package/src/templates/headless/.agents/skills/integration-webhooks/SKILL.md +0 -364
- package/src/templates/headless/.agents/skills/turn-into-app/SKILL.md +0 -402
- package/src/templates/headless/.agents/skills/turn-into-app/agents/openai.yaml +0 -4
- package/src/templates/headless/.agents/skills/turn-into-app/references/fresh-project.md +0 -90
- package/src/templates/headless/.agents/skills/turn-into-skill/SKILL.md +0 -112
- package/src/templates/headless/.agents/skills/turn-into-skill/agents/openai.yaml +0 -4
- package/src/templates/headless/.agents/skills/upgrade-agent-native/SKILL.md +0 -127
- package/src/templates/workspace-core/.agents/skills/a2a-protocol/SKILL.md +0 -411
- package/src/templates/workspace-core/.agents/skills/adding-workspace-apps/SKILL.md +0 -107
- package/src/templates/workspace-core/.agents/skills/address-feedback/SKILL.md +0 -176
- package/src/templates/workspace-core/.agents/skills/agent-page/SKILL.md +0 -63
- package/src/templates/workspace-core/.agents/skills/audit-log/SKILL.md +0 -96
- package/src/templates/workspace-core/.agents/skills/authentication/SKILL.md +0 -295
- package/src/templates/workspace-core/.agents/skills/automations/SKILL.md +0 -242
- package/src/templates/workspace-core/.agents/skills/browser-sessions/SKILL.md +0 -131
- package/src/templates/workspace-core/.agents/skills/capture-learnings/SKILL.md +0 -89
- package/src/templates/workspace-core/.agents/skills/changelog/SKILL.md +0 -114
- package/src/templates/workspace-core/.agents/skills/client-methods/SKILL.md +0 -115
- package/src/templates/workspace-core/.agents/skills/client-methods/references/legacy-client-fetch-audit-2026-06-03.md +0 -62
- package/src/templates/workspace-core/.agents/skills/client-side-routing/SKILL.md +0 -87
- package/src/templates/workspace-core/.agents/skills/composable-mini-apps/SKILL.md +0 -139
- package/src/templates/workspace-core/.agents/skills/context-xray/SKILL.md +0 -72
- package/src/templates/workspace-core/.agents/skills/create-skill/SKILL.md +0 -195
- package/src/templates/workspace-core/.agents/skills/data-programs/SKILL.md +0 -128
- package/src/templates/workspace-core/.agents/skills/extension-points/SKILL.md +0 -219
- package/src/templates/workspace-core/.agents/skills/extensions/SKILL.md +0 -533
- package/src/templates/workspace-core/.agents/skills/extensions/references/api.md +0 -340
- package/src/templates/workspace-core/.agents/skills/extensions/references/examples.md +0 -259
- package/src/templates/workspace-core/.agents/skills/external-agents/SKILL.md +0 -547
- package/src/templates/workspace-core/.agents/skills/external-agents/references/mcp-apps-embedding.md +0 -157
- package/src/templates/workspace-core/.agents/skills/feature-flags/SKILL.md +0 -169
- package/src/templates/workspace-core/.agents/skills/generative-ui/SKILL.md +0 -117
- package/src/templates/workspace-core/.agents/skills/harness-agents/SKILL.md +0 -170
- package/src/templates/workspace-core/.agents/skills/integration-webhooks/SKILL.md +0 -364
- package/src/templates/workspace-core/.agents/skills/internationalization/SKILL.md +0 -82
- package/src/templates/workspace-core/.agents/skills/mvp-followup/SKILL.md +0 -52
- package/src/templates/workspace-core/.agents/skills/native-navigation/SKILL.md +0 -67
- package/src/templates/workspace-core/.agents/skills/observability/SKILL.md +0 -329
- package/src/templates/workspace-core/.agents/skills/onboarding/SKILL.md +0 -56
- package/src/templates/workspace-core/.agents/skills/performance/SKILL.md +0 -299
- package/src/templates/workspace-core/.agents/skills/qa/SKILL.md +0 -333
- package/src/templates/workspace-core/.agents/skills/real-time-collab/SKILL.md +0 -392
- package/src/templates/workspace-core/.agents/skills/recurring-jobs/SKILL.md +0 -74
- package/src/templates/workspace-core/.agents/skills/reliable-mutations/SKILL.md +0 -70
- package/src/templates/workspace-core/.agents/skills/server-plugins/SKILL.md +0 -84
- package/src/templates/workspace-core/.agents/skills/tracking/SKILL.md +0 -278
- package/src/templates/workspace-core/.agents/skills/upgrade-agent-native/SKILL.md +0 -127
- package/src/templates/workspace-core/.agents/skills/visual-answer/SKILL.md +0 -101
- package/src/templates/workspace-core/.agents/skills/voice-transcription/SKILL.md +0 -222
- package/src/templates/workspace-core/.agents/skills/writing-agent-instructions/SKILL.md +0 -363
|
@@ -4,6 +4,8 @@ import { buildJobResourceContent, jobBelongsToApp, normalizeJobMcpTools, parseJo
|
|
|
4
4
|
import { deleteAutomationRuns } from "../jobs/run-history.js";
|
|
5
5
|
import { resolveUserSchedulingTimezone } from "../localization/user-timezone.js";
|
|
6
6
|
import { organizationIdFromResourceOwner, organizationResourceOwner, resourceDelete, resourceGetByPath, resourceList, resourcePut, } from "../resources/store.js";
|
|
7
|
+
/** Conservative default for new scheduled automations when no cadence is given. */
|
|
8
|
+
export const DEFAULT_AUTOMATION_SCHEDULE = "0 * * * *";
|
|
7
9
|
function httpError(message, statusCode) {
|
|
8
10
|
return Object.assign(new Error(message), { statusCode });
|
|
9
11
|
}
|
|
@@ -181,7 +183,9 @@ export async function defineAutomation(actorInput, input) {
|
|
|
181
183
|
const body = input.body.trim();
|
|
182
184
|
if (!body)
|
|
183
185
|
throw httpError("body is required.", 400);
|
|
184
|
-
const schedule = input.
|
|
186
|
+
const schedule = input.triggerType === "schedule"
|
|
187
|
+
? input.schedule?.trim() || DEFAULT_AUTOMATION_SCHEDULE
|
|
188
|
+
: "";
|
|
185
189
|
const event = input.event?.trim() ?? "";
|
|
186
190
|
if (input.triggerType === "schedule" && !isValidCron(schedule)) {
|
|
187
191
|
throw httpError(schedule
|
|
@@ -441,14 +441,14 @@ export declare const chatThreadShares: import("drizzle-orm/sqlite-core").SQLiteT
|
|
|
441
441
|
tableName: string;
|
|
442
442
|
dataType: "string";
|
|
443
443
|
columnType: "SQLiteText";
|
|
444
|
-
data: "admin" | "editor" | "viewer";
|
|
444
|
+
data: "admin" | "commenter" | "editor" | "viewer";
|
|
445
445
|
driverParam: string;
|
|
446
446
|
notNull: true;
|
|
447
447
|
hasDefault: true;
|
|
448
448
|
isPrimaryKey: false;
|
|
449
449
|
isAutoincrement: false;
|
|
450
450
|
hasRuntimeDefault: false;
|
|
451
|
-
enumValues: ["viewer", "editor", "admin"];
|
|
451
|
+
enumValues: ["viewer", "commenter", "editor", "admin"];
|
|
452
452
|
baseColumn: never;
|
|
453
453
|
identity: undefined;
|
|
454
454
|
generated: undefined;
|
package/dist/cli/changelog.js
CHANGED
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
import fs from "fs";
|
|
16
16
|
import path from "path";
|
|
17
17
|
import { parsePendingEntry, parseChangelog, rollupChangelog, changelogSlug, CHANGELOG_HEADER, } from "../changelog/parse.js";
|
|
18
|
+
import { createAgentNativeConfigContext, loadResolvedAgentNativeConfig, } from "../vite/agent-native-config-loader.js";
|
|
18
19
|
const CHANGELOG_FILE = "CHANGELOG.md";
|
|
19
20
|
const PENDING_DIR = "changelog";
|
|
20
21
|
function todayIso() {
|
|
@@ -61,9 +62,23 @@ function printUsage() {
|
|
|
61
62
|
"",
|
|
62
63
|
"Entries are user-facing notes. `add` writes a pending file under",
|
|
63
64
|
` ${PENDING_DIR}/; \`release\` rolls all pending files into ${CHANGELOG_FILE}.`,
|
|
65
|
+
"Generation requires changelog.enabled: true in agent-native.config.ts.",
|
|
64
66
|
].join("\n"));
|
|
65
67
|
}
|
|
66
|
-
function
|
|
68
|
+
async function changelogGenerationEnabled() {
|
|
69
|
+
const config = await loadResolvedAgentNativeConfig(process.cwd(), createAgentNativeConfigContext("serve", "cli"));
|
|
70
|
+
return config.changelog?.enabled === true;
|
|
71
|
+
}
|
|
72
|
+
async function requireChangelogGeneration(operation) {
|
|
73
|
+
if (await changelogGenerationEnabled())
|
|
74
|
+
return true;
|
|
75
|
+
console.error(`Changelog ${operation} is disabled by default. Set ` +
|
|
76
|
+
`changelog: { enabled: true } in agent-native.config.ts to enable it.`);
|
|
77
|
+
return false;
|
|
78
|
+
}
|
|
79
|
+
async function cmdAdd(args) {
|
|
80
|
+
if (!(await requireChangelogGeneration("add")))
|
|
81
|
+
return 1;
|
|
67
82
|
const { flags, rest } = parseFlags(args);
|
|
68
83
|
const summary = rest.join(" ").trim();
|
|
69
84
|
if (!summary) {
|
|
@@ -101,7 +116,9 @@ function readPending() {
|
|
|
101
116
|
content: fs.readFileSync(path.join(dir, f), "utf-8"),
|
|
102
117
|
}));
|
|
103
118
|
}
|
|
104
|
-
function cmdRelease(args) {
|
|
119
|
+
async function cmdRelease(args) {
|
|
120
|
+
if (!(await requireChangelogGeneration("release")))
|
|
121
|
+
return 1;
|
|
105
122
|
const { flags } = parseFlags(args);
|
|
106
123
|
const date = flags.date?.match(/\d{4}-\d{2}-\d{2}/)?.[0] ?? todayIso();
|
|
107
124
|
const pendingFiles = readPending();
|
|
@@ -144,9 +161,9 @@ export async function runChangelog(args) {
|
|
|
144
161
|
const rest = args.slice(1);
|
|
145
162
|
switch (sub) {
|
|
146
163
|
case "add":
|
|
147
|
-
return cmdAdd(rest);
|
|
164
|
+
return await cmdAdd(rest);
|
|
148
165
|
case "release":
|
|
149
|
-
return cmdRelease(rest);
|
|
166
|
+
return await cmdRelease(rest);
|
|
150
167
|
case "list":
|
|
151
168
|
return cmdList();
|
|
152
169
|
case undefined:
|
package/dist/cli/create.d.ts
CHANGED
|
@@ -156,11 +156,21 @@ export declare function detectWorkspace(startDir: string): {
|
|
|
156
156
|
} | null;
|
|
157
157
|
export { parseWorkspaceScope };
|
|
158
158
|
/** @internal — exported for E2E tests */
|
|
159
|
-
export { scaffoldWorkspaceRoot as _scaffoldWorkspaceRoot, ensureGuardedScaffold as _ensureGuardedScaffold, scaffoldAppTemplate as _scaffoldAppTemplate, scaffoldRequiredPackages as _scaffoldRequiredPackages, postProcessStandalone as _postProcessStandalone, loadCatalog as _loadCatalog, fixPackageJsonName as _fixPackageJsonName, renameGitignore as _renameGitignore, rewriteNetlifyToml as _rewriteNetlifyToml, getCoreDependencyVersion as _getCoreDependencyVersion, getDispatchDependencyVersion as _getDispatchDependencyVersion, getToolkitDependencyVersion as _getToolkitDependencyVersion, getCorePackageVersion as _getCorePackageVersion, getGitHubTemplateRef as _getGitHubTemplateRef, getGitHubTemplateRefCandidates as _getGitHubTemplateRefCandidates, githubTarballUrl as _githubTarballUrl, findLocalTemplateFrom as _findLocalTemplateFrom, workspaceAppNameForTemplateSelection as _workspaceAppNameForTemplateSelection, startShapePromptOptions as _startShapePromptOptions, standaloneTemplatePromptOptions as _standaloneTemplatePromptOptions, parseCommunityTemplateSelection as _parseCommunityTemplateSelection, communityTemplateTrustMessage as _communityTemplateTrustMessage, communityTemplateTarballUrl as _communityTemplateTarballUrl, assertCommunityTemplateRoot as _assertCommunityTemplateRoot, assertSafeCommunityArchiveListing as _assertSafeCommunityArchiveListing, validateCommunityArchive as _validateCommunityArchive, resolveCommunityTemplateSource as _resolveCommunityTemplateSource, discoverCommunityWorkspaceApps as _discoverCommunityWorkspaceApps, normalizeCommunityWorkspaceAppDependencies as _normalizeCommunityWorkspaceAppDependencies, shouldSkipScaffoldEntry as _shouldSkipScaffoldEntry, tarExtractArgs as _tarExtractArgs, downloadGitHubSubdir as _downloadGitHubSubdir, findLocalTemplate as _findLocalTemplate, templateSourceName as _templateSourceName, normalizeTemplateName as _normalizeTemplateName, appTitleForScaffold as _appTitleForScaffold, replacePlaceholders as _replacePlaceholders, rewriteTrackingAppId as _rewriteTrackingAppId, rewriteAgentChatAppId as _rewriteAgentChatAppId, applyScaffoldIdentity as _applyScaffoldIdentity, fixWebManifestName as _fixWebManifestName, copyDir as _copyDir, localTemplateSourceKind as _localTemplateSourceKind, REPO as _REPO, TEMPLATES_DIR as _TEMPLATES_DIR, };
|
|
159
|
+
export { scaffoldWorkspaceRoot as _scaffoldWorkspaceRoot, ensureGuardedScaffold as _ensureGuardedScaffold, scaffoldAppTemplate as _scaffoldAppTemplate, scaffoldRequiredPackages as _scaffoldRequiredPackages, postProcessStandalone as _postProcessStandalone, loadCatalog as _loadCatalog, fixPackageJsonName as _fixPackageJsonName, renameGitignore as _renameGitignore, rewriteNetlifyToml as _rewriteNetlifyToml, getCoreDependencyVersion as _getCoreDependencyVersion, getDispatchDependencyVersion as _getDispatchDependencyVersion, getToolkitDependencyVersion as _getToolkitDependencyVersion, getCorePackageVersion as _getCorePackageVersion, getGitHubTemplateRef as _getGitHubTemplateRef, getGitHubTemplateRefCandidates as _getGitHubTemplateRefCandidates, githubTarballUrl as _githubTarballUrl, findLocalTemplateFrom as _findLocalTemplateFrom, workspaceAppNameForTemplateSelection as _workspaceAppNameForTemplateSelection, startShapePromptOptions as _startShapePromptOptions, standaloneTemplatePromptOptions as _standaloneTemplatePromptOptions, parseCommunityTemplateSelection as _parseCommunityTemplateSelection, communityTemplateTrustMessage as _communityTemplateTrustMessage, communityTemplateTarballUrl as _communityTemplateTarballUrl, assertCommunityTemplateRoot as _assertCommunityTemplateRoot, assertSafeCommunityArchiveListing as _assertSafeCommunityArchiveListing, validateCommunityArchive as _validateCommunityArchive, resolveCommunityTemplateSource as _resolveCommunityTemplateSource, discoverCommunityWorkspaceApps as _discoverCommunityWorkspaceApps, normalizeCommunityWorkspaceAppDependencies as _normalizeCommunityWorkspaceAppDependencies, shouldSkipScaffoldEntry as _shouldSkipScaffoldEntry, tarExtractArgs as _tarExtractArgs, extractTarball as _extractTarball, materializeArchiveSymlinks as _materializeArchiveSymlinks, downloadGitHubSubdir as _downloadGitHubSubdir, findLocalTemplate as _findLocalTemplate, templateSourceName as _templateSourceName, normalizeTemplateName as _normalizeTemplateName, appTitleForScaffold as _appTitleForScaffold, replacePlaceholders as _replacePlaceholders, rewriteTrackingAppId as _rewriteTrackingAppId, rewriteAgentChatAppId as _rewriteAgentChatAppId, applyScaffoldIdentity as _applyScaffoldIdentity, fixWebManifestName as _fixWebManifestName, copyDir as _copyDir, localTemplateSourceKind as _localTemplateSourceKind, REPO as _REPO, TEMPLATES_DIR as _TEMPLATES_DIR, };
|
|
160
160
|
declare function tarExtractArgs(tarPath: string, destDir: string, options?: {
|
|
161
161
|
skipAgentSymlinks?: boolean;
|
|
162
162
|
untrustedCommunityArchive?: boolean;
|
|
163
|
+
additionalExcludes?: string[];
|
|
163
164
|
}): string[];
|
|
165
|
+
interface ArchiveSymlink {
|
|
166
|
+
archivePath: string;
|
|
167
|
+
target: string;
|
|
168
|
+
}
|
|
169
|
+
declare function materializeArchiveSymlinks(destDir: string, symlinks: ArchiveSymlink[]): void;
|
|
170
|
+
declare function extractTarball(tarPath: string, destDir: string, options?: {
|
|
171
|
+
skipAgentSymlinks?: boolean;
|
|
172
|
+
untrustedCommunityArchive?: boolean;
|
|
173
|
+
}): void;
|
|
164
174
|
declare function validateCommunityArchive(tarPath: string): void;
|
|
165
175
|
declare function assertSafeCommunityArchiveListing(listing: string): void;
|
|
166
176
|
/** Resolves to the ref that actually succeeded so callers can record it. */
|
|
@@ -227,5 +237,6 @@ declare function renameGitignore(dir: string): void;
|
|
|
227
237
|
declare function replacePlaceholders(dir: string, appName: string, appTitle: string, workspaceName?: string): void;
|
|
228
238
|
declare function copyDir(src: string, dest: string, root?: string, opts?: {
|
|
229
239
|
skipExisting?: boolean;
|
|
240
|
+
materializeSymlinks?: boolean;
|
|
230
241
|
}): void;
|
|
231
242
|
declare function shouldSkipScaffoldEntry(name: string, srcPath?: string): boolean;
|
package/dist/cli/create.js
CHANGED
|
@@ -1700,7 +1700,7 @@ export function detectWorkspace(startDir) {
|
|
|
1700
1700
|
}
|
|
1701
1701
|
export { parseWorkspaceScope };
|
|
1702
1702
|
/** @internal — exported for E2E tests */
|
|
1703
|
-
export { scaffoldWorkspaceRoot as _scaffoldWorkspaceRoot, ensureGuardedScaffold as _ensureGuardedScaffold, scaffoldAppTemplate as _scaffoldAppTemplate, scaffoldRequiredPackages as _scaffoldRequiredPackages, postProcessStandalone as _postProcessStandalone, loadCatalog as _loadCatalog, fixPackageJsonName as _fixPackageJsonName, renameGitignore as _renameGitignore, rewriteNetlifyToml as _rewriteNetlifyToml, getCoreDependencyVersion as _getCoreDependencyVersion, getDispatchDependencyVersion as _getDispatchDependencyVersion, getToolkitDependencyVersion as _getToolkitDependencyVersion, getCorePackageVersion as _getCorePackageVersion, getGitHubTemplateRef as _getGitHubTemplateRef, getGitHubTemplateRefCandidates as _getGitHubTemplateRefCandidates, githubTarballUrl as _githubTarballUrl, findLocalTemplateFrom as _findLocalTemplateFrom, workspaceAppNameForTemplateSelection as _workspaceAppNameForTemplateSelection, startShapePromptOptions as _startShapePromptOptions, standaloneTemplatePromptOptions as _standaloneTemplatePromptOptions, parseCommunityTemplateSelection as _parseCommunityTemplateSelection, communityTemplateTrustMessage as _communityTemplateTrustMessage, communityTemplateTarballUrl as _communityTemplateTarballUrl, assertCommunityTemplateRoot as _assertCommunityTemplateRoot, assertSafeCommunityArchiveListing as _assertSafeCommunityArchiveListing, validateCommunityArchive as _validateCommunityArchive, resolveCommunityTemplateSource as _resolveCommunityTemplateSource, discoverCommunityWorkspaceApps as _discoverCommunityWorkspaceApps, normalizeCommunityWorkspaceAppDependencies as _normalizeCommunityWorkspaceAppDependencies, shouldSkipScaffoldEntry as _shouldSkipScaffoldEntry, tarExtractArgs as _tarExtractArgs, downloadGitHubSubdir as _downloadGitHubSubdir, findLocalTemplate as _findLocalTemplate, templateSourceName as _templateSourceName, normalizeTemplateName as _normalizeTemplateName, appTitleForScaffold as _appTitleForScaffold, replacePlaceholders as _replacePlaceholders, rewriteTrackingAppId as _rewriteTrackingAppId, rewriteAgentChatAppId as _rewriteAgentChatAppId, applyScaffoldIdentity as _applyScaffoldIdentity, fixWebManifestName as _fixWebManifestName, copyDir as _copyDir, localTemplateSourceKind as _localTemplateSourceKind, REPO as _REPO, TEMPLATES_DIR as _TEMPLATES_DIR, };
|
|
1703
|
+
export { scaffoldWorkspaceRoot as _scaffoldWorkspaceRoot, ensureGuardedScaffold as _ensureGuardedScaffold, scaffoldAppTemplate as _scaffoldAppTemplate, scaffoldRequiredPackages as _scaffoldRequiredPackages, postProcessStandalone as _postProcessStandalone, loadCatalog as _loadCatalog, fixPackageJsonName as _fixPackageJsonName, renameGitignore as _renameGitignore, rewriteNetlifyToml as _rewriteNetlifyToml, getCoreDependencyVersion as _getCoreDependencyVersion, getDispatchDependencyVersion as _getDispatchDependencyVersion, getToolkitDependencyVersion as _getToolkitDependencyVersion, getCorePackageVersion as _getCorePackageVersion, getGitHubTemplateRef as _getGitHubTemplateRef, getGitHubTemplateRefCandidates as _getGitHubTemplateRefCandidates, githubTarballUrl as _githubTarballUrl, findLocalTemplateFrom as _findLocalTemplateFrom, workspaceAppNameForTemplateSelection as _workspaceAppNameForTemplateSelection, startShapePromptOptions as _startShapePromptOptions, standaloneTemplatePromptOptions as _standaloneTemplatePromptOptions, parseCommunityTemplateSelection as _parseCommunityTemplateSelection, communityTemplateTrustMessage as _communityTemplateTrustMessage, communityTemplateTarballUrl as _communityTemplateTarballUrl, assertCommunityTemplateRoot as _assertCommunityTemplateRoot, assertSafeCommunityArchiveListing as _assertSafeCommunityArchiveListing, validateCommunityArchive as _validateCommunityArchive, resolveCommunityTemplateSource as _resolveCommunityTemplateSource, discoverCommunityWorkspaceApps as _discoverCommunityWorkspaceApps, normalizeCommunityWorkspaceAppDependencies as _normalizeCommunityWorkspaceAppDependencies, shouldSkipScaffoldEntry as _shouldSkipScaffoldEntry, tarExtractArgs as _tarExtractArgs, extractTarball as _extractTarball, materializeArchiveSymlinks as _materializeArchiveSymlinks, downloadGitHubSubdir as _downloadGitHubSubdir, findLocalTemplate as _findLocalTemplate, templateSourceName as _templateSourceName, normalizeTemplateName as _normalizeTemplateName, appTitleForScaffold as _appTitleForScaffold, replacePlaceholders as _replacePlaceholders, rewriteTrackingAppId as _rewriteTrackingAppId, rewriteAgentChatAppId as _rewriteAgentChatAppId, applyScaffoldIdentity as _applyScaffoldIdentity, fixWebManifestName as _fixWebManifestName, copyDir as _copyDir, localTemplateSourceKind as _localTemplateSourceKind, REPO as _REPO, TEMPLATES_DIR as _TEMPLATES_DIR, };
|
|
1704
1704
|
/* ─────────────────────────────────────────────────────────────────────────
|
|
1705
1705
|
* Download / copy helpers
|
|
1706
1706
|
* ───────────────────────────────────────────────────────────────────────── */
|
|
@@ -1712,12 +1712,14 @@ function validateRepoName(repo) {
|
|
|
1712
1712
|
}
|
|
1713
1713
|
}
|
|
1714
1714
|
function tarExtractArgs(tarPath, destDir, options = {}) {
|
|
1715
|
-
const
|
|
1716
|
-
? FIRST_PARTY_TARBALL_SYMLINK_EXCLUDES
|
|
1717
|
-
|
|
1718
|
-
|
|
1719
|
-
|
|
1720
|
-
|
|
1715
|
+
const excludePatterns = [
|
|
1716
|
+
...(options.skipAgentSymlinks ? FIRST_PARTY_TARBALL_SYMLINK_EXCLUDES : []),
|
|
1717
|
+
...(options.additionalExcludes ?? []),
|
|
1718
|
+
];
|
|
1719
|
+
const excludes = [...new Set(excludePatterns)].flatMap((pattern) => [
|
|
1720
|
+
"--exclude",
|
|
1721
|
+
pattern,
|
|
1722
|
+
]);
|
|
1721
1723
|
const safeOwnership = options.untrustedCommunityArchive
|
|
1722
1724
|
? ["--no-same-owner", "--no-same-permissions"]
|
|
1723
1725
|
: [];
|
|
@@ -1731,6 +1733,79 @@ function tarExtractArgs(tarPath, destDir, options = {}) {
|
|
|
1731
1733
|
destDir,
|
|
1732
1734
|
];
|
|
1733
1735
|
}
|
|
1736
|
+
function archiveSymlinksForExtraction(tarPath) {
|
|
1737
|
+
const listing = execFileSync("tar", ["tvzf", tarPath], {
|
|
1738
|
+
encoding: "utf-8",
|
|
1739
|
+
stdio: ["ignore", "pipe", "pipe"],
|
|
1740
|
+
});
|
|
1741
|
+
return listing.split(/\r?\n/).flatMap((line) => {
|
|
1742
|
+
if (!line.startsWith("l"))
|
|
1743
|
+
return [];
|
|
1744
|
+
const match = line.match(/\s(\S+)\s+->\s+(\S+)\s*$/);
|
|
1745
|
+
return match ? [{ archivePath: match[1], target: match[2] }] : [];
|
|
1746
|
+
});
|
|
1747
|
+
}
|
|
1748
|
+
function archivePathAfterStrip(archivePath) {
|
|
1749
|
+
const parts = archivePath.split("/");
|
|
1750
|
+
return parts.length > 1 ? parts.slice(1).join("/") : archivePath;
|
|
1751
|
+
}
|
|
1752
|
+
function isPathWithin(root, candidate) {
|
|
1753
|
+
const relative = path.relative(root, candidate);
|
|
1754
|
+
return (relative === "" ||
|
|
1755
|
+
(!relative.startsWith(`..${path.sep}`) &&
|
|
1756
|
+
relative !== ".." &&
|
|
1757
|
+
!path.isAbsolute(relative)));
|
|
1758
|
+
}
|
|
1759
|
+
function materializeArchiveSymlinks(destDir, symlinks) {
|
|
1760
|
+
const links = new Map(symlinks.map((link) => [archivePathAfterStrip(link.archivePath), link]));
|
|
1761
|
+
const active = new Set();
|
|
1762
|
+
const materialize = (relativeLinkPath) => {
|
|
1763
|
+
const link = links.get(relativeLinkPath);
|
|
1764
|
+
if (!link)
|
|
1765
|
+
return;
|
|
1766
|
+
if (active.has(relativeLinkPath)) {
|
|
1767
|
+
throw new Error(`Cannot materialize cyclic archive symlink "${relativeLinkPath}".`);
|
|
1768
|
+
}
|
|
1769
|
+
const linkPath = path.resolve(destDir, relativeLinkPath);
|
|
1770
|
+
if (!isPathWithin(path.resolve(destDir), linkPath)) {
|
|
1771
|
+
throw new Error(`Cannot materialize archive symlink outside the extraction directory: "${relativeLinkPath}".`);
|
|
1772
|
+
}
|
|
1773
|
+
if (fs.existsSync(linkPath))
|
|
1774
|
+
return;
|
|
1775
|
+
const resolvedTarget = path.resolve(path.dirname(linkPath), link.target);
|
|
1776
|
+
if (!isPathWithin(path.resolve(destDir), resolvedTarget)) {
|
|
1777
|
+
throw new Error(`Archive symlink "${relativeLinkPath}" points outside the extraction directory.`);
|
|
1778
|
+
}
|
|
1779
|
+
active.add(relativeLinkPath);
|
|
1780
|
+
try {
|
|
1781
|
+
const targetRelativePath = path.relative(path.resolve(destDir), resolvedTarget);
|
|
1782
|
+
if (links.has(targetRelativePath) && !fs.existsSync(resolvedTarget)) {
|
|
1783
|
+
materialize(targetRelativePath);
|
|
1784
|
+
}
|
|
1785
|
+
if (!fs.existsSync(resolvedTarget)) {
|
|
1786
|
+
throw new Error(`Archive symlink "${relativeLinkPath}" points to a missing target.`);
|
|
1787
|
+
}
|
|
1788
|
+
fs.mkdirSync(path.dirname(linkPath), { recursive: true });
|
|
1789
|
+
const targetStat = fs.statSync(resolvedTarget);
|
|
1790
|
+
if (targetStat.isDirectory()) {
|
|
1791
|
+
copyDir(resolvedTarget, linkPath, undefined, {
|
|
1792
|
+
materializeSymlinks: true,
|
|
1793
|
+
});
|
|
1794
|
+
}
|
|
1795
|
+
else {
|
|
1796
|
+
fs.copyFileSync(resolvedTarget, linkPath);
|
|
1797
|
+
}
|
|
1798
|
+
}
|
|
1799
|
+
finally {
|
|
1800
|
+
active.delete(relativeLinkPath);
|
|
1801
|
+
}
|
|
1802
|
+
};
|
|
1803
|
+
// Resolve deeper links first so links such as `.claude/skills` see the
|
|
1804
|
+
// regularized skill directories they point at.
|
|
1805
|
+
for (const relativeLinkPath of [...links.keys()].sort((a, b) => b.length - a.length)) {
|
|
1806
|
+
materialize(relativeLinkPath);
|
|
1807
|
+
}
|
|
1808
|
+
}
|
|
1734
1809
|
function execFileBuffer(command, args, options) {
|
|
1735
1810
|
return new Promise((resolve, reject) => {
|
|
1736
1811
|
execFile(command, args, { ...options, encoding: "buffer" }, (error, stdout, stderr) => {
|
|
@@ -1745,6 +1820,20 @@ function execFileBuffer(command, args, options) {
|
|
|
1745
1820
|
});
|
|
1746
1821
|
});
|
|
1747
1822
|
}
|
|
1823
|
+
function extractTarball(tarPath, destDir, options = {}) {
|
|
1824
|
+
const symlinks = options.skipAgentSymlinks || options.untrustedCommunityArchive
|
|
1825
|
+
? archiveSymlinksForExtraction(tarPath)
|
|
1826
|
+
: [];
|
|
1827
|
+
execFileSync("tar", tarExtractArgs(tarPath, destDir, {
|
|
1828
|
+
...options,
|
|
1829
|
+
additionalExcludes: symlinks.map((link) => link.archivePath),
|
|
1830
|
+
}), {
|
|
1831
|
+
stdio: "pipe",
|
|
1832
|
+
});
|
|
1833
|
+
if (symlinks.length > 0) {
|
|
1834
|
+
materializeArchiveSymlinks(destDir, symlinks);
|
|
1835
|
+
}
|
|
1836
|
+
}
|
|
1748
1837
|
async function downloadAndExtract(url, destDir, options = {}) {
|
|
1749
1838
|
fs.mkdirSync(destDir, { recursive: true });
|
|
1750
1839
|
// --fail-with-body so curl exits non-zero on HTTP 4xx/5xx instead of writing
|
|
@@ -1767,9 +1856,7 @@ async function downloadAndExtract(url, destDir, options = {}) {
|
|
|
1767
1856
|
if (options.untrustedCommunityArchive) {
|
|
1768
1857
|
validateCommunityArchive(tarPath);
|
|
1769
1858
|
}
|
|
1770
|
-
|
|
1771
|
-
stdio: "pipe",
|
|
1772
|
-
});
|
|
1859
|
+
extractTarball(tarPath, destDir, options);
|
|
1773
1860
|
}
|
|
1774
1861
|
finally {
|
|
1775
1862
|
fs.unlinkSync(tarPath);
|
|
@@ -2854,7 +2941,8 @@ function copyDir(src, dest, root, opts) {
|
|
|
2854
2941
|
if (entry.isSymbolicLink()) {
|
|
2855
2942
|
const target = fs.readlinkSync(srcPath);
|
|
2856
2943
|
const resolvedTarget = path.resolve(path.dirname(srcPath), target);
|
|
2857
|
-
if (
|
|
2944
|
+
if (!opts?.materializeSymlinks &&
|
|
2945
|
+
isPathWithin(resolvedRoot, resolvedTarget)) {
|
|
2858
2946
|
fs.symlinkSync(target, destPath);
|
|
2859
2947
|
}
|
|
2860
2948
|
else {
|
package/dist/cli/index.js
CHANGED
|
@@ -7,6 +7,7 @@ import { fileURLToPath } from "url";
|
|
|
7
7
|
import * as Sentry from "@sentry/node";
|
|
8
8
|
import { clearAgentNativeNitroPresetMarker, resolveAgentNativeNitroPreset, } from "../deploy/nitro-preset.js";
|
|
9
9
|
import { resolveDeployPostBuildInvocation } from "./deploy-build.js";
|
|
10
|
+
import { cliSpawnOptions } from "./process.js";
|
|
10
11
|
import { shouldTrackCliRun } from "./telemetry-routing.js";
|
|
11
12
|
import { createCliTelemetry } from "./telemetry.js";
|
|
12
13
|
// Resolve version once at module scope — used by both --version and --help
|
|
@@ -381,11 +382,7 @@ function extractNodeInspectFlag(args) {
|
|
|
381
382
|
return { inspectFlag, rest };
|
|
382
383
|
}
|
|
383
384
|
function run(cmd, cmdArgs, opts) {
|
|
384
|
-
const child = spawn(cmd, cmdArgs,
|
|
385
|
-
stdio: opts?.stdio ?? "inherit",
|
|
386
|
-
shell: process.platform === "win32",
|
|
387
|
-
env: opts?.env ?? process.env,
|
|
388
|
-
});
|
|
385
|
+
const child = spawn(cmd, cmdArgs, cliSpawnOptions(opts));
|
|
389
386
|
child.on("exit", (code) => process.exit(code ?? 0));
|
|
390
387
|
// Forward signals to child so Cmd+C doesn't leave zombie processes holding ports
|
|
391
388
|
for (const sig of ["SIGINT", "SIGTERM", "SIGHUP"]) {
|
|
@@ -564,7 +561,10 @@ switch (command) {
|
|
|
564
561
|
NITRO_DEV_RUNNER: process.env.NITRO_DEV_RUNNER ?? "node-process",
|
|
565
562
|
};
|
|
566
563
|
console.log(`[agent-native] API server debugger listening on ${target}`);
|
|
567
|
-
run(process.execPath, ["--import", preload, viteJsEntry, ...rest], {
|
|
564
|
+
run(process.execPath, ["--import", preload, viteJsEntry, ...rest], {
|
|
565
|
+
env,
|
|
566
|
+
shell: false,
|
|
567
|
+
});
|
|
568
568
|
break;
|
|
569
569
|
}
|
|
570
570
|
case "workspace-dev": {
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { SpawnOptions } from "node:child_process";
|
|
2
|
+
/**
|
|
3
|
+
* Keep Windows command-name launches compatible with `.cmd` shims while
|
|
4
|
+
* allowing callers that already have a real executable path to opt out of the
|
|
5
|
+
* shell. The latter is important for paths such as `C:\\Program Files\\nodejs\\node.exe`.
|
|
6
|
+
*/
|
|
7
|
+
export declare function cliSpawnOptions(options?: Pick<SpawnOptions, "env" | "shell" | "stdio">, platform?: NodeJS.Platform): Pick<SpawnOptions, "env" | "shell" | "stdio">;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Keep Windows command-name launches compatible with `.cmd` shims while
|
|
3
|
+
* allowing callers that already have a real executable path to opt out of the
|
|
4
|
+
* shell. The latter is important for paths such as `C:\\Program Files\\nodejs\\node.exe`.
|
|
5
|
+
*/
|
|
6
|
+
export function cliSpawnOptions(options = {}, platform = process.platform) {
|
|
7
|
+
return {
|
|
8
|
+
stdio: options.stdio ?? "inherit",
|
|
9
|
+
shell: options.shell ?? platform === "win32",
|
|
10
|
+
env: options.env ?? process.env,
|
|
11
|
+
};
|
|
12
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Skills every generated workspace app can use without an app-local copy.
|
|
3
|
+
*
|
|
4
|
+
* Keep this list deliberately small. Skills outside this list remain available
|
|
5
|
+
* in the framework source and can be opted into by adding them to the
|
|
6
|
+
* workspace core or to the app that actually needs them.
|
|
7
|
+
*/
|
|
8
|
+
export declare const DEFAULT_WORKSPACE_SKILLS: readonly ["actions", "adding-a-feature", "agent-native-docs", "agent-native-toolkit", "context-awareness", "customizing-agent-native", "delegate-to-agent", "frontend-design", "turn-into-app", "turn-into-skill", "real-time-sync", "secrets", "security", "self-modifying-code", "shadcn-ui", "sharing", "storing-data", "portability", "workspace-conventions"];
|
|
9
|
+
/**
|
|
10
|
+
* Framework skills that templates may carry before they are transformed into
|
|
11
|
+
* workspace apps. Workspacify removes these copies because the workspace core
|
|
12
|
+
* owns the inherited skill surface. App-specific skill names are intentionally
|
|
13
|
+
* not listed here and remain local.
|
|
14
|
+
*/
|
|
15
|
+
export declare const FRAMEWORK_TEMPLATE_SHARED_SKILLS: readonly ["actions", "agent-native-docs", "agent-native-toolkit", "adding-a-feature", "capture-learnings", "client-methods", "create-skill", "customizing-agent-native", "delegate-to-agent", "frontend-design", "feature-flags", "integration-webhooks", "internationalization", "onboarding", "performance", "real-time-collab", "real-time-sync", "security", "self-modifying-code", "shadcn-ui", "secrets", "storing-data", "sharing", "turn-into-app", "turn-into-skill", "upgrade-agent-native"];
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Skills every generated workspace app can use without an app-local copy.
|
|
3
|
+
*
|
|
4
|
+
* Keep this list deliberately small. Skills outside this list remain available
|
|
5
|
+
* in the framework source and can be opted into by adding them to the
|
|
6
|
+
* workspace core or to the app that actually needs them.
|
|
7
|
+
*/
|
|
8
|
+
export const DEFAULT_WORKSPACE_SKILLS = [
|
|
9
|
+
"actions",
|
|
10
|
+
"adding-a-feature",
|
|
11
|
+
"agent-native-docs",
|
|
12
|
+
"agent-native-toolkit",
|
|
13
|
+
"context-awareness",
|
|
14
|
+
"customizing-agent-native",
|
|
15
|
+
"delegate-to-agent",
|
|
16
|
+
"frontend-design",
|
|
17
|
+
"turn-into-app",
|
|
18
|
+
"turn-into-skill",
|
|
19
|
+
"real-time-sync",
|
|
20
|
+
"secrets",
|
|
21
|
+
"security",
|
|
22
|
+
"self-modifying-code",
|
|
23
|
+
"shadcn-ui",
|
|
24
|
+
"sharing",
|
|
25
|
+
"storing-data",
|
|
26
|
+
"portability",
|
|
27
|
+
"workspace-conventions",
|
|
28
|
+
];
|
|
29
|
+
/**
|
|
30
|
+
* Framework skills that templates may carry before they are transformed into
|
|
31
|
+
* workspace apps. Workspacify removes these copies because the workspace core
|
|
32
|
+
* owns the inherited skill surface. App-specific skill names are intentionally
|
|
33
|
+
* not listed here and remain local.
|
|
34
|
+
*/
|
|
35
|
+
export const FRAMEWORK_TEMPLATE_SHARED_SKILLS = [
|
|
36
|
+
"actions",
|
|
37
|
+
"agent-native-docs",
|
|
38
|
+
"agent-native-toolkit",
|
|
39
|
+
"adding-a-feature",
|
|
40
|
+
"capture-learnings",
|
|
41
|
+
"client-methods",
|
|
42
|
+
"create-skill",
|
|
43
|
+
"customizing-agent-native",
|
|
44
|
+
"delegate-to-agent",
|
|
45
|
+
"frontend-design",
|
|
46
|
+
"feature-flags",
|
|
47
|
+
"integration-webhooks",
|
|
48
|
+
"internationalization",
|
|
49
|
+
"onboarding",
|
|
50
|
+
"performance",
|
|
51
|
+
"real-time-collab",
|
|
52
|
+
"real-time-sync",
|
|
53
|
+
"security",
|
|
54
|
+
"self-modifying-code",
|
|
55
|
+
"shadcn-ui",
|
|
56
|
+
"secrets",
|
|
57
|
+
"storing-data",
|
|
58
|
+
"sharing",
|
|
59
|
+
"turn-into-app",
|
|
60
|
+
"turn-into-skill",
|
|
61
|
+
"upgrade-agent-native",
|
|
62
|
+
];
|
package/dist/cli/workspacify.js
CHANGED
|
@@ -22,6 +22,7 @@
|
|
|
22
22
|
*/
|
|
23
23
|
import fs from "fs";
|
|
24
24
|
import path from "path";
|
|
25
|
+
import { DEFAULT_WORKSPACE_SKILLS, FRAMEWORK_TEMPLATE_SHARED_SKILLS, } from "./workspace-skill-policy.js";
|
|
25
26
|
const POSTGRES_DEPENDENCY_VERSION = "^3.4.9";
|
|
26
27
|
const REACT_ROUTER_BUILD_DEPENDENCIES = [
|
|
27
28
|
"@react-router/dev",
|
|
@@ -113,6 +114,11 @@ export function workspacifyApp(opts) {
|
|
|
113
114
|
// Non-fatal: leave the file in place.
|
|
114
115
|
}
|
|
115
116
|
}
|
|
117
|
+
// Workspace-core owns framework skills. Keep only app-specific skill
|
|
118
|
+
// directories here, and expose the small inherited default set as symlinks
|
|
119
|
+
// so coding agents launched from this app see the same workspace guidance
|
|
120
|
+
// without another hard copy. Runtime agents inherit workspace-core directly.
|
|
121
|
+
linkInheritedWorkspaceSkills(opts);
|
|
116
122
|
// 3) Templates document action commands from the framework repo layout.
|
|
117
123
|
// Workspace apps live under apps/<name>, so point every agent at the
|
|
118
124
|
// generated app directory instead.
|
|
@@ -137,6 +143,36 @@ export function workspacifyApp(opts) {
|
|
|
137
143
|
writeInheritedChatAgentChatPlugin(appDir, workspaceCoreName, opts.appName);
|
|
138
144
|
}
|
|
139
145
|
}
|
|
146
|
+
function linkInheritedWorkspaceSkills(opts) {
|
|
147
|
+
const appSkillsDir = path.join(opts.appDir, ".agents", "skills");
|
|
148
|
+
const workspaceSkillsDir = path.join(opts.workspaceRoot, ".agents", "skills");
|
|
149
|
+
if (!fs.existsSync(workspaceSkillsDir))
|
|
150
|
+
return;
|
|
151
|
+
fs.mkdirSync(appSkillsDir, { recursive: true });
|
|
152
|
+
for (const skill of FRAMEWORK_TEMPLATE_SHARED_SKILLS) {
|
|
153
|
+
const localPath = path.join(appSkillsDir, skill);
|
|
154
|
+
if (fs.existsSync(localPath) ||
|
|
155
|
+
fs.lstatSync(localPath, { throwIfNoEntry: false })) {
|
|
156
|
+
fs.rmSync(localPath, { recursive: true, force: true });
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
for (const skill of DEFAULT_WORKSPACE_SKILLS) {
|
|
160
|
+
const inheritedPath = path.join(workspaceSkillsDir, skill);
|
|
161
|
+
if (!fs.existsSync(inheritedPath))
|
|
162
|
+
continue;
|
|
163
|
+
const linkPath = path.join(appSkillsDir, skill);
|
|
164
|
+
if (fs.existsSync(linkPath) ||
|
|
165
|
+
fs.lstatSync(linkPath, { throwIfNoEntry: false })) {
|
|
166
|
+
fs.rmSync(linkPath, { recursive: true, force: true });
|
|
167
|
+
}
|
|
168
|
+
try {
|
|
169
|
+
fs.symlinkSync(path.relative(appSkillsDir, inheritedPath), linkPath, "dir");
|
|
170
|
+
}
|
|
171
|
+
catch (error) {
|
|
172
|
+
throw new Error(`Could not link inherited workspace skill ${skill} into ${appSkillsDir}: ${error instanceof Error ? error.message : String(error)}`, { cause: error });
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
}
|
|
140
176
|
/**
|
|
141
177
|
* The version an existing workspace already pins for a framework package.
|
|
142
178
|
*
|
|
@@ -26,6 +26,9 @@ import type { AssistantChatProps } from "./AssistantChat.js";
|
|
|
26
26
|
import type { MultiTabAssistantChatHeaderProps, MultiTabAssistantChatProps } from "./MultiTabAssistantChat.js";
|
|
27
27
|
type PanelMode = "chat" | "cli" | "resources" | "settings";
|
|
28
28
|
export declare function normalizeAgentPanelModeForSurface(mode: PanelMode, allowSettingsMode: boolean, chatOnly?: boolean): PanelMode;
|
|
29
|
+
export declare function deferAgentPanelOverlayOpen(event: {
|
|
30
|
+
preventDefault: () => void;
|
|
31
|
+
}, closeMenu: () => void, openOverlay: () => void): void;
|
|
29
32
|
export declare function getAgentPanelChatTabGroups(tabs: MultiTabAssistantChatHeaderProps["tabs"], activeTabId: string): {
|
|
30
33
|
activeTab: import("./MultiTabAssistantChat.js").ChatTab | undefined;
|
|
31
34
|
childTabs: import("./MultiTabAssistantChat.js").ChatTab[];
|
|
@@ -39,6 +42,13 @@ export declare function shouldShowAgentPanelPageNewChatButton(tabs: MultiTabAssi
|
|
|
39
42
|
export declare function shouldShowAgentPanelCliTabBar(cliTabs: string[]): boolean;
|
|
40
43
|
export declare function shouldShowAgentPanelModeButtons(isSidebar: boolean): boolean;
|
|
41
44
|
export declare function shouldShowAgentPanelFullViewAction(agentPageHref: string | undefined, mode: PanelMode, isSidebar?: boolean, currentPath?: string): boolean;
|
|
45
|
+
export declare function resolveAgentPanelFullViewAction(agentPageHref: string | undefined, onFullViewRequest: (() => void) | undefined, mode: PanelMode, isSidebar?: boolean, currentPath?: string): {
|
|
46
|
+
readonly kind: "callback";
|
|
47
|
+
readonly href?: undefined;
|
|
48
|
+
} | {
|
|
49
|
+
readonly kind: "link";
|
|
50
|
+
readonly href: string;
|
|
51
|
+
} | null;
|
|
42
52
|
export declare function getAgentPanelShortcutHints(isMac: boolean): {
|
|
43
53
|
closeTab: string;
|
|
44
54
|
closeAllTabs: string;
|
|
@@ -76,6 +86,8 @@ export interface AgentPanelProps extends Omit<AssistantChatProps, "onSwitchToCli
|
|
|
76
86
|
isFullscreen?: boolean;
|
|
77
87
|
/** @deprecated Fullscreen sidebar controls are no longer rendered. */
|
|
78
88
|
onToggleFullscreen?: () => void;
|
|
89
|
+
/** Called when the user selects the full-view action from a sidebar chat. */
|
|
90
|
+
onFullViewRequest?: () => void;
|
|
79
91
|
/** Called when the user asks the sidebar to use the wide chat width preset. */
|
|
80
92
|
onSnapTo75Percent?: () => void;
|
|
81
93
|
/** Whether the sidebar is currently using the wide fixed drawer presentation. */
|
|
@@ -186,7 +198,7 @@ export interface AgentSidebarProps {
|
|
|
186
198
|
storageKey?: string;
|
|
187
199
|
/** Open the sidebar when a chat run is active or reconnects. */
|
|
188
200
|
openOnChatRunning?: boolean;
|
|
189
|
-
/**
|
|
201
|
+
/** Called when the user selects the full-view action from the chat sidebar. */
|
|
190
202
|
onFullscreenRequest?: () => void;
|
|
191
203
|
/** Ambient resource context rendered as a composer chip. */
|
|
192
204
|
scope?: import("./use-chat-threads.js").ChatThreadScope | null;
|
|
@@ -205,7 +217,7 @@ export interface AgentSidebarProps {
|
|
|
205
217
|
* Wraps app content with a toggleable agent sidebar.
|
|
206
218
|
* Use AgentToggleButton in your header to open/close it.
|
|
207
219
|
*/
|
|
208
|
-
export declare function AgentSidebar({ children, emptyStateText, suggestions, dynamicSuggestions, composerToolbarSlot, composerSlot, onComposerTextChange, imageModelMenu, threadFooterSlot, defaultSidebarWidth, sidebarWidth, position, defaultOpen, animateMobile, animateDesktop, chatViewTransition, chatViewTransitionHandoff, storageKey, openOnChatRunning, scope, showScopeBadge, browserTabId, threadUrlSync, agentPageHref, suppressFirstRunOnboarding, }: AgentSidebarProps): React.JSX.Element;
|
|
220
|
+
export declare function AgentSidebar({ children, emptyStateText, suggestions, dynamicSuggestions, composerToolbarSlot, composerSlot, onComposerTextChange, imageModelMenu, threadFooterSlot, defaultSidebarWidth, sidebarWidth, position, defaultOpen, animateMobile, animateDesktop, chatViewTransition, chatViewTransitionHandoff, storageKey, openOnChatRunning, onFullscreenRequest, scope, showScopeBadge, browserTabId, threadUrlSync, agentPageHref, suppressFirstRunOnboarding, }: AgentSidebarProps): React.JSX.Element;
|
|
209
221
|
/**
|
|
210
222
|
* Focus the agent chat composer input.
|
|
211
223
|
* Opens the sidebar if closed, then focuses the text input.
|