@agent-native/core 0.152.1 → 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/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-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/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/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 +90 -182
- 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/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/collab/struct-routes.d.ts +1 -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/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/notifications/routes.d.ts +5 -5
- package/dist/observability/routes.d.ts +3 -3
- package/dist/onboarding/plugin.js +17 -2
- package/dist/org/context.js +16 -0
- 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/secrets/routes.d.ts +9 -9
- package/dist/server/action-discovery.js +29 -0
- 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/builder-browser.js +31 -0
- package/dist/server/onboarding-html.js +1 -1
- package/dist/server/transcribe-voice.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
package/src/templates/workspace-core/.agents/skills/external-agents/references/mcp-apps-embedding.md
DELETED
|
@@ -1,157 +0,0 @@
|
|
|
1
|
-
# MCP Apps Embedding Internals
|
|
2
|
-
|
|
3
|
-
Deep-dive reference for the optional MCP Apps UI surface — the `mcpApp` action
|
|
4
|
-
field, `embedApp()`, the host bridges (Claude / ChatGPT), embed start tickets,
|
|
5
|
-
extension-page rendering inside chat embeds, and host sizing. For the common
|
|
6
|
-
case (adding a `link` builder, connecting hosts, ingest actions, the
|
|
7
|
-
`/_agent-native/open` route), see `../SKILL.md`. This file is the expansion of
|
|
8
|
-
that skill's "Optional MCP Apps UI" section.
|
|
9
|
-
|
|
10
|
-
## Optional MCP Apps UI
|
|
11
|
-
|
|
12
|
-
For hosts that support the MCP Apps extension, an action can also advertise an
|
|
13
|
-
inline UI resource with `mcpApp`. This is a progressive enhancement for flows
|
|
14
|
-
where the external agent should hand the user an interactive surface instead of
|
|
15
|
-
only text — for example reviewing an email draft, editing a calendar invite, or
|
|
16
|
-
choosing between generated dashboard variants.
|
|
17
|
-
|
|
18
|
-
Use the real React app with `embedApp()` whenever the user needs UI. The mental
|
|
19
|
-
model is simple: the action's `link` target is also the MCP App embed target.
|
|
20
|
-
Expose the operation as a normal action/tool, return a focused deep link with
|
|
21
|
-
`link`, and add `mcpApp.resource = embedApp(...)` so capable hosts load that
|
|
22
|
-
same route inline instead of opening a new tab.
|
|
23
|
-
|
|
24
|
-
`embedApp()` supports both host bridges. Standard MCP Apps hosts use the
|
|
25
|
-
`ui/*` bridge; ChatGPT uses the `window.openai` compatibility bridge, reading
|
|
26
|
-
`toolInput` / `toolOutput` / `toolResponseMetadata` and calling
|
|
27
|
-
`create_embed_session` through `window.openai.callTool(...)`. Do not build a
|
|
28
|
-
ChatGPT-only HTML surface. Keep the action result and `link` target focused so
|
|
29
|
-
both bridges land on the same real app route.
|
|
30
|
-
|
|
31
|
-
That means full-app embeds can do anything the route can do once opened:
|
|
32
|
-
review or edit an email draft, show a filtered inbox/search, open a calendar
|
|
33
|
-
event or event draft, load an extension page, inspect a full analytics
|
|
34
|
-
dashboard or saved analysis, continue a deck in the Slides editor, or open a
|
|
35
|
-
Design project/editor. Prefer URL/deep-link params and the existing
|
|
36
|
-
`/_agent-native/open` navigation/app-state bridge over inventing a second
|
|
37
|
-
state protocol for MCP Apps.
|
|
38
|
-
|
|
39
|
-
On rare occasions the right target is a focused app route that renders one
|
|
40
|
-
shared React component instead of the whole app shell. Analytics' `/chart`
|
|
41
|
-
route is the model: it takes a compact `SqlPanel` payload in the URL and
|
|
42
|
-
renders the same chart component the dashboard uses. This is still an app
|
|
43
|
-
embed, not a plain HTML MCP App. Expose or call it through a normal action /
|
|
44
|
-
`open_app({ path, embed: true })`, keep the URL deterministic, and let
|
|
45
|
-
`embedApp()` render that route inline.
|
|
46
|
-
|
|
47
|
-
Do not hand-write one-off plain HTML MCP Apps for product UI; if the action
|
|
48
|
-
needs a custom surface, add or reuse a real app route/component first and embed
|
|
49
|
-
that route.
|
|
50
|
-
|
|
51
|
-
```ts
|
|
52
|
-
import { embedApp } from "@agent-native/core";
|
|
53
|
-
|
|
54
|
-
export default defineAction({
|
|
55
|
-
// ...schema, run, link...
|
|
56
|
-
mcpApp: {
|
|
57
|
-
resource: embedApp({
|
|
58
|
-
title: "Review draft",
|
|
59
|
-
description: "Open the generated draft in the real Mail compose UI.",
|
|
60
|
-
iframeTitle: "Agent-Native Mail",
|
|
61
|
-
openLabel: "Open in Mail",
|
|
62
|
-
}),
|
|
63
|
-
},
|
|
64
|
-
});
|
|
65
|
-
```
|
|
66
|
-
|
|
67
|
-
The MCP server advertises extension `io.modelcontextprotocol/ui`, adds
|
|
68
|
-
`_meta.ui.resourceUri` plus the legacy-compatible `_meta["ui/resourceUri"]` to
|
|
69
|
-
`tools/list`, and also emits ChatGPT Apps SDK compatibility metadata
|
|
70
|
-
(`openai/outputTemplate`, widget CSP/description/accessibility). It exposes the
|
|
71
|
-
HTML through `resources/list`, `resources/templates/list`, and `resources/read`
|
|
72
|
-
using MIME `text/html;profile=mcp-app`. The stdio proxy forwards those resource
|
|
73
|
-
handlers from the live app, so local desktop/CLI clients see the same resources
|
|
74
|
-
as HTTP clients.
|
|
75
|
-
|
|
76
|
-
Keep the existing `link` builder even when adding `mcpApp`. CLI-only clients,
|
|
77
|
-
older hosts, and any host that does not render MCP Apps will ignore the UI
|
|
78
|
-
metadata and still need the "Open in … →" link. `embedApp()` uses that link as
|
|
79
|
-
its launch target. Same-app `open_app({ embed: true })` mints the
|
|
80
|
-
`/_agent-native/embed/start` ticket during the original tool call so production
|
|
81
|
-
hosts do not need the iframe to make a second app-only helper call; custom
|
|
82
|
-
actions can return `embedStartUrl` for the same fast path. The MCP layer keeps
|
|
83
|
-
that ticket-bearing URL in hidden metadata and strips it from model-visible
|
|
84
|
-
structured content and normal open-link metadata. Otherwise the resource falls
|
|
85
|
-
back to the app-only `create_embed_session` helper. The embed start route
|
|
86
|
-
exchanges a one-time SQL ticket, then launches the real app route with a
|
|
87
|
-
short-lived browser session. Standard hosts navigate the MCP App frame
|
|
88
|
-
directly. Claude web uses a single-frame transplant path that fetches the
|
|
89
|
-
signed app HTML and hydrates it inside Claude's MCP App iframe because Claude
|
|
90
|
-
does not reliably allow app-owned child iframes or external frame navigation.
|
|
91
|
-
ChatGPT web uses a controlled route iframe for stable `window.openai` host APIs
|
|
92
|
-
and bounded height control. You can force the
|
|
93
|
-
single-frame transplant path in other hosts with `embedMode: "transplant"` or
|
|
94
|
-
`frame: "transplant"` when debugging host module loading, or force the nested
|
|
95
|
-
diagnostic iframe with `embedMode: "iframe"` /
|
|
96
|
-
`renderMode: "iframe"` / `nested: true` when debugging host behavior. Pass
|
|
97
|
-
additional `frameDomains` only for a custom MCP App that truly embeds a
|
|
98
|
-
third-party frame. `open_app({ app, path, embed: true })` is the generic
|
|
99
|
-
escape hatch for routes like full dashboards, filtered inboxes, calendar
|
|
100
|
-
drafts, analyses, or extension pages, and should be used liberally when the
|
|
101
|
-
full app is the clearest review/edit surface.
|
|
102
|
-
|
|
103
|
-
Do not set standard `_meta.ui.domain` to an app URL. That field is
|
|
104
|
-
host-specific: Claude validates hash subdomains such as
|
|
105
|
-
`{hash}.claudemcpcontent.com`, while ChatGPT has its own widget-domain
|
|
106
|
-
metadata. Let hosts choose their default sandbox origin unless you are emitting
|
|
107
|
-
a host-specific value on purpose. `embedApp()` may still emit
|
|
108
|
-
`openai/widgetDomain` for ChatGPT compatibility.
|
|
109
|
-
|
|
110
|
-
Extension pages are a special case inside MCP chat embeds. The normal app uses
|
|
111
|
-
`/_agent-native/extensions/:id/render` as a sandboxed child iframe, but MCP
|
|
112
|
-
chat hosts add another ancestor frame and can block that route via
|
|
113
|
-
`frame-ancestors` / `X-Frame-Options`. In MCP chat bridge mode the framework
|
|
114
|
-
renders the extension document as sandboxed `srcDoc` inside the existing app
|
|
115
|
-
route iframe instead; keep `sandbox="allow-scripts allow-forms"` and do not add
|
|
116
|
-
`allow-same-origin`.
|
|
117
|
-
|
|
118
|
-
For Dispatch, keep the single connector path first-class: the `open_app`
|
|
119
|
-
resource CSP should include the exact origins of apps granted through Dispatch,
|
|
120
|
-
not broad sources like `https:`. This lets Claude's transplant path fetch the
|
|
121
|
-
signed target app HTML while keeping the connector's resource surface narrow.
|
|
122
|
-
|
|
123
|
-
Host sizing rule: the MCP resource shell owns a bounded inline height and the
|
|
124
|
-
embedded route should scroll internally. `embedApp({ height })` defaults to a
|
|
125
|
-
`560px` shell, clamps to `320-900px`, and subtracts `44px` for the wrapper bar
|
|
126
|
-
before sizing the route viewport. Do not re-enable host SDK auto-resize for
|
|
127
|
-
full-app route embeds; Claude and ChatGPT can otherwise measure the whole
|
|
128
|
-
document and create a huge chat iframe. After changing the shell or `ui://`
|
|
129
|
-
resource version, verify with a fresh tool call because old conversation frames
|
|
130
|
-
keep the behavior they were rendered with.
|
|
131
|
-
|
|
132
|
-
Inside embedded routes, `sendToAgentChat({ submit: true })` posts
|
|
133
|
-
`agentNative.submitChat`; MCP App hosts receive that as model context plus a
|
|
134
|
-
visible `ui/message` turn, so an inline preview can intentionally continue the
|
|
135
|
-
Claude/ChatGPT conversation. Hidden context stays in model context; do not put
|
|
136
|
-
internal app-state file instructions into the visible prompt. `submit: false`
|
|
137
|
-
stays local as a prefill/review path.
|
|
138
|
-
|
|
139
|
-
When testing Claude through ngrok, use a production build (`pnpm exec agent-native build`
|
|
140
|
-
then `pnpm exec agent-native start`) or a deployed preview/production URL. Claude's
|
|
141
|
-
transplant path works with production asset chunks; raw Vite dev modules such
|
|
142
|
-
as `/app/root.tsx` can be app-auth protected and fail dynamic imports from the
|
|
143
|
-
Claude resource origin.
|
|
144
|
-
|
|
145
|
-
For known first-party handoffs, prefer a direct action with `mcpApp` over
|
|
146
|
-
letting the model hunt through screens. Examples: Mail `manage-draft` for email
|
|
147
|
-
drafts, Analytics `open-traffic-dashboard` for the first-party traffic
|
|
148
|
-
dashboard, Calendar `manage-event-draft` for invite drafts, and create/search
|
|
149
|
-
actions for Forms, Content, Clips, Slides, and Design. The action should return
|
|
150
|
-
concise structured content plus the link; it should not dump large catalogs or
|
|
151
|
-
HTML.
|
|
152
|
-
|
|
153
|
-
Compatibility target: build to the standard once, not per-client shims. MCP
|
|
154
|
-
Apps-capable hosts should include Claude/Claude Desktop/Claude Code, ChatGPT
|
|
155
|
-
custom MCP apps, VS Code GitHub Copilot, Goose, Postman, MCPJam, Cursor, and
|
|
156
|
-
any future host that follows the extension negotiation. Host support varies by
|
|
157
|
-
plan, release channel, and client version, so keep the deep link fallback.
|
|
@@ -1,169 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: feature-flags
|
|
3
|
-
description: >-
|
|
4
|
-
Declare, evaluate, manage, and remove framework feature flags. Use when
|
|
5
|
-
shipping a capability gradually, targeting users or organizations, or
|
|
6
|
-
replacing a compile-time rollout switch with a production-safe runtime flag.
|
|
7
|
-
scope: dev
|
|
8
|
-
metadata:
|
|
9
|
-
internal: true
|
|
10
|
-
---
|
|
11
|
-
|
|
12
|
-
# Feature Flags
|
|
13
|
-
|
|
14
|
-
A feature flag is a boolean declared in app code, evaluated locally by Core,
|
|
15
|
-
and managed from the Analytics fleet control plane. Code owns whether a flag
|
|
16
|
-
exists. Runtime settings own only its rollout state.
|
|
17
|
-
|
|
18
|
-
Flags let an app deploy dormant code and turn it on in the real environment
|
|
19
|
-
without another deployment. They are not experiments: do not add variants,
|
|
20
|
-
hypotheses, conversion metrics, exposure tracking, or lifecycle states.
|
|
21
|
-
|
|
22
|
-
## When to use one
|
|
23
|
-
|
|
24
|
-
Use a flag for a reversible rollout of a user-facing capability whose dormant
|
|
25
|
-
code is safe to deploy. Flags are useful for production dogfooding, exact-user
|
|
26
|
-
or organization pilots, and deterministic percentage rollouts.
|
|
27
|
-
|
|
28
|
-
Do not use a flag for authentication, authorization, secrets, audit enablement,
|
|
29
|
-
SSR cache behavior, or another security boundary. Client hiding is presentation
|
|
30
|
-
only; every guarded server action must evaluate the same registered flag.
|
|
31
|
-
|
|
32
|
-
## Agent workflow
|
|
33
|
-
|
|
34
|
-
### 1. Declare
|
|
35
|
-
|
|
36
|
-
Keep definitions in a shared TypeScript module so server and client code use the
|
|
37
|
-
same stable key. Flags are boolean and default-off.
|
|
38
|
-
|
|
39
|
-
```ts
|
|
40
|
-
import { defineFeatureFlag } from "@agent-native/core/feature-flags/registry";
|
|
41
|
-
|
|
42
|
-
export const FULL_APP_BUILDING = defineFeatureFlag({
|
|
43
|
-
key: "full-app-building",
|
|
44
|
-
displayName: "Full app building",
|
|
45
|
-
description: "Create and edit Fusion-backed applications.",
|
|
46
|
-
});
|
|
47
|
-
```
|
|
48
|
-
|
|
49
|
-
Keys are immutable, never reused, and contain only letters, numbers, dots,
|
|
50
|
-
underscores, or hyphens. Prefer a concise app-owned name. Do not create flag
|
|
51
|
-
definitions or rollout rows from Analytics.
|
|
52
|
-
|
|
53
|
-
### 2. Register
|
|
54
|
-
|
|
55
|
-
Register app definitions from a Nitro plugin before actions are discovered.
|
|
56
|
-
Do not add app-specific flags to a Core registry.
|
|
57
|
-
|
|
58
|
-
```ts
|
|
59
|
-
import { createFeatureFlagsPlugin } from "@agent-native/core/server";
|
|
60
|
-
|
|
61
|
-
import { FULL_APP_BUILDING } from "../../shared/feature-flags.js";
|
|
62
|
-
|
|
63
|
-
export default createFeatureFlagsPlugin({ flags: [FULL_APP_BUILDING] });
|
|
64
|
-
```
|
|
65
|
-
|
|
66
|
-
### 3. Guard server and client
|
|
67
|
-
|
|
68
|
-
The server action is the enforcement boundary:
|
|
69
|
-
|
|
70
|
-
```ts
|
|
71
|
-
import { isFeatureFlagEnabled } from "@agent-native/core/feature-flags";
|
|
72
|
-
|
|
73
|
-
run: async (args, ctx) => {
|
|
74
|
-
if (!(await isFeatureFlagEnabled(FULL_APP_BUILDING, ctx))) {
|
|
75
|
-
throw new Error("Full app building is not enabled for this account.");
|
|
76
|
-
}
|
|
77
|
-
// guarded operation
|
|
78
|
-
}
|
|
79
|
-
```
|
|
80
|
-
|
|
81
|
-
Use the client hook only to hide or reveal hydrated UI:
|
|
82
|
-
|
|
83
|
-
```tsx
|
|
84
|
-
import { useFeatureFlag } from "@agent-native/core/client/feature-flags";
|
|
85
|
-
|
|
86
|
-
const enabled = useFeatureFlag(FULL_APP_BUILDING.key);
|
|
87
|
-
return enabled ? <FullAppOption /> : null;
|
|
88
|
-
```
|
|
89
|
-
|
|
90
|
-
The client hook intentionally returns false while loading or for an unknown
|
|
91
|
-
flag. Never replace that fail-closed behavior with app-local bucketing or a
|
|
92
|
-
compile-time fallback. Never evaluate personalized flags in the public SSR
|
|
93
|
-
shell; it is shared and cached for every visitor.
|
|
94
|
-
|
|
95
|
-
### 4. Verify and roll out
|
|
96
|
-
|
|
97
|
-
1. Verify the off path before changing rollout state.
|
|
98
|
-
2. Confirm the registered flag appears in **Analytics → Feature flags** for the
|
|
99
|
-
app and is Off by default.
|
|
100
|
-
3. Use **Enable for me** for initial production dogfood.
|
|
101
|
-
4. Expand to exact emails, organization IDs, or a percentage only from
|
|
102
|
-
Analytics.
|
|
103
|
-
5. Confirm the client presentation and authoritative server action agree.
|
|
104
|
-
|
|
105
|
-
## Management contract
|
|
106
|
-
|
|
107
|
-
Core mounts three actions in registered apps:
|
|
108
|
-
|
|
109
|
-
| Action | Purpose |
|
|
110
|
-
| --- | --- |
|
|
111
|
-
| `get-feature-flags` | Return the current caller's evaluated boolean values. |
|
|
112
|
-
| `list-feature-flags` | Return definitions and rollout metadata to an authorized operator. |
|
|
113
|
-
| `set-feature-flag` | Atomically turn a flag off, enable it for the operator, or replace targeting rules. |
|
|
114
|
-
|
|
115
|
-
Analytics calls the app-local operator actions through narrowly scoped A2A
|
|
116
|
-
delegation. Tokens require an exact audience, organization, scope, operator
|
|
117
|
-
role, and audit correlation id. Management is permission-checked and audited
|
|
118
|
-
by the target app. Never manage flags through generic settings routes, raw SQL,
|
|
119
|
-
or per-app toggle UIs.
|
|
120
|
-
|
|
121
|
-
## Rollout semantics
|
|
122
|
-
|
|
123
|
-
The operator modes are **Off**, **Targeted**, and **Everyone**. Core stores them
|
|
124
|
-
as `off`, `rules`, and `on`.
|
|
125
|
-
|
|
126
|
-
Targeted rules combine exact normalized emails, exact organization IDs, and a
|
|
127
|
-
percentage with OR semantics. Exact matches are checked first. Percentage
|
|
128
|
-
buckets use Core's stable hash of the flag key and authenticated user identity;
|
|
129
|
-
anonymous callers fail closed. Raising a percentage preserves the users already
|
|
130
|
-
included at a lower percentage. Do not implement bucketing in app code.
|
|
131
|
-
|
|
132
|
-
Unknown definitions, missing state, malformed state, storage errors, and
|
|
133
|
-
evaluation errors all return the code default (`false` in v1). Explicit Off
|
|
134
|
-
wins over every target; Everyone enables every authenticated caller.
|
|
135
|
-
|
|
136
|
-
## Remove a flag
|
|
137
|
-
|
|
138
|
-
After a rollout is permanent:
|
|
139
|
-
|
|
140
|
-
1. Replace guarded branches with the chosen behavior.
|
|
141
|
-
2. Delete the server and client gates.
|
|
142
|
-
3. Delete the definition and registration entry.
|
|
143
|
-
4. Verify the flag disappears from the Analytics fleet.
|
|
144
|
-
5. Remove stale tests and rollout instructions.
|
|
145
|
-
|
|
146
|
-
A permanent flag is just an if statement with a pension plan.
|
|
147
|
-
|
|
148
|
-
## Verification checklist
|
|
149
|
-
|
|
150
|
-
- Unknown and unregistered keys evaluate false.
|
|
151
|
-
- UI hiding and server enforcement use the same registered key.
|
|
152
|
-
- Exact-user, organization, deterministic percentage, Everyone, and Off paths
|
|
153
|
-
have focused tests.
|
|
154
|
-
- Increasing a percentage is monotonic; anonymous percentage evaluation is off.
|
|
155
|
-
- Unauthorized callers cannot list targeting details or mutate flags.
|
|
156
|
-
- Mutations are atomic, read back stored state, emit refresh, and appear in the
|
|
157
|
-
audit log with the flag key.
|
|
158
|
-
- Analytics represents ready, no-definition, unsupported, forbidden, legacy,
|
|
159
|
-
and unreachable directory apps honestly.
|
|
160
|
-
- Future agents can find this skill from root `AGENTS.md`, and
|
|
161
|
-
`pnpm guard:workspace-skills` passes after syncing generated copies.
|
|
162
|
-
|
|
163
|
-
## Related skills
|
|
164
|
-
|
|
165
|
-
- **adding-a-feature** — preserve UI/action/instruction/application-state parity
|
|
166
|
-
- **actions** — define and call guarded app operations
|
|
167
|
-
- **audit-log** — inspect automatic action mutation history
|
|
168
|
-
- **reliable-mutations** — make rollout changes atomic and provable
|
|
169
|
-
- **security** — keep security controls out of feature flags
|
|
@@ -1,117 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: generative-ui
|
|
3
|
-
description: >-
|
|
4
|
-
Generate transient or saved inline chat UI with Alpine/Tailwind controls,
|
|
5
|
-
outputs, app state, and extensions. Use for knobs, pickers, calculators,
|
|
6
|
-
dashboards, widgets, or reusable mini-apps.
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
# Generative UI
|
|
10
|
-
|
|
11
|
-
Generative UI is sandboxed Alpine.js HTML rendered inline in chat. It is not a
|
|
12
|
-
source-code change and does not go through Builder.
|
|
13
|
-
|
|
14
|
-
## Pick the Lifetime
|
|
15
|
-
|
|
16
|
-
- Use `render-inline-extension` for one-off UI that belongs only in the current
|
|
17
|
-
chat: knobs, controls, pickers, calculators, temporary charts, and previews.
|
|
18
|
-
- Use `create-extension` when the UI should be saved, reusable, or visible in
|
|
19
|
-
the Extensions view. It also renders inline after creation.
|
|
20
|
-
- Use `show-extension-inline` to reopen a saved extension inside chat.
|
|
21
|
-
- Use `update-extension` to edit an existing saved extension.
|
|
22
|
-
|
|
23
|
-
## Inputs From Chat
|
|
24
|
-
|
|
25
|
-
Pass initial values through the action `context` argument. The iframe reads them
|
|
26
|
-
from `window.slotContext` and can subscribe to changes with
|
|
27
|
-
`window.onSlotContext(fn)`.
|
|
28
|
-
|
|
29
|
-
```html
|
|
30
|
-
<script>
|
|
31
|
-
Alpine.data("controls", () => ({
|
|
32
|
-
threshold: 50,
|
|
33
|
-
init() {
|
|
34
|
-
this.threshold = Number(window.slotContext?.threshold ?? 50);
|
|
35
|
-
window.onSlotContext?.((ctx) => {
|
|
36
|
-
if (ctx.threshold !== undefined) {
|
|
37
|
-
this.threshold = Number(ctx.threshold);
|
|
38
|
-
}
|
|
39
|
-
});
|
|
40
|
-
},
|
|
41
|
-
}));
|
|
42
|
-
</script>
|
|
43
|
-
```
|
|
44
|
-
|
|
45
|
-
## Outputs To The Agent
|
|
46
|
-
|
|
47
|
-
Use passive output when a control's current value should be visible to the agent
|
|
48
|
-
on the next turn without requiring a submit click:
|
|
49
|
-
|
|
50
|
-
```html
|
|
51
|
-
<input
|
|
52
|
-
type="range"
|
|
53
|
-
min="0"
|
|
54
|
-
max="100"
|
|
55
|
-
x-model.number="threshold"
|
|
56
|
-
@input="agentNative.ui.output({ threshold }, { label: 'Threshold' })"
|
|
57
|
-
/>
|
|
58
|
-
```
|
|
59
|
-
|
|
60
|
-
`agentNative.ui.output(value, opts?)` writes application state at:
|
|
61
|
-
|
|
62
|
-
```txt
|
|
63
|
-
inline-ui:<extensionId>:output
|
|
64
|
-
```
|
|
65
|
-
|
|
66
|
-
The id is scoped automatically; the HTML author must not pass it. When the user
|
|
67
|
-
says "use that value", "apply the current setting", or "run it with the current
|
|
68
|
-
selection", read the value with:
|
|
69
|
-
|
|
70
|
-
```ts
|
|
71
|
-
const output = await readAppState("inline-ui:<id>:output");
|
|
72
|
-
```
|
|
73
|
-
|
|
74
|
-
The stored payload includes `value`, `updatedAt`, `extensionId`, and
|
|
75
|
-
`source: "inline-ui"`, plus optional `label`, `context`, or `meta`.
|
|
76
|
-
|
|
77
|
-
Use `agentNative.chat.send(message, opts?)` or `sendToAgentChat(message, opts?)`
|
|
78
|
-
for a visible Apply/Submit button that should send a prompt or selected value
|
|
79
|
-
into the chat. Pass `{ submit: true }` explicitly for that user-triggered
|
|
80
|
-
action; extension messages are draft-only otherwise. Never call these helpers
|
|
81
|
-
from polling, refresh, or error handlers.
|
|
82
|
-
|
|
83
|
-
## App Data And State
|
|
84
|
-
|
|
85
|
-
- Prefer `appAction(name, params)` for template data and operations.
|
|
86
|
-
- Use `appFetch(path, options)` only for allowed framework endpoints under
|
|
87
|
-
`/_agent-native/*`, including application-state reads and writes.
|
|
88
|
-
- Do not call template `/api/*` routes from generated UI.
|
|
89
|
-
- Use `dbQuery`/`dbExec` only for known existing SQL tables when no action fits.
|
|
90
|
-
- Use `extensionFetch` for external APIs through the sandbox proxy and secrets.
|
|
91
|
-
|
|
92
|
-
## Transient extensionData Boundary
|
|
93
|
-
|
|
94
|
-
For saved extensions, `extensionData` uses the authenticated database-backed
|
|
95
|
-
extension data API.
|
|
96
|
-
|
|
97
|
-
For transient inline UIs, `extensionData` is host `localStorage`. The agent
|
|
98
|
-
cannot read it, it does not sync across devices, it does not migrate when a UI
|
|
99
|
-
is promoted to a saved Extension, and the server does not garbage-collect it.
|
|
100
|
-
Use it only for throwaway local UI state.
|
|
101
|
-
|
|
102
|
-
For anything the agent or app must observe, use `agentNative.ui.output`,
|
|
103
|
-
application state through `appFetch`, an `appAction`, or
|
|
104
|
-
`agentNative.chat.send`.
|
|
105
|
-
|
|
106
|
-
## Styling
|
|
107
|
-
|
|
108
|
-
Use semantic Tailwind classes so the iframe inherits the parent app theme:
|
|
109
|
-
|
|
110
|
-
- `bg-background`, `text-foreground`, `border-border`
|
|
111
|
-
- `bg-card`, `text-card-foreground`
|
|
112
|
-
- `bg-primary`, `text-primary-foreground`
|
|
113
|
-
- `text-muted-foreground`, `bg-accent`
|
|
114
|
-
|
|
115
|
-
Do not hardcode provider tokens, private data, or internal secrets in generated
|
|
116
|
-
HTML. Do not call an LLM directly from the iframe; route AI work through the
|
|
117
|
-
agent chat.
|
|
@@ -1,170 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: harness-agents
|
|
3
|
-
description: >-
|
|
4
|
-
Add or use full agent harness runtimes like Claude Code, Codex, Pi, Cursor, Mastra, or ACP agents inside Agent Native.
|
|
5
|
-
scope: dev
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
# Harness Agents
|
|
9
|
-
|
|
10
|
-
## Rule
|
|
11
|
-
|
|
12
|
-
Full agent harnesses are not `AgentEngine` providers. Use the `AgentHarness`
|
|
13
|
-
substrate in `@agent-native/core/agent/harness`.
|
|
14
|
-
|
|
15
|
-
## Why
|
|
16
|
-
|
|
17
|
-
`AgentEngine` is for one model round trip beneath `runAgentLoop`. Harnesses like
|
|
18
|
-
Claude Code, Codex, Pi, Cursor, and Mastra own their own loop, workspace,
|
|
19
|
-
native tools, session state, compaction, approval model, and sandbox behavior.
|
|
20
|
-
Putting a harness under `AgentEngine.stream()` double-runs the loop and loses
|
|
21
|
-
session lifecycle semantics.
|
|
22
|
-
|
|
23
|
-
## How
|
|
24
|
-
|
|
25
|
-
1. Register or resolve a harness adapter.
|
|
26
|
-
|
|
27
|
-
```ts
|
|
28
|
-
import {
|
|
29
|
-
registerBuiltinAgentHarnesses,
|
|
30
|
-
resolveAgentHarness,
|
|
31
|
-
} from "@agent-native/core/agent/harness";
|
|
32
|
-
|
|
33
|
-
registerBuiltinAgentHarnesses();
|
|
34
|
-
const harness = resolveAgentHarness("ai-sdk-harness:codex");
|
|
35
|
-
```
|
|
36
|
-
|
|
37
|
-
2. Start a turn through the run-manager bridge.
|
|
38
|
-
|
|
39
|
-
```ts
|
|
40
|
-
import { startAgentHarnessRun } from "@agent-native/core/agent/harness";
|
|
41
|
-
|
|
42
|
-
startAgentHarnessRun({
|
|
43
|
-
runId,
|
|
44
|
-
threadId,
|
|
45
|
-
adapter: harness,
|
|
46
|
-
input: { prompt },
|
|
47
|
-
createSession: {
|
|
48
|
-
sessionId,
|
|
49
|
-
resumeState,
|
|
50
|
-
instructions,
|
|
51
|
-
sandbox,
|
|
52
|
-
permissionMode: "allow-reads",
|
|
53
|
-
},
|
|
54
|
-
ownerEmail,
|
|
55
|
-
orgId,
|
|
56
|
-
});
|
|
57
|
-
```
|
|
58
|
-
|
|
59
|
-
3. Persist native session state in SQL.
|
|
60
|
-
|
|
61
|
-
Use `saveAgentHarnessSession`, `updateAgentHarnessSession`, and
|
|
62
|
-
`getLatestAgentHarnessSessionForThread`. The `resumeState` is opaque; Agent
|
|
63
|
-
Native stores it but does not inspect it.
|
|
64
|
-
|
|
65
|
-
4. Surface runs through background agents.
|
|
66
|
-
|
|
67
|
-
Harness runs are projected into the shared `BackgroundAgentRun` shape with
|
|
68
|
-
`createAgentHarnessBackgroundAgentController()` and are available through the
|
|
69
|
-
existing run routes as `goalId=agent-harness`.
|
|
70
|
-
|
|
71
|
-
## ACP Agents
|
|
72
|
-
|
|
73
|
-
Agent Native can act as an [ACP](https://agentclientprotocol.com) (Agent Client
|
|
74
|
-
Protocol) client and drive a local coding agent — Gemini CLI, Claude Code, or
|
|
75
|
-
any ACP-compliant agent — through this same substrate. This is scoped to **local
|
|
76
|
-
coding**: the agent is spawned as a child process speaking newline-delimited
|
|
77
|
-
JSON-RPC over stdio, and inherits the parent environment so it reuses the user's
|
|
78
|
-
local CLI login. It is not a hosted/sandboxed transport, and it is not a
|
|
79
|
-
chat/A2A transport.
|
|
80
|
-
|
|
81
|
-
```ts
|
|
82
|
-
import {
|
|
83
|
-
registerBuiltinAgentHarnesses,
|
|
84
|
-
resolveAgentHarness,
|
|
85
|
-
} from "@agent-native/core/agent/harness";
|
|
86
|
-
|
|
87
|
-
registerBuiltinAgentHarnesses();
|
|
88
|
-
|
|
89
|
-
// Built-in presets (commands overridable via the resolve config):
|
|
90
|
-
const gemini = resolveAgentHarness("acp:gemini");
|
|
91
|
-
const claude = resolveAgentHarness("acp:claude-code");
|
|
92
|
-
|
|
93
|
-
// Or any ACP agent by command:
|
|
94
|
-
const custom = resolveAgentHarness("acp", {
|
|
95
|
-
command: "gemini",
|
|
96
|
-
args: ["--experimental-acp"],
|
|
97
|
-
});
|
|
98
|
-
```
|
|
99
|
-
|
|
100
|
-
- The protocol transport (`@zed-industries/agent-client-protocol`) is an optional
|
|
101
|
-
dependency loaded lazily; `installPackage` surfaces a clear install hint.
|
|
102
|
-
- The agent binary (e.g. `@google/gemini-cli`, `@zed-industries/claude-code-acp`)
|
|
103
|
-
is a separate external CLI the user installs; presets launch it through `npx`
|
|
104
|
-
by default and the command/args are overridable because agent ACP entry flags
|
|
105
|
-
still evolve.
|
|
106
|
-
- `permissionMode` maps onto ACP `session/request_permission` using the reported
|
|
107
|
-
tool-call kind: reads always run, edits run under `allow-edits`, everything
|
|
108
|
-
risky prompts unless `allow-all`. Approvals surface as `approval-request`
|
|
109
|
-
events; answer them through the harness session's `approve()`.
|
|
110
|
-
- `resumeState` carries the ACP `sessionId`; resume works when the agent
|
|
111
|
-
advertises the `loadSession` capability and degrades to a fresh session
|
|
112
|
-
otherwise.
|
|
113
|
-
- `fs/read_text_file` and `fs/write_text_file` are served against the session
|
|
114
|
-
workspace and refuse paths that escape it; terminal methods are not advertised
|
|
115
|
-
(the agent uses its own shell).
|
|
116
|
-
|
|
117
|
-
## Adapter Guidance
|
|
118
|
-
|
|
119
|
-
- Keep harness packages optional. Use dynamic imports in adapters and expose an
|
|
120
|
-
install hint through `installPackage`.
|
|
121
|
-
- Use the AI SDK harness adapter as one implementation, not as Agent Native's
|
|
122
|
-
public abstraction.
|
|
123
|
-
- For bridge-backed coding harnesses, require a real sandbox/workspace provider.
|
|
124
|
-
Do not run arbitrary coding agents in the host process by default.
|
|
125
|
-
- Pass only a narrow, intentional set of Agent Native actions as host tools.
|
|
126
|
-
Preserve `defineAction` auth, request context, timeouts, truncation, and
|
|
127
|
-
read-only metadata.
|
|
128
|
-
|
|
129
|
-
## Code Execution Sandbox
|
|
130
|
-
|
|
131
|
-
- The `run-code` tool executes through a pluggable `SandboxAdapter`
|
|
132
|
-
(`packages/core/src/coding-tools/sandbox/`). The default
|
|
133
|
-
`LocalChildProcessAdapter` spawns a locked-down local Node child process;
|
|
134
|
-
swap it via `AGENT_NATIVE_SANDBOX` or `registerSandboxAdapter()` for a
|
|
135
|
-
Docker/remote backend. An adapter only runs the already-prepared, non-secret
|
|
136
|
-
module source — it never sees app secrets. See the Sandbox Adapters doc;
|
|
137
|
-
`agent-native add sandbox docker` emits a full Docker-adapter recipe.
|
|
138
|
-
- Long compute exceeds the hosted ~40s run ceiling via the built-in durable
|
|
139
|
-
background backend: per-call `background: true` on `run-code` (or
|
|
140
|
-
`AGENT_NATIVE_SANDBOX=background` to queue every call) enqueues to the
|
|
141
|
-
`sandbox_executions` table and executes out-of-band — self-dispatched to
|
|
142
|
-
`/_agent-native/sandbox/_process-execution` on serverless, in-process on
|
|
143
|
-
long-lived Node — with lease-based claiming, retries, and owner-scoped
|
|
144
|
-
polling via `run-code {executionId}` / `get-code-execution`.
|
|
145
|
-
|
|
146
|
-
## Sub-Agent Delegation Depth
|
|
147
|
-
|
|
148
|
-
- Sub-agent spawning is capped server-side (default depth `2`) so delegation
|
|
149
|
-
chains can't fan out indefinitely. Override at deploy time with
|
|
150
|
-
`AGENT_NATIVE_MAX_SUBAGENT_DEPTH` (`0` disables sub-agents; clamped to `16`).
|
|
151
|
-
Enforcement is ambient via `evaluateSubagentDepth` in
|
|
152
|
-
`packages/core/src/server/agent-teams.ts` — independent of any tool-level
|
|
153
|
-
guard. See the Agent Teams doc for the depth model.
|
|
154
|
-
|
|
155
|
-
## Don't
|
|
156
|
-
|
|
157
|
-
- Don't add Claude Code, Codex, Cursor, Mastra, or Pi as an `AgentEngine`.
|
|
158
|
-
- Don't replay full Agent Native chat history into a native harness each turn.
|
|
159
|
-
Resume the harness session instead.
|
|
160
|
-
- Don't store resume state in `application_state`; it belongs in the harness
|
|
161
|
-
session SQL table.
|
|
162
|
-
- Don't expose every app action to every harness session by default.
|
|
163
|
-
|
|
164
|
-
## Related Skills
|
|
165
|
-
|
|
166
|
-
- `adding-a-feature` — feature parity across UI/actions/instructions/state.
|
|
167
|
-
- `delegate-to-agent` — background agents use run-manager infrastructure.
|
|
168
|
-
- `external-agents` — expose openable resources and external-agent surfaces.
|
|
169
|
-
- `storing-data` — durable SQL state and additive schema changes.
|
|
170
|
-
|