@agent-native/core 0.132.2 → 0.133.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 +2 -2
- package/corpus/core/CHANGELOG.md +161 -0
- package/corpus/core/package.json +1 -1
- package/corpus/core/src/a2a/correlation.ts +11 -1
- package/corpus/core/src/a2a/types.ts +11 -3
- package/corpus/core/src/agent/engine/ai-sdk-engine.ts +33 -46
- package/corpus/core/src/agent/engine/builder-engine.ts +22 -10
- package/corpus/core/src/agent/engine/error-detail.ts +184 -3
- package/corpus/core/src/agent/engine/failure-taxonomy.ts +123 -0
- package/corpus/core/src/agent/engine/index.ts +8 -0
- package/corpus/core/src/agent/engine/registry.ts +92 -8
- package/corpus/core/src/agent/engine/translate-ai-sdk.ts +17 -2
- package/corpus/core/src/agent/production-agent.ts +13 -33
- package/corpus/core/src/agent/run-loop-with-resume.ts +1 -1
- package/corpus/core/src/agent/run-manager.ts +43 -14
- package/corpus/core/src/agent/run-store.ts +30 -3
- package/corpus/core/src/agent/thread-data-builder.ts +36 -4
- package/corpus/core/src/cli/templates-meta.ts +13 -0
- package/corpus/core/src/cli/workspace-dev.ts +1 -0
- package/corpus/core/src/client/error-format.ts +12 -0
- package/corpus/core/src/credentials/index.ts +51 -12
- package/corpus/core/src/extensions/url-safety.ts +46 -12
- package/corpus/core/src/integrations/adapters/slack.ts +32 -10
- package/corpus/core/src/integrations/google-docs-poller.ts +12 -1
- package/corpus/core/src/integrations/installations-store.ts +30 -0
- package/corpus/core/src/integrations/plugin.ts +5 -5
- package/corpus/core/src/integrations/types.ts +7 -0
- package/corpus/core/src/integrations/webhook-handler.ts +24 -1
- package/corpus/core/src/jobs/background-automation-runner.ts +38 -1
- package/corpus/core/src/provider-api/index.ts +8 -2
- package/corpus/core/src/scripts/call-agent.ts +6 -0
- package/corpus/core/src/server/agent-chat-plugin.ts +30 -9
- package/corpus/core/src/server/agent-discovery.ts +2 -0
- package/corpus/core/src/server/builder-design-systems.ts +21 -0
- package/corpus/core/src/server/credential-provider.ts +51 -12
- package/corpus/core/src/server/index.ts +1 -0
- package/corpus/core/src/server/onboarding-html.ts +37 -2
- package/corpus/core/src/shared/reasoning-effort.ts +1 -1
- package/corpus/core/src/templates/workspace-core/.agents/skills/a2a-protocol/SKILL.md +11 -0
- package/corpus/templates/analytics/app/components/layout/Sidebar.tsx +6 -2
- package/corpus/templates/assets/app/components/layout/Sidebar.tsx +39 -19
- package/corpus/templates/assets/changelog/2026-07-31-the-agent-native-logo-stays-visible-when-the-sidebar-is-coll.md +6 -0
- package/corpus/templates/brain/app/components/layout/Sidebar.tsx +30 -3
- package/corpus/templates/brain/changelog/2026-07-31-clicking-the-agent-native-logo-now-toggles-the-app-sidebar.md +6 -0
- package/corpus/templates/calendar/app/components/layout/AppLayout.tsx +1 -1
- package/corpus/templates/calendar/app/components/layout/Sidebar.tsx +54 -25
- package/corpus/templates/calendar/changelog/2026-07-31-the-agent-native-logo-stays-visible-when-the-sidebar-is-coll.md +6 -0
- package/corpus/templates/chat/app/components/layout/Sidebar.tsx +30 -3
- package/corpus/templates/chat/changelog/2026-07-31-clicking-the-agent-native-logo-now-toggles-the-app-sidebar.md +6 -0
- package/corpus/templates/clips/app/components/library/library-layout.tsx +37 -21
- package/corpus/templates/clips/changelog/2026-07-31-the-agent-native-logo-stays-visible-when-the-sidebar-is-coll.md +6 -0
- package/corpus/templates/clips/desktop/src/hooks/useMediaDevices.ts +1 -1
- package/corpus/templates/clips/desktop/src/lib/media-capture-constraints.ts +1 -1
- package/corpus/templates/content/app/components/sidebar/DocumentSidebar.tsx +34 -17
- package/corpus/templates/content/changelog/2026-07-31-the-agent-native-logo-stays-visible-when-the-sidebar-is-coll.md +6 -0
- package/corpus/templates/design/.agents/skills/design-systems/SKILL.md +6 -2
- package/corpus/templates/design/actions/create-design-system.ts +1 -0
- package/corpus/templates/design/actions/set-default-design-system.ts +34 -26
- package/corpus/templates/design/app/components/layout/Sidebar.tsx +21 -4
- package/corpus/templates/design/app/i18n-data.ts +39 -0
- package/corpus/templates/design/app/pages/DesignSystemSetup.tsx +229 -12
- package/corpus/templates/design/app/pages/DesignSystems.tsx +10 -4
- package/corpus/templates/design/changelog/2026-07-31-clicking-the-agent-native-logo-now-toggles-the-app-sidebar.md +6 -0
- package/corpus/templates/design/changelog/2026-07-31-design-system-indexing-keeps-your-chosen-name-when-you-uploa.md +6 -0
- package/corpus/templates/design/server/lib/builder-design-system-proxy.ts +19 -4
- package/corpus/templates/dispatch/AGENTS.md +4 -0
- package/corpus/templates/factory/.agents/skills/actions/SKILL.md +562 -0
- package/corpus/templates/factory/.agents/skills/adding-a-feature/SKILL.md +198 -0
- package/corpus/templates/factory/.agents/skills/agent-native-docs/SKILL.md +115 -0
- package/corpus/templates/factory/.agents/skills/agent-native-toolkit/SKILL.md +182 -0
- package/corpus/templates/factory/.agents/skills/capture-learnings/SKILL.md +89 -0
- package/corpus/templates/factory/.agents/skills/create-skill/SKILL.md +221 -0
- package/corpus/templates/factory/.agents/skills/customizing-agent-native/SKILL.md +220 -0
- package/corpus/templates/factory/.agents/skills/delegate-to-agent/SKILL.md +263 -0
- package/corpus/templates/factory/.agents/skills/factory-graphs/SKILL.md +52 -0
- package/corpus/templates/factory/.agents/skills/feature-flags/SKILL.md +169 -0
- package/corpus/templates/factory/.agents/skills/frontend-design/SKILL.md +174 -0
- package/corpus/templates/factory/.agents/skills/real-time-sync/SKILL.md +232 -0
- package/corpus/templates/factory/.agents/skills/security/SKILL.md +324 -0
- package/corpus/templates/factory/.agents/skills/self-modifying-code/SKILL.md +119 -0
- package/corpus/templates/factory/.agents/skills/shadcn-ui/SKILL.md +123 -0
- package/corpus/templates/factory/.agents/skills/sharing/SKILL.md +232 -0
- package/corpus/templates/factory/.agents/skills/storing-data/SKILL.md +178 -0
- package/corpus/templates/factory/.agents/skills/upgrade-agent-native/SKILL.md +122 -0
- package/corpus/templates/factory/.env.example +24 -0
- package/corpus/templates/factory/.ignore +0 -0
- package/corpus/templates/factory/.oxfmtrc.json +8 -0
- package/corpus/templates/factory/AGENTS.md +90 -0
- package/corpus/templates/factory/CHANGELOG.md +10 -0
- package/corpus/templates/factory/DEVELOPING.md +185 -0
- package/corpus/templates/factory/README.md +64 -0
- package/corpus/templates/factory/_gitignore +42 -0
- package/corpus/templates/factory/actions/add-factory-comment.ts +55 -0
- package/corpus/templates/factory/actions/approve-factory-item.ts +214 -0
- package/corpus/templates/factory/actions/babysit-pull-request.ts +126 -0
- package/corpus/templates/factory/actions/evaluate-triage-item.ts +172 -0
- package/corpus/templates/factory/actions/get-factory-graph.ts +62 -0
- package/corpus/templates/factory/actions/get-triage-config.ts +42 -0
- package/corpus/templates/factory/actions/get-triage-item.ts +74 -0
- package/corpus/templates/factory/actions/hello.ts +13 -0
- package/corpus/templates/factory/actions/ingest-github-observation.ts +100 -0
- package/corpus/templates/factory/actions/list-factories.ts +40 -0
- package/corpus/templates/factory/actions/list-factory-comments.ts +40 -0
- package/corpus/templates/factory/actions/list-triage-items.ts +85 -0
- package/corpus/templates/factory/actions/list-triage-rules.ts +44 -0
- package/corpus/templates/factory/actions/navigate.ts +41 -0
- package/corpus/templates/factory/actions/poll-slack-channel.ts +118 -0
- package/corpus/templates/factory/actions/reconcile-triage-run.ts +179 -0
- package/corpus/templates/factory/actions/record-triage-feedback.ts +58 -0
- package/corpus/templates/factory/actions/run.ts +2 -0
- package/corpus/templates/factory/actions/save-factory-graph.ts +129 -0
- package/corpus/templates/factory/actions/save-triage-config.ts +67 -0
- package/corpus/templates/factory/actions/save-triage-rule.ts +89 -0
- package/corpus/templates/factory/actions/suggest-factory-rules.ts +70 -0
- package/corpus/templates/factory/actions/view-screen.ts +73 -0
- package/corpus/templates/factory/app/components/factory/FactoryCanvas.tsx +441 -0
- package/corpus/templates/factory/app/components/factory/FactoryInspector.tsx +388 -0
- package/corpus/templates/factory/app/components/layout/Header.tsx +60 -0
- package/corpus/templates/factory/app/components/layout/Layout.tsx +190 -0
- package/corpus/templates/factory/app/components/layout/Sidebar.tsx +538 -0
- package/corpus/templates/factory/app/components/triage/triage-status-pill.tsx +28 -0
- package/corpus/templates/factory/app/components/ui/button.tsx +1 -0
- package/corpus/templates/factory/app/components/ui/card.tsx +1 -0
- package/corpus/templates/factory/app/components/ui/dropdown-menu.tsx +1 -0
- package/corpus/templates/factory/app/components/ui/input.tsx +1 -0
- package/corpus/templates/factory/app/components/ui/label.tsx +1 -0
- package/corpus/templates/factory/app/components/ui/sheet.tsx +1 -0
- package/corpus/templates/factory/app/components/ui/textarea.tsx +1 -0
- package/corpus/templates/factory/app/components/ui/toolkit-provider.tsx +17 -0
- package/corpus/templates/factory/app/components/ui/tooltip.tsx +1 -0
- package/corpus/templates/factory/app/design-system.ts +3 -0
- package/corpus/templates/factory/app/entry.client.tsx +22 -0
- package/corpus/templates/factory/app/entry.server.tsx +10 -0
- package/corpus/templates/factory/app/global.css +93 -0
- package/corpus/templates/factory/app/hooks/use-navigation-state.ts +113 -0
- package/corpus/templates/factory/app/i18n/en-US.ts +211 -0
- package/corpus/templates/factory/app/i18n/index.ts +34 -0
- package/corpus/templates/factory/app/i18n-data.ts +556 -0
- package/corpus/templates/factory/app/lib/agent-page.tsx +49 -0
- package/corpus/templates/factory/app/lib/app-config.ts +11 -0
- package/corpus/templates/factory/app/lib/tab-id.ts +1 -0
- package/corpus/templates/factory/app/lib/utils.ts +1 -0
- package/corpus/templates/factory/app/root.tsx +175 -0
- package/corpus/templates/factory/app/routes/_index.tsx +94 -0
- package/corpus/templates/factory/app/routes/agent.tsx +24 -0
- package/corpus/templates/factory/app/routes/chat.$threadId.tsx +1 -0
- package/corpus/templates/factory/app/routes/database.tsx +17 -0
- package/corpus/templates/factory/app/routes/extensions.$id.$slug.tsx +2 -0
- package/corpus/templates/factory/app/routes/extensions.$id.tsx +11 -0
- package/corpus/templates/factory/app/routes/extensions._index.tsx +11 -0
- package/corpus/templates/factory/app/routes/extensions.tsx +5 -0
- package/corpus/templates/factory/app/routes/factory.tsx +1003 -0
- package/corpus/templates/factory/app/routes/observability.tsx +19 -0
- package/corpus/templates/factory/app/routes/settings.tsx +89 -0
- package/corpus/templates/factory/app/routes/team.tsx +11 -0
- package/corpus/templates/factory/app/routes.ts +4 -0
- package/corpus/templates/factory/app/vite-env.d.ts +6 -0
- package/corpus/templates/factory/changelog/2026-06-24-a-new-settings-page-gives-quick-access-to-language-workspace.md +6 -0
- package/corpus/templates/factory/changelog/2026-06-24-added-a-language-picker-and-localized-app-chrome-for-support.md +6 -0
- package/corpus/templates/factory/changelog/2026-06-27-traditional-chinese-copy-uses-taiwan-terminology.md +6 -0
- package/corpus/templates/factory/changelog/2026-06-28-left-sidebar-collapse-motion-and-footer-chrome-are-quieter.md +6 -0
- package/corpus/templates/factory/changelog/2026-06-29-chat-layouts-adapt-when-the-agent-sidebar-is-open.md +6 -0
- package/corpus/templates/factory/changelog/2026-07-08-settings-are-cleaner-and-searchable.md +5 -0
- package/corpus/templates/factory/changelog/2026-07-10-chat-now-makes-ai-connection-setup-clear-without-shifting-th.md +6 -0
- package/corpus/templates/factory/changelog/2026-07-13-a-full-agent-page-now-brings-context-files-connections-jobs-.md +6 -0
- package/corpus/templates/factory/changelog/2026-07-14-chat-opens-reliably-on-hosted-deployments-instead-of-failing.md +6 -0
- package/corpus/templates/factory/changelog/2026-07-14-fixed-chat-template-startup-with-older-core-versions.md +6 -0
- package/corpus/templates/factory/changelog/2026-07-15-chat-navigation-focuses-on-chat-and-agent.md +6 -0
- package/corpus/templates/factory/changelog/2026-07-17-the-agent-chat-sidebar-stays-closed-until-you-open-it-or-sta.md +6 -0
- package/corpus/templates/factory/changelog/2026-07-22-compact-sidebar-footer.md +6 -0
- package/corpus/templates/factory/changelog/2026-07-22-full-page-chat-keeps-the-active-conversation-when-moving-to-.md +6 -0
- package/corpus/templates/factory/changelog/2026-07-22-manage-agent-navigation-now-uses-the-connected-nodes-icon.md +6 -0
- package/corpus/templates/factory/changelog/2026-07-22-recent-chats-are-easier-to-scan-and-expand.md +6 -0
- package/corpus/templates/factory/changelog/2026-07-23-full-page-chat-is-better-centered-with-quieter-chat-history-.md +6 -0
- package/corpus/templates/factory/changelog/2026-07-24-borderless-secondary-surfaces.md +6 -0
- package/corpus/templates/factory/changelog/2026-07-24-sidebar-footer-controls-follow-a-consistent-order.md +6 -0
- package/corpus/templates/factory/changelog/2026-07-25-settings-navigation-now-keeps-manage-agent-as-a-dedicated-li.md +6 -0
- package/corpus/templates/factory/changelog/2026-07-29-sidebar-footers-now-keep-feedback-search-and-collapse-togeth.md +6 -0
- package/corpus/templates/factory/changelog/2026-07-31-added-an-inspectable-observe-only-factory-queue-for-slack-.md +6 -0
- package/corpus/templates/factory/changelog/2026-07-31-clicking-the-agent-native-logo-now-toggles-the-app-sidebar.md +6 -0
- package/corpus/templates/factory/components.json +20 -0
- package/corpus/templates/factory/data/sync-config.json +1 -0
- package/corpus/templates/factory/learnings.defaults.md +5 -0
- package/corpus/templates/factory/netlify.toml +10 -0
- package/corpus/templates/factory/package.json +105 -0
- package/corpus/templates/factory/public/agent-native-icon-dark.svg +10 -0
- package/corpus/templates/factory/public/agent-native-icon-light.svg +10 -0
- package/corpus/templates/factory/public/agent-native-logo-dark.svg +21 -0
- package/corpus/templates/factory/public/agent-native-logo-light.svg +21 -0
- package/corpus/templates/factory/public/favicon.svg +1 -0
- package/corpus/templates/factory/public/icon-180.svg +1 -0
- package/corpus/templates/factory/public/icon-192.svg +1 -0
- package/corpus/templates/factory/public/icon-512.svg +1 -0
- package/corpus/templates/factory/public/manifest.json +21 -0
- package/corpus/templates/factory/react-router.config.ts +7 -0
- package/corpus/templates/factory/server/connectors/credentials.ts +129 -0
- package/corpus/templates/factory/server/connectors/slack.ts +129 -0
- package/corpus/templates/factory/server/db/index.ts +6 -0
- package/corpus/templates/factory/server/db/schema.ts +193 -0
- package/corpus/templates/factory/server/factory-graph/contracts.ts +212 -0
- package/corpus/templates/factory/server/factory-graph/store.ts +121 -0
- package/corpus/templates/factory/server/lib/require-workspace-member.ts +55 -0
- package/corpus/templates/factory/server/middleware/auth.ts +15 -0
- package/corpus/templates/factory/server/plugins/agent-chat.ts +58 -0
- package/corpus/templates/factory/server/plugins/auth.ts +14 -0
- package/corpus/templates/factory/server/plugins/factory-migrations.ts +247 -0
- package/corpus/templates/factory/server/plugins/factory-scheduler-job.ts +116 -0
- package/corpus/templates/factory/server/plugins/integrations.ts +46 -0
- package/corpus/templates/factory/server/routes/[...page].get.ts +5 -0
- package/corpus/templates/factory/server/routes/_agent-native/factory/builder-callback.post.ts +116 -0
- package/corpus/templates/factory/server/triage/ai-services-git.ts +197 -0
- package/corpus/templates/factory/server/triage/builder-executor.ts +118 -0
- package/corpus/templates/factory/server/triage/contracts.ts +164 -0
- package/corpus/templates/factory/server/triage/github-ingestion.ts +35 -0
- package/corpus/templates/factory/server/triage/guards.ts +121 -0
- package/corpus/templates/factory/server/triage/ids.ts +27 -0
- package/corpus/templates/factory/server/triage/pr-babysit.ts +100 -0
- package/corpus/templates/factory/server/triage/pr-monitor.ts +220 -0
- package/corpus/templates/factory/server/triage/slack-client.ts +55 -0
- package/corpus/templates/factory/server/triage/slack-poller.ts +152 -0
- package/corpus/templates/factory/ssr-entry.ts +15 -0
- package/corpus/templates/factory/tsconfig.json +21 -0
- package/corpus/templates/factory/vite.config.ts +19 -0
- package/corpus/templates/forms/app/components/layout/Sidebar.tsx +55 -5
- package/corpus/templates/forms/changelog/2026-07-31-the-agent-native-logo-stays-visible-when-the-sidebar-is-coll.md +6 -0
- package/corpus/templates/macros/app/components/layout/AppLayout.tsx +6 -2
- package/corpus/templates/plan/app/components/layout/Sidebar.tsx +21 -6
- package/corpus/templates/plan/changelog/2026-07-31-clicking-the-agent-native-logo-now-toggles-the-app-sidebar.md +6 -0
- package/corpus/templates/slides/.agents/skills/create-deck/SKILL.md +12 -0
- package/corpus/templates/slides/.agents/skills/design-systems/SKILL.md +9 -0
- package/corpus/templates/slides/.agents/skills/slide-editing/SKILL.md +11 -0
- package/corpus/templates/slides/AGENTS.md +5 -6
- package/corpus/templates/slides/actions/_await-fit-check.ts +20 -10
- package/corpus/templates/slides/actions/add-slide.ts +17 -4
- package/corpus/templates/slides/actions/create-design-system.ts +16 -4
- package/corpus/templates/slides/actions/delete-design-system.ts +18 -2
- package/corpus/templates/slides/actions/get-layout-overflows.ts +88 -0
- package/corpus/templates/slides/actions/import-file.ts +1 -0
- package/corpus/templates/slides/actions/index-design-system-with-builder.ts +8 -0
- package/corpus/templates/slides/actions/patch-deck.ts +48 -16
- package/corpus/templates/slides/actions/set-default-design-system.ts +49 -19
- package/corpus/templates/slides/actions/update-slide.ts +13 -3
- package/corpus/templates/slides/actions/view-screen.ts +87 -10
- package/corpus/templates/slides/app/components/deck/SlideRenderer.tsx +155 -28
- package/corpus/templates/slides/app/components/design-system/DesignSystemCard.tsx +21 -17
- package/corpus/templates/slides/app/components/design-system/DesignSystemSetup.tsx +849 -341
- package/corpus/templates/slides/app/components/editor/EditorSidebar.tsx +102 -2
- package/corpus/templates/slides/app/components/editor/PromptDialog.tsx +13 -16
- package/corpus/templates/slides/app/components/editor/SlideEditor.tsx +60 -12
- package/corpus/templates/slides/app/components/editor/SlideOverflowWarning.tsx +11 -1
- package/corpus/templates/slides/app/components/layout/Sidebar.tsx +66 -19
- package/corpus/templates/slides/app/i18n/en-US.ts +23 -0
- package/corpus/templates/slides/app/lib/normalize-slide-padding.ts +8 -15
- package/corpus/templates/slides/app/pages/DeckEditor.tsx +4 -3
- package/corpus/templates/slides/app/pages/DesignSystems.tsx +4 -3
- package/corpus/templates/slides/app/pages/Index.tsx +1 -1
- package/corpus/templates/slides/changelog/2026-07-31-design-system-details-now-show-their-source-and-indexing-sta.md +6 -0
- package/corpus/templates/slides/changelog/2026-07-31-design-system-indexing-keeps-your-chosen-name-when-you-uploa.md +6 -0
- package/corpus/templates/slides/changelog/2026-07-31-design-system-setup-keeps-focus-rings-visible-and-uses-a-sim.md +6 -0
- package/corpus/templates/slides/changelog/2026-07-31-skip-prompt-is-now-available-in-the-new-deck-prompt-header.md +6 -0
- package/corpus/templates/slides/changelog/2026-07-31-slides-now-detect-real-text-and-box-overflow-across-the-deck.md +6 -0
- package/corpus/templates/slides/changelog/2026-07-31-the-agent-native-logo-stays-visible-when-the-sidebar-is-coll.md +6 -0
- package/corpus/templates/slides/server/handlers/design-systems.ts +1 -0
- package/corpus/templates/slides/server/handlers/index-design-system-sources.ts +1 -0
- package/corpus/templates/slides/server/lib/builder-design-system-proxy.ts +23 -4
- package/corpus/templates/slides/server/plugins/agent-chat.ts +5 -0
- package/corpus/templates/slides/server/plugins/creative-context.ts +16 -3
- package/corpus/templates/slides/server/workspace-defaults.ts +5 -1
- package/corpus/templates/slides/shared/slide-fit.ts +26 -0
- package/corpus/templates/tasks/app/components/layout/Sidebar.tsx +30 -3
- package/corpus/templates/tasks/changelog/2026-07-31-clicking-the-agent-native-logo-now-toggles-the-app-sidebar.md +6 -0
- package/dist/a2a/correlation.d.ts +4 -1
- package/dist/a2a/correlation.d.ts.map +1 -1
- package/dist/a2a/correlation.js +8 -1
- package/dist/a2a/correlation.js.map +1 -1
- package/dist/a2a/types.d.ts +11 -3
- package/dist/a2a/types.d.ts.map +1 -1
- package/dist/a2a/types.js.map +1 -1
- package/dist/agent/engine/ai-sdk-engine.d.ts.map +1 -1
- package/dist/agent/engine/ai-sdk-engine.js +27 -41
- package/dist/agent/engine/ai-sdk-engine.js.map +1 -1
- package/dist/agent/engine/builder-engine.d.ts.map +1 -1
- package/dist/agent/engine/builder-engine.js +18 -8
- package/dist/agent/engine/builder-engine.js.map +1 -1
- package/dist/agent/engine/error-detail.d.ts +61 -0
- package/dist/agent/engine/error-detail.d.ts.map +1 -1
- package/dist/agent/engine/error-detail.js +145 -3
- package/dist/agent/engine/error-detail.js.map +1 -1
- package/dist/agent/engine/failure-taxonomy.d.ts +24 -0
- package/dist/agent/engine/failure-taxonomy.d.ts.map +1 -0
- package/dist/agent/engine/failure-taxonomy.js +88 -0
- package/dist/agent/engine/failure-taxonomy.js.map +1 -0
- package/dist/agent/engine/index.d.ts +2 -1
- package/dist/agent/engine/index.d.ts.map +1 -1
- package/dist/agent/engine/index.js +2 -1
- package/dist/agent/engine/index.js.map +1 -1
- package/dist/agent/engine/registry.d.ts +16 -0
- package/dist/agent/engine/registry.d.ts.map +1 -1
- package/dist/agent/engine/registry.js +71 -6
- package/dist/agent/engine/registry.js.map +1 -1
- package/dist/agent/engine/translate-ai-sdk.d.ts.map +1 -1
- package/dist/agent/engine/translate-ai-sdk.js +14 -2
- package/dist/agent/engine/translate-ai-sdk.js.map +1 -1
- package/dist/agent/production-agent.d.ts.map +1 -1
- package/dist/agent/production-agent.js +13 -24
- package/dist/agent/production-agent.js.map +1 -1
- package/dist/agent/run-loop-with-resume.js +1 -1
- package/dist/agent/run-loop-with-resume.js.map +1 -1
- package/dist/agent/run-manager.d.ts.map +1 -1
- package/dist/agent/run-manager.js +39 -10
- package/dist/agent/run-manager.js.map +1 -1
- package/dist/agent/run-store.d.ts +10 -0
- package/dist/agent/run-store.d.ts.map +1 -1
- package/dist/agent/run-store.js +20 -3
- package/dist/agent/run-store.js.map +1 -1
- package/dist/agent/thread-data-builder.d.ts.map +1 -1
- package/dist/agent/thread-data-builder.js +28 -4
- package/dist/agent/thread-data-builder.js.map +1 -1
- package/dist/cli/templates-meta.d.ts.map +1 -1
- package/dist/cli/templates-meta.js +13 -0
- package/dist/cli/templates-meta.js.map +1 -1
- package/dist/cli/workspace-dev.d.ts.map +1 -1
- package/dist/cli/workspace-dev.js +1 -0
- package/dist/cli/workspace-dev.js.map +1 -1
- package/dist/client/error-format.d.ts.map +1 -1
- package/dist/client/error-format.js +10 -0
- package/dist/client/error-format.js.map +1 -1
- package/dist/collab/awareness.d.ts +2 -2
- package/dist/collab/awareness.d.ts.map +1 -1
- package/dist/credentials/index.d.ts +9 -2
- package/dist/credentials/index.d.ts.map +1 -1
- package/dist/credentials/index.js +50 -8
- package/dist/credentials/index.js.map +1 -1
- package/dist/extensions/url-safety.d.ts.map +1 -1
- package/dist/extensions/url-safety.js +38 -12
- package/dist/extensions/url-safety.js.map +1 -1
- package/dist/integrations/adapters/slack.d.ts.map +1 -1
- package/dist/integrations/adapters/slack.js +25 -8
- package/dist/integrations/adapters/slack.js.map +1 -1
- package/dist/integrations/google-docs-poller.d.ts.map +1 -1
- package/dist/integrations/google-docs-poller.js +13 -1
- package/dist/integrations/google-docs-poller.js.map +1 -1
- package/dist/integrations/installations-store.d.ts +10 -0
- package/dist/integrations/installations-store.d.ts.map +1 -1
- package/dist/integrations/installations-store.js +24 -0
- package/dist/integrations/installations-store.js.map +1 -1
- package/dist/integrations/plugin.d.ts.map +1 -1
- package/dist/integrations/plugin.js +6 -5
- package/dist/integrations/plugin.js.map +1 -1
- package/dist/integrations/types.d.ts +7 -0
- package/dist/integrations/types.d.ts.map +1 -1
- package/dist/integrations/types.js.map +1 -1
- package/dist/integrations/webhook-handler.d.ts.map +1 -1
- package/dist/integrations/webhook-handler.js +16 -1
- package/dist/integrations/webhook-handler.js.map +1 -1
- package/dist/jobs/background-automation-runner.d.ts.map +1 -1
- package/dist/jobs/background-automation-runner.js +35 -2
- package/dist/jobs/background-automation-runner.js.map +1 -1
- package/dist/mcp/screen-memory-stdio.d.ts +7 -7
- package/dist/mcp/screen-memory-stdio.d.ts.map +1 -1
- package/dist/notifications/routes.d.ts +3 -3
- package/dist/observability/routes.d.ts +3 -3
- package/dist/provider-api/actions/custom-provider-registration.d.ts +14 -14
- package/dist/provider-api/actions/provider-api.d.ts +8 -8
- package/dist/provider-api/index.js +7 -3
- package/dist/provider-api/index.js.map +1 -1
- package/dist/scripts/call-agent.d.ts.map +1 -1
- package/dist/scripts/call-agent.js +6 -1
- package/dist/scripts/call-agent.js.map +1 -1
- package/dist/server/agent-chat-plugin.d.ts.map +1 -1
- package/dist/server/agent-chat-plugin.js +25 -7
- package/dist/server/agent-chat-plugin.js.map +1 -1
- package/dist/server/agent-discovery.d.ts +2 -0
- package/dist/server/agent-discovery.d.ts.map +1 -1
- package/dist/server/agent-discovery.js.map +1 -1
- package/dist/server/builder-design-systems.d.ts +4 -1
- package/dist/server/builder-design-systems.d.ts.map +1 -1
- package/dist/server/builder-design-systems.js +11 -1
- package/dist/server/builder-design-systems.js.map +1 -1
- package/dist/server/credential-provider.d.ts.map +1 -1
- package/dist/server/credential-provider.js +49 -12
- package/dist/server/credential-provider.js.map +1 -1
- package/dist/server/index.d.ts +1 -1
- package/dist/server/index.d.ts.map +1 -1
- package/dist/server/index.js.map +1 -1
- package/dist/server/onboarding-html.d.ts.map +1 -1
- package/dist/server/onboarding-html.js +37 -2
- package/dist/server/onboarding-html.js.map +1 -1
- package/dist/server/transcribe-voice.d.ts +1 -1
- package/dist/shared/reasoning-effort.d.ts +1 -0
- package/dist/shared/reasoning-effort.d.ts.map +1 -1
- package/dist/shared/reasoning-effort.js +1 -1
- package/dist/shared/reasoning-effort.js.map +1 -1
- package/dist/templates/chat/app/components/layout/Sidebar.tsx +30 -3
- package/dist/templates/chat/changelog/2026-07-31-clicking-the-agent-native-logo-now-toggles-the-app-sidebar.md +6 -0
- package/dist/templates/workspace-core/.agents/skills/a2a-protocol/SKILL.md +11 -0
- package/package.json +1 -1
- package/src/a2a/correlation.ts +11 -1
- package/src/a2a/types.ts +11 -3
- package/src/agent/engine/ai-sdk-engine.ts +33 -46
- package/src/agent/engine/builder-engine.ts +22 -10
- package/src/agent/engine/error-detail.ts +184 -3
- package/src/agent/engine/failure-taxonomy.ts +123 -0
- package/src/agent/engine/index.ts +8 -0
- package/src/agent/engine/registry.ts +92 -8
- package/src/agent/engine/translate-ai-sdk.ts +17 -2
- package/src/agent/production-agent.ts +13 -33
- package/src/agent/run-loop-with-resume.ts +1 -1
- package/src/agent/run-manager.ts +43 -14
- package/src/agent/run-store.ts +30 -3
- package/src/agent/thread-data-builder.ts +36 -4
- package/src/cli/templates-meta.ts +13 -0
- package/src/cli/workspace-dev.ts +1 -0
- package/src/client/error-format.ts +12 -0
- package/src/credentials/index.ts +51 -12
- package/src/extensions/url-safety.ts +46 -12
- package/src/integrations/adapters/slack.ts +32 -10
- package/src/integrations/google-docs-poller.ts +12 -1
- package/src/integrations/installations-store.ts +30 -0
- package/src/integrations/plugin.ts +5 -5
- package/src/integrations/types.ts +7 -0
- package/src/integrations/webhook-handler.ts +24 -1
- package/src/jobs/background-automation-runner.ts +38 -1
- package/src/provider-api/index.ts +8 -2
- package/src/scripts/call-agent.ts +6 -0
- package/src/server/agent-chat-plugin.ts +30 -9
- package/src/server/agent-discovery.ts +2 -0
- package/src/server/builder-design-systems.ts +21 -0
- package/src/server/credential-provider.ts +51 -12
- package/src/server/index.ts +1 -0
- package/src/server/onboarding-html.ts +37 -2
- package/src/shared/reasoning-effort.ts +1 -1
- package/src/templates/chat/app/components/layout/Sidebar.tsx +30 -3
- package/src/templates/chat/changelog/2026-07-31-clicking-the-agent-native-logo-now-toggles-the-app-sidebar.md +6 -0
- package/src/templates/workspace-core/.agents/skills/a2a-protocol/SKILL.md +11 -0
- package/corpus/templates/clips/desktop/src/lib/media-device-selection.ts +0 -157
|
@@ -775,31 +775,60 @@ export function Sidebar({
|
|
|
775
775
|
collapsed ? "px-1" : "px-4",
|
|
776
776
|
)}
|
|
777
777
|
>
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
|
|
786
|
-
|
|
787
|
-
|
|
788
|
-
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
|
|
778
|
+
<Link
|
|
779
|
+
to="/"
|
|
780
|
+
onClick={(event) => {
|
|
781
|
+
onClose();
|
|
782
|
+
if (
|
|
783
|
+
!onCollapsedChange ||
|
|
784
|
+
event.metaKey ||
|
|
785
|
+
event.ctrlKey ||
|
|
786
|
+
event.shiftKey ||
|
|
787
|
+
event.altKey ||
|
|
788
|
+
event.button !== 0
|
|
789
|
+
) {
|
|
790
|
+
return;
|
|
791
|
+
}
|
|
792
|
+
event.preventDefault();
|
|
793
|
+
onCollapsedChange(!collapsed);
|
|
794
|
+
}}
|
|
795
|
+
className={cn(
|
|
796
|
+
"flex items-center gap-2 rounded outline-none focus-visible:ring-2 focus-visible:ring-ring",
|
|
797
|
+
collapsed ? "size-8 justify-center" : "flex-1",
|
|
798
|
+
)}
|
|
799
|
+
aria-label={
|
|
800
|
+
onCollapsedChange
|
|
801
|
+
? collapsed
|
|
802
|
+
? t("sidebar.expandSidebar")
|
|
803
|
+
: t("sidebar.collapseSidebar")
|
|
804
|
+
: collapsed
|
|
805
|
+
? t("navigation.brand")
|
|
806
|
+
: undefined
|
|
807
|
+
}
|
|
808
|
+
data-sidebar-brand-toggle
|
|
809
|
+
>
|
|
810
|
+
<img
|
|
811
|
+
src={appPath("/agent-native-icon-light.svg")}
|
|
812
|
+
alt=""
|
|
813
|
+
aria-hidden="true"
|
|
814
|
+
width={28}
|
|
815
|
+
height={16}
|
|
816
|
+
className="block h-4 w-7 shrink-0 object-contain object-center dark:hidden"
|
|
817
|
+
/>
|
|
818
|
+
<img
|
|
819
|
+
src={appPath("/agent-native-icon-dark.svg")}
|
|
820
|
+
alt=""
|
|
821
|
+
aria-hidden="true"
|
|
822
|
+
width={28}
|
|
823
|
+
height={16}
|
|
824
|
+
className="hidden h-4 w-7 shrink-0 object-contain object-center dark:block"
|
|
825
|
+
/>
|
|
826
|
+
{!collapsed && (
|
|
827
|
+
<span className="text-base font-semibold tracking-tight">
|
|
828
|
+
{t("navigation.brand")}
|
|
829
|
+
</span>
|
|
830
|
+
)}
|
|
831
|
+
</Link>
|
|
803
832
|
</div>
|
|
804
833
|
|
|
805
834
|
<div className="min-h-0 flex-1 overflow-y-auto">
|
|
@@ -358,23 +358,50 @@ export function Sidebar({
|
|
|
358
358
|
>
|
|
359
359
|
<Link
|
|
360
360
|
to="/"
|
|
361
|
+
onClick={(event) => {
|
|
362
|
+
if (
|
|
363
|
+
!collapsible ||
|
|
364
|
+
!onCollapsedChange ||
|
|
365
|
+
event.metaKey ||
|
|
366
|
+
event.ctrlKey ||
|
|
367
|
+
event.shiftKey ||
|
|
368
|
+
event.altKey ||
|
|
369
|
+
event.button !== 0
|
|
370
|
+
) {
|
|
371
|
+
return;
|
|
372
|
+
}
|
|
373
|
+
event.preventDefault();
|
|
374
|
+
onCollapsedChange(!collapsed);
|
|
375
|
+
}}
|
|
361
376
|
className={cn(
|
|
362
377
|
"flex min-w-0 items-center rounded outline-none focus-visible:ring-2 focus-visible:ring-ring",
|
|
363
378
|
collapsed ? "size-7 justify-center" : "flex-1 gap-3",
|
|
364
379
|
)}
|
|
365
|
-
aria-label={
|
|
380
|
+
aria-label={
|
|
381
|
+
collapsible && onCollapsedChange
|
|
382
|
+
? collapsed
|
|
383
|
+
? t("navigation.expandSidebar")
|
|
384
|
+
: t("navigation.collapseSidebar")
|
|
385
|
+
: collapsed
|
|
386
|
+
? APP_TITLE
|
|
387
|
+
: undefined
|
|
388
|
+
}
|
|
366
389
|
>
|
|
367
390
|
<img
|
|
368
391
|
src={appPath("/agent-native-icon-light.svg")}
|
|
369
392
|
alt=""
|
|
370
393
|
aria-hidden="true"
|
|
371
|
-
|
|
394
|
+
width={28}
|
|
395
|
+
height={16}
|
|
396
|
+
className="block h-4 w-7 shrink-0 object-contain object-center dark:hidden"
|
|
372
397
|
/>
|
|
373
398
|
<img
|
|
374
399
|
src={appPath("/agent-native-icon-dark.svg")}
|
|
375
400
|
alt=""
|
|
376
401
|
aria-hidden="true"
|
|
377
|
-
|
|
402
|
+
width={28}
|
|
403
|
+
height={16}
|
|
404
|
+
className="hidden h-4 w-7 shrink-0 object-contain object-center dark:block"
|
|
378
405
|
/>
|
|
379
406
|
<div className={cn("min-w-0", collapsed && "sr-only")}>
|
|
380
407
|
<p className="truncate text-sm font-semibold text-sidebar-accent-foreground">
|
|
@@ -336,32 +336,48 @@ export function LibraryLayout({ children }: LibraryLayoutProps) {
|
|
|
336
336
|
showCollapsedSidebar ? "justify-center px-2" : "px-4",
|
|
337
337
|
)}
|
|
338
338
|
>
|
|
339
|
-
<
|
|
339
|
+
<button
|
|
340
|
+
type="button"
|
|
341
|
+
onClick={() => {
|
|
342
|
+
if (!isMobile) setSidebarCollapsed((value) => !value);
|
|
343
|
+
}}
|
|
344
|
+
aria-label={
|
|
345
|
+
isMobile
|
|
346
|
+
? t("navigation.brand")
|
|
347
|
+
: showCollapsedSidebar
|
|
348
|
+
? t("navigation.expandSidebar")
|
|
349
|
+
: t("navigation.collapseSidebar")
|
|
350
|
+
}
|
|
340
351
|
className={cn(
|
|
341
|
-
"flex min-w-0 items-center gap-2",
|
|
342
|
-
|
|
352
|
+
"flex min-w-0 items-center gap-2 rounded outline-none focus-visible:ring-2 focus-visible:ring-ring",
|
|
353
|
+
showCollapsedSidebar
|
|
354
|
+
? "size-8 justify-center"
|
|
355
|
+
: "flex-1 text-start",
|
|
343
356
|
)}
|
|
357
|
+
data-sidebar-brand-toggle
|
|
344
358
|
>
|
|
359
|
+
<img
|
|
360
|
+
src={appPath("/agent-native-icon-light.svg")}
|
|
361
|
+
alt=""
|
|
362
|
+
aria-hidden="true"
|
|
363
|
+
width={28}
|
|
364
|
+
height={16}
|
|
365
|
+
className="block h-4 w-7 shrink-0 object-contain object-center dark:hidden"
|
|
366
|
+
/>
|
|
367
|
+
<img
|
|
368
|
+
src={appPath("/agent-native-icon-dark.svg")}
|
|
369
|
+
alt=""
|
|
370
|
+
aria-hidden="true"
|
|
371
|
+
width={28}
|
|
372
|
+
height={16}
|
|
373
|
+
className="hidden h-4 w-7 shrink-0 object-contain object-center dark:block"
|
|
374
|
+
/>
|
|
345
375
|
{!showCollapsedSidebar && (
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
alt=""
|
|
350
|
-
aria-hidden="true"
|
|
351
|
-
className="block h-4 w-auto shrink-0 dark:hidden"
|
|
352
|
-
/>
|
|
353
|
-
<img
|
|
354
|
-
src={appPath("/agent-native-icon-dark.svg")}
|
|
355
|
-
alt=""
|
|
356
|
-
aria-hidden="true"
|
|
357
|
-
className="hidden h-4 w-auto shrink-0 dark:block"
|
|
358
|
-
/>
|
|
359
|
-
<span className="truncate text-sm font-semibold text-foreground">
|
|
360
|
-
{t("navigation.brand")}
|
|
361
|
-
</span>
|
|
362
|
-
</>
|
|
376
|
+
<span className="truncate text-sm font-semibold text-foreground">
|
|
377
|
+
{t("navigation.brand")}
|
|
378
|
+
</span>
|
|
363
379
|
)}
|
|
364
|
-
</
|
|
380
|
+
</button>
|
|
365
381
|
</div>
|
|
366
382
|
<div className="min-h-0 flex-1 overflow-y-auto">
|
|
367
383
|
{showCollapsedSidebar ? (
|
|
@@ -13,7 +13,7 @@ import {
|
|
|
13
13
|
isPseudoMediaDeviceId,
|
|
14
14
|
isSelectableAudioInputDevice,
|
|
15
15
|
normalizedMediaDeviceId,
|
|
16
|
-
} from "
|
|
16
|
+
} from "../../../shared/media-device-selection";
|
|
17
17
|
import {
|
|
18
18
|
isHardCapturePermissionError,
|
|
19
19
|
MACOS_CAPTURE_PERMISSION_MESSAGE,
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
enumerateAudioInputDevices,
|
|
4
4
|
isLikelyPhoneMicLabel,
|
|
5
5
|
type AudioInputFallback,
|
|
6
|
-
} from "
|
|
6
|
+
} from "../../../shared/media-device-selection";
|
|
7
7
|
|
|
8
8
|
export const VOICE_FOCUSED_AUDIO_CONSTRAINTS: MediaTrackConstraints = {
|
|
9
9
|
echoCancellation: { ideal: true },
|
|
@@ -1617,6 +1617,38 @@ export function DocumentSidebar({
|
|
|
1617
1617
|
className={collapsed ? "size-8" : "h-8 min-w-0"}
|
|
1618
1618
|
/>
|
|
1619
1619
|
);
|
|
1620
|
+
const brandButton = (isCollapsed: boolean) => (
|
|
1621
|
+
<button
|
|
1622
|
+
type="button"
|
|
1623
|
+
onClick={onToggleCollapsed}
|
|
1624
|
+
aria-label={isCollapsed ? t("sidebar.expand") : t("sidebar.collapse")}
|
|
1625
|
+
className={cn(
|
|
1626
|
+
"flex items-center gap-2 rounded outline-none text-foreground transition-colors hover:bg-accent/50 focus-visible:ring-2 focus-visible:ring-ring",
|
|
1627
|
+
isCollapsed ? "size-8 justify-center" : "min-w-0 text-start",
|
|
1628
|
+
)}
|
|
1629
|
+
data-sidebar-brand-toggle
|
|
1630
|
+
>
|
|
1631
|
+
<img
|
|
1632
|
+
src={appPath("/agent-native-icon-light.svg")}
|
|
1633
|
+
alt=""
|
|
1634
|
+
aria-hidden="true"
|
|
1635
|
+
width={28}
|
|
1636
|
+
height={16}
|
|
1637
|
+
className="block h-4 w-7 shrink-0 object-contain object-center dark:hidden"
|
|
1638
|
+
/>
|
|
1639
|
+
<img
|
|
1640
|
+
src={appPath("/agent-native-icon-dark.svg")}
|
|
1641
|
+
alt=""
|
|
1642
|
+
aria-hidden="true"
|
|
1643
|
+
width={28}
|
|
1644
|
+
height={16}
|
|
1645
|
+
className="hidden h-4 w-7 shrink-0 object-contain object-center dark:block"
|
|
1646
|
+
/>
|
|
1647
|
+
{!isCollapsed && (
|
|
1648
|
+
<span className="text-base font-semibold tracking-tight">Content</span>
|
|
1649
|
+
)}
|
|
1650
|
+
</button>
|
|
1651
|
+
);
|
|
1620
1652
|
|
|
1621
1653
|
const toggleSection = (id: SidebarSectionId) => {
|
|
1622
1654
|
setStoredCollapsedSections((current) => {
|
|
@@ -2118,6 +2150,7 @@ export function DocumentSidebar({
|
|
|
2118
2150
|
if (collapsed) {
|
|
2119
2151
|
return (
|
|
2120
2152
|
<div className="agent-layout-left-drawer flex h-full w-12 flex-col items-center gap-1 border-e border-border bg-sidebar py-3 transition-[width] duration-200 ease-out">
|
|
2153
|
+
{brandButton(true)}
|
|
2121
2154
|
{renderCollapsedNewButton()}
|
|
2122
2155
|
<Tooltip>
|
|
2123
2156
|
<TooltipTrigger asChild>
|
|
@@ -2156,23 +2189,7 @@ export function DocumentSidebar({
|
|
|
2156
2189
|
>
|
|
2157
2190
|
{/* Header */}
|
|
2158
2191
|
<div className="flex h-12 shrink-0 items-center justify-between border-b border-border px-3">
|
|
2159
|
-
|
|
2160
|
-
<img
|
|
2161
|
-
src={appPath("/agent-native-icon-light.svg")}
|
|
2162
|
-
alt=""
|
|
2163
|
-
aria-hidden="true"
|
|
2164
|
-
className="block h-4 w-auto shrink-0 dark:hidden"
|
|
2165
|
-
/>
|
|
2166
|
-
<img
|
|
2167
|
-
src={appPath("/agent-native-icon-dark.svg")}
|
|
2168
|
-
alt=""
|
|
2169
|
-
aria-hidden="true"
|
|
2170
|
-
className="hidden h-4 w-auto shrink-0 dark:block"
|
|
2171
|
-
/>
|
|
2172
|
-
<span className="text-base font-semibold tracking-tight text-foreground">
|
|
2173
|
-
Content
|
|
2174
|
-
</span>
|
|
2175
|
-
</div>
|
|
2192
|
+
{brandButton(false)}
|
|
2176
2193
|
</div>
|
|
2177
2194
|
|
|
2178
2195
|
{/* Search */}
|
|
@@ -30,6 +30,7 @@ Design systems are stored in the `design_systems` SQL table. Each has:
|
|
|
30
30
|
- `is_default` — boolean, whether this is the user's default design system
|
|
31
31
|
- `owner_email` — auto-set from session
|
|
32
32
|
- `org_id` — organization scope
|
|
33
|
+
- `visibility` — defaults to `org` inside an organization, otherwise `private`
|
|
33
34
|
|
|
34
35
|
### DesignSystemData Schema
|
|
35
36
|
|
|
@@ -125,7 +126,9 @@ brand's actual extracted fonts) rather than defaulting to Space Grotesk/DM
|
|
|
125
126
|
Sans every time; that pairing is this skill's own most common convergence
|
|
126
127
|
fingerprint.
|
|
127
128
|
|
|
128
|
-
If this is the user's first design system
|
|
129
|
+
If this is the user's first design system in the active organization, it is
|
|
130
|
+
automatically set as the default. Organization-scoped systems are shared with
|
|
131
|
+
that organization by default.
|
|
129
132
|
|
|
130
133
|
### Starting from an established public system
|
|
131
134
|
|
|
@@ -175,7 +178,8 @@ Only provided fields are updated. You can also update `--title`, `--description`
|
|
|
175
178
|
pnpm action set-default-design-system --id <id>
|
|
176
179
|
```
|
|
177
180
|
|
|
178
|
-
|
|
181
|
+
Pass `--isDefault false` to clear the current default. Setting a system as the
|
|
182
|
+
default unsets the previous default in the same user and organization scope.
|
|
179
183
|
|
|
180
184
|
## Multi-Source Import Flow
|
|
181
185
|
|
|
@@ -11,11 +11,16 @@ import { getDb, schema } from "../server/db/index.js";
|
|
|
11
11
|
|
|
12
12
|
export default defineAction({
|
|
13
13
|
description:
|
|
14
|
-
"Set a design system as the default
|
|
14
|
+
"Set or unset a design system as the default for the current user and organization.",
|
|
15
15
|
schema: z.object({
|
|
16
16
|
id: z.string().describe("Design system ID to set as default"),
|
|
17
|
+
isDefault: z
|
|
18
|
+
.boolean()
|
|
19
|
+
.optional()
|
|
20
|
+
.default(true)
|
|
21
|
+
.describe("Whether this design system should be the default"),
|
|
17
22
|
}),
|
|
18
|
-
run: async ({ id }) => {
|
|
23
|
+
run: async ({ id, isDefault = true }) => {
|
|
19
24
|
await assertAccess("design-system", id, "editor");
|
|
20
25
|
|
|
21
26
|
const db = getDb();
|
|
@@ -26,42 +31,45 @@ export default defineAction({
|
|
|
26
31
|
const orgId = getRequestOrgId();
|
|
27
32
|
|
|
28
33
|
const [target] = await db
|
|
29
|
-
.select({
|
|
34
|
+
.select({
|
|
35
|
+
ownerEmail: schema.designSystems.ownerEmail,
|
|
36
|
+
orgId: schema.designSystems.orgId,
|
|
37
|
+
})
|
|
30
38
|
.from(schema.designSystems)
|
|
31
39
|
.where(eq(schema.designSystems.id, id))
|
|
32
40
|
.limit(1);
|
|
33
41
|
|
|
34
|
-
if (
|
|
42
|
+
if (
|
|
43
|
+
target?.ownerEmail !== userEmail ||
|
|
44
|
+
(target.orgId ?? null) !== (orgId ?? null)
|
|
45
|
+
) {
|
|
35
46
|
throw new Error("Only the owner can set a design system as default");
|
|
36
47
|
}
|
|
37
48
|
|
|
38
49
|
await db.transaction(async (tx) => {
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
50
|
+
const targetScope = orgId
|
|
51
|
+
? and(
|
|
52
|
+
eq(schema.designSystems.ownerEmail, userEmail),
|
|
53
|
+
eq(schema.designSystems.orgId, orgId),
|
|
54
|
+
)
|
|
55
|
+
: and(
|
|
56
|
+
eq(schema.designSystems.ownerEmail, userEmail),
|
|
57
|
+
isNull(schema.designSystems.orgId),
|
|
58
|
+
);
|
|
59
|
+
|
|
60
|
+
if (isDefault) {
|
|
61
|
+
await tx
|
|
62
|
+
.update(schema.designSystems)
|
|
63
|
+
.set({ isDefault: false, updatedAt: now })
|
|
64
|
+
.where(targetScope);
|
|
65
|
+
}
|
|
53
66
|
|
|
54
67
|
await tx
|
|
55
68
|
.update(schema.designSystems)
|
|
56
|
-
.set({ isDefault
|
|
57
|
-
.where(
|
|
58
|
-
and(
|
|
59
|
-
eq(schema.designSystems.id, id),
|
|
60
|
-
eq(schema.designSystems.ownerEmail, userEmail),
|
|
61
|
-
),
|
|
62
|
-
);
|
|
69
|
+
.set({ isDefault, updatedAt: now })
|
|
70
|
+
.where(and(eq(schema.designSystems.id, id), targetScope));
|
|
63
71
|
});
|
|
64
72
|
|
|
65
|
-
return { id, isDefault
|
|
73
|
+
return { id, isDefault };
|
|
66
74
|
},
|
|
67
75
|
});
|
|
@@ -124,25 +124,42 @@ export function Sidebar() {
|
|
|
124
124
|
collapsed ? "justify-center px-2" : "justify-between px-4",
|
|
125
125
|
)}
|
|
126
126
|
>
|
|
127
|
-
<
|
|
127
|
+
<button
|
|
128
|
+
type="button"
|
|
129
|
+
onClick={() => setCollapsed((value) => !value)}
|
|
130
|
+
aria-label={
|
|
131
|
+
collapsed
|
|
132
|
+
? t("navigation.expandSidebar")
|
|
133
|
+
: t("navigation.collapseSidebar")
|
|
134
|
+
}
|
|
135
|
+
className={cn(
|
|
136
|
+
"flex items-center gap-2 rounded outline-none focus-visible:ring-2 focus-visible:ring-ring",
|
|
137
|
+
collapsed ? "size-8 justify-center" : "text-start",
|
|
138
|
+
)}
|
|
139
|
+
data-sidebar-brand-toggle
|
|
140
|
+
>
|
|
128
141
|
<img
|
|
129
142
|
src={appPath("/agent-native-icon-light.svg")}
|
|
130
143
|
alt=""
|
|
131
144
|
aria-hidden="true"
|
|
132
|
-
|
|
145
|
+
width={28}
|
|
146
|
+
height={16}
|
|
147
|
+
className="block h-4 w-7 shrink-0 object-contain object-center dark:hidden"
|
|
133
148
|
/>
|
|
134
149
|
<img
|
|
135
150
|
src={appPath("/agent-native-icon-dark.svg")}
|
|
136
151
|
alt=""
|
|
137
152
|
aria-hidden="true"
|
|
138
|
-
|
|
153
|
+
width={28}
|
|
154
|
+
height={16}
|
|
155
|
+
className="hidden h-4 w-7 shrink-0 object-contain object-center dark:block"
|
|
139
156
|
/>
|
|
140
157
|
{!collapsed && (
|
|
141
158
|
<span className="text-sm font-semibold tracking-tight">
|
|
142
159
|
{t("navigation.brand")}
|
|
143
160
|
</span>
|
|
144
161
|
)}
|
|
145
|
-
</
|
|
162
|
+
</button>
|
|
146
163
|
</div>
|
|
147
164
|
|
|
148
165
|
<div className="flex min-h-0 flex-1 flex-col overflow-y-auto">
|
|
@@ -1452,6 +1452,10 @@ const enUS = {
|
|
|
1452
1452
|
figmaCreateSuccess: "Design system created from Figma",
|
|
1453
1453
|
figmaCreateError: "Could not create the design system",
|
|
1454
1454
|
backToDesignSystems: "Back to design systems",
|
|
1455
|
+
otherSources: "Other",
|
|
1456
|
+
otherSourcesDescription:
|
|
1457
|
+
"Connect from a website, code, files, or an existing design system.",
|
|
1458
|
+
chooseSourcePrompt: "Choose one source to configure",
|
|
1455
1459
|
continue: "Continue to generation",
|
|
1456
1460
|
title: "Set up your design system",
|
|
1457
1461
|
description:
|
|
@@ -1924,6 +1928,9 @@ const designLocaleOverrides = {
|
|
|
1924
1928
|
figmaCreateSuccess: "由Figma创建的设计系统",
|
|
1925
1929
|
figmaCreateError: "无法创建设计系统",
|
|
1926
1930
|
backToDesignSystems: "返回设计系统",
|
|
1931
|
+
otherSources: "其他",
|
|
1932
|
+
otherSourcesDescription: "从网站、代码、文件或现有设计系统连接。",
|
|
1933
|
+
chooseSourcePrompt: "选择一个来源进行配置",
|
|
1927
1934
|
continue: "继续生成",
|
|
1928
1935
|
title: "设置您的设计系统",
|
|
1929
1936
|
description:
|
|
@@ -2329,6 +2336,10 @@ const designLocaleOverrides = {
|
|
|
2329
2336
|
figmaCreateSuccess: "Sistema de diseño creado a partir de Figma.",
|
|
2330
2337
|
figmaCreateError: "No se pudo crear el sistema de diseño.",
|
|
2331
2338
|
backToDesignSystems: "Volver a sistemas de diseño",
|
|
2339
|
+
otherSources: "Otros",
|
|
2340
|
+
otherSourcesDescription:
|
|
2341
|
+
"Conecta desde un sitio web, código, archivos o un sistema de diseño existente.",
|
|
2342
|
+
chooseSourcePrompt: "Elige una fuente para configurar",
|
|
2332
2343
|
continue: "continuar con la generación",
|
|
2333
2344
|
title: "Configure su sistema de diseño",
|
|
2334
2345
|
description:
|
|
@@ -2756,6 +2767,10 @@ const designLocaleOverrides = {
|
|
|
2756
2767
|
figmaCreateSuccess: "Système de conception créé à partir de Figma",
|
|
2757
2768
|
figmaCreateError: "Impossible de créer le système de conception",
|
|
2758
2769
|
backToDesignSystems: "Retour aux systèmes de conception",
|
|
2770
|
+
otherSources: "Autre",
|
|
2771
|
+
otherSourcesDescription:
|
|
2772
|
+
"Connectez-vous depuis un site web, du code, des fichiers ou un système de conception existant.",
|
|
2773
|
+
chooseSourcePrompt: "Choisissez une source à configurer",
|
|
2759
2774
|
continue: "Continuer jusqu'à la génération",
|
|
2760
2775
|
title: "Configurez votre système de conception",
|
|
2761
2776
|
description:
|
|
@@ -3183,6 +3198,10 @@ const designLocaleOverrides = {
|
|
|
3183
3198
|
figmaCreateSuccess: "Designsystem erstellt aus Figma",
|
|
3184
3199
|
figmaCreateError: "Das Designsystem konnte nicht erstellt werden",
|
|
3185
3200
|
backToDesignSystems: "Zurück zu Designsystemen",
|
|
3201
|
+
otherSources: "Andere",
|
|
3202
|
+
otherSourcesDescription:
|
|
3203
|
+
"Von einer Website, Code, Dateien oder einem vorhandenen Designsystem verbinden.",
|
|
3204
|
+
chooseSourcePrompt: "Quelle zum Konfigurieren auswählen",
|
|
3186
3205
|
continue: "Weiter zur Generation",
|
|
3187
3206
|
title: "Richten Sie Ihr Designsystem ein",
|
|
3188
3207
|
description:
|
|
@@ -3610,6 +3629,10 @@ const designLocaleOverrides = {
|
|
|
3610
3629
|
figmaCreateSuccess: "Figma から作成されたデザインシステム",
|
|
3611
3630
|
figmaCreateError: "デザインシステムを作成できませんでした",
|
|
3612
3631
|
backToDesignSystems: "設計システムに戻る",
|
|
3632
|
+
otherSources: "その他",
|
|
3633
|
+
otherSourcesDescription:
|
|
3634
|
+
"Webサイト、コード、ファイル、または既存のデザインシステムから接続します。",
|
|
3635
|
+
chooseSourcePrompt: "設定するソースを選択",
|
|
3613
3636
|
continue: "世代を継続する",
|
|
3614
3637
|
title: "デザインシステムをセットアップする",
|
|
3615
3638
|
description:
|
|
@@ -4032,6 +4055,10 @@ const designLocaleOverrides = {
|
|
|
4032
4055
|
figmaCreateSuccess: "Figma에서 생성된 디자인 시스템",
|
|
4033
4056
|
figmaCreateError: "디자인 시스템을 만들 수 없습니다",
|
|
4034
4057
|
backToDesignSystems: "디자인 시스템으로 돌아가기",
|
|
4058
|
+
otherSources: "기타",
|
|
4059
|
+
otherSourcesDescription:
|
|
4060
|
+
"웹사이트, 코드, 파일 또는 기존 디자인 시스템에서 연결합니다.",
|
|
4061
|
+
chooseSourcePrompt: "구성할 소스 선택",
|
|
4035
4062
|
continue: "세대를 이어가다",
|
|
4036
4063
|
title: "디자인 시스템 설정",
|
|
4037
4064
|
description:
|
|
@@ -4448,6 +4475,10 @@ const designLocaleOverrides = {
|
|
|
4448
4475
|
figmaCreateSuccess: "Sistema de design criado a partir de Figma",
|
|
4449
4476
|
figmaCreateError: "Não foi possível criar o sistema de design",
|
|
4450
4477
|
backToDesignSystems: "Voltar para sistemas de design",
|
|
4478
|
+
otherSources: "Outro",
|
|
4479
|
+
otherSourcesDescription:
|
|
4480
|
+
"Conecte-se de um site, código, arquivos ou um sistema de design existente.",
|
|
4481
|
+
chooseSourcePrompt: "Escolha uma fonte para configurar",
|
|
4451
4482
|
continue: "Continuar para a geração",
|
|
4452
4483
|
title: "Configure seu sistema de design",
|
|
4453
4484
|
description:
|
|
@@ -4870,6 +4901,10 @@ const designLocaleOverrides = {
|
|
|
4870
4901
|
figmaCreateSuccess: "Figma से डिज़ाइन सिस्टम बनाया गया",
|
|
4871
4902
|
figmaCreateError: "डिज़ाइन सिस्टम नहीं बनाया जा सका",
|
|
4872
4903
|
backToDesignSystems: "डिज़ाइन सिस्टम पर वापस जाएँ",
|
|
4904
|
+
otherSources: "अन्य",
|
|
4905
|
+
otherSourcesDescription:
|
|
4906
|
+
"वेबसाइट, कोड, फ़ाइलों या मौजूदा डिज़ाइन सिस्टम से कनेक्ट करें।",
|
|
4907
|
+
chooseSourcePrompt: "कॉन्फ़िगर करने के लिए एक स्रोत चुनें",
|
|
4873
4908
|
continue: "पीढ़ी तक जारी रखें",
|
|
4874
4909
|
title: "अपना डिज़ाइन सिस्टम सेट करें",
|
|
4875
4910
|
description:
|
|
@@ -5282,6 +5317,10 @@ const designLocaleOverrides = {
|
|
|
5282
5317
|
figmaCreateSuccess: "تم إنشاء نظام التصميم من Figma",
|
|
5283
5318
|
figmaCreateError: "لا يمكن إنشاء نظام التصميم",
|
|
5284
5319
|
backToDesignSystems: "العودة إلى أنظمة التصميم",
|
|
5320
|
+
otherSources: "أخرى",
|
|
5321
|
+
otherSourcesDescription:
|
|
5322
|
+
"الاتصال من موقع ويب أو رمز أو ملفات أو نظام تصميم موجود.",
|
|
5323
|
+
chooseSourcePrompt: "اختر مصدرًا لتهيئته",
|
|
5285
5324
|
continue: "الاستمرار في الجيل",
|
|
5286
5325
|
title: "قم بإعداد نظام التصميم الخاص بك",
|
|
5287
5326
|
description:
|