@agent-native/core 0.91.2 → 0.92.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 +17 -0
- package/corpus/core/docs/content/faq.mdx +17 -0
- package/corpus/core/docs/content/notifications.mdx +12 -6
- package/corpus/core/package.json +1 -1
- package/corpus/core/src/agent/production-agent.ts +140 -46
- package/corpus/core/src/agent/tool-search.ts +71 -4
- package/corpus/core/src/cli/index.ts +20 -0
- package/corpus/core/src/cli/upgrade.ts +798 -0
- package/corpus/core/src/client/AssistantChat.tsx +1 -1
- package/corpus/core/src/client/HighlightedCodeBlock.tsx +20 -3
- package/corpus/core/src/client/agent-chat-adapter.ts +31 -6
- package/corpus/core/src/client/chat/message-components.tsx +85 -8
- package/corpus/core/src/client/chat/tool-call-display.tsx +355 -144
- package/corpus/core/src/client/code-agent-chat-adapter.ts +2 -9
- package/corpus/core/src/client/session-replay.ts +3 -97
- package/corpus/core/src/client/settings/SettingsPanel.tsx +533 -389
- package/corpus/core/src/client/settings/SettingsSection.tsx +154 -17
- package/corpus/core/src/client/sse-event-processor.ts +29 -2
- package/corpus/core/src/extensions/actions.ts +113 -5
- package/corpus/core/src/notifications/channels.ts +88 -25
- package/corpus/core/src/notifications/registry.ts +17 -3
- package/corpus/core/src/notifications/types.ts +4 -1
- package/corpus/core/src/server/agent-chat-plugin.ts +7 -3
- package/corpus/core/src/server/request-context.ts +7 -0
- package/corpus/core/src/styles/agent-conversation.css +1 -1
- package/corpus/core/src/templates/default/.agents/skills/self-modifying-code/SKILL.md +20 -2
- package/corpus/core/src/templates/default/.agents/skills/upgrade-agent-native/SKILL.md +87 -0
- package/corpus/core/src/templates/default/AGENTS.md +10 -3
- package/corpus/core/src/templates/default/package.json +2 -1
- package/corpus/core/src/templates/headless/.agents/skills/upgrade-agent-native/SKILL.md +87 -0
- package/corpus/core/src/templates/headless/AGENTS.md +9 -3
- package/corpus/core/src/templates/headless/package.json +1 -0
- package/corpus/core/src/templates/workspace-core/.agents/skills/self-modifying-code/SKILL.md +20 -2
- package/corpus/core/src/templates/workspace-core/.agents/skills/upgrade-agent-native/SKILL.md +87 -0
- package/corpus/core/src/templates/workspace-root/AGENTS.md +10 -4
- package/corpus/core/src/templates/workspace-root/package.json +1 -0
- package/corpus/templates/analytics/.agents/skills/self-modifying-code/SKILL.md +20 -2
- package/corpus/templates/analytics/.agents/skills/session-replay/SKILL.md +5 -6
- package/corpus/templates/analytics/.agents/skills/upgrade-agent-native/SKILL.md +87 -0
- package/corpus/templates/analytics/AGENTS.md +7 -5
- package/corpus/templates/analytics/actions/save-monitor.ts +14 -0
- package/corpus/templates/analytics/app/components/dashboard/DataTable.tsx +41 -6
- package/corpus/templates/analytics/app/components/dashboard/SqlChart.tsx +122 -11
- package/corpus/templates/analytics/app/pages/monitoring/MonitoringPage.tsx +8 -2
- package/corpus/templates/analytics/app/pages/monitoring/uptime/MonitorFormPage.tsx +151 -32
- package/corpus/templates/analytics/app/pages/monitoring/uptime/i18n.ts +17 -2
- package/corpus/templates/analytics/app/pages/monitoring/uptime/types.ts +4 -0
- package/corpus/templates/analytics/app/pages/sessions/SessionDetailPage.tsx +54 -190
- package/corpus/templates/analytics/changelog/2026-07-08-dashboard-tables-keep-their-size-while-loading.md +6 -0
- package/corpus/templates/analytics/changelog/2026-07-08-monitoring-uptime-and-errors-tabs-now-clearly-show-which-view-is-active.md +6 -0
- package/corpus/templates/analytics/changelog/2026-07-08-session-replay-uses-stock-rrweb-sizing-again-so-recorded.md +6 -0
- package/corpus/templates/analytics/changelog/2026-07-08-sidebar-dashboard-menus-now-open-above-the-dashboard-canvas.md +6 -0
- package/corpus/templates/analytics/changelog/2026-07-08-uptime-alerting-clarifies-in-app-inbox-vs-email-and-lets-you-paste-slack-or-webhook-urls-per-monitor.md +6 -0
- package/corpus/templates/analytics/docs/uptime-monitoring.md +13 -11
- package/corpus/templates/analytics/server/db/schema-monitoring.ts +4 -0
- package/corpus/templates/analytics/server/lib/uptime-monitors.ts +60 -12
- package/corpus/templates/analytics/server/plugins/db.ts +10 -0
- package/corpus/templates/assets/.agents/skills/self-modifying-code/SKILL.md +20 -2
- package/corpus/templates/assets/.agents/skills/upgrade-agent-native/SKILL.md +87 -0
- package/corpus/templates/brain/.agents/skills/self-modifying-code/SKILL.md +20 -2
- package/corpus/templates/brain/.agents/skills/upgrade-agent-native/SKILL.md +87 -0
- package/corpus/templates/calendar/.agents/skills/self-modifying-code/SKILL.md +20 -2
- package/corpus/templates/calendar/.agents/skills/upgrade-agent-native/SKILL.md +87 -0
- package/corpus/templates/chat/.agents/skills/self-modifying-code/SKILL.md +20 -2
- package/corpus/templates/chat/.agents/skills/upgrade-agent-native/SKILL.md +87 -0
- package/corpus/templates/clips/.agents/skills/self-modifying-code/SKILL.md +20 -2
- package/corpus/templates/clips/.agents/skills/upgrade-agent-native/SKILL.md +87 -0
- package/corpus/templates/clips/changelog/2026-07-08-desktop-meeting-notes-stay-active-from-tray-and-shortcut-controls.md +6 -0
- package/corpus/templates/clips/changelog/2026-07-08-desktop-meeting-popovers-can-start-notes-and-join-the-meetin.md +6 -0
- package/corpus/templates/clips/changelog/2026-07-08-meeting-notes-keep-their-recording-state-when-the-desktop.md +6 -0
- package/corpus/templates/clips/changelog/2026-07-08-meeting-reminder-dropdowns-now-expand-fully-instead-of-being.md +6 -0
- package/corpus/templates/clips/desktop/src/app.tsx +123 -3
- package/corpus/templates/clips/desktop/src/hooks/useMeetingTranscription.ts +15 -1
- package/corpus/templates/clips/desktop/src/overlays/meeting-notification.tsx +23 -0
- package/corpus/templates/clips/desktop/src/styles.css +23 -1
- package/corpus/templates/clips/desktop/src-tauri/src/adhoc_meetings_watcher.rs +1 -3
- package/corpus/templates/clips/desktop/src-tauri/src/clips/mod.rs +40 -6
- package/corpus/templates/clips/desktop/src-tauri/src/lib.rs +4 -2
- package/corpus/templates/clips/desktop/src-tauri/src/meetings_watcher.rs +3 -5
- package/corpus/templates/clips/desktop/src-tauri/src/native_screen.rs +23 -19
- package/corpus/templates/clips/desktop/src-tauri/src/shortcuts.rs +3 -3
- package/corpus/templates/clips/desktop/src-tauri/src/silence_detector.rs +0 -1
- package/corpus/templates/clips/desktop/src-tauri/src/state.rs +5 -0
- package/corpus/templates/clips/desktop/src-tauri/src/tray.rs +18 -6
- package/corpus/templates/content/.agents/skills/self-modifying-code/SKILL.md +20 -2
- package/corpus/templates/content/.agents/skills/upgrade-agent-native/SKILL.md +87 -0
- package/corpus/templates/content/actions/_batch-utils.ts +8 -0
- package/corpus/templates/content/actions/_builder-cms-read-client.ts +7 -5
- package/corpus/templates/content/actions/_database-source-utils.ts +776 -319
- package/corpus/templates/content/actions/_database-utils.ts +6 -1
- package/corpus/templates/content/actions/_property-utils.ts +168 -0
- package/corpus/templates/content/actions/add-content-database-source-field-property.ts +19 -12
- package/corpus/templates/content/actions/bind-content-database-source-field.ts +19 -12
- package/corpus/templates/content/actions/delete-document.ts +9 -13
- package/corpus/templates/content/actions/refresh-content-database-source.ts +5 -5
- package/corpus/templates/content/app/components/editor/body-hydration.ts +35 -11
- package/corpus/templates/content/app/components/editor/database/DatabaseView.tsx +47 -5
- package/corpus/templates/content/app/hooks/use-documents.ts +8 -2
- package/corpus/templates/content/changelog/2026-07-08-builder-source-sync-now-completes-reliably-on-hosted-databases.md +6 -0
- package/corpus/templates/content/changelog/2026-07-08-fixed-builder-database-sync-so-large-sources-continue-past-t.md +6 -0
- package/corpus/templates/content/server/plugins/db.ts +19 -0
- package/corpus/templates/design/.agents/skills/self-modifying-code/SKILL.md +20 -2
- package/corpus/templates/design/.agents/skills/upgrade-agent-native/SKILL.md +87 -0
- package/corpus/templates/dispatch/.agents/skills/self-modifying-code/SKILL.md +20 -2
- package/corpus/templates/dispatch/.agents/skills/upgrade-agent-native/SKILL.md +87 -0
- package/corpus/templates/forms/.agents/skills/self-modifying-code/SKILL.md +20 -2
- package/corpus/templates/forms/.agents/skills/upgrade-agent-native/SKILL.md +87 -0
- package/corpus/templates/macros/.agents/skills/upgrade-agent-native/SKILL.md +87 -0
- package/corpus/templates/mail/.agents/skills/self-modifying-code/SKILL.md +20 -2
- package/corpus/templates/mail/.agents/skills/upgrade-agent-native/SKILL.md +87 -0
- package/corpus/templates/plan/.agents/skills/self-modifying-code/SKILL.md +20 -2
- package/corpus/templates/plan/.agents/skills/upgrade-agent-native/SKILL.md +87 -0
- package/corpus/templates/slides/.agents/skills/self-modifying-code/SKILL.md +20 -2
- package/corpus/templates/slides/.agents/skills/upgrade-agent-native/SKILL.md +87 -0
- package/corpus/templates/videos/.agents/skills/upgrade-agent-native/SKILL.md +87 -0
- package/corpus/templates/voice/.agents/skills/upgrade-agent-native/SKILL.md +87 -0
- package/dist/agent/production-agent.d.ts +5 -1
- package/dist/agent/production-agent.d.ts.map +1 -1
- package/dist/agent/production-agent.js +112 -42
- package/dist/agent/production-agent.js.map +1 -1
- package/dist/agent/tool-search.d.ts +2 -0
- package/dist/agent/tool-search.d.ts.map +1 -1
- package/dist/agent/tool-search.js +60 -4
- package/dist/agent/tool-search.js.map +1 -1
- package/dist/cli/index.js +19 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/upgrade.d.ts +100 -0
- package/dist/cli/upgrade.d.ts.map +1 -0
- package/dist/cli/upgrade.js +678 -0
- package/dist/cli/upgrade.js.map +1 -0
- package/dist/client/AssistantChat.js +1 -1
- package/dist/client/AssistantChat.js.map +1 -1
- package/dist/client/HighlightedCodeBlock.d.ts +2 -0
- package/dist/client/HighlightedCodeBlock.d.ts.map +1 -1
- package/dist/client/HighlightedCodeBlock.js +10 -1
- package/dist/client/HighlightedCodeBlock.js.map +1 -1
- package/dist/client/agent-chat-adapter.d.ts.map +1 -1
- package/dist/client/agent-chat-adapter.js +32 -4
- package/dist/client/agent-chat-adapter.js.map +1 -1
- package/dist/client/chat/message-components.d.ts.map +1 -1
- package/dist/client/chat/message-components.js +61 -8
- package/dist/client/chat/message-components.js.map +1 -1
- package/dist/client/chat/tool-call-display.d.ts +12 -0
- package/dist/client/chat/tool-call-display.d.ts.map +1 -1
- package/dist/client/chat/tool-call-display.js +136 -42
- package/dist/client/chat/tool-call-display.js.map +1 -1
- package/dist/client/code-agent-chat-adapter.js +2 -9
- package/dist/client/code-agent-chat-adapter.js.map +1 -1
- package/dist/client/session-replay.d.ts +0 -8
- package/dist/client/session-replay.d.ts.map +1 -1
- package/dist/client/session-replay.js +3 -80
- package/dist/client/session-replay.js.map +1 -1
- package/dist/client/settings/SettingsPanel.d.ts.map +1 -1
- package/dist/client/settings/SettingsPanel.js +52 -19
- package/dist/client/settings/SettingsPanel.js.map +1 -1
- package/dist/client/settings/SettingsSection.d.ts +19 -4
- package/dist/client/settings/SettingsSection.d.ts.map +1 -1
- package/dist/client/settings/SettingsSection.js +33 -4
- package/dist/client/settings/SettingsSection.js.map +1 -1
- package/dist/client/sse-event-processor.d.ts +9 -0
- package/dist/client/sse-event-processor.d.ts.map +1 -1
- package/dist/client/sse-event-processor.js +20 -2
- package/dist/client/sse-event-processor.js.map +1 -1
- package/dist/collab/routes.d.ts +1 -1
- package/dist/extensions/actions.d.ts.map +1 -1
- package/dist/extensions/actions.js +85 -5
- package/dist/extensions/actions.js.map +1 -1
- package/dist/notifications/channels.d.ts +8 -3
- package/dist/notifications/channels.d.ts.map +1 -1
- package/dist/notifications/channels.js +61 -22
- package/dist/notifications/channels.js.map +1 -1
- package/dist/notifications/registry.d.ts.map +1 -1
- package/dist/notifications/registry.js +14 -3
- package/dist/notifications/registry.js.map +1 -1
- package/dist/notifications/routes.d.ts +1 -1
- package/dist/notifications/types.d.ts +4 -1
- package/dist/notifications/types.d.ts.map +1 -1
- package/dist/notifications/types.js.map +1 -1
- package/dist/observability/routes.d.ts +1 -1
- package/dist/resources/handlers.d.ts +1 -1
- package/dist/server/agent-chat-plugin.d.ts +5 -1
- package/dist/server/agent-chat-plugin.d.ts.map +1 -1
- package/dist/server/agent-chat-plugin.js +2 -2
- package/dist/server/agent-chat-plugin.js.map +1 -1
- package/dist/server/agent-engine-api-key-route.d.ts +1 -1
- package/dist/server/request-context.d.ts +7 -0
- package/dist/server/request-context.d.ts.map +1 -1
- package/dist/server/request-context.js.map +1 -1
- package/dist/styles/agent-conversation.css +1 -1
- package/dist/templates/default/.agents/skills/self-modifying-code/SKILL.md +20 -2
- package/dist/templates/default/.agents/skills/upgrade-agent-native/SKILL.md +87 -0
- package/dist/templates/default/AGENTS.md +10 -3
- package/dist/templates/default/package.json +2 -1
- package/dist/templates/headless/.agents/skills/upgrade-agent-native/SKILL.md +87 -0
- package/dist/templates/headless/AGENTS.md +9 -3
- package/dist/templates/headless/package.json +1 -0
- package/dist/templates/workspace-core/.agents/skills/self-modifying-code/SKILL.md +20 -2
- package/dist/templates/workspace-core/.agents/skills/upgrade-agent-native/SKILL.md +87 -0
- package/dist/templates/workspace-root/AGENTS.md +10 -4
- package/dist/templates/workspace-root/package.json +1 -0
- package/docs/content/faq.mdx +17 -0
- package/docs/content/notifications.mdx +12 -6
- package/package.json +2 -2
- package/src/templates/default/.agents/skills/self-modifying-code/SKILL.md +20 -2
- package/src/templates/default/.agents/skills/upgrade-agent-native/SKILL.md +87 -0
- package/src/templates/default/AGENTS.md +10 -3
- package/src/templates/default/package.json +2 -1
- package/src/templates/headless/.agents/skills/upgrade-agent-native/SKILL.md +87 -0
- package/src/templates/headless/AGENTS.md +9 -3
- package/src/templates/headless/package.json +1 -0
- package/src/templates/workspace-core/.agents/skills/self-modifying-code/SKILL.md +20 -2
- package/src/templates/workspace-core/.agents/skills/upgrade-agent-native/SKILL.md +87 -0
- package/src/templates/workspace-root/AGENTS.md +10 -4
- package/src/templates/workspace-root/package.json +1 -0
- package/corpus/templates/analytics/changelog/2026-07-08-session-replay-clamps-ultra-wide-viewports-while-keeping-the.md +0 -6
|
@@ -41,9 +41,12 @@ export interface NotificationChannel {
|
|
|
41
41
|
/**
|
|
42
42
|
* Deliver the notification. Must be best-effort — throwing will be logged
|
|
43
43
|
* but will not block other channels from running.
|
|
44
|
+
*
|
|
45
|
+
* Return `false` to skip (e.g. no URL / no recipients configured) so the
|
|
46
|
+
* channel is not recorded in `deliveredChannels`.
|
|
44
47
|
*/
|
|
45
48
|
deliver(
|
|
46
49
|
input: NotificationInput,
|
|
47
50
|
meta: NotificationMeta,
|
|
48
|
-
): void | Promise<void>;
|
|
51
|
+
): void | boolean | Promise<void | boolean>;
|
|
49
52
|
}
|
|
@@ -2739,7 +2739,11 @@ export interface AgentChatPluginOptions {
|
|
|
2739
2739
|
* agent starts with only these tools plus `tool-search`; the live registry
|
|
2740
2740
|
* remains searchable, and matching schemas from `tool-search` results are
|
|
2741
2741
|
* loaded into the next model request. Use this for domain-focused apps that
|
|
2742
|
-
* have a few common actions and many rare framework utilities.
|
|
2742
|
+
* have a few common actions and many rare framework utilities. Common
|
|
2743
|
+
* provider/corpus/code-execution tools are promoted automatically when present
|
|
2744
|
+
* in the current app/mode registry, so broad integration guidance stays
|
|
2745
|
+
* immediately callable without overloading apps that do not expose those
|
|
2746
|
+
* tools.
|
|
2743
2747
|
*/
|
|
2744
2748
|
initialToolNames?: string[];
|
|
2745
2749
|
/**
|
|
@@ -3127,7 +3131,7 @@ Keep \`create-extension\` payloads compact enough to finish quickly. For complex
|
|
|
3127
3131
|
|
|
3128
3132
|
Generated UI content can use appAction(), appFetch(), dbQuery(), extensionFetch(), extensionData, agentNative.ui.output(value, opts?), and agentNative.chat.send(...)/sendToAgentChat(...). Use appAction() for app data writes, and dbQuery() only for read-only inspection of known app SQL tables. It can receive chat inputs through slotContext/window.onSlotContext. Use agentNative.ui.output for passive current values from knobs, sliders, selections, and controls; it writes application state at \`inline-ui:<extensionId>:output\` scoped to the inline extension id returned by \`render-inline-extension\` or \`show-extension-inline\`. When the user later says "use that value", "apply the current setting", or similar, read it with \`readAppState("inline-ui:<id>:output")\` instead of asking them to send it again. Use agentNative.chat.send for visible submit/apply actions that should put a message into chat. Transient extensionData is browser-local and not agent-readable, synced, promoted, or garbage-collected; use application_state/appFetch, appAction, ui.output, or chat.send for anything the agent or app must observe. Use semantic Tailwind classes like bg-background, text-foreground, bg-primary, border-border, and text-muted-foreground so the UI inherits the parent app theme.
|
|
3129
3133
|
|
|
3130
|
-
If the user asks to change, edit, fix, style, rename, or add behavior to an existing extension/widget/dashboard/calculator/mini-app, use the current extension id from \`<current-screen>\` or \`<current-url>\` when present. Call \`get-extension\` only if you need to inspect its content, then \`update-extension\` with that id. Use \`list-extensions\` only when no current id/name is available. Existing extension edits are SQL data updates, not source-code changes, even when the request says "change the UI" or "fix this". Do **NOT** call \`connect-builder\` for existing extension edits.
|
|
3134
|
+
If the user asks to change, edit, fix, style, rename, or add behavior to an existing extension/widget/dashboard/calculator/mini-app, use the current extension id from \`<current-screen>\` or \`<current-url>\` when present. Call \`get-extension\` only if you need to inspect its content, then \`update-extension\` with that id. After one content read, keep the body in working memory and move to focused \`update-extension\` \`edits\`/\`patches\`; do not loop on repeated \`get-extension\` + \`run-code\` string scans before writing. Use \`list-extensions\` only when no current id/name is available. Existing extension edits are SQL data updates, not source-code changes, even when the request says "change the UI" or "fix this". Do **NOT** call \`connect-builder\` for existing extension edits.
|
|
3131
3135
|
|
|
3132
3136
|
In Act mode, when in doubt — if the request asks for a new small interactive utility and does not need reuse, choose \`render-inline-extension\`; if it mentions saving/reuse or asks for an extension/widget/dashboard/calculator/mini-app, choose \`create-extension\`. If it references an existing one or the current extension page, choose \`update-extension\`. Do **not** preface the call with planning text like "let me build the dashboard…" — just call the right extension action directly.
|
|
3133
3137
|
|
|
@@ -3165,7 +3169,7 @@ Keep the first \`create-extension\` call compact and working. If the request is
|
|
|
3165
3169
|
|
|
3166
3170
|
Generated UI can read chat inputs from slotContext/window.onSlotContext, see/update app state through appFetch/appAction, use extensionData, record passive current values through agentNative.ui.output(value, opts?), and send visible results through agentNative.chat.send(...) or sendToAgentChat(...). ui.output writes \`inline-ui:<extensionId>:output\` in application state; when the user asks to use the current slider/selection/value, read \`readAppState("inline-ui:<id>:output")\`. Transient extensionData is browser-local only, so do not rely on it for values the agent or app must observe. Use semantic Tailwind theme classes.
|
|
3167
3171
|
|
|
3168
|
-
If the user asks to change, edit, fix, style, rename, or add behavior to an existing extension/widget/dashboard/calculator/mini-app, use the current extension id from \`<current-screen>\` or \`<current-url>\` when present. Call \`get-extension\` only if you need to inspect its content, then \`update-extension\` with that id. Use \`list-extensions\` only when no current id/name is available. Existing extension edits are SQL data updates, not source-code changes. Do NOT call \`connect-builder\` for them.
|
|
3172
|
+
If the user asks to change, edit, fix, style, rename, or add behavior to an existing extension/widget/dashboard/calculator/mini-app, use the current extension id from \`<current-screen>\` or \`<current-url>\` when present. Call \`get-extension\` only if you need to inspect its content, then \`update-extension\` with that id. After one content read, use focused \`update-extension\` \`edits\`/\`patches\`; do not repeatedly re-read and scan the same HTML with \`run-code\` before writing. Use \`list-extensions\` only when no current id/name is available. Existing extension edits are SQL data updates, not source-code changes. Do NOT call \`connect-builder\` for them.
|
|
3169
3173
|
|
|
3170
3174
|
For existing extensions, use \`get-extension\` or \`update-extension\` directly when \`<current-screen>\` or \`<current-url>\` provides an \`extensionId\`. Use \`list-extensions\` only to browse or resolve an unknown name. Use \`hide-extension\` when the user wants a shared extension removed only from their own view. Do not query the legacy \`tools\` table directly.
|
|
3171
3175
|
|
|
@@ -118,6 +118,13 @@ export interface RequestRunContext {
|
|
|
118
118
|
toolCalls?: Array<{ name: string; input: unknown }>;
|
|
119
119
|
/** Tool results returned so far in the current agent loop. */
|
|
120
120
|
toolResults?: Array<{ name: string; content: string; isError: boolean }>;
|
|
121
|
+
/** Per-run fingerprints for large extension bodies already sent to the LLM. */
|
|
122
|
+
extensionContentReads?: Record<string, string>;
|
|
123
|
+
/** Per-run fingerprints for repeated tool-search calls already sent to the LLM. */
|
|
124
|
+
toolSearchReads?: Record<
|
|
125
|
+
string,
|
|
126
|
+
{ totalTools: number; resultNames: string[] }
|
|
127
|
+
>;
|
|
121
128
|
}
|
|
122
129
|
|
|
123
130
|
export interface RequestContext {
|
|
@@ -28,7 +28,19 @@ Not all modifications are equal. Use this to decide what level of care is needed
|
|
|
28
28
|
| 1: Data | Files in `data/` | JSON state, generated content, markdown | Nothing — these are routine |
|
|
29
29
|
| 2: Source | App code | Components, routes, styles, scripts | Run `pnpm typecheck && pnpm lint` |
|
|
30
30
|
| 3: Config | Project config | `package.json`, `tsconfig.json`, `vite.config.*` | Ask for explicit approval first |
|
|
31
|
-
| 4: Off limits | Secrets and framework | `.env`, `@agent-native
|
|
31
|
+
| 4: Off limits | Secrets and framework | `.env`, `@agent-native/*` packages & overrides | Never modify these |
|
|
32
|
+
|
|
33
|
+
Tier 4 includes **all** of the following — not only editing package source:
|
|
34
|
+
|
|
35
|
+
- Files under `node_modules/@agent-native/*` (core, dispatch, scheduling, …)
|
|
36
|
+
- `pnpm.overrides`, `overrides`, `resolutions`, or `patchedDependencies` that
|
|
37
|
+
target any `@agent-native/*` package
|
|
38
|
+
- Local patches, vendored copies, or invented "dispatch/core behavior"
|
|
39
|
+
shims meant to paper over a version skew or failed upgrade
|
|
40
|
+
|
|
41
|
+
When an older branch needs current packages, use **`agent-native upgrade`**
|
|
42
|
+
(see the `upgrade-agent-native` skill). If upgrade or typecheck fails, fix
|
|
43
|
+
**app** code or stop and ask — do not patch the framework.
|
|
32
44
|
|
|
33
45
|
## Git Checkpoint Pattern
|
|
34
46
|
|
|
@@ -74,13 +86,19 @@ inline strings in components.
|
|
|
74
86
|
## Don't
|
|
75
87
|
|
|
76
88
|
- Don't modify `.env` files or files containing secrets
|
|
77
|
-
- Don't modify `@agent-native/core
|
|
89
|
+
- Don't modify `@agent-native/core`, `@agent-native/dispatch`, or other
|
|
90
|
+
`@agent-native/*` package internals (including under `node_modules`)
|
|
91
|
+
- Don't add `pnpm.overrides` / `patchedDependencies` / `resolutions` for
|
|
92
|
+
`@agent-native/*` to "make the app run" after a version bump
|
|
93
|
+
- Don't invent local dispatch/core behavior overrides when upgrade fails —
|
|
94
|
+
run `npx @agent-native/core@latest upgrade`, then fix app-level errors only
|
|
78
95
|
- Don't modify `.agents/skills/` or `AGENTS.md` unless explicitly requested
|
|
79
96
|
- Don't skip the typecheck/lint step after editing source code
|
|
80
97
|
- Don't make source changes without a git checkpoint to roll back to
|
|
81
98
|
|
|
82
99
|
## Related Skills
|
|
83
100
|
|
|
101
|
+
- **upgrade-agent-native** — supported path to bring an older app/workspace current
|
|
84
102
|
- **storing-data** — Tier 1 modifications (data files) are the safest and most common
|
|
85
103
|
- **actions** — The agent can create or modify actions to add new capabilities
|
|
86
104
|
- **delegate-to-agent** — Self-modification requests come through the agent chat
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: upgrade-agent-native
|
|
3
|
+
description: >-
|
|
4
|
+
Bring an older Agent Native app or workspace current. Use when updating
|
|
5
|
+
@agent-native/core, fixing a broken upgrade, or when tempted to patch or
|
|
6
|
+
override core/dispatch packages to make an old branch run.
|
|
7
|
+
scope: dev
|
|
8
|
+
metadata:
|
|
9
|
+
internal: true
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
# Upgrade Agent Native
|
|
13
|
+
|
|
14
|
+
## Rule
|
|
15
|
+
|
|
16
|
+
When an older Agent Native app/branch needs to run on current packages, use
|
|
17
|
+
`agent-native upgrade`. Never "fix" upgrade breakage with
|
|
18
|
+
`pnpm.overrides`, `patchedDependencies`, `resolutions`, local patches, or
|
|
19
|
+
edits under `node_modules/@agent-native/*` — especially not against
|
|
20
|
+
`@agent-native/core` or `@agent-native/dispatch`.
|
|
21
|
+
|
|
22
|
+
## Why
|
|
23
|
+
|
|
24
|
+
Agents often respond to a failed core bump by inventing framework patches and
|
|
25
|
+
dispatch behavior overrides. That hides the real app-level break, drifts from
|
|
26
|
+
upstream, and makes the next upgrade worse. The supported path is bump →
|
|
27
|
+
install → refresh scaffold skills → verify, then fix **app** code only.
|
|
28
|
+
|
|
29
|
+
## How
|
|
30
|
+
|
|
31
|
+
1. **Doctor first (optional but recommended)**
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
npx @agent-native/core@latest upgrade check
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
This reports framework overrides/patches and pending `@agent-native/*`
|
|
38
|
+
bumps. If overrides/patches are present, remove them before continuing.
|
|
39
|
+
|
|
40
|
+
2. **Run the upgrade**
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
npx @agent-native/core@latest upgrade
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
Or from an already-installed CLI: `pnpm exec agent-native upgrade` /
|
|
47
|
+
`agent-native upgrade`.
|
|
48
|
+
|
|
49
|
+
What it does:
|
|
50
|
+
|
|
51
|
+
- Blocks (unless `--force`) when `@agent-native/*` overrides/patches exist
|
|
52
|
+
- Rewrites non-local `@agent-native/*` dependency pins to `latest`
|
|
53
|
+
- Runs the package manager install
|
|
54
|
+
- Runs `skills update scaffold --project`
|
|
55
|
+
- Runs `typecheck` when the project has that script
|
|
56
|
+
|
|
57
|
+
3. **If upgrade or typecheck fails**
|
|
58
|
+
|
|
59
|
+
- Read the concrete error
|
|
60
|
+
- Fix **app** source, actions, config, or env — not framework packages
|
|
61
|
+
- Re-run `agent-native upgrade` or `pnpm typecheck`
|
|
62
|
+
- Stop and ask the user if you cannot fix the app-level error
|
|
63
|
+
|
|
64
|
+
4. **Dry-run / partial runs**
|
|
65
|
+
|
|
66
|
+
```bash
|
|
67
|
+
agent-native upgrade --dry-run
|
|
68
|
+
agent-native upgrade --skip-verify
|
|
69
|
+
agent-native upgrade --skip-install # package.json bumps only
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
## Don't
|
|
73
|
+
|
|
74
|
+
- Don't add `pnpm.overrides`, `overrides`, `resolutions`, or
|
|
75
|
+
`patchedDependencies` for any `@agent-native/*` package
|
|
76
|
+
- Don't edit `node_modules/@agent-native/core` or
|
|
77
|
+
`node_modules/@agent-native/dispatch`
|
|
78
|
+
- Don't invent local "dispatch behavior" shims to paper over version skew
|
|
79
|
+
- Don't keep iterating with more framework patches after a failed install
|
|
80
|
+
- Don't skip `skills update scaffold --project` after a core bump (the
|
|
81
|
+
upgrade command does this for you)
|
|
82
|
+
|
|
83
|
+
## Related Skills
|
|
84
|
+
|
|
85
|
+
- **self-modifying-code** — Tier 4: framework packages are off limits
|
|
86
|
+
- **agent-native-docs** — version-matched docs after the bump
|
|
87
|
+
- **portability** — keep app code provider-agnostic across upgrades
|
|
@@ -38,9 +38,15 @@ Read these local package docs before implementing advanced Agent Native
|
|
|
38
38
|
features. Prefer this app's own `AGENTS.md` and `.agents/skills/` for
|
|
39
39
|
app-specific rules, then use the corpus for reusable framework/template
|
|
40
40
|
patterns.
|
|
41
|
-
|
|
42
|
-
`npx @agent-native/core@latest
|
|
43
|
-
|
|
41
|
+
To bring an older app current, run `pnpm upgrade:agent-native` or
|
|
42
|
+
`npx @agent-native/core@latest upgrade` from the app root. That bumps
|
|
43
|
+
`@agent-native/*` deps, installs, refreshes scaffold skills, and typechecks.
|
|
44
|
+
Do **not** add `pnpm.overrides` / patches against `@agent-native/*` or edit
|
|
45
|
+
`node_modules/@agent-native/*` when an upgrade fails — fix app code or ask.
|
|
46
|
+
See the `upgrade-agent-native` and `self-modifying-code` skills.
|
|
47
|
+
After a manual core bump only, `pnpm skills:update` (or
|
|
48
|
+
`npx @agent-native/core@latest skills update scaffold --project`) still
|
|
49
|
+
refreshes framework-provided `.agents/skills` and repairs `CLAUDE.md` /
|
|
44
50
|
`.claude/skills` compatibility links.
|
|
45
51
|
|
|
46
52
|
### Database Code
|
|
@@ -150,6 +156,7 @@ Skills in `.agents/skills/` provide detailed guidance for each architectural rul
|
|
|
150
156
|
| `delegate-to-agent` | Before adding LLM calls or AI delegation |
|
|
151
157
|
| `actions` | Before creating or modifying actions |
|
|
152
158
|
| `self-modifying-code` | Before editing source, components, or styles |
|
|
159
|
+
| `upgrade-agent-native` | Before updating an older app/branch or when tempted to patch `@agent-native/*` |
|
|
153
160
|
| `capture-learnings` | Before recording user preferences or corrections |
|
|
154
161
|
| `frontend-design` | Before building or restyling any UI component, page, or layout |
|
|
155
162
|
| `shadcn-ui` | Before adding, updating, or debugging shadcn/ui components |
|
|
@@ -9,7 +9,8 @@
|
|
|
9
9
|
"typecheck": "agent-native typecheck",
|
|
10
10
|
"action": "agent-native action",
|
|
11
11
|
"script": "agent-native script",
|
|
12
|
-
"skills:update": "agent-native skills update scaffold --project"
|
|
12
|
+
"skills:update": "agent-native skills update scaffold --project",
|
|
13
|
+
"upgrade:agent-native": "agent-native upgrade"
|
|
13
14
|
},
|
|
14
15
|
"dependencies": {
|
|
15
16
|
"@agent-native/core": "latest",
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: upgrade-agent-native
|
|
3
|
+
description: >-
|
|
4
|
+
Bring an older Agent Native app or workspace current. Use when updating
|
|
5
|
+
@agent-native/core, fixing a broken upgrade, or when tempted to patch or
|
|
6
|
+
override core/dispatch packages to make an old branch run.
|
|
7
|
+
scope: dev
|
|
8
|
+
metadata:
|
|
9
|
+
internal: true
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
# Upgrade Agent Native
|
|
13
|
+
|
|
14
|
+
## Rule
|
|
15
|
+
|
|
16
|
+
When an older Agent Native app/branch needs to run on current packages, use
|
|
17
|
+
`agent-native upgrade`. Never "fix" upgrade breakage with
|
|
18
|
+
`pnpm.overrides`, `patchedDependencies`, `resolutions`, local patches, or
|
|
19
|
+
edits under `node_modules/@agent-native/*` — especially not against
|
|
20
|
+
`@agent-native/core` or `@agent-native/dispatch`.
|
|
21
|
+
|
|
22
|
+
## Why
|
|
23
|
+
|
|
24
|
+
Agents often respond to a failed core bump by inventing framework patches and
|
|
25
|
+
dispatch behavior overrides. That hides the real app-level break, drifts from
|
|
26
|
+
upstream, and makes the next upgrade worse. The supported path is bump →
|
|
27
|
+
install → refresh scaffold skills → verify, then fix **app** code only.
|
|
28
|
+
|
|
29
|
+
## How
|
|
30
|
+
|
|
31
|
+
1. **Doctor first (optional but recommended)**
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
npx @agent-native/core@latest upgrade check
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
This reports framework overrides/patches and pending `@agent-native/*`
|
|
38
|
+
bumps. If overrides/patches are present, remove them before continuing.
|
|
39
|
+
|
|
40
|
+
2. **Run the upgrade**
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
npx @agent-native/core@latest upgrade
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
Or from an already-installed CLI: `pnpm exec agent-native upgrade` /
|
|
47
|
+
`agent-native upgrade`.
|
|
48
|
+
|
|
49
|
+
What it does:
|
|
50
|
+
|
|
51
|
+
- Blocks (unless `--force`) when `@agent-native/*` overrides/patches exist
|
|
52
|
+
- Rewrites non-local `@agent-native/*` dependency pins to `latest`
|
|
53
|
+
- Runs the package manager install
|
|
54
|
+
- Runs `skills update scaffold --project`
|
|
55
|
+
- Runs `typecheck` when the project has that script
|
|
56
|
+
|
|
57
|
+
3. **If upgrade or typecheck fails**
|
|
58
|
+
|
|
59
|
+
- Read the concrete error
|
|
60
|
+
- Fix **app** source, actions, config, or env — not framework packages
|
|
61
|
+
- Re-run `agent-native upgrade` or `pnpm typecheck`
|
|
62
|
+
- Stop and ask the user if you cannot fix the app-level error
|
|
63
|
+
|
|
64
|
+
4. **Dry-run / partial runs**
|
|
65
|
+
|
|
66
|
+
```bash
|
|
67
|
+
agent-native upgrade --dry-run
|
|
68
|
+
agent-native upgrade --skip-verify
|
|
69
|
+
agent-native upgrade --skip-install # package.json bumps only
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
## Don't
|
|
73
|
+
|
|
74
|
+
- Don't add `pnpm.overrides`, `overrides`, `resolutions`, or
|
|
75
|
+
`patchedDependencies` for any `@agent-native/*` package
|
|
76
|
+
- Don't edit `node_modules/@agent-native/core` or
|
|
77
|
+
`node_modules/@agent-native/dispatch`
|
|
78
|
+
- Don't invent local "dispatch behavior" shims to paper over version skew
|
|
79
|
+
- Don't keep iterating with more framework patches after a failed install
|
|
80
|
+
- Don't skip `skills update scaffold --project` after a core bump (the
|
|
81
|
+
upgrade command does this for you)
|
|
82
|
+
|
|
83
|
+
## Related Skills
|
|
84
|
+
|
|
85
|
+
- **self-modifying-code** — Tier 4: framework packages are off limits
|
|
86
|
+
- **agent-native-docs** — version-matched docs after the bump
|
|
87
|
+
- **portability** — keep app code provider-agnostic across upgrades
|
|
@@ -38,9 +38,15 @@ first-party template patterns ships in `node_modules/@agent-native/core/corpus`.
|
|
|
38
38
|
Read these local package docs before implementing advanced Agent Native
|
|
39
39
|
features. Prefer this app's own `AGENTS.md` for app-specific rules, then use
|
|
40
40
|
the corpus for reusable framework/template patterns.
|
|
41
|
-
|
|
42
|
-
`npx @agent-native/core@latest
|
|
43
|
-
|
|
41
|
+
To bring an older app current, run `pnpm upgrade:agent-native` or
|
|
42
|
+
`npx @agent-native/core@latest upgrade` from the app root. That bumps
|
|
43
|
+
`@agent-native/*` deps, installs, refreshes scaffold skills, and typechecks.
|
|
44
|
+
Do **not** add `pnpm.overrides` / patches against `@agent-native/*` or edit
|
|
45
|
+
`node_modules/@agent-native/*` when an upgrade fails — fix app code or ask.
|
|
46
|
+
See the `upgrade-agent-native` and `self-modifying-code` skills.
|
|
47
|
+
After a manual core bump only, `pnpm skills:update` (or
|
|
48
|
+
`npx @agent-native/core@latest skills update scaffold --project`) still
|
|
49
|
+
refreshes framework-provided `.agents/skills` and repairs `CLAUDE.md` /
|
|
44
50
|
`.claude/skills` compatibility links.
|
|
45
51
|
|
|
46
52
|
## Actions
|
package/corpus/core/src/templates/workspace-core/.agents/skills/self-modifying-code/SKILL.md
CHANGED
|
@@ -28,7 +28,19 @@ Not all modifications are equal. Use this to decide what level of care is needed
|
|
|
28
28
|
| 1: Data | Files in `data/` | JSON state, generated content, markdown | Nothing — these are routine |
|
|
29
29
|
| 2: Source | App code | Components, routes, styles, scripts | Run `pnpm typecheck && pnpm lint` |
|
|
30
30
|
| 3: Config | Project config | `package.json`, `tsconfig.json`, `vite.config.*` | Ask for explicit approval first |
|
|
31
|
-
| 4: Off limits | Secrets and framework | `.env`, `@agent-native
|
|
31
|
+
| 4: Off limits | Secrets and framework | `.env`, `@agent-native/*` packages & overrides | Never modify these |
|
|
32
|
+
|
|
33
|
+
Tier 4 includes **all** of the following — not only editing package source:
|
|
34
|
+
|
|
35
|
+
- Files under `node_modules/@agent-native/*` (core, dispatch, scheduling, …)
|
|
36
|
+
- `pnpm.overrides`, `overrides`, `resolutions`, or `patchedDependencies` that
|
|
37
|
+
target any `@agent-native/*` package
|
|
38
|
+
- Local patches, vendored copies, or invented "dispatch/core behavior"
|
|
39
|
+
shims meant to paper over a version skew or failed upgrade
|
|
40
|
+
|
|
41
|
+
When an older branch needs current packages, use **`agent-native upgrade`**
|
|
42
|
+
(see the `upgrade-agent-native` skill). If upgrade or typecheck fails, fix
|
|
43
|
+
**app** code or stop and ask — do not patch the framework.
|
|
32
44
|
|
|
33
45
|
## Git Checkpoint Pattern
|
|
34
46
|
|
|
@@ -74,13 +86,19 @@ inline strings in components.
|
|
|
74
86
|
## Don't
|
|
75
87
|
|
|
76
88
|
- Don't modify `.env` files or files containing secrets
|
|
77
|
-
- Don't modify `@agent-native/core
|
|
89
|
+
- Don't modify `@agent-native/core`, `@agent-native/dispatch`, or other
|
|
90
|
+
`@agent-native/*` package internals (including under `node_modules`)
|
|
91
|
+
- Don't add `pnpm.overrides` / `patchedDependencies` / `resolutions` for
|
|
92
|
+
`@agent-native/*` to "make the app run" after a version bump
|
|
93
|
+
- Don't invent local dispatch/core behavior overrides when upgrade fails —
|
|
94
|
+
run `npx @agent-native/core@latest upgrade`, then fix app-level errors only
|
|
78
95
|
- Don't modify `.agents/skills/` or `AGENTS.md` unless explicitly requested
|
|
79
96
|
- Don't skip the typecheck/lint step after editing source code
|
|
80
97
|
- Don't make source changes without a git checkpoint to roll back to
|
|
81
98
|
|
|
82
99
|
## Related Skills
|
|
83
100
|
|
|
101
|
+
- **upgrade-agent-native** — supported path to bring an older app/workspace current
|
|
84
102
|
- **storing-data** — Tier 1 modifications (data files) are the safest and most common
|
|
85
103
|
- **actions** — The agent can create or modify actions to add new capabilities
|
|
86
104
|
- **delegate-to-agent** — Self-modification requests come through the agent chat
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: upgrade-agent-native
|
|
3
|
+
description: >-
|
|
4
|
+
Bring an older Agent Native app or workspace current. Use when updating
|
|
5
|
+
@agent-native/core, fixing a broken upgrade, or when tempted to patch or
|
|
6
|
+
override core/dispatch packages to make an old branch run.
|
|
7
|
+
scope: dev
|
|
8
|
+
metadata:
|
|
9
|
+
internal: true
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
# Upgrade Agent Native
|
|
13
|
+
|
|
14
|
+
## Rule
|
|
15
|
+
|
|
16
|
+
When an older Agent Native app/branch needs to run on current packages, use
|
|
17
|
+
`agent-native upgrade`. Never "fix" upgrade breakage with
|
|
18
|
+
`pnpm.overrides`, `patchedDependencies`, `resolutions`, local patches, or
|
|
19
|
+
edits under `node_modules/@agent-native/*` — especially not against
|
|
20
|
+
`@agent-native/core` or `@agent-native/dispatch`.
|
|
21
|
+
|
|
22
|
+
## Why
|
|
23
|
+
|
|
24
|
+
Agents often respond to a failed core bump by inventing framework patches and
|
|
25
|
+
dispatch behavior overrides. That hides the real app-level break, drifts from
|
|
26
|
+
upstream, and makes the next upgrade worse. The supported path is bump →
|
|
27
|
+
install → refresh scaffold skills → verify, then fix **app** code only.
|
|
28
|
+
|
|
29
|
+
## How
|
|
30
|
+
|
|
31
|
+
1. **Doctor first (optional but recommended)**
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
npx @agent-native/core@latest upgrade check
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
This reports framework overrides/patches and pending `@agent-native/*`
|
|
38
|
+
bumps. If overrides/patches are present, remove them before continuing.
|
|
39
|
+
|
|
40
|
+
2. **Run the upgrade**
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
npx @agent-native/core@latest upgrade
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
Or from an already-installed CLI: `pnpm exec agent-native upgrade` /
|
|
47
|
+
`agent-native upgrade`.
|
|
48
|
+
|
|
49
|
+
What it does:
|
|
50
|
+
|
|
51
|
+
- Blocks (unless `--force`) when `@agent-native/*` overrides/patches exist
|
|
52
|
+
- Rewrites non-local `@agent-native/*` dependency pins to `latest`
|
|
53
|
+
- Runs the package manager install
|
|
54
|
+
- Runs `skills update scaffold --project`
|
|
55
|
+
- Runs `typecheck` when the project has that script
|
|
56
|
+
|
|
57
|
+
3. **If upgrade or typecheck fails**
|
|
58
|
+
|
|
59
|
+
- Read the concrete error
|
|
60
|
+
- Fix **app** source, actions, config, or env — not framework packages
|
|
61
|
+
- Re-run `agent-native upgrade` or `pnpm typecheck`
|
|
62
|
+
- Stop and ask the user if you cannot fix the app-level error
|
|
63
|
+
|
|
64
|
+
4. **Dry-run / partial runs**
|
|
65
|
+
|
|
66
|
+
```bash
|
|
67
|
+
agent-native upgrade --dry-run
|
|
68
|
+
agent-native upgrade --skip-verify
|
|
69
|
+
agent-native upgrade --skip-install # package.json bumps only
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
## Don't
|
|
73
|
+
|
|
74
|
+
- Don't add `pnpm.overrides`, `overrides`, `resolutions`, or
|
|
75
|
+
`patchedDependencies` for any `@agent-native/*` package
|
|
76
|
+
- Don't edit `node_modules/@agent-native/core` or
|
|
77
|
+
`node_modules/@agent-native/dispatch`
|
|
78
|
+
- Don't invent local "dispatch behavior" shims to paper over version skew
|
|
79
|
+
- Don't keep iterating with more framework patches after a failed install
|
|
80
|
+
- Don't skip `skills update scaffold --project` after a core bump (the
|
|
81
|
+
upgrade command does this for you)
|
|
82
|
+
|
|
83
|
+
## Related Skills
|
|
84
|
+
|
|
85
|
+
- **self-modifying-code** — Tier 4: framework packages are off limits
|
|
86
|
+
- **agent-native-docs** — version-matched docs after the bump
|
|
87
|
+
- **portability** — keep app code provider-agnostic across upgrades
|
|
@@ -27,10 +27,16 @@ first-party template patterns ships in `node_modules/@agent-native/core/corpus`.
|
|
|
27
27
|
Use package docs for framework APIs, the package corpus for reusable
|
|
28
28
|
framework/template patterns, and `packages/shared/AGENTS.md` plus
|
|
29
29
|
`packages/shared/.agents/skills/` for workspace-specific conventions.
|
|
30
|
-
|
|
31
|
-
`npx @agent-native/core@latest
|
|
32
|
-
|
|
33
|
-
`
|
|
30
|
+
To bring an older workspace current, run `pnpm upgrade:agent-native` or
|
|
31
|
+
`npx @agent-native/core@latest upgrade` from the workspace root. That bumps
|
|
32
|
+
`@agent-native/*` deps, installs, refreshes scaffold skills, and typechecks.
|
|
33
|
+
Do **not** add `pnpm.overrides` / patches against `@agent-native/*` or edit
|
|
34
|
+
`node_modules/@agent-native/*` when an upgrade fails — fix app code or ask.
|
|
35
|
+
See the `upgrade-agent-native` and `self-modifying-code` skills.
|
|
36
|
+
After a manual core bump only, `pnpm skills:update` (or
|
|
37
|
+
`npx @agent-native/core@latest skills update scaffold --project`) still
|
|
38
|
+
refreshes framework-provided shared skills and repairs `CLAUDE.md` /
|
|
39
|
+
`.claude/skills` compatibility links.
|
|
34
40
|
|
|
35
41
|
## Core Agent Rule
|
|
36
42
|
|
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
"typecheck": "pnpm -r typecheck",
|
|
9
9
|
"repair:workspace-org": "tsx scripts/repair-workspace-org.ts",
|
|
10
10
|
"skills:update": "agent-native skills update scaffold --project",
|
|
11
|
+
"upgrade:agent-native": "agent-native upgrade",
|
|
11
12
|
"fmt:check": "oxfmt --check .",
|
|
12
13
|
"lint": "pnpm fmt:check"
|
|
13
14
|
},
|
|
@@ -28,7 +28,19 @@ Not all modifications are equal. Use this to decide what level of care is needed
|
|
|
28
28
|
| 1: Data | Files in `data/` | JSON state, generated content, markdown | Nothing — these are routine |
|
|
29
29
|
| 2: Source | App code | Components, routes, styles, scripts | Run `pnpm typecheck && pnpm lint` |
|
|
30
30
|
| 3: Config | Project config | `package.json`, `tsconfig.json`, `vite.config.*` | Ask for explicit approval first |
|
|
31
|
-
| 4: Off limits | Secrets and framework | `.env`, `@agent-native
|
|
31
|
+
| 4: Off limits | Secrets and framework | `.env`, `@agent-native/*` packages & overrides | Never modify these |
|
|
32
|
+
|
|
33
|
+
Tier 4 includes **all** of the following — not only editing package source:
|
|
34
|
+
|
|
35
|
+
- Files under `node_modules/@agent-native/*` (core, dispatch, scheduling, …)
|
|
36
|
+
- `pnpm.overrides`, `overrides`, `resolutions`, or `patchedDependencies` that
|
|
37
|
+
target any `@agent-native/*` package
|
|
38
|
+
- Local patches, vendored copies, or invented "dispatch/core behavior"
|
|
39
|
+
shims meant to paper over a version skew or failed upgrade
|
|
40
|
+
|
|
41
|
+
When an older branch needs current packages, use **`agent-native upgrade`**
|
|
42
|
+
(see the `upgrade-agent-native` skill). If upgrade or typecheck fails, fix
|
|
43
|
+
**app** code or stop and ask — do not patch the framework.
|
|
32
44
|
|
|
33
45
|
## Git Checkpoint Pattern
|
|
34
46
|
|
|
@@ -74,13 +86,19 @@ inline strings in components.
|
|
|
74
86
|
## Don't
|
|
75
87
|
|
|
76
88
|
- Don't modify `.env` files or files containing secrets
|
|
77
|
-
- Don't modify `@agent-native/core
|
|
89
|
+
- Don't modify `@agent-native/core`, `@agent-native/dispatch`, or other
|
|
90
|
+
`@agent-native/*` package internals (including under `node_modules`)
|
|
91
|
+
- Don't add `pnpm.overrides` / `patchedDependencies` / `resolutions` for
|
|
92
|
+
`@agent-native/*` to "make the app run" after a version bump
|
|
93
|
+
- Don't invent local dispatch/core behavior overrides when upgrade fails —
|
|
94
|
+
run `npx @agent-native/core@latest upgrade`, then fix app-level errors only
|
|
78
95
|
- Don't modify `.agents/skills/` or `AGENTS.md` unless explicitly requested
|
|
79
96
|
- Don't skip the typecheck/lint step after editing source code
|
|
80
97
|
- Don't make source changes without a git checkpoint to roll back to
|
|
81
98
|
|
|
82
99
|
## Related Skills
|
|
83
100
|
|
|
101
|
+
- **upgrade-agent-native** — supported path to bring an older app/workspace current
|
|
84
102
|
- **storing-data** — Tier 1 modifications (data files) are the safest and most common
|
|
85
103
|
- **actions** — The agent can create or modify actions to add new capabilities
|
|
86
104
|
- **delegate-to-agent** — Self-modification requests come through the agent chat
|
|
@@ -98,12 +98,11 @@ agent answers about browser recordings in the Analytics template.
|
|
|
98
98
|
- Wait for all replay chunks (`isComplete`) before constructing the rrweb
|
|
99
99
|
`Replayer`. Progressive chunk publishes should only update the loading bar;
|
|
100
100
|
rebuilding the player mid-load desyncs the scrubber and playhead.
|
|
101
|
-
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
Meta widths.
|
|
101
|
+
- Pass events to `Replayer` untouched (aside from stylesheet/script sanitization
|
|
102
|
+
that prevents blank frames from live CSS loads). Let rrweb own iframe sizing
|
|
103
|
+
via Meta / ViewportResize; use those dimensions only for CSS fit-to-stage of
|
|
104
|
+
the outer wrapper. Never rewrite Meta widths or force iframe dimensions —
|
|
105
|
+
that desyncs the FullSnapshot DOM and blanks the stage.
|
|
107
106
|
- The event timeline soft-highlights the active marker, auto-scrolls it into
|
|
108
107
|
view (pausing briefly after manual scroll), and supports search. It appears
|
|
109
108
|
beside the player from ~880px content width upward.
|