@agent-native/core 0.165.3 → 0.167.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/secrets/SKILL.md +5 -1
- package/corpus/templates/analytics/.agents/skills/workspace-conventions/SKILL.md +4 -1
- package/corpus/templates/analytics/CHANGELOG.md +740 -2
- package/corpus/templates/analytics/app/components/layout/Sidebar.tsx +93 -56
- package/corpus/templates/analytics/app/i18n-data.ts +23 -20
- package/corpus/templates/analytics/app/pages/Settings.tsx +0 -1
- package/corpus/templates/analytics/app/pages/adhoc/explorer/index.tsx +0 -1
- package/corpus/templates/analytics/app/pages/adhoc/explorer-dashboard/index.tsx +1 -1
- package/corpus/templates/analytics/app/pages/adhoc/sql-dashboard/SqlChartCard.tsx +2 -1
- package/corpus/templates/analytics/app/pages/sessions/SessionsPage.tsx +0 -1
- package/corpus/templates/analytics/server/lib/first-party-analytics-backend.ts +0 -32
- package/corpus/templates/analytics/server/lib/session-replay.ts +1 -5
- package/corpus/templates/assets/.agents/skills/secrets/SKILL.md +5 -1
- package/corpus/templates/assets/.agents/skills/workspace-conventions/SKILL.md +4 -1
- package/corpus/templates/assets/CHANGELOG.md +204 -2
- package/corpus/templates/assets/actions/navigate.ts +2 -2
- package/corpus/templates/assets/actions/save-generated-image.ts +0 -5
- package/corpus/templates/assets/app/routes/brand-kits.$id.tsx +2 -262
- package/corpus/templates/assets/app/routes/library.tsx +1 -1
- package/corpus/templates/assets/app/routes/settings.tsx +0 -3
- package/corpus/templates/brain/.agents/skills/secrets/SKILL.md +5 -1
- package/corpus/templates/brain/.agents/skills/workspace-conventions/SKILL.md +4 -1
- package/corpus/templates/brain/CHANGELOG.md +145 -2
- package/corpus/templates/brain/actions/ask-brain.ts +0 -1
- package/corpus/templates/brain/actions/navigate.ts +2 -2
- package/corpus/templates/brain/app/routes/sources.tsx +0 -4
- package/corpus/templates/brain/server/lib/capture-sanitization.ts +0 -11
- package/corpus/templates/calendar/.agents/skills/secrets/SKILL.md +5 -1
- package/corpus/templates/calendar/.agents/skills/workspace-conventions/SKILL.md +4 -1
- package/corpus/templates/calendar/CHANGELOG.md +272 -2
- package/corpus/templates/calendar/app/components/calendar/EventDetailPopover.tsx +0 -20
- package/corpus/templates/calendar/app/pages/CalendarView.tsx +0 -1
- package/corpus/templates/chat/.agents/skills/secrets/SKILL.md +5 -1
- package/corpus/templates/chat/.agents/skills/workspace-conventions/SKILL.md +4 -1
- package/corpus/templates/chat/CHANGELOG.md +89 -2
- package/corpus/templates/chat/actions/navigate.ts +2 -2
- package/corpus/templates/clips/.agents/skills/secrets/SKILL.md +5 -1
- package/corpus/templates/clips/.agents/skills/workspace-conventions/SKILL.md +4 -1
- package/corpus/templates/clips/CHANGELOG.md +865 -2
- package/corpus/templates/clips/actions/import-loom-recording.ts +16 -4
- package/corpus/templates/clips/actions/navigate.ts +2 -2
- package/corpus/templates/clips/app/components/editor/stitch-manager.tsx +0 -1
- package/corpus/templates/clips/app/components/library/space-dialogs.tsx +0 -1
- package/corpus/templates/clips/app/components/meetings/share-meeting-dialog.tsx +0 -1
- package/corpus/templates/clips/app/components/player/clips-share-trigger.tsx +17 -0
- package/corpus/templates/clips/app/components/player/delete-recording-menu.tsx +3 -3
- package/corpus/templates/clips/app/components/player/video-player.tsx +2 -2
- package/corpus/templates/clips/app/components/recorder/recorder-engine.ts +0 -1
- package/corpus/templates/clips/app/components/settings/ai-setup-section.tsx +0 -1
- package/corpus/templates/clips/app/global.css +31 -0
- package/corpus/templates/clips/app/hooks/use-playback-position.ts +0 -2
- package/corpus/templates/clips/app/lib/download-release-channel.ts +10 -0
- package/corpus/templates/clips/app/routes/_app.meetings.$meetingId.tsx +1 -3
- package/corpus/templates/clips/app/routes/download.tsx +67 -44
- package/corpus/templates/clips/app/routes/r.$recordingId.tsx +7 -12
- package/corpus/templates/clips/app/routes/record.tsx +6 -6
- package/corpus/templates/clips/app/routes/share.$shareId.tsx +26 -29
- package/corpus/templates/clips/changelog/2026-08-20-clip-viewer-share-actions.md +6 -0
- package/corpus/templates/clips/changelog/2026-08-20-preparing-recording-countdown-overlay.md +6 -0
- package/corpus/templates/clips/chrome-extension/src/background.ts +0 -13
- package/corpus/templates/clips/chrome-extension/src/overlay.ts +0 -1
- package/corpus/templates/clips/chrome-extension/src/popup.ts +0 -20
- package/corpus/templates/clips/desktop/src/app.tsx +6 -18
- package/corpus/templates/clips/desktop/src/hooks/useMediaDevices.ts +0 -1
- package/corpus/templates/clips/desktop/src/lib/recorder.ts +0 -8
- package/corpus/templates/clips/desktop/src/overlays/preparing.tsx +4 -6
- package/corpus/templates/clips/desktop/src/styles.css +18 -20
- package/corpus/templates/clips/desktop/src-tauri/src/clips/mod.rs +9 -17
- package/corpus/templates/content/.agents/skills/secrets/SKILL.md +5 -1
- package/corpus/templates/content/.agents/skills/workspace-conventions/SKILL.md +4 -1
- package/corpus/templates/content/CHANGELOG.md +503 -2
- package/corpus/templates/content/actions/_database-source-utils.ts +0 -3
- package/corpus/templates/content/actions/attach-content-database-source.ts +1 -4
- package/corpus/templates/content/actions/navigate.ts +2 -2
- package/corpus/templates/content/actions/prepare-builder-source-execution.ts +1 -1
- package/corpus/templates/content/app/components/editor/DocumentProperties.tsx +0 -6
- package/corpus/templates/content/app/components/editor/database/DatabaseView.tsx +0 -580
- package/corpus/templates/content/app/components/editor/database/FormView.tsx +2 -2
- package/corpus/templates/content/app/components/editor/database/filter-sort.ts +1 -1
- package/corpus/templates/content/app/components/editor/database/settings.tsx +0 -23
- package/corpus/templates/content/app/components/editor/database/sidebar.tsx +0 -1
- package/corpus/templates/content/app/components/sidebar/DocumentSidebar.tsx +8 -304
- package/corpus/templates/content/app/hooks/use-documents.ts +0 -1
- package/corpus/templates/content/shared/api.ts +0 -1
- package/corpus/templates/content/shared/builder-mdx.ts +0 -1
- package/corpus/templates/content/shared/nfm.ts +1 -7
- package/corpus/templates/crm/.agents/skills/secrets/SKILL.md +5 -1
- package/corpus/templates/crm/.agents/skills/workspace-conventions/SKILL.md +4 -1
- package/corpus/templates/crm/CHANGELOG.md +31 -2
- package/corpus/templates/crm/actions/merge-crm-records.ts +0 -4
- package/corpus/templates/crm/app/components/crm/record/RecordLists.tsx +0 -1
- package/corpus/templates/crm/server/crm/hubspot-adapter.ts +0 -1
- package/corpus/templates/crm/server/crm/salesforce-adapter.ts +0 -1
- package/corpus/templates/crm/server/db/crm-store.ts +1 -1
- package/corpus/templates/design/.agents/skills/secrets/SKILL.md +5 -1
- package/corpus/templates/design/.agents/skills/workspace-conventions/SKILL.md +4 -1
- package/corpus/templates/design/.generated/bridge/editor-chrome.generated.ts +1 -14
- package/corpus/templates/design/AGENTS.md +2 -1
- package/corpus/templates/design/CHANGELOG.md +870 -2
- package/corpus/templates/design/actions/apply-component-prop-edit.ts +1 -5
- package/corpus/templates/design/actions/generate-design.ts +0 -1
- package/corpus/templates/design/actions/generate-screens.ts +5 -2
- package/corpus/templates/design/actions/go-to-main-component.ts +2 -2
- package/corpus/templates/design/actions/list-design-systems.ts +10 -0
- package/corpus/templates/design/actions/navigate.ts +2 -2
- package/corpus/templates/design/actions/open-component-source.ts +4 -4
- package/corpus/templates/design/actions/present-design-variants.ts +1 -2
- package/corpus/templates/design/actions/run-design-audit.ts +0 -22
- package/corpus/templates/design/actions/show-design-questions.ts +5 -2
- package/corpus/templates/design/app/components/design/DesignCanvas.tsx +19 -8
- package/corpus/templates/design/app/components/design/EditPanel.tsx +11 -183
- package/corpus/templates/design/app/components/design/MultiScreenCanvas.tsx +21 -4
- package/corpus/templates/design/app/components/design/QuestionFlow.tsx +1 -5
- package/corpus/templates/design/app/components/design/bridge/codegen.ts +1 -1
- package/corpus/templates/design/app/components/design/bridge/editor-chrome.bridge.ts +10 -19
- package/corpus/templates/design/app/components/design/edit-panel/appearance-properties.tsx +1 -1
- package/corpus/templates/design/app/components/design/edit-panel/layout-properties.tsx +13 -3
- package/corpus/templates/design/app/components/design/edit-panel/panel-primitives.tsx +38 -32
- package/corpus/templates/design/app/components/design/edit-panel/position-layout-properties.tsx +1 -4
- package/corpus/templates/design/app/components/design/inspector/AlignmentMatrix.tsx +0 -4
- package/corpus/templates/design/app/components/design/inspector/AutoLayoutMatrix.tsx +15 -6
- package/corpus/templates/design/app/components/design/inspector/DesignColorPicker.tsx +2 -2
- package/corpus/templates/design/app/components/visual-editor/NodeRewriteProposal.tsx +0 -1
- package/corpus/templates/design/app/components/visual-editor/ReviewCanvasPins.tsx +1 -1
- package/corpus/templates/design/app/i18n-data.ts +122 -0
- package/corpus/templates/design/app/lib/clipboard-content-lineage.ts +11 -1
- package/corpus/templates/design/app/pages/DesignEditor.tsx +50 -254
- package/corpus/templates/design/app/pages/DesignSystemSetup.tsx +163 -8
- package/corpus/templates/design/app/pages/Index.tsx +17 -0
- package/corpus/templates/design/app/pages/design-editor/canvas-primitive-insert.ts +44 -32
- package/corpus/templates/design/app/pages/design-editor/canvas-primitives.ts +10 -0
- package/corpus/templates/design/app/pages/design-editor/clone-and-pen-edit.ts +49 -3
- package/corpus/templates/design/app/pages/design-editor/clone-idrefs.ts +31 -0
- package/corpus/templates/design/app/pages/design-editor/code-layer-state.ts +28 -0
- package/corpus/templates/design/app/pages/design-editor/commands/add-auto-layout.ts +3 -3
- package/corpus/templates/design/app/pages/design-editor/commands/align-selection.ts +44 -14
- package/corpus/templates/design/app/pages/design-editor/commands/apply-local-content-update.ts +16 -5
- package/corpus/templates/design/app/pages/design-editor/commands/change-selected-z-index.ts +1 -1
- package/corpus/templates/design/app/pages/design-editor/commands/frame-selection.ts +1 -1
- package/corpus/templates/design/app/pages/design-editor/commands/group-selection.ts +1 -1
- package/corpus/templates/design/app/pages/design-editor/commands/nudge-selection.ts +1 -1
- package/corpus/templates/design/app/pages/design-editor/commands/paste-selection.ts +142 -17
- package/corpus/templates/design/app/pages/design-editor/commands/screen-visual-duplicate-change.ts +1 -0
- package/corpus/templates/design/app/pages/design-editor/commands/ungroup-selection.ts +1 -1
- package/corpus/templates/design/app/pages/design-editor/commands/visual-duplicate-change.ts +1 -0
- package/corpus/templates/design/app/pages/design-editor/cross-screen-text-color.ts +25 -9
- package/corpus/templates/design/app/pages/design-editor/editor-state.ts +1 -0
- package/corpus/templates/design/app/pages/design-editor/measure-child-rects.ts +83 -0
- package/corpus/templates/design/app/pages/design-editor/paste-placement.ts +66 -0
- package/corpus/templates/design/server/routes/[...page].get.ts +0 -1
- package/corpus/templates/design/shared/code-layer.ts +120 -70
- package/corpus/templates/design/shared/design-surface-index.ts +0 -1
- package/corpus/templates/design/shared/pen-path.ts +0 -4
- package/corpus/templates/dispatch/.agents/skills/secrets/SKILL.md +5 -1
- package/corpus/templates/dispatch/.agents/skills/workspace-conventions/SKILL.md +4 -1
- package/corpus/templates/dispatch/CHANGELOG.md +196 -2
- package/corpus/templates/dispatch/app/routes/integrations.tsx +0 -109
- package/corpus/templates/factory/.agents/skills/secrets/SKILL.md +5 -1
- package/corpus/templates/factory/.agents/skills/workspace-conventions/SKILL.md +4 -1
- package/corpus/templates/factory/CHANGELOG.md +121 -2
- package/corpus/templates/factory/actions/navigate.ts +2 -2
- package/corpus/templates/factory/app/components/factory/FactoryAuditView.tsx +0 -13
- package/corpus/templates/factory/app/routes/factory.tsx +0 -1
- package/corpus/templates/factory/server/factory-graph/store.ts +0 -1
- package/corpus/templates/forms/.agents/skills/secrets/SKILL.md +5 -1
- package/corpus/templates/forms/.agents/skills/workspace-conventions/SKILL.md +4 -1
- package/corpus/templates/forms/CHANGELOG.md +166 -2
- package/corpus/templates/macros/.agents/skills/secrets/SKILL.md +5 -1
- package/corpus/templates/macros/.agents/skills/workspace-conventions/SKILL.md +4 -1
- package/corpus/templates/macros/CHANGELOG.md +49 -2
- package/corpus/templates/macros/app/components/layout/AppLayout.tsx +0 -1
- package/corpus/templates/mail/.agents/skills/secrets/SKILL.md +5 -1
- package/corpus/templates/mail/.agents/skills/workspace-conventions/SKILL.md +4 -1
- package/corpus/templates/mail/CHANGELOG.md +201 -2
- package/corpus/templates/mail/app/components/email/EmailList.tsx +0 -1
- package/corpus/templates/mail/app/components/layout/AppLayout.tsx +2 -2
- package/corpus/templates/mail/shared/markdown.ts +3 -0
- package/corpus/templates/plan/.agents/skills/secrets/SKILL.md +5 -1
- package/corpus/templates/plan/.agents/skills/workspace-conventions/SKILL.md +4 -1
- package/corpus/templates/plan/CHANGELOG.md +277 -2
- package/corpus/templates/slides/.agents/skills/secrets/SKILL.md +5 -1
- package/corpus/templates/slides/.agents/skills/workspace-conventions/SKILL.md +4 -1
- package/corpus/templates/slides/CHANGELOG.md +437 -2
- package/corpus/templates/slides/actions/add-slide.ts +0 -1
- package/corpus/templates/slides/actions/list-decks.ts +1 -1
- package/corpus/templates/slides/app/components/editor/EditorSidebar.tsx +1 -4
- package/corpus/templates/slides/app/components/editor/SlideContextToolbar.tsx +0 -1
- package/corpus/templates/slides/app/components/editor/SlideEditor.tsx +1 -1
- package/corpus/templates/slides/app/pages/DeckEditor.tsx +1 -6
- package/corpus/templates/tasks/.agents/skills/secrets/SKILL.md +5 -1
- package/corpus/templates/tasks/.agents/skills/workspace-conventions/SKILL.md +4 -1
- package/corpus/templates/tasks/CHANGELOG.md +32 -2
- package/corpus/templates/tasks/app/components/layout/Layout.tsx +0 -1
- package/corpus/templates/tasks/app/hooks/use-visible-task-fields.ts +1 -4
- package/corpus/templates/tasks/server/custom-fields/store.ts +1 -6
- package/corpus/templates/tasks/shared/list-screen-snapshot.ts +2 -2
- package/dist/agent/engine/registry.js +27 -14
- package/dist/agent/index.d.ts +1 -1
- package/dist/agent/production-agent.d.ts +19 -6
- package/dist/agent/production-agent.js +57 -16
- package/dist/agent/types.d.ts +3 -0
- package/dist/changelog/parse.d.ts +3 -3
- package/dist/changelog/parse.js +35 -16
- package/dist/client/EnvironmentBadge.d.ts +1 -0
- package/dist/client/EnvironmentBadge.js +7 -0
- package/dist/collab/awareness.d.ts +2 -2
- package/dist/collab/routes.d.ts +1 -1
- package/dist/collab/struct-routes.d.ts +1 -1
- package/dist/config.d.ts +11 -0
- package/dist/config.js +248 -0
- package/dist/deploy/build.js +12 -1
- package/dist/index.d.ts +1 -1
- package/dist/notifications/routes.d.ts +3 -3
- package/dist/observability/routes.d.ts +6 -6
- package/dist/resources/handlers.d.ts +2 -2
- package/dist/secrets/routes.d.ts +9 -9
- package/dist/server/agent-chat/plugin-options.d.ts +3 -2
- package/dist/server/agent-chat-plugin.js +5 -2
- package/dist/server/index.d.ts +1 -1
- package/dist/server/realtime-token.d.ts +1 -1
- package/dist/server/transcribe-voice.d.ts +1 -1
- package/dist/templates/chat/.agents/skills/secrets/SKILL.md +5 -1
- package/dist/templates/chat/.agents/skills/workspace-conventions/SKILL.md +4 -1
- package/dist/templates/chat/CHANGELOG.md +89 -2
- package/dist/templates/chat/actions/navigate.ts +2 -2
- package/dist/templates/default/.agents/skills/secrets/SKILL.md +5 -1
- package/dist/templates/default/.agents/skills/workspace-conventions/SKILL.md +4 -1
- package/dist/templates/headless/.agents/skills/secrets/SKILL.md +5 -1
- package/dist/templates/workspace-core/.agents/skills/secrets/SKILL.md +5 -1
- package/dist/templates/workspace-core/.agents/skills/workspace-conventions/SKILL.md +4 -1
- package/dist/vite/agent-native-config-loader.d.ts +1 -0
- package/dist/vite/agent-native-config-loader.js +3 -3
- package/dist/vite/agents-bundle-plugin.d.ts +1 -1
- package/dist/vite/agents-bundle-plugin.js +13 -1
- package/dist/vite/client.js +14 -14
- package/docs/content/agent-native-config.mdx +62 -11
- package/docs/content/agent-surfaces.mdx +6 -0
- package/docs/content/environment-variables.mdx +5 -2
- package/package.json +3 -3
- package/src/templates/chat/.agents/skills/secrets/SKILL.md +5 -1
- package/src/templates/chat/.agents/skills/workspace-conventions/SKILL.md +4 -1
- package/src/templates/chat/CHANGELOG.md +89 -2
- package/src/templates/chat/actions/navigate.ts +2 -2
- package/src/templates/default/.agents/skills/secrets/SKILL.md +5 -1
- package/src/templates/default/.agents/skills/workspace-conventions/SKILL.md +4 -1
- package/src/templates/headless/.agents/skills/secrets/SKILL.md +5 -1
- package/src/templates/workspace-core/.agents/skills/secrets/SKILL.md +5 -1
- package/src/templates/workspace-core/.agents/skills/workspace-conventions/SKILL.md +4 -1
|
@@ -68,7 +68,6 @@ import {
|
|
|
68
68
|
IconChartBar,
|
|
69
69
|
IconCheck,
|
|
70
70
|
IconChevronDown,
|
|
71
|
-
IconCircleDashed,
|
|
72
71
|
IconClock,
|
|
73
72
|
IconDatabase,
|
|
74
73
|
IconEdit,
|
|
@@ -473,13 +472,6 @@ function statusLabel(t: Translate, status: WorkspaceConnectionStatus): string {
|
|
|
473
472
|
return t(`integrations.status.${status}`);
|
|
474
473
|
}
|
|
475
474
|
|
|
476
|
-
function readinessLabel(
|
|
477
|
-
t: Translate,
|
|
478
|
-
status: WorkspaceConnectionProviderReadinessStatus,
|
|
479
|
-
): string {
|
|
480
|
-
return t(`integrations.readiness.${status}`);
|
|
481
|
-
}
|
|
482
|
-
|
|
483
475
|
function scopeLabel(
|
|
484
476
|
t: Translate,
|
|
485
477
|
scope: WorkspaceConnectionCredentialRef["scope"],
|
|
@@ -742,32 +734,6 @@ function nextAllowedApps(
|
|
|
742
734
|
return current.filter((id) => id !== appId);
|
|
743
735
|
}
|
|
744
736
|
|
|
745
|
-
function summarizeGrant(
|
|
746
|
-
connection: WorkspaceConnection,
|
|
747
|
-
grantApps: GrantApp[],
|
|
748
|
-
grants: WorkspaceConnectionsResponse["grants"],
|
|
749
|
-
t: Translate,
|
|
750
|
-
) {
|
|
751
|
-
if (connection.allowedApps.length === 0) return t("integrations.allApps");
|
|
752
|
-
const grantedAppIds = Array.from(
|
|
753
|
-
new Set([
|
|
754
|
-
...connection.allowedApps,
|
|
755
|
-
...grants
|
|
756
|
-
.filter((grant) => grant.connectionId === connection.id)
|
|
757
|
-
.map((grant) => grant.appId)
|
|
758
|
-
.filter((appId) => appId !== "*"),
|
|
759
|
-
]),
|
|
760
|
-
);
|
|
761
|
-
const labels = grantedAppIds
|
|
762
|
-
.map((appId) => grantApps.find((app) => app.id === appId)?.label ?? appId)
|
|
763
|
-
.slice(0, 3);
|
|
764
|
-
const suffix =
|
|
765
|
-
grantedAppIds.length > labels.length
|
|
766
|
-
? ` +${grantedAppIds.length - labels.length}`
|
|
767
|
-
: "";
|
|
768
|
-
return `${labels.join(", ")}${suffix}`;
|
|
769
|
-
}
|
|
770
|
-
|
|
771
737
|
function summarizeUserAccess(
|
|
772
738
|
connection: WorkspaceConnection,
|
|
773
739
|
t: Translate,
|
|
@@ -800,21 +766,6 @@ function summarizeUserAccess(
|
|
|
800
766
|
return `${labels.join(", ")}${suffix}`;
|
|
801
767
|
}
|
|
802
768
|
|
|
803
|
-
function summarizeAppList(
|
|
804
|
-
appIds: string[],
|
|
805
|
-
grantApps: GrantApp[],
|
|
806
|
-
t: Translate,
|
|
807
|
-
): string {
|
|
808
|
-
const labels = appIds
|
|
809
|
-
.map((appId) => grantApps.find((app) => app.id === appId)?.label ?? appId)
|
|
810
|
-
.slice(0, 3);
|
|
811
|
-
const suffix =
|
|
812
|
-
appIds.length > labels.length ? ` +${appIds.length - labels.length}` : "";
|
|
813
|
-
return labels.length > 0
|
|
814
|
-
? `${labels.join(", ")}${suffix}`
|
|
815
|
-
: t("integrations.noApps");
|
|
816
|
-
}
|
|
817
|
-
|
|
818
769
|
function startWorkspaceProviderOAuth(provider: WorkspaceConnectionProvider) {
|
|
819
770
|
const returnPath = `${window.location.pathname}${window.location.search}`;
|
|
820
771
|
if (provider.id === "slack") {
|
|
@@ -3516,66 +3467,6 @@ export default function WorkspaceIntegrationsRoute() {
|
|
|
3516
3467
|
);
|
|
3517
3468
|
}
|
|
3518
3469
|
|
|
3519
|
-
function IntegrationOnboarding() {
|
|
3520
|
-
const t = useT();
|
|
3521
|
-
const steps: Array<{
|
|
3522
|
-
icon: IconComponent;
|
|
3523
|
-
title: string;
|
|
3524
|
-
detail: string;
|
|
3525
|
-
}> = [
|
|
3526
|
-
{
|
|
3527
|
-
icon: IconPlugConnected,
|
|
3528
|
-
title: t("integrations.onboardingConnectTitle"),
|
|
3529
|
-
detail: t("integrations.onboardingConnectDetail"),
|
|
3530
|
-
},
|
|
3531
|
-
{
|
|
3532
|
-
icon: IconShieldCheck,
|
|
3533
|
-
title: t("integrations.onboardingGrantTitle"),
|
|
3534
|
-
detail: t("integrations.onboardingGrantDetail"),
|
|
3535
|
-
},
|
|
3536
|
-
{
|
|
3537
|
-
icon: IconDatabase,
|
|
3538
|
-
title: t("integrations.onboardingLocalTitle"),
|
|
3539
|
-
detail: t("integrations.onboardingLocalDetail"),
|
|
3540
|
-
},
|
|
3541
|
-
];
|
|
3542
|
-
|
|
3543
|
-
return (
|
|
3544
|
-
<section className="rounded-lg bg-muted/30 px-4 py-3">
|
|
3545
|
-
<div className="dispatch-onboarding-grid grid gap-3">
|
|
3546
|
-
<div>
|
|
3547
|
-
<h2 className="text-sm font-semibold text-foreground">
|
|
3548
|
-
{t("integrations.onboardingTitle")}
|
|
3549
|
-
</h2>
|
|
3550
|
-
<p className="mt-1 text-sm leading-5 text-muted-foreground">
|
|
3551
|
-
{t("integrations.onboardingDescription")}
|
|
3552
|
-
</p>
|
|
3553
|
-
</div>
|
|
3554
|
-
<div className="dispatch-onboarding-steps-grid grid gap-2">
|
|
3555
|
-
{steps.map((step) => {
|
|
3556
|
-
const Icon = step.icon;
|
|
3557
|
-
return (
|
|
3558
|
-
<div key={step.title} className="flex min-w-0 gap-2">
|
|
3559
|
-
<div className="mt-0.5 flex size-7 shrink-0 items-center justify-center rounded-md bg-muted/50">
|
|
3560
|
-
<Icon size={14} className="text-muted-foreground" />
|
|
3561
|
-
</div>
|
|
3562
|
-
<div className="min-w-0">
|
|
3563
|
-
<div className="text-xs font-medium text-foreground">
|
|
3564
|
-
{step.title}
|
|
3565
|
-
</div>
|
|
3566
|
-
<div className="mt-0.5 text-xs leading-5 text-muted-foreground">
|
|
3567
|
-
{step.detail}
|
|
3568
|
-
</div>
|
|
3569
|
-
</div>
|
|
3570
|
-
</div>
|
|
3571
|
-
);
|
|
3572
|
-
})}
|
|
3573
|
-
</div>
|
|
3574
|
-
</div>
|
|
3575
|
-
</section>
|
|
3576
|
-
);
|
|
3577
|
-
}
|
|
3578
|
-
|
|
3579
3470
|
function SummaryCard({
|
|
3580
3471
|
icon: Icon,
|
|
3581
3472
|
label,
|
|
@@ -38,7 +38,11 @@ connection exists:
|
|
|
38
38
|
register a `kind: "oauth"` entry so the shared UI renders Connect and the
|
|
39
39
|
runtime owns status, refresh, and reauthorization.
|
|
40
40
|
- **Deploy- or app-level configuration** - use deployment/runtime
|
|
41
|
-
configuration, not a per-user secret row.
|
|
41
|
+
configuration, not a per-user secret row. For a non-secret public setting
|
|
42
|
+
already represented by `AgentNativeConfig`, put the default in
|
|
43
|
+
`agent-native.config.ts` and use its `AGENT_NATIVE_CONFIG_<PATH>` alias only
|
|
44
|
+
for a deployment override. Never put a credential or provider key in that
|
|
45
|
+
public namespace.
|
|
42
46
|
- **Account, customer, manager, or other non-secret identifier** - store it as
|
|
43
47
|
scoped connection metadata or app data, not as a masked secret field.
|
|
44
48
|
|
|
@@ -55,7 +55,10 @@ Preview before `--apply`, commit `agent-native.ejections.json`, and never edit
|
|
|
55
55
|
ZIPs, screenshots, thumbnails, session replay chunks) in configured file/blob
|
|
56
56
|
storage and persist only URLs, ids, or handles.
|
|
57
57
|
- Store shared runtime configuration in the workspace root `.env`; use
|
|
58
|
-
`apps/<app>/.env` only for app-specific overrides.
|
|
58
|
+
`apps/<app>/.env` only for app-specific overrides. For public app behavior,
|
|
59
|
+
prefer the default in `agent-native.config.ts` and use the deterministic
|
|
60
|
+
`AGENT_NATIVE_CONFIG_<UPPER_SNAKE_PATH>` alias only when a non-secret value
|
|
61
|
+
needs a deployment override. Never hardcode API keys,
|
|
59
62
|
tokens, webhook URLs, signing secrets, private Builder/internal data, customer
|
|
60
63
|
data, or credential-looking literals in source, docs, prompts, fixtures,
|
|
61
64
|
application state, action responses, or generated app content. Use
|
|
@@ -3,8 +3,6 @@
|
|
|
3
3
|
All notable user-facing changes to Chat are documented here. Open it any
|
|
4
4
|
time from the command menu (Cmd+K → "What's new").
|
|
5
5
|
|
|
6
|
-
Older updates live in [the changelog folder](./changelog/) and are included in the in-app "What's new" view.
|
|
7
|
-
|
|
8
6
|
## 2026-08-11
|
|
9
7
|
|
|
10
8
|
### Fixed
|
|
@@ -34,3 +32,124 @@ Older updates live in [the changelog folder](./changelog/) and are included in t
|
|
|
34
32
|
### Improved
|
|
35
33
|
|
|
36
34
|
- Factory now keeps production automations running, shows scheduler health and run errors, and can email failure diagnostics.
|
|
35
|
+
|
|
36
|
+
## 2026-08-04
|
|
37
|
+
|
|
38
|
+
### Added
|
|
39
|
+
|
|
40
|
+
- Added organization-owned Factory automations for Slack bug triage, Builder handoffs, Sentry/GitHub intake, and governed PR approval.
|
|
41
|
+
|
|
42
|
+
### Improved
|
|
43
|
+
|
|
44
|
+
- Improved Factory automation editing with reliable tab navigation, a model picker that explains Auto, and map selection that no longer creates false unsaved changes.
|
|
45
|
+
|
|
46
|
+
## 2026-07-31
|
|
47
|
+
|
|
48
|
+
### Added
|
|
49
|
+
|
|
50
|
+
- Added Factory, an inspectable foundation for agent factories with Slack and pull-request evidence, shadow decisions, feedback, and guarded agent handoffs.
|
|
51
|
+
|
|
52
|
+
### Improved
|
|
53
|
+
|
|
54
|
+
- Clicking the Agent Native logo now toggles the app sidebar.
|
|
55
|
+
|
|
56
|
+
## 2026-07-29
|
|
57
|
+
|
|
58
|
+
### Improved
|
|
59
|
+
|
|
60
|
+
- Sidebar footers now keep Feedback, Search, and Collapse together without a separate language shortcut.
|
|
61
|
+
|
|
62
|
+
## 2026-07-25
|
|
63
|
+
|
|
64
|
+
### Improved
|
|
65
|
+
|
|
66
|
+
- Settings navigation now keeps Manage agent as a dedicated linked destination at the bottom.
|
|
67
|
+
|
|
68
|
+
## 2026-07-24
|
|
69
|
+
|
|
70
|
+
### Improved
|
|
71
|
+
|
|
72
|
+
- Secondary controls and dashboard surfaces now use quieter borderless styling.
|
|
73
|
+
- Sidebar utility controls now follow a consistent footer order.
|
|
74
|
+
|
|
75
|
+
## 2026-07-23
|
|
76
|
+
|
|
77
|
+
### Improved
|
|
78
|
+
|
|
79
|
+
- Full-page chat is better centered, with quieter chat history and a left-aligned New chat action.
|
|
80
|
+
|
|
81
|
+
## 2026-07-22
|
|
82
|
+
|
|
83
|
+
### Improved
|
|
84
|
+
|
|
85
|
+
- The sidebar footer now keeps Feedback and the collapse control on one compact row.
|
|
86
|
+
- Manage agent navigation now uses the connected-nodes icon.
|
|
87
|
+
- Recent chats now expand from a compact five-item list with New chat anchored at the bottom.
|
|
88
|
+
|
|
89
|
+
### Fixed
|
|
90
|
+
|
|
91
|
+
- Full-page chat keeps the active conversation when moving to and from the sidebar.
|
|
92
|
+
|
|
93
|
+
## 2026-07-17
|
|
94
|
+
|
|
95
|
+
### Fixed
|
|
96
|
+
|
|
97
|
+
- The agent chat sidebar stays closed until you open it or start a chat handoff.
|
|
98
|
+
|
|
99
|
+
## 2026-07-15
|
|
100
|
+
|
|
101
|
+
### Removed
|
|
102
|
+
|
|
103
|
+
- The main navigation is now focused on Chat, Agent, and essential workspace settings.
|
|
104
|
+
|
|
105
|
+
## 2026-07-14
|
|
106
|
+
|
|
107
|
+
### Fixed
|
|
108
|
+
|
|
109
|
+
- Chat opens reliably on hosted deployments instead of failing during startup
|
|
110
|
+
- Fixed chat template startup with older core versions
|
|
111
|
+
|
|
112
|
+
## 2026-07-13
|
|
113
|
+
|
|
114
|
+
### Added
|
|
115
|
+
|
|
116
|
+
- A full Agent page now brings context, files, connections, jobs, and external access together
|
|
117
|
+
|
|
118
|
+
## 2026-07-10
|
|
119
|
+
|
|
120
|
+
### Improved
|
|
121
|
+
|
|
122
|
+
- Chat now makes AI connection setup clear without shifting the composer.
|
|
123
|
+
|
|
124
|
+
## 2026-07-08
|
|
125
|
+
|
|
126
|
+
### Improved
|
|
127
|
+
|
|
128
|
+
- Settings are cleaner and searchable, with a consistent navigation that jumps straight to any setting.
|
|
129
|
+
|
|
130
|
+
## 2026-06-29
|
|
131
|
+
|
|
132
|
+
### Improved
|
|
133
|
+
|
|
134
|
+
- Chat layouts adapt when the agent sidebar is open.
|
|
135
|
+
|
|
136
|
+
## 2026-06-28
|
|
137
|
+
|
|
138
|
+
### Improved
|
|
139
|
+
|
|
140
|
+
- Left sidebar collapse motion and footer controls now feel smoother and use less divider chrome.
|
|
141
|
+
|
|
142
|
+
## 2026-06-27
|
|
143
|
+
|
|
144
|
+
### Fixed
|
|
145
|
+
|
|
146
|
+
- Traditional Chinese copy now uses Taiwan terminology and clearer technical wording.
|
|
147
|
+
|
|
148
|
+
## 2026-06-24
|
|
149
|
+
|
|
150
|
+
### Added
|
|
151
|
+
|
|
152
|
+
- A new Settings page gives quick access to language, workspace, and agent preferences.
|
|
153
|
+
- Added a language picker and localized app chrome for supported languages.
|
|
154
|
+
|
|
155
|
+
For the full list of updates, see the [changelog folder](./changelog/).
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
*/
|
|
15
15
|
|
|
16
16
|
import { defineAction } from "@agent-native/core/action";
|
|
17
|
-
import {
|
|
17
|
+
import { writeAppStateForCurrentTab } from "@agent-native/core/application-state";
|
|
18
18
|
import { z } from "zod";
|
|
19
19
|
|
|
20
20
|
export default defineAction({
|
|
@@ -35,7 +35,7 @@ export default defineAction({
|
|
|
35
35
|
if (args.path) nav.path = args.path;
|
|
36
36
|
if (args.threadId) nav.threadId = args.threadId;
|
|
37
37
|
nav._writeId = `${Date.now()}-${Math.random().toString(36).slice(2, 8)}`;
|
|
38
|
-
await
|
|
38
|
+
await writeAppStateForCurrentTab("navigate", nav);
|
|
39
39
|
return `Navigating to ${args.view || args.path}`;
|
|
40
40
|
},
|
|
41
41
|
});
|
|
@@ -695,19 +695,6 @@ function formatAuditLabel(value: string): string {
|
|
|
695
695
|
.replace(/\b\w/g, (letter) => letter.toUpperCase());
|
|
696
696
|
}
|
|
697
697
|
|
|
698
|
-
function formatAuditValue(value: unknown): string {
|
|
699
|
-
if (value === null || value === undefined) return "-";
|
|
700
|
-
if (typeof value === "string") return value;
|
|
701
|
-
if (typeof value === "number" || typeof value === "boolean") {
|
|
702
|
-
return String(value);
|
|
703
|
-
}
|
|
704
|
-
try {
|
|
705
|
-
return JSON.stringify(value);
|
|
706
|
-
} catch {
|
|
707
|
-
return "unreadable";
|
|
708
|
-
}
|
|
709
|
-
}
|
|
710
|
-
|
|
711
698
|
function truncateAuditText(value: string, maxLength: number): string {
|
|
712
699
|
return value.length > maxLength ? `${value.slice(0, maxLength - 1)}…` : value;
|
|
713
700
|
}
|
|
@@ -24,7 +24,6 @@ import { FactoryAgentsView } from "@/components/factory/FactoryAgentsView";
|
|
|
24
24
|
import { FactoryAuditView } from "@/components/factory/FactoryAuditView";
|
|
25
25
|
import {
|
|
26
26
|
FactoryCanvas,
|
|
27
|
-
type FactoryCanvasEdge,
|
|
28
27
|
type FactoryCanvasGraph,
|
|
29
28
|
type FactoryCanvasNode,
|
|
30
29
|
} from "@/components/factory/FactoryCanvas";
|
|
@@ -38,7 +38,11 @@ connection exists:
|
|
|
38
38
|
register a `kind: "oauth"` entry so the shared UI renders Connect and the
|
|
39
39
|
runtime owns status, refresh, and reauthorization.
|
|
40
40
|
- **Deploy- or app-level configuration** - use deployment/runtime
|
|
41
|
-
configuration, not a per-user secret row.
|
|
41
|
+
configuration, not a per-user secret row. For a non-secret public setting
|
|
42
|
+
already represented by `AgentNativeConfig`, put the default in
|
|
43
|
+
`agent-native.config.ts` and use its `AGENT_NATIVE_CONFIG_<PATH>` alias only
|
|
44
|
+
for a deployment override. Never put a credential or provider key in that
|
|
45
|
+
public namespace.
|
|
42
46
|
- **Account, customer, manager, or other non-secret identifier** - store it as
|
|
43
47
|
scoped connection metadata or app data, not as a masked secret field.
|
|
44
48
|
|
|
@@ -55,7 +55,10 @@ Preview before `--apply`, commit `agent-native.ejections.json`, and never edit
|
|
|
55
55
|
ZIPs, screenshots, thumbnails, session replay chunks) in configured file/blob
|
|
56
56
|
storage and persist only URLs, ids, or handles.
|
|
57
57
|
- Store shared runtime configuration in the workspace root `.env`; use
|
|
58
|
-
`apps/<app>/.env` only for app-specific overrides.
|
|
58
|
+
`apps/<app>/.env` only for app-specific overrides. For public app behavior,
|
|
59
|
+
prefer the default in `agent-native.config.ts` and use the deterministic
|
|
60
|
+
`AGENT_NATIVE_CONFIG_<UPPER_SNAKE_PATH>` alias only when a non-secret value
|
|
61
|
+
needs a deployment override. Never hardcode API keys,
|
|
59
62
|
tokens, webhook URLs, signing secrets, private Builder/internal data, customer
|
|
60
63
|
data, or credential-looking literals in source, docs, prompts, fixtures,
|
|
61
64
|
application state, action responses, or generated app content. Use
|
|
@@ -3,8 +3,6 @@
|
|
|
3
3
|
All notable user-facing changes to Agent-Native Forms are documented here. Open it any
|
|
4
4
|
time from the command menu (Cmd+K → "What's new").
|
|
5
5
|
|
|
6
|
-
Older updates live in [the changelog folder](./changelog/) and are included in the in-app "What's new" view.
|
|
7
|
-
|
|
8
6
|
## 2026-08-11
|
|
9
7
|
|
|
10
8
|
### Improved
|
|
@@ -44,3 +42,169 @@ Older updates live in [the changelog folder](./changelog/) and are included in t
|
|
|
44
42
|
### Improved
|
|
45
43
|
|
|
46
44
|
- The Agent Native logo stays visible when the sidebar is collapsed and toggles the sidebar when clicked.
|
|
45
|
+
|
|
46
|
+
## 2026-07-29
|
|
47
|
+
|
|
48
|
+
### Improved
|
|
49
|
+
|
|
50
|
+
- Sidebar footers now keep Feedback, Search, and Collapse together without a separate language shortcut.
|
|
51
|
+
|
|
52
|
+
## 2026-07-25
|
|
53
|
+
|
|
54
|
+
### Improved
|
|
55
|
+
|
|
56
|
+
- App branding now uses the product name without the Agent-Native prefix.
|
|
57
|
+
- Response exports now save to file storage and return a downloadable URL.
|
|
58
|
+
- Settings navigation now keeps Manage agent as a dedicated linked destination at the bottom.
|
|
59
|
+
|
|
60
|
+
### Fixed
|
|
61
|
+
|
|
62
|
+
- Forms can create and update fields without manually supplied IDs.
|
|
63
|
+
|
|
64
|
+
## 2026-07-24
|
|
65
|
+
|
|
66
|
+
### Improved
|
|
67
|
+
|
|
68
|
+
- Secondary controls and dashboard surfaces now use quieter borderless styling.
|
|
69
|
+
- Forms sidebar actions now keep search, language, feedback, and collapse controls together.
|
|
70
|
+
- Sidebar utility controls now follow a consistent footer order.
|
|
71
|
+
|
|
72
|
+
## 2026-07-23
|
|
73
|
+
|
|
74
|
+
### Improved
|
|
75
|
+
|
|
76
|
+
- Agent settings are clearly labeled Manage agent in the sidebar.
|
|
77
|
+
- Ask Forms is better centered, with quieter chat history and a left-aligned New chat action.
|
|
78
|
+
- Forms can branch into follow-up questions and route responses to configured destinations.
|
|
79
|
+
|
|
80
|
+
### Fixed
|
|
81
|
+
|
|
82
|
+
- Published form links can be copied without being asked to reconnect the database.
|
|
83
|
+
|
|
84
|
+
## 2026-07-22
|
|
85
|
+
|
|
86
|
+
### Improved
|
|
87
|
+
|
|
88
|
+
- Forms now archive with immediate list updates and clear recovery feedback when an archive fails.
|
|
89
|
+
- Manage agent navigation now uses the connected-nodes icon.
|
|
90
|
+
|
|
91
|
+
### Fixed
|
|
92
|
+
|
|
93
|
+
- Full-page chat keeps the active conversation when moving to and from the sidebar.
|
|
94
|
+
|
|
95
|
+
## 2026-07-17
|
|
96
|
+
|
|
97
|
+
### Fixed
|
|
98
|
+
|
|
99
|
+
- Form builder popovers stay within the viewport
|
|
100
|
+
- Form editor loading now matches the current sidebar-free layout.
|
|
101
|
+
- The agent chat sidebar stays closed until you open it or start a chat handoff.
|
|
102
|
+
|
|
103
|
+
## 2026-07-15
|
|
104
|
+
|
|
105
|
+
### Fixed
|
|
106
|
+
|
|
107
|
+
- Published forms now reflect field updates immediately at their shared links
|
|
108
|
+
- Response rows now keep every column aligned to the top for consistent scanning
|
|
109
|
+
|
|
110
|
+
## 2026-07-14
|
|
111
|
+
|
|
112
|
+
### Added
|
|
113
|
+
|
|
114
|
+
- Forms can email the form owner when new responses arrive
|
|
115
|
+
|
|
116
|
+
### Fixed
|
|
117
|
+
|
|
118
|
+
- Fixed the Ask Forms loading input appearing above the welcome message.
|
|
119
|
+
- Form social previews now show the form title, description, and owner photo.
|
|
120
|
+
|
|
121
|
+
## 2026-07-13
|
|
122
|
+
|
|
123
|
+
### Added
|
|
124
|
+
|
|
125
|
+
- New Agent page: see and manage your agent's context, files, connections, jobs, and external access in one place
|
|
126
|
+
|
|
127
|
+
### Fixed
|
|
128
|
+
|
|
129
|
+
- Form navigation links now support opening in a new tab.
|
|
130
|
+
|
|
131
|
+
## 2026-07-12
|
|
132
|
+
|
|
133
|
+
### Improved
|
|
134
|
+
|
|
135
|
+
- Ask Forms suggestions now sit beneath the composer and prefill it when clicked
|
|
136
|
+
- Builder response tables now fill the view without a redundant response count badge
|
|
137
|
+
- Form builder surfaces are calmer, fields stay stable on hover, and integration icons load correctly
|
|
138
|
+
- Response tables now fill the available pane with a flexible trailing cell
|
|
139
|
+
- Smoother, more tactile controls throughout: animated icon and sort toggles, press feedback on buttons and cards, and larger click targets
|
|
140
|
+
|
|
141
|
+
## 2026-07-10
|
|
142
|
+
|
|
143
|
+
### Improved
|
|
144
|
+
|
|
145
|
+
- Agent-created published forms now return the anonymous public response link
|
|
146
|
+
|
|
147
|
+
### Fixed
|
|
148
|
+
|
|
149
|
+
- Published forms can no longer be edited into an unusable empty or optionless state.
|
|
150
|
+
- Simultaneous edits to different form fields no longer overwrite each other
|
|
151
|
+
|
|
152
|
+
## 2026-07-08
|
|
153
|
+
|
|
154
|
+
### Improved
|
|
155
|
+
|
|
156
|
+
- Settings are cleaner and searchable, with a consistent navigation that jumps straight to any setting.
|
|
157
|
+
|
|
158
|
+
## 2026-07-06
|
|
159
|
+
|
|
160
|
+
### Removed
|
|
161
|
+
|
|
162
|
+
- The form builder header no longer shows the global notifications bell.
|
|
163
|
+
|
|
164
|
+
## 2026-06-29
|
|
165
|
+
|
|
166
|
+
### Fixed
|
|
167
|
+
|
|
168
|
+
- Form lists and response insights now adapt cleanly when the agent sidebar narrows the app.
|
|
169
|
+
|
|
170
|
+
## 2026-06-28
|
|
171
|
+
|
|
172
|
+
### Improved
|
|
173
|
+
|
|
174
|
+
- The left sidebar now collapses into an animated icon rail with quieter footer controls.
|
|
175
|
+
|
|
176
|
+
## 2026-06-27
|
|
177
|
+
|
|
178
|
+
### Fixed
|
|
179
|
+
|
|
180
|
+
- Anonymous feedback no longer shows internal Agent Native anonymous-owner emails as submitter addresses.
|
|
181
|
+
- Traditional Chinese copy now uses Taiwan terminology and clearer technical wording.
|
|
182
|
+
|
|
183
|
+
## 2026-06-26
|
|
184
|
+
|
|
185
|
+
### Improved
|
|
186
|
+
|
|
187
|
+
- Ask Forms opens as a standard app tab with a simpler sidebar.
|
|
188
|
+
- Forms are shown in a tighter row list with a denser sidebar.
|
|
189
|
+
|
|
190
|
+
## 2026-06-25
|
|
191
|
+
|
|
192
|
+
### Improved
|
|
193
|
+
|
|
194
|
+
- Form previews now show the content directly on the grid background.
|
|
195
|
+
|
|
196
|
+
## 2026-06-24
|
|
197
|
+
|
|
198
|
+
### Added
|
|
199
|
+
|
|
200
|
+
- A new Settings page gives quick access to language, workspace, and agent preferences.
|
|
201
|
+
- Added a language picker and localized app chrome for supported languages.
|
|
202
|
+
|
|
203
|
+
## 2026-06-23
|
|
204
|
+
|
|
205
|
+
### Added
|
|
206
|
+
|
|
207
|
+
- Response tables now show the page each submission came from, passed through from embedded feedback widgets
|
|
208
|
+
- Response tables now show whether feedback came from the web, the Electron desktop app, or a Tauri app
|
|
209
|
+
|
|
210
|
+
For the full list of updates, see the [changelog folder](./changelog/).
|
|
@@ -38,7 +38,11 @@ connection exists:
|
|
|
38
38
|
register a `kind: "oauth"` entry so the shared UI renders Connect and the
|
|
39
39
|
runtime owns status, refresh, and reauthorization.
|
|
40
40
|
- **Deploy- or app-level configuration** - use deployment/runtime
|
|
41
|
-
configuration, not a per-user secret row.
|
|
41
|
+
configuration, not a per-user secret row. For a non-secret public setting
|
|
42
|
+
already represented by `AgentNativeConfig`, put the default in
|
|
43
|
+
`agent-native.config.ts` and use its `AGENT_NATIVE_CONFIG_<PATH>` alias only
|
|
44
|
+
for a deployment override. Never put a credential or provider key in that
|
|
45
|
+
public namespace.
|
|
42
46
|
- **Account, customer, manager, or other non-secret identifier** - store it as
|
|
43
47
|
scoped connection metadata or app data, not as a masked secret field.
|
|
44
48
|
|
|
@@ -55,7 +55,10 @@ Preview before `--apply`, commit `agent-native.ejections.json`, and never edit
|
|
|
55
55
|
ZIPs, screenshots, thumbnails, session replay chunks) in configured file/blob
|
|
56
56
|
storage and persist only URLs, ids, or handles.
|
|
57
57
|
- Store shared runtime configuration in the workspace root `.env`; use
|
|
58
|
-
`apps/<app>/.env` only for app-specific overrides.
|
|
58
|
+
`apps/<app>/.env` only for app-specific overrides. For public app behavior,
|
|
59
|
+
prefer the default in `agent-native.config.ts` and use the deterministic
|
|
60
|
+
`AGENT_NATIVE_CONFIG_<UPPER_SNAKE_PATH>` alias only when a non-secret value
|
|
61
|
+
needs a deployment override. Never hardcode API keys,
|
|
59
62
|
tokens, webhook URLs, signing secrets, private Builder/internal data, customer
|
|
60
63
|
data, or credential-looking literals in source, docs, prompts, fixtures,
|
|
61
64
|
application state, action responses, or generated app content. Use
|
|
@@ -3,8 +3,6 @@
|
|
|
3
3
|
All notable user-facing changes to Agent-Native Macros are documented here. Open it any
|
|
4
4
|
time from the command menu (Cmd+K → "What's new").
|
|
5
5
|
|
|
6
|
-
Older updates live in [the changelog folder](./changelog/) and are included in the in-app "What's new" view.
|
|
7
|
-
|
|
8
6
|
## 2026-07-29
|
|
9
7
|
|
|
10
8
|
### Improved
|
|
@@ -36,3 +34,52 @@ Older updates live in [the changelog folder](./changelog/) and are included in t
|
|
|
36
34
|
### Added
|
|
37
35
|
|
|
38
36
|
- New Agent page: see and manage your agent's context, files, connections, jobs, and external access in one place
|
|
37
|
+
|
|
38
|
+
## 2026-07-11
|
|
39
|
+
|
|
40
|
+
### Improved
|
|
41
|
+
|
|
42
|
+
- Daily tracking now loads immediately and updates progress more smoothly.
|
|
43
|
+
|
|
44
|
+
### Fixed
|
|
45
|
+
|
|
46
|
+
- Data load failures now show a clear error with a retry action instead of empty nutrition logs or charts.
|
|
47
|
+
|
|
48
|
+
## 2026-07-08
|
|
49
|
+
|
|
50
|
+
### Improved
|
|
51
|
+
|
|
52
|
+
- Settings are cleaner and searchable, with a consistent navigation that jumps straight to any setting.
|
|
53
|
+
|
|
54
|
+
## 2026-06-30
|
|
55
|
+
|
|
56
|
+
### Fixed
|
|
57
|
+
|
|
58
|
+
- Dashboard loading and chart surfaces now use theme-aware colors in light and dark mode.
|
|
59
|
+
|
|
60
|
+
## 2026-06-29
|
|
61
|
+
|
|
62
|
+
### Improved
|
|
63
|
+
|
|
64
|
+
- Macro layouts adapt when the agent sidebar is open.
|
|
65
|
+
|
|
66
|
+
## 2026-06-28
|
|
67
|
+
|
|
68
|
+
### Improved
|
|
69
|
+
|
|
70
|
+
- Left sidebar footer controls now use less divider chrome.
|
|
71
|
+
|
|
72
|
+
## 2026-06-27
|
|
73
|
+
|
|
74
|
+
### Fixed
|
|
75
|
+
|
|
76
|
+
- Traditional Chinese copy now uses Taiwan terminology and clearer technical wording.
|
|
77
|
+
|
|
78
|
+
## 2026-06-24
|
|
79
|
+
|
|
80
|
+
### Added
|
|
81
|
+
|
|
82
|
+
- A new Settings page gives quick access to language, workspace, and agent preferences.
|
|
83
|
+
- Added a language picker and localized app chrome for supported languages.
|
|
84
|
+
|
|
85
|
+
For the full list of updates, see the [changelog folder](./changelog/).
|
|
@@ -27,7 +27,6 @@ import {
|
|
|
27
27
|
import { useState, useEffect } from "react";
|
|
28
28
|
import { Link, useLocation, useNavigate } from "react-router";
|
|
29
29
|
|
|
30
|
-
import { Button } from "@/components/ui/button";
|
|
31
30
|
import { Sheet, SheetContent, SheetTitle } from "@/components/ui/sheet";
|
|
32
31
|
import {
|
|
33
32
|
Tooltip,
|
|
@@ -38,7 +38,11 @@ connection exists:
|
|
|
38
38
|
register a `kind: "oauth"` entry so the shared UI renders Connect and the
|
|
39
39
|
runtime owns status, refresh, and reauthorization.
|
|
40
40
|
- **Deploy- or app-level configuration** - use deployment/runtime
|
|
41
|
-
configuration, not a per-user secret row.
|
|
41
|
+
configuration, not a per-user secret row. For a non-secret public setting
|
|
42
|
+
already represented by `AgentNativeConfig`, put the default in
|
|
43
|
+
`agent-native.config.ts` and use its `AGENT_NATIVE_CONFIG_<PATH>` alias only
|
|
44
|
+
for a deployment override. Never put a credential or provider key in that
|
|
45
|
+
public namespace.
|
|
42
46
|
- **Account, customer, manager, or other non-secret identifier** - store it as
|
|
43
47
|
scoped connection metadata or app data, not as a masked secret field.
|
|
44
48
|
|