@antelopejs/dms-ai 0.1.5 → 0.2.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/README.md +54 -11
- package/dist/channels/bridge.d.ts +6 -1
- package/dist/channels/bridge.js +29 -1
- package/dist/channels/bridge.js.map +1 -1
- package/dist/channels/channel-service.d.ts +2 -1
- package/dist/channels/channel-service.js +3 -2
- package/dist/channels/channel-service.js.map +1 -1
- package/dist/channels/sse-stream.d.ts +3 -2
- package/dist/config.d.ts +0 -2
- package/dist/config.js +0 -7
- package/dist/config.js.map +1 -1
- package/dist/constants/http.d.ts +9 -0
- package/dist/constants/http.js +14 -0
- package/dist/constants/http.js.map +1 -0
- package/dist/constants/i18n.d.ts +11 -0
- package/dist/constants/i18n.js +15 -0
- package/dist/constants/i18n.js.map +1 -0
- package/dist/constants/pages.d.ts +50 -0
- package/dist/constants/pages.js +58 -0
- package/dist/constants/pages.js.map +1 -0
- package/dist/constants/sidecar.d.ts +3 -1
- package/dist/constants/sidecar.js +4 -2
- package/dist/constants/sidecar.js.map +1 -1
- package/dist/index.js +0 -8
- package/dist/index.js.map +1 -1
- package/dist/lifecycle/sidecar-owner.d.ts +14 -0
- package/dist/lifecycle/sidecar-owner.js +102 -0
- package/dist/lifecycle/sidecar-owner.js.map +1 -0
- package/dist/lifecycle/spawn-sidecar.d.ts +1 -0
- package/dist/lifecycle/spawn-sidecar.js +59 -145
- package/dist/lifecycle/spawn-sidecar.js.map +1 -1
- package/dist/lifecycle/terminate-process.d.ts +1 -0
- package/dist/lifecycle/terminate-process.js +34 -0
- package/dist/lifecycle/terminate-process.js.map +1 -0
- package/dist/logging/log-buffer.d.ts +0 -6
- package/dist/logging/log-buffer.js +0 -1
- package/dist/logging/log-buffer.js.map +1 -1
- package/dist/pages/activity/columns.d.ts +2 -0
- package/dist/pages/activity/columns.js +103 -0
- package/dist/pages/activity/columns.js.map +1 -0
- package/dist/pages/activity/page.d.ts +1 -2
- package/dist/pages/activity/page.js +79 -44
- package/dist/pages/activity/page.js.map +1 -1
- package/dist/pages/all.d.ts +1 -0
- package/dist/pages/all.js +1 -0
- package/dist/pages/all.js.map +1 -1
- package/dist/pages/changes/page.d.ts +9 -0
- package/dist/pages/changes/page.js +22 -0
- package/dist/pages/changes/page.js.map +1 -0
- package/dist/pages/meta.d.ts +9 -0
- package/dist/pages/meta.js +31 -0
- package/dist/pages/meta.js.map +1 -0
- package/dist/pages/module.js +9 -5
- package/dist/pages/module.js.map +1 -1
- package/dist/pages/overview/insights.d.ts +3 -0
- package/dist/pages/overview/insights.js +77 -0
- package/dist/pages/overview/insights.js.map +1 -0
- package/dist/pages/overview/kpis.d.ts +2 -0
- package/dist/pages/overview/kpis.js +39 -0
- package/dist/pages/overview/kpis.js.map +1 -0
- package/dist/pages/overview/page.d.ts +6 -3
- package/dist/pages/overview/page.js +19 -62
- package/dist/pages/overview/page.js.map +1 -1
- package/dist/pages/overview/recent-changes.d.ts +2 -0
- package/dist/pages/overview/recent-changes.js +144 -0
- package/dist/pages/overview/recent-changes.js.map +1 -0
- package/dist/pages/overview/status.d.ts +3 -0
- package/dist/pages/overview/status.js +36 -0
- package/dist/pages/overview/status.js.map +1 -0
- package/dist/pages/settings/availability.d.ts +2 -0
- package/dist/pages/settings/availability.js +46 -0
- package/dist/pages/settings/availability.js.map +1 -0
- package/dist/pages/settings/options.d.ts +10 -0
- package/dist/pages/settings/options.js +58 -0
- package/dist/pages/settings/options.js.map +1 -0
- package/dist/pages/settings/page.d.ts +2 -1
- package/dist/pages/settings/page.js +39 -13
- package/dist/pages/settings/page.js.map +1 -1
- package/dist/pages/settings/sections.d.ts +2 -0
- package/dist/pages/settings/sections.js +164 -0
- package/dist/pages/settings/sections.js.map +1 -0
- package/dist/pages/skills/page.d.ts +2 -1
- package/dist/pages/skills/page.js +122 -12
- package/dist/pages/skills/page.js.map +1 -1
- package/dist/routes/activity-csv.d.ts +2 -0
- package/dist/routes/activity-csv.js +42 -0
- package/dist/routes/activity-csv.js.map +1 -0
- package/dist/routes/activity.d.ts +8 -0
- package/dist/routes/activity.js +105 -0
- package/dist/routes/activity.js.map +1 -0
- package/dist/routes/actor.d.ts +2 -0
- package/dist/routes/actor.js +8 -0
- package/dist/routes/actor.js.map +1 -0
- package/dist/routes/banner.d.ts +3 -0
- package/dist/routes/banner.js +9 -0
- package/dist/routes/banner.js.map +1 -0
- package/dist/routes/builder.js +1 -5
- package/dist/routes/builder.js.map +1 -1
- package/dist/routes/changes.d.ts +17 -0
- package/dist/routes/changes.js +152 -0
- package/dist/routes/changes.js.map +1 -0
- package/dist/routes/channels.js +2 -1
- package/dist/routes/channels.js.map +1 -1
- package/dist/routes/index.d.ts +3 -0
- package/dist/routes/index.js +3 -0
- package/dist/routes/index.js.map +1 -1
- package/dist/routes/list-query.d.ts +9 -0
- package/dist/routes/list-query.js +34 -0
- package/dist/routes/list-query.js.map +1 -0
- package/dist/routes/metric-shapes.d.ts +8 -0
- package/dist/routes/metric-shapes.js +107 -0
- package/dist/routes/metric-shapes.js.map +1 -0
- package/dist/routes/metrics.d.ts +5 -48
- package/dist/routes/metrics.js +52 -42
- package/dist/routes/metrics.js.map +1 -1
- package/dist/routes/settings.d.ts +3 -16
- package/dist/routes/settings.js +40 -14
- package/dist/routes/settings.js.map +1 -1
- package/dist/routes/sidecar-results.d.ts +6 -0
- package/dist/routes/sidecar-results.js +44 -0
- package/dist/routes/sidecar-results.js.map +1 -0
- package/dist/routes/skills.d.ts +4 -14
- package/dist/routes/skills.js +91 -6
- package/dist/routes/skills.js.map +1 -1
- package/dist/routes/status-shapes.d.ts +5 -0
- package/dist/routes/status-shapes.js +176 -0
- package/dist/routes/status-shapes.js.map +1 -0
- package/dist/routes/status.d.ts +9 -0
- package/dist/routes/status.js +92 -0
- package/dist/routes/status.js.map +1 -0
- package/dist/routes/undo-confirm.d.ts +3 -0
- package/dist/routes/undo-confirm.js +51 -0
- package/dist/routes/undo-confirm.js.map +1 -0
- package/dist/sidecar/http-client.d.ts +11 -0
- package/dist/sidecar/http-client.js +59 -0
- package/dist/sidecar/http-client.js.map +1 -0
- package/dist/sidecar/index.d.ts +2 -0
- package/dist/sidecar/index.js +19 -0
- package/dist/sidecar/index.js.map +1 -0
- package/dist/sidecar/query.d.ts +3 -0
- package/dist/sidecar/query.js +25 -0
- package/dist/sidecar/query.js.map +1 -0
- package/dist/types/activity.d.ts +31 -0
- package/dist/types/activity.js +3 -0
- package/dist/types/activity.js.map +1 -0
- package/dist/types/changes.d.ts +45 -0
- package/dist/types/changes.js +3 -0
- package/dist/types/changes.js.map +1 -0
- package/dist/types/index.d.ts +5 -0
- package/dist/types/index.js +5 -0
- package/dist/types/index.js.map +1 -1
- package/dist/types/metrics.d.ts +76 -0
- package/dist/types/metrics.js +3 -0
- package/dist/types/metrics.js.map +1 -0
- package/dist/types/skills.d.ts +51 -0
- package/dist/types/skills.js +3 -0
- package/dist/types/skills.js.map +1 -0
- package/dist/types/status.d.ts +16 -0
- package/dist/types/status.js +3 -0
- package/dist/types/status.js.map +1 -0
- package/dist/vocabulary/enumerations.d.ts +9 -0
- package/dist/vocabulary/enumerations.js +52 -0
- package/dist/vocabulary/enumerations.js.map +1 -0
- package/dist/vocabulary/index.d.ts +5 -0
- package/dist/vocabulary/index.js +22 -0
- package/dist/vocabulary/index.js.map +1 -0
- package/dist/vocabulary/keys.d.ts +1 -0
- package/dist/vocabulary/keys.js +8 -0
- package/dist/vocabulary/keys.js.map +1 -0
- package/dist/vocabulary/options.d.ts +7 -0
- package/dist/vocabulary/options.js +33 -0
- package/dist/vocabulary/options.js.map +1 -0
- package/dist/vocabulary/tools.d.ts +7 -0
- package/dist/vocabulary/tools.js +99 -0
- package/dist/vocabulary/tools.js.map +1 -0
- package/dist/vocabulary/types.d.ts +20 -0
- package/dist/vocabulary/types.js +3 -0
- package/dist/vocabulary/types.js.map +1 -0
- package/frontend-vue/app/chat/components/AnswerRecord.vue +95 -0
- package/frontend-vue/app/chat/components/ApprovalDock.vue +371 -0
- package/frontend-vue/app/chat/components/ChangeSetCard.vue +297 -0
- package/frontend-vue/app/chat/components/ChatEmpty.vue +142 -0
- package/frontend-vue/app/chat/components/ChatView.vue +664 -406
- package/frontend-vue/app/chat/components/Composer.vue +589 -0
- package/frontend-vue/app/chat/components/ConnectionBanner.vue +41 -65
- package/frontend-vue/app/chat/components/ConversationDrawer.vue +387 -177
- package/frontend-vue/app/chat/components/DiffView.vue +131 -0
- package/frontend-vue/app/chat/components/FullAutoBanner.vue +76 -0
- package/frontend-vue/app/chat/components/FullAutoDialog.vue +103 -0
- package/frontend-vue/app/chat/components/MarkdownContent.vue +15 -15
- package/frontend-vue/app/chat/components/MessageList.vue +389 -295
- package/frontend-vue/app/chat/components/NoticeCard.vue +193 -0
- package/frontend-vue/app/chat/components/PanelHeader.vue +242 -0
- package/frontend-vue/app/chat/components/PermissionCard.vue +470 -0
- package/frontend-vue/app/chat/components/PlanCard.vue +115 -0
- package/frontend-vue/app/chat/components/QuestionDock.vue +407 -0
- package/frontend-vue/app/chat/components/QueueDock.vue +310 -0
- package/frontend-vue/app/chat/components/RulesList.vue +97 -0
- package/frontend-vue/app/chat/components/StepsDock.vue +181 -0
- package/frontend-vue/app/chat/components/ToolCluster.vue +186 -178
- package/frontend-vue/app/chat/components/ToolRow.vue +251 -0
- package/frontend-vue/app/chat/components/TurnErrorCard.vue +135 -0
- package/frontend-vue/app/chat/composables/conversation-events.ts +404 -0
- package/frontend-vue/app/chat/composables/useChangeSetActions.ts +135 -0
- package/frontend-vue/app/chat/composables/useChatChannel.ts +11 -3
- package/frontend-vue/app/chat/composables/useChatI18n.ts +35 -0
- package/frontend-vue/app/chat/composables/useComposerAttachments.ts +111 -0
- package/frontend-vue/app/chat/composables/useConversation.ts +149 -651
- package/frontend-vue/app/chat/composables/useConversationId.ts +2 -10
- package/frontend-vue/app/chat/composables/useConversationList.ts +77 -21
- package/frontend-vue/app/chat/composables/useConversationMode.ts +73 -0
- package/frontend-vue/app/chat/composables/usePaletteTurn.ts +124 -0
- package/frontend-vue/app/chat/composables/usePermissionQueue.ts +211 -34
- package/frontend-vue/app/chat/composables/useQuestionQueue.ts +103 -21
- package/frontend-vue/app/chat/composables/useQueueActions.ts +55 -0
- package/frontend-vue/app/chat/composables/useSettings.ts +17 -34
- package/frontend-vue/app/chat/constants/attachments.ts +2 -1
- package/frontend-vue/app/chat/constants/conversation.ts +18 -32
- package/frontend-vue/app/chat/constants/protocol.ts +25 -2
- package/frontend-vue/app/chat/constants/run-status.ts +8 -14
- package/frontend-vue/app/chat/constants/settings.ts +5 -47
- package/frontend-vue/app/chat/types/conversation.ts +72 -2
- package/frontend-vue/app/chat/types/permission.ts +31 -0
- package/frontend-vue/app/chat/types/protocol.ts +226 -0
- package/frontend-vue/app/chat/types/question.ts +10 -1
- package/frontend-vue/app/chat/types/settings.ts +9 -5
- package/frontend-vue/app/chat/utils/approval-keyboard.ts +49 -0
- package/frontend-vue/app/chat/utils/arrays.ts +10 -0
- package/frontend-vue/app/chat/utils/conversation-groups.ts +96 -0
- package/frontend-vue/app/chat/utils/conversation-messages.ts +251 -0
- package/frontend-vue/app/chat/utils/diff.ts +78 -0
- package/frontend-vue/app/chat/utils/format.ts +43 -0
- package/frontend-vue/app/chat/utils/markdown.ts +1 -1
- package/frontend-vue/app/chat/utils/permission-view.ts +159 -0
- package/frontend-vue/app/chat/utils/platform.ts +34 -0
- package/frontend-vue/app/chat/utils/queue.ts +18 -0
- package/frontend-vue/app/chat/utils/render-items.ts +164 -0
- package/frontend-vue/app/chat/utils/run-status.ts +19 -23
- package/frontend-vue/app/chat/utils/suggestions.ts +101 -0
- package/frontend-vue/app/chat/utils/todos.ts +2 -2
- package/frontend-vue/app/chat/utils/tool-lexicon.ts +540 -0
- package/frontend-vue/app/chat/utils/tool-state.ts +60 -0
- package/frontend-vue/app/components/ActivityDetail.vue +235 -0
- package/frontend-vue/app/components/ChangesView.vue +249 -0
- package/frontend-vue/app/components/ChatPanel.vue +141 -196
- package/frontend-vue/app/components/PaletteAnswer.vue +185 -0
- package/frontend-vue/app/components/SkillCard.vue +77 -0
- package/frontend-vue/app/components/SkillDetail.vue +188 -0
- package/frontend-vue/app/plugins/ai.client.ts +349 -57
- package/frontend-vue/app/plugins/side-panel.ts +13 -0
- package/frontend-vue/app/runtime/assistant-activity.ts +105 -0
- package/frontend-vue/app/runtime/assistant-commands.ts +210 -0
- package/frontend-vue/app/runtime/assistant-notifications.ts +181 -0
- package/frontend-vue/app/runtime/assistant-session.ts +49 -6
- package/frontend-vue/app/runtime/channel-client.ts +3 -6
- package/frontend-vue/app/runtime/constants.ts +29 -35
- package/frontend-vue/app/runtime/host-commands.ts +4 -4
- package/frontend-vue/app/runtime/listeners.ts +1 -1
- package/frontend-vue/app/runtime/navigation-complete.ts +1 -1
- package/frontend-vue/app/runtime/panel-intents.ts +55 -0
- package/frontend-vue/app/runtime/shortcuts.ts +3 -1
- package/frontend-vue/app/runtime/sidecar-status.ts +9 -1
- package/frontend-vue/app/runtime/stream-holds.ts +24 -0
- package/frontend-vue/app/views/ChangeSetPanel.vue +222 -0
- package/frontend-vue/app/views/DecisionLabel.vue +30 -0
- package/frontend-vue/app/views/DiffView.vue +215 -0
- package/frontend-vue/app/views/ResultPill.vue +32 -0
- package/frontend-vue/app/views/RowStepper.vue +48 -0
- package/frontend-vue/app/views/UnavailableState.vue +66 -0
- package/frontend-vue/app/views/composables/useAiRequest.ts +89 -0
- package/frontend-vue/app/views/composables/useAssistant.ts +33 -0
- package/frontend-vue/app/views/composables/useChangeSetActions.ts +102 -0
- package/frontend-vue/app/views/composables/useViewFormat.ts +55 -0
- package/frontend-vue/app/views/constants.ts +43 -0
- package/frontend-vue/app/views/types.ts +189 -0
- package/frontend-vue/app/views/utils/activity.ts +77 -0
- package/frontend-vue/app/views/utils/change-sets.ts +44 -0
- package/frontend-vue/app/views/utils/diff.ts +98 -0
- package/frontend-vue/app/views/utils/moment.ts +92 -0
- package/frontend-vue/app/views/utils/skills.ts +27 -0
- package/frontend-vue/app/views/utils/tools.ts +73 -0
- package/frontend-vue/dms.frontend.ts +17 -5
- package/frontend-vue/i18n/locales/dms-ai-pages-en-GB.json +607 -0
- package/frontend-vue/i18n/locales/dms-ai-pages-fr-FR.json +607 -0
- package/frontend-vue/i18n/locales/dms-ai-panel-en-GB.json +425 -0
- package/frontend-vue/i18n/locales/dms-ai-panel-fr-FR.json +425 -0
- package/frontend-vue/i18n/locales/dms-ai-views-en-GB.json +142 -0
- package/frontend-vue/i18n/locales/dms-ai-views-fr-FR.json +142 -0
- package/frontend-vue/package.json +1 -1
- package/frontend-vue/tests/chat/conversation-events.test.ts +590 -0
- package/frontend-vue/tests/chat/diff-and-keys.test.ts +178 -0
- package/frontend-vue/tests/chat/tool-lexicon.test.ts +188 -0
- package/frontend-vue/tests/chat/useConversation.test.ts +36 -33
- package/frontend-vue/tests/chat-panel.test.ts +78 -131
- package/frontend-vue/tests/i18n-panel.test.ts +118 -0
- package/frontend-vue/tests/palette-assistant.test.ts +220 -0
- package/frontend-vue/tests/panel-states.test.ts +806 -0
- package/frontend-vue/tests/sidecar-guest.test.ts +35 -3
- package/frontend-vue/tests/support/i18n.ts +49 -0
- package/frontend-vue/tests/support/panel-harness.ts +198 -0
- package/frontend-vue/tests/support/stubs.ts +201 -0
- package/frontend-vue/tests/views/diff-view.test.ts +149 -0
- package/frontend-vue/tests/views/view-format.test.ts +59 -0
- package/package.json +5 -3
- package/sidecar/dist/agent/attachment-files.d.ts +0 -1
- package/sidecar/dist/agent/attachment-files.js +1 -1
- package/sidecar/dist/agent/attachment-files.js.map +1 -1
- package/sidecar/dist/agent/call-ledger.d.ts +6 -0
- package/sidecar/dist/agent/call-ledger.js +41 -0
- package/sidecar/dist/agent/call-ledger.js.map +1 -0
- package/sidecar/dist/agent/command-analysis.d.ts +9 -0
- package/sidecar/dist/agent/command-analysis.js +104 -0
- package/sidecar/dist/agent/command-analysis.js.map +1 -0
- package/sidecar/dist/agent/conversation-modes.d.ts +32 -0
- package/sidecar/dist/agent/conversation-modes.js +122 -0
- package/sidecar/dist/agent/conversation-modes.js.map +1 -0
- package/sidecar/dist/agent/edit-targets.d.ts +5 -0
- package/sidecar/dist/agent/edit-targets.js +41 -0
- package/sidecar/dist/agent/edit-targets.js.map +1 -0
- package/sidecar/dist/agent/effective-mode.d.ts +9 -2
- package/sidecar/dist/agent/effective-mode.js +14 -16
- package/sidecar/dist/agent/effective-mode.js.map +1 -1
- package/sidecar/dist/agent/host-context.js +2 -2
- package/sidecar/dist/agent/host-context.js.map +1 -1
- package/sidecar/dist/agent/line-diff.d.ts +8 -0
- package/sidecar/dist/agent/line-diff.js +204 -0
- package/sidecar/dist/agent/line-diff.js.map +1 -0
- package/sidecar/dist/agent/permission-bus.d.ts +55 -10
- package/sidecar/dist/agent/permission-bus.js +130 -100
- package/sidecar/dist/agent/permission-bus.js.map +1 -1
- package/sidecar/dist/agent/permission-preview.d.ts +20 -0
- package/sidecar/dist/agent/permission-preview.js +203 -0
- package/sidecar/dist/agent/permission-preview.js.map +1 -0
- package/sidecar/dist/agent/permission-rules.d.ts +17 -0
- package/sidecar/dist/agent/permission-rules.js +95 -0
- package/sidecar/dist/agent/permission-rules.js.map +1 -0
- package/sidecar/dist/agent/provider.d.ts +12 -4
- package/sidecar/dist/agent/question-bus.d.ts +14 -2
- package/sidecar/dist/agent/question-bus.js +30 -11
- package/sidecar/dist/agent/question-bus.js.map +1 -1
- package/sidecar/dist/agent/runner-events.d.ts +3 -1
- package/sidecar/dist/agent/runner.d.ts +6 -4
- package/sidecar/dist/agent/runner.js +24 -7
- package/sidecar/dist/agent/runner.js.map +1 -1
- package/sidecar/dist/agent/switching-runner.js +1 -0
- package/sidecar/dist/agent/switching-runner.js.map +1 -1
- package/sidecar/dist/agent/tool-kinds.d.ts +12 -0
- package/sidecar/dist/agent/tool-kinds.js +50 -0
- package/sidecar/dist/agent/tool-kinds.js.map +1 -0
- package/sidecar/dist/agent/typecheck.d.ts +2 -6
- package/sidecar/dist/audit/activity-query.d.ts +37 -0
- package/sidecar/dist/audit/activity-query.js +111 -0
- package/sidecar/dist/audit/activity-query.js.map +1 -0
- package/sidecar/dist/audit/activity-target.d.ts +2 -0
- package/sidecar/dist/audit/activity-target.js +46 -0
- package/sidecar/dist/audit/activity-target.js.map +1 -0
- package/sidecar/dist/audit/activity.d.ts +45 -0
- package/sidecar/dist/audit/activity.js +255 -0
- package/sidecar/dist/audit/activity.js.map +1 -0
- package/sidecar/dist/audit/call-audit.d.ts +11 -0
- package/sidecar/dist/audit/call-audit.js +23 -0
- package/sidecar/dist/audit/call-audit.js.map +1 -0
- package/sidecar/dist/checkpoints/checkpoints.d.ts +69 -0
- package/sidecar/dist/checkpoints/checkpoints.js +244 -0
- package/sidecar/dist/checkpoints/checkpoints.js.map +1 -0
- package/sidecar/dist/checkpoints/shadow-git.d.ts +23 -0
- package/sidecar/dist/checkpoints/shadow-git.js +173 -0
- package/sidecar/dist/checkpoints/shadow-git.js.map +1 -0
- package/sidecar/dist/constants/agent.d.ts +2 -0
- package/sidecar/dist/constants/agent.js +4 -0
- package/sidecar/dist/constants/agent.js.map +1 -1
- package/sidecar/dist/constants/audit.d.ts +22 -0
- package/sidecar/dist/constants/audit.js +49 -0
- package/sidecar/dist/constants/audit.js.map +1 -0
- package/sidecar/dist/constants/builder.d.ts +3 -0
- package/sidecar/dist/constants/builder.js +2 -0
- package/sidecar/dist/constants/builder.js.map +1 -1
- package/sidecar/dist/constants/checkpoints.d.ts +15 -0
- package/sidecar/dist/constants/checkpoints.js +26 -0
- package/sidecar/dist/constants/checkpoints.js.map +1 -0
- package/sidecar/dist/constants/claude.d.ts +1 -0
- package/sidecar/dist/constants/claude.js +1 -0
- package/sidecar/dist/constants/claude.js.map +1 -1
- package/sidecar/dist/constants/codex.d.ts +2 -4
- package/sidecar/dist/constants/codex.js +2 -4
- package/sidecar/dist/constants/codex.js.map +1 -1
- package/sidecar/dist/constants/http.d.ts +1 -0
- package/sidecar/dist/constants/http.js +1 -0
- package/sidecar/dist/constants/http.js.map +1 -1
- package/sidecar/dist/constants/mcp.d.ts +3 -0
- package/sidecar/dist/constants/mcp.js +9 -0
- package/sidecar/dist/constants/mcp.js.map +1 -1
- package/sidecar/dist/constants/permissions.d.ts +9 -3
- package/sidecar/dist/constants/permissions.js +9 -2
- package/sidecar/dist/constants/permissions.js.map +1 -1
- package/sidecar/dist/constants/settings.d.ts +2 -1
- package/sidecar/dist/constants/settings.js +7 -1
- package/sidecar/dist/constants/settings.js.map +1 -1
- package/sidecar/dist/constants/tool-kinds.d.ts +14 -0
- package/sidecar/dist/constants/tool-kinds.js +65 -0
- package/sidecar/dist/constants/tool-kinds.js.map +1 -0
- package/sidecar/dist/index.d.ts +4 -0
- package/sidecar/dist/index.js +35 -5
- package/sidecar/dist/index.js.map +1 -1
- package/sidecar/dist/mcp/define-tool.d.ts +3 -2
- package/sidecar/dist/mcp/tool-definitions.js +4 -1
- package/sidecar/dist/mcp/tool-definitions.js.map +1 -1
- package/sidecar/dist/mcp/tools/ask-user.d.ts +2 -2
- package/sidecar/dist/mcp/tools/ask-user.js +7 -4
- package/sidecar/dist/mcp/tools/ask-user.js.map +1 -1
- package/sidecar/dist/mcp/tools/builder-catalog.d.ts +3 -0
- package/sidecar/dist/mcp/tools/builder-catalog.js +86 -0
- package/sidecar/dist/mcp/tools/builder-catalog.js.map +1 -0
- package/sidecar/dist/mcp/tools/builder-gate.d.ts +8 -0
- package/sidecar/dist/mcp/tools/builder-gate.js +22 -0
- package/sidecar/dist/mcp/tools/builder-gate.js.map +1 -0
- package/sidecar/dist/mcp/tools/builder.d.ts +7 -2
- package/sidecar/dist/mcp/tools/builder.js +48 -7
- package/sidecar/dist/mcp/tools/builder.js.map +1 -1
- package/sidecar/dist/mcp/types.d.ts +2 -0
- package/sidecar/dist/metrics/aggregate.d.ts +13 -10
- package/sidecar/dist/metrics/aggregate.js +140 -143
- package/sidecar/dist/metrics/aggregate.js.map +1 -1
- package/sidecar/dist/metrics/types.d.ts +36 -23
- package/sidecar/dist/metrics/types.js +3 -1
- package/sidecar/dist/metrics/types.js.map +1 -1
- package/sidecar/dist/pages/imports-scanner.d.ts +1 -1
- package/sidecar/dist/pages/imports-scanner.js +2 -5
- package/sidecar/dist/pages/imports-scanner.js.map +1 -1
- package/sidecar/dist/prompts/agent.d.ts +1 -3
- package/sidecar/dist/prompts/agent.js +4 -4
- package/sidecar/dist/prompts/agent.js.map +1 -1
- package/sidecar/dist/prompts/builder.d.ts +2 -2
- package/sidecar/dist/prompts/builder.js +2 -2
- package/sidecar/dist/protocol/events.d.ts +1084 -18
- package/sidecar/dist/protocol/events.js +239 -5
- package/sidecar/dist/protocol/events.js.map +1 -1
- package/sidecar/dist/protocol/messages.d.ts +273 -19
- package/sidecar/dist/protocol/messages.js +107 -7
- package/sidecar/dist/protocol/messages.js.map +1 -1
- package/sidecar/dist/providers/claude/config.d.ts +3 -2
- package/sidecar/dist/providers/claude/config.js +10 -4
- package/sidecar/dist/providers/claude/config.js.map +1 -1
- package/sidecar/dist/providers/claude/provider.d.ts +2 -8
- package/sidecar/dist/providers/claude/provider.js +37 -35
- package/sidecar/dist/providers/claude/provider.js.map +1 -1
- package/sidecar/dist/providers/claude/safe-mode.d.ts +6 -1
- package/sidecar/dist/providers/claude/safe-mode.js +13 -5
- package/sidecar/dist/providers/claude/safe-mode.js.map +1 -1
- package/sidecar/dist/providers/codex/adapter.d.ts +6 -0
- package/sidecar/dist/providers/codex/adapter.js +14 -4
- package/sidecar/dist/providers/codex/adapter.js.map +1 -1
- package/sidecar/dist/providers/codex/client.d.ts +0 -11
- package/sidecar/dist/providers/codex/config.d.ts +1 -3
- package/sidecar/dist/providers/codex/config.js +5 -11
- package/sidecar/dist/providers/codex/config.js.map +1 -1
- package/sidecar/dist/providers/codex/permissions.d.ts +7 -4
- package/sidecar/dist/providers/codex/permissions.js +32 -16
- package/sidecar/dist/providers/codex/permissions.js.map +1 -1
- package/sidecar/dist/providers/codex/process.js +1 -5
- package/sidecar/dist/providers/codex/process.js.map +1 -1
- package/sidecar/dist/providers/codex/provider.js +14 -3
- package/sidecar/dist/providers/codex/provider.js.map +1 -1
- package/sidecar/dist/providers/codex/skills.d.ts +0 -1
- package/sidecar/dist/providers/codex/skills.js +1 -1
- package/sidecar/dist/providers/codex/skills.js.map +1 -1
- package/sidecar/dist/providers/codex/stop.js +1 -10
- package/sidecar/dist/providers/codex/stop.js.map +1 -1
- package/sidecar/dist/server/change-set-actions.d.ts +10 -0
- package/sidecar/dist/server/change-set-actions.js +14 -0
- package/sidecar/dist/server/change-set-actions.js.map +1 -0
- package/sidecar/dist/server/chat-events.d.ts +15 -0
- package/sidecar/dist/server/chat-events.js +115 -0
- package/sidecar/dist/server/chat-events.js.map +1 -0
- package/sidecar/dist/server/chat-socket-registry.d.ts +2 -0
- package/sidecar/dist/server/chat-socket-registry.js +48 -37
- package/sidecar/dist/server/chat-socket-registry.js.map +1 -1
- package/sidecar/dist/server/conversation-runs.d.ts +13 -0
- package/sidecar/dist/server/conversation-runs.js +114 -0
- package/sidecar/dist/server/conversation-runs.js.map +1 -0
- package/sidecar/dist/server/http-io.d.ts +4 -0
- package/sidecar/dist/server/http-io.js +31 -0
- package/sidecar/dist/server/http-io.js.map +1 -0
- package/sidecar/dist/server/http-params.d.ts +9 -0
- package/sidecar/dist/server/http-params.js +79 -0
- package/sidecar/dist/server/http-params.js.map +1 -0
- package/sidecar/dist/server/http-routes.d.ts +27 -0
- package/sidecar/dist/server/http-routes.js +281 -0
- package/sidecar/dist/server/http-routes.js.map +1 -0
- package/sidecar/dist/server/http.d.ts +6 -1
- package/sidecar/dist/server/http.js +76 -164
- package/sidecar/dist/server/http.js.map +1 -1
- package/sidecar/dist/server/pending-queue.d.ts +2 -0
- package/sidecar/dist/server/pending-queue.js +16 -0
- package/sidecar/dist/server/pending-queue.js.map +1 -1
- package/sidecar/dist/server/permission-events.d.ts +15 -0
- package/sidecar/dist/server/permission-events.js +163 -0
- package/sidecar/dist/server/permission-events.js.map +1 -0
- package/sidecar/dist/server/routing.d.ts +4 -52
- package/sidecar/dist/server/routing.js +190 -501
- package/sidecar/dist/server/routing.js.map +1 -1
- package/sidecar/dist/server/safety-net.d.ts +7 -0
- package/sidecar/dist/server/safety-net.js +34 -6
- package/sidecar/dist/server/safety-net.js.map +1 -1
- package/sidecar/dist/server/services.d.ts +55 -0
- package/sidecar/dist/server/services.js +2 -0
- package/sidecar/dist/server/services.js.map +1 -0
- package/sidecar/dist/server/tool-calls.d.ts +6 -0
- package/sidecar/dist/server/tool-calls.js +134 -0
- package/sidecar/dist/server/tool-calls.js.map +1 -0
- package/sidecar/dist/server/turn-registry.d.ts +44 -0
- package/sidecar/dist/server/turn-registry.js +40 -0
- package/sidecar/dist/server/turn-registry.js.map +1 -0
- package/sidecar/dist/server/turns.d.ts +17 -0
- package/sidecar/dist/server/turns.js +335 -0
- package/sidecar/dist/server/turns.js.map +1 -0
- package/sidecar/dist/server/ws.d.ts +4 -1
- package/sidecar/dist/server/ws.js +102 -62
- package/sidecar/dist/server/ws.js.map +1 -1
- package/sidecar/dist/skills/build-catalog.d.ts +1 -0
- package/sidecar/dist/skills/build-catalog.js +14 -1
- package/sidecar/dist/skills/build-catalog.js.map +1 -1
- package/sidecar/dist/skills/skill-usage.d.ts +22 -0
- package/sidecar/dist/skills/skill-usage.js +97 -0
- package/sidecar/dist/skills/skill-usage.js.map +1 -0
- package/sidecar/dist/state/change-sets.d.ts +12 -0
- package/sidecar/dist/state/change-sets.js +77 -0
- package/sidecar/dist/state/change-sets.js.map +1 -0
- package/sidecar/dist/state/conversations.d.ts +19 -7
- package/sidecar/dist/state/conversations.js +61 -20
- package/sidecar/dist/state/conversations.js.map +1 -1
- package/sidecar/dist/state/host-state.d.ts +2 -1
- package/sidecar/dist/state/settings-store.d.ts +1 -0
- package/sidecar/dist/state/settings-store.js +27 -26
- package/sidecar/dist/state/settings-store.js.map +1 -1
- package/sidecar/dist/state/settings-types.d.ts +11 -1
- package/sidecar/dist/state/settings-types.js +3 -1
- package/sidecar/dist/state/settings-types.js.map +1 -1
- package/sidecar/dist/state/types.d.ts +114 -8
- package/sidecar/dist/state/types.js +6 -3
- package/sidecar/dist/state/types.js.map +1 -1
- package/skills/dms-builder-safe/REFERENCE.md +1 -1
- package/skills/dms-builder-safe/SKILL.md +12 -7
- package/dist/routes/proxy.d.ts +0 -4
- package/dist/routes/proxy.js +0 -55
- package/dist/routes/proxy.js.map +0 -1
- package/frontend-vue/app/chat/components/ComposerInput.vue +0 -742
- package/frontend-vue/app/chat/components/PermissionRequests.vue +0 -323
- package/frontend-vue/app/chat/components/QuestionPrompt.vue +0 -275
- package/frontend-vue/app/chat/components/QueuedMessages.vue +0 -109
- package/frontend-vue/app/chat/components/TodoList.vue +0 -291
- package/frontend-vue/app/chat/components/ToolCallEntry.vue +0 -218
- package/frontend-vue/app/chat/constants/connection-banner.ts +0 -7
- package/frontend-vue/app/chat/constants/conversation-drawer.ts +0 -13
- package/frontend-vue/app/chat/constants/permissions.ts +0 -50
- package/frontend-vue/app/chat/utils/tool-summary.ts +0 -53
- package/frontend-vue/app/components/ActivityView.vue +0 -94
- package/frontend-vue/app/components/SettingsView.vue +0 -387
- package/frontend-vue/app/components/SkillsView.vue +0 -230
- package/frontend-vue/app/runtime/header-action.ts +0 -64
- package/frontend-vue/app/runtime/overlay-prefs.ts +0 -89
- package/frontend-vue/app/runtime/panel-state.ts +0 -88
- package/frontend-vue/tests/overlay-prefs.test.ts +0 -91
- package/frontend-vue/tests/panel-state.test.ts +0 -58
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { AllowedBy, ToolSource } from "../constants/audit.js";
|
|
1
2
|
export interface SeriesPoint {
|
|
2
3
|
x: string;
|
|
3
4
|
y: number;
|
|
@@ -8,46 +9,58 @@ export interface NamedSeries {
|
|
|
8
9
|
}
|
|
9
10
|
export interface KpiCardPayload {
|
|
10
11
|
value: number;
|
|
11
|
-
delta
|
|
12
|
-
previousValue
|
|
12
|
+
delta?: number;
|
|
13
|
+
previousValue?: number;
|
|
13
14
|
sparkline: number[];
|
|
15
|
+
total?: number;
|
|
16
|
+
denied?: number;
|
|
17
|
+
expired?: number;
|
|
14
18
|
}
|
|
15
19
|
export interface ChartCardPayload {
|
|
16
20
|
value: number;
|
|
17
|
-
delta
|
|
18
|
-
previousValue
|
|
21
|
+
delta?: number;
|
|
22
|
+
previousValue?: number;
|
|
19
23
|
series: NamedSeries[];
|
|
20
24
|
comparisonSeries?: NamedSeries[];
|
|
21
25
|
}
|
|
22
|
-
export
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
+
export declare const KPI_METRICS: readonly ["actions", "change-sets", "approved", "denied", "undone", "errors", "proposed"];
|
|
27
|
+
export type KpiMetric = (typeof KPI_METRICS)[number];
|
|
28
|
+
interface AllowedItem {
|
|
29
|
+
id: AllowedBy;
|
|
26
30
|
value: number;
|
|
27
|
-
delta?: number | null;
|
|
28
|
-
sparkline?: number[];
|
|
29
31
|
}
|
|
30
|
-
export interface
|
|
31
|
-
items:
|
|
32
|
+
export interface AllowedPayload {
|
|
33
|
+
items: AllowedItem[];
|
|
34
|
+
deletionsAsked: number;
|
|
35
|
+
deletions: number;
|
|
32
36
|
}
|
|
33
|
-
|
|
34
|
-
export interface ActivityItem {
|
|
37
|
+
interface TopToolItem {
|
|
35
38
|
id: string;
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
+
value: number;
|
|
40
|
+
source: ToolSource;
|
|
41
|
+
}
|
|
42
|
+
export interface TopToolsPayload {
|
|
43
|
+
items: TopToolItem[];
|
|
44
|
+
}
|
|
45
|
+
export interface UsageDay {
|
|
46
|
+
day: string;
|
|
47
|
+
totalTokens: number;
|
|
48
|
+
}
|
|
49
|
+
interface UsageTop {
|
|
39
50
|
conversationId: string;
|
|
40
|
-
|
|
41
|
-
|
|
51
|
+
title: string;
|
|
52
|
+
totalTokens: number;
|
|
42
53
|
}
|
|
43
|
-
export interface
|
|
44
|
-
|
|
54
|
+
export interface UsagePayload {
|
|
55
|
+
days: UsageDay[];
|
|
56
|
+
totalTokens: number;
|
|
57
|
+
conversations: number;
|
|
58
|
+
top?: UsageTop;
|
|
45
59
|
}
|
|
46
|
-
export declare const KPI_METRICS: readonly ["actions", "proposed", "approved", "denied", "errors"];
|
|
47
|
-
export type KpiMetric = (typeof KPI_METRICS)[number];
|
|
48
60
|
export interface MetricWindow {
|
|
49
61
|
fromMs: number;
|
|
50
62
|
toMs: number;
|
|
51
63
|
compareFromMs?: number;
|
|
52
64
|
compareToMs?: number;
|
|
53
65
|
}
|
|
66
|
+
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/metrics/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/metrics/types.ts"],"names":[],"mappings":"AA+CA,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,SAAS;IACT,aAAa;IACb,UAAU;IACV,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,UAAU;CACF,CAAC"}
|
|
@@ -5,5 +5,5 @@ export interface ImportsScanner {
|
|
|
5
5
|
scan(rootDir: string): Promise<ScanResult>;
|
|
6
6
|
invalidate(): void;
|
|
7
7
|
}
|
|
8
|
-
export declare function createImportsScanner(): ImportsScanner;
|
|
9
8
|
export declare function scanImports(rootDir: string): Promise<ScanResult>;
|
|
9
|
+
export declare function createImportsScanner(): ImportsScanner;
|
|
@@ -114,7 +114,7 @@ async function indexFileImports(filePath, importersByFile) {
|
|
|
114
114
|
appendImporter(importersByFile, resolved, filePath);
|
|
115
115
|
}
|
|
116
116
|
}
|
|
117
|
-
async function
|
|
117
|
+
export async function scanImports(rootDir) {
|
|
118
118
|
const files = await walkFiles(rootDir);
|
|
119
119
|
const importersByFile = new Map();
|
|
120
120
|
for (const file of files) {
|
|
@@ -128,7 +128,7 @@ export function createImportsScanner() {
|
|
|
128
128
|
scan: async (rootDir) => {
|
|
129
129
|
if (cache !== null && cache.rootDir === rootDir)
|
|
130
130
|
return cache.result;
|
|
131
|
-
const result = await
|
|
131
|
+
const result = await scanImports(rootDir);
|
|
132
132
|
cache = { rootDir, result };
|
|
133
133
|
return result;
|
|
134
134
|
},
|
|
@@ -137,7 +137,4 @@ export function createImportsScanner() {
|
|
|
137
137
|
},
|
|
138
138
|
};
|
|
139
139
|
}
|
|
140
|
-
export async function scanImports(rootDir) {
|
|
141
|
-
return buildScanResult(rootDir);
|
|
142
|
-
}
|
|
143
140
|
//# sourceMappingURL=imports-scanner.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"imports-scanner.js","sourceRoot":"","sources":["../../src/pages/imports-scanner.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"imports-scanner.js","sourceRoot":"","sources":["../../src/pages/imports-scanner.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
export declare const
|
|
2
|
-
export declare const SAFE_MODE_DESCRIPTION = "you act ONLY through the Builder (\"Builder\u2026\") MCP tools; raw file edits (Write/Edit/Bash) are blocked. Follow the dms-builder-safe skill, which carries the workflow and the vocabulary; the tools' own descriptions carry their arguments. Every op is atomic and typecheck-gated: on typecheck_failed nothing was written \u2014 read the diagnostics, fix the config, retry.\n Reach for the right mechanism:\n - a page's layout and content \u2014 the block tools, after BuilderCatalog;\n - the data layer a table or form needs \u2014 the resource tools (they emit a Database Table + a DataAPI at /api/<name>);\n - showing that resource on a page \u2014 BuilderAddBlock a controller-leading block (catalog `controllerArg: true`, e.g. TableView) with `controller` set to the resource ref;\n - a computed number rather than rows, e.g. a KpiCard's count or sum \u2014 the DataAPI cannot serve it: add a query (BuilderQueryTemplates, then BuilderAddQuery) and pass the `route` it returns as the card's `fetchUrl`;\n - naming a generated resource class inside config \u2014 a `$ref` value, which is validated and allowed here, never `$expr`.\n The boundary: safe mode cannot construct a nested component value, so a config field the catalog marks `x-component` (a chart card's `chart`, say) is out of reach \u2014 treat it like opaque_target rather than guessing a shape. On opaque_target, unsupported, or an `x-component` field, explain the limitation and ask permission to switch to Vibe mode for that step; never attempt a raw edit.";
|
|
3
|
-
export declare const SYSTEM_PROMPT_TEMPLATE = "You are the development assistant for an Antelope project.\n\nProject: {{name}}\nWorking directory: {{hostProjectRoot}}\nAntelope modules present: {{antelopeModules}}\n\nFollow the conventions documented in the project's CLAUDE.md.\n\nWhen you need a decision or clarification from the user, call AskUser with multiple-choice options and wait for their answer instead of asking in prose \u2014 the user answers it with interactive buttons in the chat.\n\nYou are running inside a live browser overlay: the user is viewing a DMS page while chatting with you. Each of your turns begins with a <host-context> block reporting live session state \u2014 the page their browser is displaying right now and your active generation mode. The page is its route, its title, and its source file as resolved from the pages registry; the title or the file reads \"unknown\" when it could not be determined, so then look the file up yourself instead of guessing. That block is the single source of truth for both: it refreshes every turn and reflects navigation by either you or the user and any mode change, so trust it over your memory. GetCurrentPage returns the live page on demand. Use your host tools to keep what the user sees in sync with the changes you make.\n\nEditing pages \u2014 follow this loop whatever your mode, whenever a change affects a rendered page (skip it only for changes that touch no rendered page, e.g. backend-only or config edits):\n1. Determine which page(s) the change affects and work ONE page at a time.\n2. Before changing a page, make sure the host is displaying it: call NavigateToPage to it (it reports whether navigation completed and echoes the page the host landed on). Prefer the page the user is already on \u2014 <host-context> tells you where that is \u2014 if it is impacted. For a BRAND-NEW page, create the empty page first, then NavigateToPage to it immediately \u2014 before adding any blocks or content \u2014 so the user watches it fill in. Never build a page out to completion in the background and navigate only at the end.\n3. Make the change through your mode's mechanism (below) while the host is on the page; it hot-reloads and highlights the freshly-rendered nodes.\n4. Verify before moving on: if the page still looks wrong after the reload, call QueryLogs. Then repeat from step 2 for the next impacted page.\n\nGeneration modes \u2014 you work through exactly one, and the active one is reported each turn in <host-context>:\n- VIBE: full code access \u2014 you may write and edit any files to build or reshape pages, including custom components and logic beyond the Builder's blocks. The Builder (\"Builder\u2026\") MCP tools are available when they fit, but you are not restricted to them. Making a change: first call FindPagesUsing for each file you intend to edit to map it to the pages that render it, and group your edits by page; after editing a module's source, run Typecheck on that module and fix every reported error before the page is done \u2014 a non-compiling edit makes the host reload fail and the page 404.\n- SAFE: you act ONLY through the Builder (\"Builder\u2026\") MCP tools; raw file edits (Write/Edit/Bash) are blocked. Follow the dms-builder-safe skill, which carries the workflow and the vocabulary; the tools' own descriptions carry their arguments. Every op is atomic and typecheck-gated: on typecheck_failed nothing was written \u2014 read the diagnostics, fix the config, retry.\n Reach for the right mechanism:\n - a page's layout and content \u2014 the block tools, after BuilderCatalog;\n - the data layer a table or form needs \u2014 the resource tools (they emit a Database Table + a DataAPI at /api/<name>);\n - showing that resource on a page \u2014 BuilderAddBlock a controller-leading block (catalog `controllerArg: true`, e.g. TableView) with `controller` set to the resource ref;\n - a computed number rather than rows, e.g. a KpiCard's count or sum \u2014 the DataAPI cannot serve it: add a query (BuilderQueryTemplates, then BuilderAddQuery) and pass the `route` it returns as the card's `fetchUrl`;\n - naming a generated resource class inside config \u2014 a `$ref` value, which is validated and allowed here, never `$expr`.\n The boundary: safe mode cannot construct a nested component value, so a config field the catalog marks `x-component` (a chart card's `chart`, say) is out of reach \u2014 treat it like opaque_target rather than guessing a shape. On opaque_target, unsupported, or an `x-component` field, explain the limitation and ask permission to switch to Vibe mode for that step; never attempt a raw edit.\n\nResolving a page's URL: routes are computed by the backend (category chain + slug, with a /modules prefix for module pages), so you CANNOT derive a page's URL from its filename. Always call ListPages to look up a page's real route (its `path`) before navigating, and pass that exact path to NavigateToPage. The moment you create a NEW page \u2014 before adding any blocks or content to it \u2014 call ListPages with refresh:true so the freshly-registered page appears, then NavigateToPage to its `path` so the user watches it build live; do not keep populating a page in the background and navigate only once it is finished.\nNever guess or construct a URL.\n";
|
|
1
|
+
export declare const SYSTEM_PROMPT_TEMPLATE = "You are the development assistant for an Antelope project.\n\nProject: {{name}}\nWorking directory: {{hostProjectRoot}}\nAntelope modules present: {{antelopeModules}}\n\nFollow the conventions documented in the project's CLAUDE.md.\n\nWhen you need a decision or clarification from the user, call AskUser with multiple-choice options and wait for their answer instead of asking in prose \u2014 the user answers it with interactive buttons in the chat.\n\nYou are running inside a live browser overlay: the user is viewing a DMS page while chatting with you. Each of your turns begins with a <host-context> block reporting live session state \u2014 the page their browser is displaying right now and your active generation mode. The page is its route, its title, and its source file as resolved from the pages registry; the title or the file reads \"unknown\" when it could not be determined, so then look the file up yourself instead of guessing. That block is the single source of truth for both: it refreshes every turn and reflects navigation by either you or the user and any mode change, so trust it over your memory. GetCurrentPage returns the live page on demand. Use your host tools to keep what the user sees in sync with the changes you make.\n\nEditing pages \u2014 follow this loop whatever your mode, whenever a change affects a rendered page (skip it only for changes that touch no rendered page, e.g. backend-only or config edits):\n1. Determine which page(s) the change affects and work ONE page at a time.\n2. Before changing a page, make sure the host is displaying it: call NavigateToPage to it (it reports whether navigation completed and echoes the page the host landed on). Prefer the page the user is already on \u2014 <host-context> tells you where that is \u2014 if it is impacted. For a BRAND-NEW page, create the empty page first, then NavigateToPage to it immediately \u2014 before adding any blocks or content \u2014 so the user watches it fill in. Never build a page out to completion in the background and navigate only at the end.\n3. Make the change through your mode's mechanism (below) while the host is on the page; it hot-reloads and highlights the freshly-rendered nodes.\n4. Verify before moving on: if the page still looks wrong after the reload, call QueryLogs. Then repeat from step 2 for the next impacted page.\n\nGeneration modes \u2014 you work through exactly one, and the active one is reported each turn in <host-context>:\n- CODE: full code access \u2014 you may write and edit any files to build or reshape pages, including custom components and logic beyond the Builder's blocks. The Builder (\"Builder\u2026\") MCP tools are available when they fit, but you are not restricted to them. Making a change: first call FindPagesUsing for each file you intend to edit to map it to the pages that render it, and group your edits by page; after editing a module's source, run Typecheck on that module and fix every reported error before the page is done \u2014 a non-compiling edit makes the host reload fail and the page 404.\n- SAFE: you act ONLY through the Builder (\"Builder\u2026\") MCP tools; raw file edits (Write/Edit/Bash) are blocked. Follow the dms-builder-safe skill, which carries the workflow and the vocabulary; the tools' own descriptions carry their arguments. Every op is atomic and typecheck-gated: on typecheck_failed nothing was written \u2014 read the diagnostics, fix the config, retry.\n Reach for the right mechanism:\n - a page's layout and content \u2014 the block tools, after BuilderCatalog;\n - the data layer a table or form needs \u2014 the resource tools (they emit a Database Table + a DataAPI at /api/<name>);\n - showing that resource on a page \u2014 BuilderAddBlock a controller-leading block (catalog `controllerArg: true`, e.g. TableView) with `controller` set to the resource ref;\n - a computed number rather than rows, e.g. a KpiCard's count or sum \u2014 the DataAPI cannot serve it: add a query (BuilderQueryTemplates, then BuilderAddQuery) and pass the `route` it returns as the card's `fetchUrl`;\n - naming a generated resource class inside config \u2014 a `$ref` value, which is validated and allowed here, never `$expr`.\n The boundary: safe mode cannot construct a nested component value, so a config field the catalog marks `x-component` (a chart card's `chart`, say) is out of reach \u2014 treat it like opaque_target rather than guessing a shape. On opaque_target, unsupported, or an `x-component` field, explain the limitation and ask permission to switch to Code mode for that step; never attempt a raw edit.\n\nResolving a page's URL: routes are computed by the backend (category chain + slug, with a /modules prefix for module pages), so you CANNOT derive a page's URL from its filename. Always call ListPages to look up a page's real route (its `path`) before navigating, and pass that exact path to NavigateToPage. The moment you create a NEW page \u2014 before adding any blocks or content to it \u2014 call ListPages with refresh:true so the freshly-registered page appears, then NavigateToPage to its `path` so the user watches it build live; do not keep populating a page in the background and navigate only once it is finished.\nNever guess or construct a URL.\n";
|
|
@@ -3,15 +3,15 @@ import { QUERY_LOGS_TOOL_NAME } from "../constants/logs.js";
|
|
|
3
3
|
import { ASK_USER_TOOL_NAME, GET_CURRENT_PAGE_TOOL_NAME, NAVIGATE_TOOL_NAME, } from "../constants/mcp.js";
|
|
4
4
|
import { FIND_PAGES_TOOL_NAME, LIST_PAGES_TOOL_NAME, } from "../constants/pages.js";
|
|
5
5
|
import { TYPECHECK_TOOL_NAME } from "../constants/typecheck.js";
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
const CODE_MODE_DESCRIPTION = `full code access — you may write and edit any files to build or reshape pages, including custom components and logic beyond the Builder's blocks. The Builder ("Builder…") MCP tools are available when they fit, but you are not restricted to them. Making a change: first call ${FIND_PAGES_TOOL_NAME} for each file you intend to edit to map it to the pages that render it, and group your edits by page; after editing a module's source, run ${TYPECHECK_TOOL_NAME} on that module and fix every reported error before the page is done — a non-compiling edit makes the host reload fail and the page 404.`;
|
|
7
|
+
const SAFE_MODE_DESCRIPTION = `you act ONLY through the Builder ("Builder…") MCP tools; raw file edits (Write/Edit/Bash) are blocked. Follow the dms-builder-safe skill, which carries the workflow and the vocabulary; the tools' own descriptions carry their arguments. Every op is atomic and typecheck-gated: on typecheck_failed nothing was written — read the diagnostics, fix the config, retry.
|
|
8
8
|
Reach for the right mechanism:
|
|
9
9
|
- a page's layout and content — the block tools, after BuilderCatalog;
|
|
10
10
|
- the data layer a table or form needs — the resource tools (they emit a Database Table + a DataAPI at /api/<name>);
|
|
11
11
|
- showing that resource on a page — BuilderAddBlock a controller-leading block (catalog \`controllerArg: true\`, e.g. TableView) with \`controller\` set to the resource ref;
|
|
12
12
|
- a computed number rather than rows, e.g. a KpiCard's count or sum — the DataAPI cannot serve it: add a query (BuilderQueryTemplates, then BuilderAddQuery) and pass the \`route\` it returns as the card's \`fetchUrl\`;
|
|
13
13
|
- naming a generated resource class inside config — a \`$ref\` value, which is validated and allowed here, never \`$expr\`.
|
|
14
|
-
The boundary: safe mode cannot construct a nested component value, so a config field the catalog marks \`x-component\` (a chart card's \`chart\`, say) is out of reach — treat it like opaque_target rather than guessing a shape. On opaque_target, unsupported, or an \`x-component\` field, explain the limitation and ask permission to switch to
|
|
14
|
+
The boundary: safe mode cannot construct a nested component value, so a config field the catalog marks \`x-component\` (a chart card's \`chart\`, say) is out of reach — treat it like opaque_target rather than guessing a shape. On opaque_target, unsupported, or an \`x-component\` field, explain the limitation and ask permission to switch to Code mode for that step; never attempt a raw edit.`;
|
|
15
15
|
export const SYSTEM_PROMPT_TEMPLATE = `You are the development assistant for an Antelope project.
|
|
16
16
|
|
|
17
17
|
Project: ${SYSTEM_PROMPT_TOKEN_NAME}
|
|
@@ -31,7 +31,7 @@ Editing pages — follow this loop whatever your mode, whenever a change affects
|
|
|
31
31
|
4. Verify before moving on: if the page still looks wrong after the reload, call ${QUERY_LOGS_TOOL_NAME}. Then repeat from step 2 for the next impacted page.
|
|
32
32
|
|
|
33
33
|
Generation modes — you work through exactly one, and the active one is reported each turn in ${HOST_CONTEXT_OPEN}:
|
|
34
|
-
-
|
|
34
|
+
- CODE: ${CODE_MODE_DESCRIPTION}
|
|
35
35
|
- SAFE: ${SAFE_MODE_DESCRIPTION}
|
|
36
36
|
|
|
37
37
|
Resolving a page's URL: routes are computed by the backend (category chain + slug, with a /modules prefix for module pages), so you CANNOT derive a page's URL from its filename. Always call ${LIST_PAGES_TOOL_NAME} to look up a page's real route (its \`path\`) before navigating, and pass that exact path to ${NAVIGATE_TOOL_NAME}. The moment you create a NEW page — before adding any blocks or content to it — call ${LIST_PAGES_TOOL_NAME} with refresh:true so the freshly-registered page appears, then ${NAVIGATE_TOOL_NAME} to its \`path\` so the user watches it build live; do not keep populating a page in the background and navigate only once it is finished.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/prompts/agent.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,6BAA6B,EAC7B,2BAA2B,EAC3B,wBAAwB,GACzB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EACL,kBAAkB,EAClB,0BAA0B,EAC1B,kBAAkB,GACnB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAgBhE,MAAM,
|
|
1
|
+
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/prompts/agent.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,6BAA6B,EAC7B,2BAA2B,EAC3B,wBAAwB,GACzB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EACL,kBAAkB,EAClB,0BAA0B,EAC1B,kBAAkB,GACnB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAgBhE,MAAM,qBAAqB,GAAG,qRAAqR,oBAAoB,+IAA+I,mBAAmB,0IAA0I,CAAC;AAEpnB,MAAM,qBAAqB,GAAG;;;;;;;2YAO6W,CAAC;AAE5Y,MAAM,CAAC,MAAM,sBAAsB,GAAG;;WAE3B,wBAAwB;qBACd,6BAA6B;4BACtB,2BAA2B;;;;gEAIS,kBAAkB;;0IAEwD,iBAAiB,kgBAAkgB,0BAA0B;;;;uEAIhnB,kBAAkB,qIAAqI,iBAAiB,yGAAyG,kBAAkB;;mFAEvR,oBAAoB;;+FAER,iBAAiB;UACtG,qBAAqB;UACrB,qBAAqB;;gMAEiK,oBAAoB,iGAAiG,kBAAkB,yFAAyF,oBAAoB,mEAAmE,kBAAkB;;CAExgB,CAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export declare const BUILDER_ESCALATION_NOTE = "If the result is ok:false with error.code 'opaque_target' or 'unsupported', safe mode cannot make this change. Explain the limitation to the user and ask permission to switch to
|
|
2
|
-
export declare const BUILDER_EXPR_REFUSAL = "Refused: safe mode does not allow raw `$expr` values in builder config. For a Form field or Column DataType, use `{ $dataType: \"<id>\", config: {\u2026} }` (see BuilderCatalog for ids). To reference a generated resource class (e.g. a RelationType's `dataApiController`), use a reference value `{ $ref: { resource: \"<name>\" } }` instead \u2014 it is validated and allowed in safe mode. Only escalate to
|
|
1
|
+
export declare const BUILDER_ESCALATION_NOTE = "If the result is ok:false with error.code 'opaque_target' or 'unsupported', safe mode cannot make this change. Explain the limitation to the user and ask permission to switch to Code mode (direct file edits) for this step.";
|
|
2
|
+
export declare const BUILDER_EXPR_REFUSAL = "Refused: safe mode does not allow raw `$expr` values in builder config. For a Form field or Column DataType, use `{ $dataType: \"<id>\", config: {\u2026} }` (see BuilderCatalog for ids). To reference a generated resource class (e.g. a RelationType's `dataApiController`), use a reference value `{ $ref: { resource: \"<name>\" } }` instead \u2014 it is validated and allowed in safe mode. Only escalate to Code mode for genuinely arbitrary code.";
|
|
3
3
|
export declare const BUILDER_REF_NOTE = "To reference a builder-generated resource class inside config (e.g. a RelationType DataType's `dataApiController`), pass `{ $ref: { resource: \"<ref>\", as?: \"dataApi\" | \"table\" | \"model\" } }` (default `as` = \"dataApi\", the DataAPI controller). The resource must already exist (BuilderListResources). Unlike `$expr`, `$ref` is allowed in safe mode.";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export const BUILDER_ESCALATION_NOTE = "If the result is ok:false with error.code 'opaque_target' or 'unsupported', safe mode cannot make this change. Explain the limitation to the user and ask permission to switch to
|
|
2
|
-
export const BUILDER_EXPR_REFUSAL = 'Refused: safe mode does not allow raw `$expr` values in builder config. For a Form field or Column DataType, use `{ $dataType: "<id>", config: {…} }` (see BuilderCatalog for ids). To reference a generated resource class (e.g. a RelationType\'s `dataApiController`), use a reference value `{ $ref: { resource: "<name>" } }` instead — it is validated and allowed in safe mode. Only escalate to
|
|
1
|
+
export const BUILDER_ESCALATION_NOTE = "If the result is ok:false with error.code 'opaque_target' or 'unsupported', safe mode cannot make this change. Explain the limitation to the user and ask permission to switch to Code mode (direct file edits) for this step.";
|
|
2
|
+
export const BUILDER_EXPR_REFUSAL = 'Refused: safe mode does not allow raw `$expr` values in builder config. For a Form field or Column DataType, use `{ $dataType: "<id>", config: {…} }` (see BuilderCatalog for ids). To reference a generated resource class (e.g. a RelationType\'s `dataApiController`), use a reference value `{ $ref: { resource: "<name>" } }` instead — it is validated and allowed in safe mode. Only escalate to Code mode for genuinely arbitrary code.';
|
|
3
3
|
export const BUILDER_REF_NOTE = 'To reference a builder-generated resource class inside config (e.g. a RelationType DataType\'s `dataApiController`), pass `{ $ref: { resource: "<ref>", as?: "dataApi" | "table" | "model" } }` (default `as` = "dataApi", the DataAPI controller). The resource must already exist (BuilderListResources). Unlike `$expr`, `$ref` is allowed in safe mode.';
|
|
4
4
|
//# sourceMappingURL=builder.js.map
|