@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
package/README.md
CHANGED
|
@@ -8,10 +8,12 @@
|
|
|
8
8
|
|
|
9
9
|
An AntelopeJS DMS development assistant. It adds an owner-only AI workspace to the dashboard and
|
|
10
10
|
runs a coding agent in a local sidecar that can inspect the loaded modules and their declared skills,
|
|
11
|
-
edit the host project, and stream activity back to the dashboard. The chat is a panel
|
|
12
|
-
|
|
13
|
-
from the header or with Ctrl+Shift+K (⌘⇧K on macOS).
|
|
14
|
-
|
|
11
|
+
edit the host project, and stream activity back to the dashboard. The chat is a panel docked next to
|
|
12
|
+
the page, which shrinks to make room: it stays open across page navigations and reloads, follows the
|
|
13
|
+
dashboard's theme, and is toggled from the header or with Ctrl+Shift+K (⌘⇧K on macOS). In the
|
|
14
|
+
command palette (Ctrl+K, ⌘K on macOS), Tab switches to the assistant, which answers a question
|
|
15
|
+
read-only and hands the conversation over to the panel. Claude Code drives it by default; OpenAI's
|
|
16
|
+
Codex is selectable once its CLI is installed.
|
|
15
17
|
|
|
16
18
|
## Installation
|
|
17
19
|
|
|
@@ -25,6 +27,12 @@ The module starts its bundled sidecar with the project as its working directory.
|
|
|
25
27
|
set `DMS_AI=0` before starting the backend to disable the sidecar. If
|
|
26
28
|
`@antelopejs/dms-builder` is installed, the assistant also exposes its builder integration.
|
|
27
29
|
|
|
30
|
+
The sidecar is a child process of the backend. A hot reload of the module keeps it running, unless
|
|
31
|
+
its build changed. Stopping the project stops it: Ctrl+C reaches it through the terminal's process
|
|
32
|
+
group, and `@antelopejs/core` 1.13.2 or later terminates it on shutdown (Linux only). A sidecar left
|
|
33
|
+
running by a backend that crashed or was killed is stopped when the next run starts; otherwise it
|
|
34
|
+
exits on its own after 15 idle minutes.
|
|
35
|
+
|
|
28
36
|
The assistant is a development tool, on purpose: the backend and the sidecar refuse to run with
|
|
29
37
|
`NODE_ENV=production`, and the chat is reserved to owners. Remote *development* is supported (see
|
|
30
38
|
below); a hosted use would be a separate product with its own design.
|
|
@@ -43,13 +51,44 @@ the server.
|
|
|
43
51
|
| `POST /ai/channel/:connectionId/messages` | One client message, relayed to that stream's sidecar socket. |
|
|
44
52
|
|
|
45
53
|
Each stream is bridged to a single sidecar socket, which the dashboard identifies as the host (the
|
|
46
|
-
current page, the agent's navigation requests) and as the chat.
|
|
54
|
+
current page, the agent's navigation requests) and as the chat. The backend opens each socket with
|
|
55
|
+
an `actor` frame naming the signed-in user, which the sidecar records on change sets and undos; a
|
|
56
|
+
browser cannot send that frame, the backend drops it. Browsers keep at most six HTTP/1.1
|
|
47
57
|
connections per origin, and every dashboard tab already holds two long-lived ones for the DMS. The
|
|
48
58
|
assistant adds its stream only in the visible tab whose panel is open, which leaves two dashboard tabs
|
|
49
59
|
usable side by side; over HTTPS with HTTP/2 the limit goes away. Over plain HTTP on an address other
|
|
50
60
|
than `localhost`, start the frontend server with `DMS_COOKIE_SECURE=false`, or the browser drops the
|
|
51
61
|
`Secure` session cookie.
|
|
52
62
|
|
|
63
|
+
## Pages
|
|
64
|
+
|
|
65
|
+
The module adds an **Assistant** module to the dashboard (`/modules/ai`), owner-only, with five
|
|
66
|
+
pages. They are built from DMS blocks; a custom component is used only where no block draws the
|
|
67
|
+
screen. Every page, block and child carries `$dms_ai.*` metadata, so the role editor lists them with
|
|
68
|
+
translated names (English and French, in `frontend-vue/i18n/locales/dms-ai-pages-*.json`).
|
|
69
|
+
|
|
70
|
+
| Page | What it shows |
|
|
71
|
+
| -------- | --------------------------------------------------------------------------------------------------------------- |
|
|
72
|
+
| Overview | Period selector, a banner when the assistant needs you (offline with Restart, a failed turn, requests waiting), its status rows, four KPIs, the activity chart, how actions were allowed, the latest change sets with Undo / Redo, and the top tools. |
|
|
73
|
+
| Changes | Every turn that touched the project as a change set: its diff, Undo with a conflict preview, Redo. `?set=<id>` opens one. |
|
|
74
|
+
| Activity | The audit log: tabs (changed files, asked you, denied or blocked, failed), quick filters, a detail drawer per call (`?record=<id>`), and a CSV export. |
|
|
75
|
+
| Skills | The skills loaded into the agent as cards, a detail drawer per skill, and a warning when two skills share a name. |
|
|
76
|
+
| Settings | The defaults of new conversations, saved as you change them: agent, thinking, approval mode, what always asks, request timeout, scope, local skills, checkpoint retention; then the tokens used over 14 days. |
|
|
77
|
+
|
|
78
|
+
Every route below is owner-only. Lists and settings answer `503 { message }` while the sidecar is
|
|
79
|
+
down, so tables show their error state and a setting says "Not saved"; charts answer empty.
|
|
80
|
+
|
|
81
|
+
| Route | Purpose |
|
|
82
|
+
| ------------------------------------------------------ | -------------------------------------------------------------- |
|
|
83
|
+
| `GET /ai/status`, `POST /ai/sidecar/restart` | The assistant's live status (`offline` when it does not answer), and a restart. |
|
|
84
|
+
| `GET /ai/status/facts`, `/ai/status/banner` | The Overview's status rows (a `KeyValueList`) and its banner (`BannerContent`, or 204 when all is well). |
|
|
85
|
+
| `GET /ai/metrics/kpi/:metric`, `series`, `allowed`, `top-tools`, `usage`, `usage/summary` | The Overview's and Settings › Usage figures. |
|
|
86
|
+
| `GET /ai/activity`, `/ai/activity/:id`, `/ai/activity/export.csv` | The audit log as a source table, one call's detail, the CSV export. |
|
|
87
|
+
| `GET /ai/changes`, `/ai/changes/:id`, `/ai/changes/:id/undo-preview`, `/ai/changes/:id/undo-confirm` | Change sets, a set's diff, what Undo restores, and the dialog it asks in. |
|
|
88
|
+
| `POST /ai/changes/:id/undo`, `/ai/changes/:id/redo` | Undo (`{ includeLater? }`) and Redo, recorded with the signed-in user's name. |
|
|
89
|
+
| `GET /ai/skills/catalog`, `/ai/skills/conflicts` | The skills as table rows, and the banner about names several skills share (204 when none). |
|
|
90
|
+
| `GET` / `PUT /ai/settings` | The settings form; `PUT` takes the one field an instant save sends. |
|
|
91
|
+
|
|
53
92
|
## Model output in the dashboard
|
|
54
93
|
|
|
55
94
|
The chat renders model output inside the dashboard, next to the owner's session, and that output can
|
|
@@ -100,7 +139,7 @@ export default defineConfig({
|
|
|
100
139
|
|
|
101
140
|
## Agent providers
|
|
102
141
|
|
|
103
|
-
The assistant runs on either Claude Code or Codex, picked
|
|
142
|
+
The assistant runs on either Claude Code or Codex, picked on the Assistant's Settings page. Both go through
|
|
104
143
|
the same seam, so the chat, the tool calls, the permission prompts and the file-change animation
|
|
105
144
|
behave the same either way. `GET /settings` reports which ones this install can actually drive:
|
|
106
145
|
|
|
@@ -159,7 +198,7 @@ turn on Codex, without discarding the conversation.
|
|
|
159
198
|
filesystem, so the file is only as private as the directory it sits in. ChatGPT login is not
|
|
160
199
|
supported here — it shares a token refresh with the user's own `codex` install.
|
|
161
200
|
|
|
162
|
-
3. **Restart the sidecar**, then pick *
|
|
201
|
+
3. **Restart the sidecar**, then pick *Codex* on the Assistant's Settings page.
|
|
163
202
|
|
|
164
203
|
Linux, macOS and Windows are all supported. One app-server process runs per conversation, and the
|
|
165
204
|
sidecar records its pid so a previous run's orphans are killed at startup — through procfs on
|
|
@@ -169,9 +208,11 @@ of the app-server with it.
|
|
|
169
208
|
## Vue frontend
|
|
170
209
|
|
|
171
210
|
The module registers `frontend-vue` through `AddFrontendModule` with the Vue 3 renderer. The host DMS
|
|
172
|
-
supplies authentication, shared state, Nuxt UI and the icons. The chat panel, `DmsAiChatPanel`, is
|
|
173
|
-
|
|
174
|
-
|
|
211
|
+
supplies authentication, shared state, Nuxt UI and the icons. The chat panel, `DmsAiChatPanel`, is a
|
|
212
|
+
docked side panel of the dashboard (`registerSidePanel`): the DMS renders it once for the whole app,
|
|
213
|
+
so it lives through Inertia navigations, and keeps its open state and width in a cookie. The command
|
|
214
|
+
palette's assistant mode answers with `DmsAiPaletteAnswer` (`registerCommandPaletteAssistant`). The
|
|
215
|
+
chat's code is under `frontend-vue/app/chat`. The renderer bundles the icons it finds in
|
|
175
216
|
`.vue` files, so an icon name belongs in the component that shows it.
|
|
176
217
|
|
|
177
218
|
## Development
|
|
@@ -193,4 +234,6 @@ pnpm --dir frontend-vue build
|
|
|
193
234
|
pnpm --dir frontend-vue typecheck
|
|
194
235
|
```
|
|
195
236
|
|
|
196
|
-
`pnpm test:frontend-registration` checks backend registration and sidecar inputs with the sidecar launcher mocked.
|
|
237
|
+
`pnpm test:frontend-registration` checks backend registration and sidecar inputs with the sidecar launcher mocked, and that every page, block and child of the Assistant module is titled with `$dms_ai` keys present in both locales.
|
|
238
|
+
`pnpm test:routes` drives the `/ai/*` routes against a stand-in sidecar: query translation, `503` while it is down, settings conversions, Undo stamping and the CSV export.
|
|
239
|
+
`pnpm test:sidecar-lifecycle` starts a stand-in sidecar to check that a hot reload keeps it, a restart replaces it, a sidecar left by an earlier run is stopped, and Ctrl+C on the backend stops it.
|
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
import WebSocket from "ws";
|
|
2
2
|
import type { SseStream } from "./sse-stream";
|
|
3
|
+
export interface ChannelActor {
|
|
4
|
+
userId: string;
|
|
5
|
+
name: string;
|
|
6
|
+
}
|
|
3
7
|
export interface ChannelBridge {
|
|
4
8
|
id: string;
|
|
5
9
|
userId: string;
|
|
@@ -7,10 +11,11 @@ export interface ChannelBridge {
|
|
|
7
11
|
close: () => void;
|
|
8
12
|
}
|
|
9
13
|
export interface BridgeOptions {
|
|
10
|
-
|
|
14
|
+
actor: ChannelActor;
|
|
11
15
|
socket: WebSocket;
|
|
12
16
|
stream: SseStream;
|
|
13
17
|
onOpened: (bridge: ChannelBridge) => void;
|
|
14
18
|
onClosed: (bridge: ChannelBridge) => void;
|
|
15
19
|
}
|
|
20
|
+
export declare function isActorFrame(message: Buffer): boolean;
|
|
16
21
|
export declare function openBridge(options: BridgeOptions): ChannelBridge;
|
package/dist/channels/bridge.js
CHANGED
|
@@ -3,11 +3,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.isActorFrame = isActorFrame;
|
|
6
7
|
exports.openBridge = openBridge;
|
|
7
8
|
const node_crypto_1 = require("node:crypto");
|
|
8
9
|
const ws_1 = __importDefault(require("ws"));
|
|
9
10
|
const channels_1 = require("../constants/channels");
|
|
10
11
|
const EMPTY_PAYLOAD = "{}";
|
|
12
|
+
const ACTOR_FRAME_TYPE = "actor";
|
|
13
|
+
const ACTOR_SPELLING = Buffer.from(ACTOR_FRAME_TYPE);
|
|
14
|
+
const UNICODE_ESCAPE = Buffer.from("\\u");
|
|
11
15
|
function rawDataToText(data) {
|
|
12
16
|
if (Array.isArray(data))
|
|
13
17
|
return Buffer.concat(data).toString("utf8");
|
|
@@ -15,9 +19,32 @@ function rawDataToText(data) {
|
|
|
15
19
|
return data.toString("utf8");
|
|
16
20
|
return Buffer.from(new Uint8Array(data)).toString("utf8");
|
|
17
21
|
}
|
|
22
|
+
function mayBeActorFrame(message) {
|
|
23
|
+
return message.includes(ACTOR_SPELLING) || message.includes(UNICODE_ESCAPE);
|
|
24
|
+
}
|
|
25
|
+
function isActorFrame(message) {
|
|
26
|
+
if (!mayBeActorFrame(message))
|
|
27
|
+
return false;
|
|
28
|
+
try {
|
|
29
|
+
const frame = JSON.parse(message.toString("utf8"));
|
|
30
|
+
return frame?.type === ACTOR_FRAME_TYPE;
|
|
31
|
+
}
|
|
32
|
+
catch {
|
|
33
|
+
return false;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
function actorFrame(actor) {
|
|
37
|
+
return JSON.stringify({
|
|
38
|
+
type: ACTOR_FRAME_TYPE,
|
|
39
|
+
userId: actor.userId,
|
|
40
|
+
name: actor.name,
|
|
41
|
+
});
|
|
42
|
+
}
|
|
18
43
|
function forwardTo(socket, message) {
|
|
19
44
|
if (socket.readyState !== ws_1.default.OPEN)
|
|
20
45
|
return Promise.resolve(false);
|
|
46
|
+
if (isActorFrame(message))
|
|
47
|
+
return Promise.resolve(true);
|
|
21
48
|
return new Promise((resolve) => {
|
|
22
49
|
socket.send(message, { binary: false }, (error) => resolve(!error));
|
|
23
50
|
});
|
|
@@ -50,7 +77,7 @@ function openBridge(options) {
|
|
|
50
77
|
}
|
|
51
78
|
const bridge = {
|
|
52
79
|
id: (0, node_crypto_1.randomUUID)(),
|
|
53
|
-
userId: options.userId,
|
|
80
|
+
userId: options.actor.userId,
|
|
54
81
|
forward: (message) => forwardTo(socket, message),
|
|
55
82
|
close: teardown,
|
|
56
83
|
};
|
|
@@ -64,6 +91,7 @@ function openBridge(options) {
|
|
|
64
91
|
});
|
|
65
92
|
stream.onClose(teardown);
|
|
66
93
|
relayFrames(socket, stream);
|
|
94
|
+
socket.send(actorFrame(options.actor));
|
|
67
95
|
stream.send(channels_1.CHANNEL_EVENTS.READY, JSON.stringify({ connectionId: bridge.id }));
|
|
68
96
|
socket.resume();
|
|
69
97
|
return bridge;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bridge.js","sourceRoot":"","sources":["../../src/channels/bridge.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"bridge.js","sourceRoot":"","sources":["../../src/channels/bridge.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { HTTPResult, type RequestContext } from "@antelopejs/interface-api";
|
|
2
2
|
import type WebSocket from "ws";
|
|
3
|
+
import { type ChannelActor } from "./bridge";
|
|
3
4
|
export type SidecarConnector = () => Promise<WebSocket>;
|
|
4
|
-
export declare function openChannel(ctx: RequestContext,
|
|
5
|
+
export declare function openChannel(ctx: RequestContext, actor: ChannelActor, connect?: SidecarConnector): Promise<HTTPResult | undefined>;
|
|
5
6
|
export declare function postChannelMessage(connectionId: string, userId: string, message: Buffer): Promise<HTTPResult>;
|
|
@@ -19,7 +19,8 @@ async function tryConnect(connect) {
|
|
|
19
19
|
return null;
|
|
20
20
|
}
|
|
21
21
|
}
|
|
22
|
-
async function openChannel(ctx,
|
|
22
|
+
async function openChannel(ctx, actor, connect = sidecar_socket_1.connectSidecarSocket) {
|
|
23
|
+
const { userId } = actor;
|
|
23
24
|
if (!(0, registry_1.reserveSocket)(userId, channels_1.CHANNEL_MAX_SOCKETS_PER_USER)) {
|
|
24
25
|
return new interface_api_1.HTTPResult(channels_1.CHANNEL_STATUS.TOO_MANY_REQUESTS, TOO_MANY_STREAMS);
|
|
25
26
|
}
|
|
@@ -28,7 +29,7 @@ async function openChannel(ctx, userId, connect = sidecar_socket_1.connectSideca
|
|
|
28
29
|
return new interface_api_1.HTTPResult(channels_1.CHANNEL_STATUS.SERVICE_UNAVAILABLE, sidecar_1.SIDECAR_UNAVAILABLE_BODY);
|
|
29
30
|
}
|
|
30
31
|
(0, bridge_1.openBridge)({
|
|
31
|
-
|
|
32
|
+
actor,
|
|
32
33
|
socket,
|
|
33
34
|
stream: (0, sse_stream_1.openSseStream)(ctx),
|
|
34
35
|
onOpened: registry_1.trackBridge,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"channel-service.js","sourceRoot":"","sources":["../../src/channels/channel-service.ts"],"names":[],"mappings":";;AAwCA,
|
|
1
|
+
{"version":3,"file":"channel-service.js","sourceRoot":"","sources":["../../src/channels/channel-service.ts"],"names":[],"mappings":";;AAwCA,kCAwBC;AAOD,gDAgBC;AAvFD,6DAA4E;AAE5E,oDAG+B;AAC/B,kDAAgE;AAChE,gEAAmE;AACnE,qCAAyD;AACzD,yCAMoB;AACpB,6CAA6C;AAK7C,MAAM,kBAAkB,GAAG,EAAE,KAAK,EAAE,oBAAoB,EAAE,CAAC;AAC3D,MAAM,gBAAgB,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,CAAC;AAEvD,KAAK,UAAU,UAAU,CACvB,OAAyB;IAEzB,IAAI,CAAC;QACH,OAAO,MAAM,OAAO,EAAE,CAAC;IACzB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAQM,KAAK,UAAU,WAAW,CAC/B,GAAmB,EACnB,KAAmB,EACnB,UAA4B,qCAAoB;IAEhD,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;IACzB,IAAI,CAAC,IAAA,wBAAa,EAAC,MAAM,EAAE,uCAA4B,CAAC,EAAE,CAAC;QACzD,OAAO,IAAI,0BAAU,CAAC,yBAAc,CAAC,iBAAiB,EAAE,gBAAgB,CAAC,CAAC;IAC5E,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAA,wBAAa,EAAC,MAAM,CAAC,CAAC,CAAC;IAC9E,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACpB,OAAO,IAAI,0BAAU,CACnB,yBAAc,CAAC,mBAAmB,EAClC,kCAAwB,CACzB,CAAC;IACJ,CAAC;IACD,IAAA,mBAAU,EAAC;QACT,KAAK;QACL,MAAM;QACN,MAAM,EAAE,IAAA,0BAAa,EAAC,GAAG,CAAC;QAC1B,QAAQ,EAAE,sBAAW;QACrB,QAAQ,EAAE,uBAAY;KACvB,CAAC,CAAC;IACH,OAAO,SAAS,CAAC;AACnB,CAAC;AAOM,KAAK,UAAU,kBAAkB,CACtC,YAAoB,EACpB,MAAc,EACd,OAAe;IAEf,MAAM,MAAM,GAAG,IAAA,0BAAe,EAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IACrD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO,IAAI,0BAAU,CAAC,yBAAc,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAAC;IACtE,CAAC;IACD,IAAI,CAAC,CAAC,MAAM,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;QACrC,OAAO,IAAI,0BAAU,CACnB,yBAAc,CAAC,mBAAmB,EAClC,kCAAwB,CACzB,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,0BAAU,CAAC,yBAAc,CAAC,QAAQ,CAAC,CAAC;AACjD,CAAC"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import type { RequestContext } from "@antelopejs/interface-api";
|
|
2
|
-
|
|
2
|
+
interface SseSink {
|
|
3
3
|
write(chunk: string): boolean;
|
|
4
4
|
end(): void;
|
|
5
5
|
once(event: "drain", listener: () => void): unknown;
|
|
6
6
|
}
|
|
7
|
-
|
|
7
|
+
interface SseSource {
|
|
8
8
|
sink: SseSink;
|
|
9
9
|
onClientGone: (listener: () => void) => void;
|
|
10
10
|
}
|
|
@@ -17,3 +17,4 @@ export interface SseStream {
|
|
|
17
17
|
}
|
|
18
18
|
export declare function createSseStream(source: SseSource): SseStream;
|
|
19
19
|
export declare function openSseStream(ctx: RequestContext): SseStream;
|
|
20
|
+
export {};
|
package/dist/config.d.ts
CHANGED
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
export interface AIConfig {
|
|
2
2
|
backendUrl?: string;
|
|
3
|
-
hostOrigin?: string;
|
|
4
3
|
}
|
|
5
4
|
export declare function parseConfig(raw: unknown): AIConfig;
|
|
6
|
-
export declare function hasDeprecatedHostOrigin(raw: unknown): boolean;
|
|
7
5
|
export declare function setConfig(config: AIConfig): void;
|
|
8
6
|
export declare function getConfig(): AIConfig;
|
package/dist/config.js
CHANGED
|
@@ -1,11 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.parseConfig = parseConfig;
|
|
4
|
-
exports.hasDeprecatedHostOrigin = hasDeprecatedHostOrigin;
|
|
5
4
|
exports.setConfig = setConfig;
|
|
6
5
|
exports.getConfig = getConfig;
|
|
7
6
|
const CONFIG_KEYS = ["backendUrl"];
|
|
8
|
-
const DEPRECATED_HOST_ORIGIN_KEY = "hostOrigin";
|
|
9
7
|
let current = {};
|
|
10
8
|
function readOrigin(raw, key) {
|
|
11
9
|
const value = raw[key];
|
|
@@ -26,11 +24,6 @@ function parseConfig(raw) {
|
|
|
26
24
|
}
|
|
27
25
|
return parsed;
|
|
28
26
|
}
|
|
29
|
-
function hasDeprecatedHostOrigin(raw) {
|
|
30
|
-
if (raw === null || typeof raw !== "object")
|
|
31
|
-
return false;
|
|
32
|
-
return (raw[DEPRECATED_HOST_ORIGIN_KEY] !== undefined);
|
|
33
|
-
}
|
|
34
27
|
function setConfig(config) {
|
|
35
28
|
current = config;
|
|
36
29
|
}
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":";;AAwBA,kCASC;AAED,8BAEC;AAED,8BAEC;AAnCD,MAAM,WAAW,GAAG,CAAC,YAAY,CAAU,CAAC;AAE5C,IAAI,OAAO,GAAa,EAAE,CAAC;AAE3B,SAAS,UAAU,CACjB,GAA4B,EAC5B,GAAW;IAEX,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;IACvB,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IAChD,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC7B,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;AAClD,CAAC;AAMD,SAAgB,WAAW,CAAC,GAAY;IACtC,IAAI,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,EAAE,CAAC;IACvD,MAAM,MAAM,GAAG,GAA8B,CAAC;IAC9C,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACvC,IAAI,MAAM,KAAK,SAAS;YAAE,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;IACjD,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAgB,SAAS,CAAC,MAAgB;IACxC,OAAO,GAAG,MAAM,CAAC;AACnB,CAAC;AAED,SAAgB,SAAS;IACvB,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare const HTTP_STATUS: {
|
|
2
|
+
readonly OK: 200;
|
|
3
|
+
readonly NO_CONTENT: 204;
|
|
4
|
+
readonly BAD_REQUEST: 400;
|
|
5
|
+
readonly UNAVAILABLE: 503;
|
|
6
|
+
};
|
|
7
|
+
export declare const ASSISTANT_UNAVAILABLE_MESSAGE = "The assistant isn't running.";
|
|
8
|
+
export declare const ASSISTANT_REFUSED_MESSAGE = "The assistant refused the request.";
|
|
9
|
+
export declare const CSV_CONTENT_TYPE = "text/csv; charset=utf-8";
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CSV_CONTENT_TYPE = exports.ASSISTANT_REFUSED_MESSAGE = exports.ASSISTANT_UNAVAILABLE_MESSAGE = exports.HTTP_STATUS = void 0;
|
|
4
|
+
const sidecar_1 = require("./sidecar");
|
|
5
|
+
exports.HTTP_STATUS = {
|
|
6
|
+
OK: 200,
|
|
7
|
+
NO_CONTENT: 204,
|
|
8
|
+
BAD_REQUEST: 400,
|
|
9
|
+
UNAVAILABLE: sidecar_1.SIDECAR_UNAVAILABLE_STATUS,
|
|
10
|
+
};
|
|
11
|
+
exports.ASSISTANT_UNAVAILABLE_MESSAGE = "The assistant isn't running.";
|
|
12
|
+
exports.ASSISTANT_REFUSED_MESSAGE = "The assistant refused the request.";
|
|
13
|
+
exports.CSV_CONTENT_TYPE = "text/csv; charset=utf-8";
|
|
14
|
+
//# sourceMappingURL=http.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/constants/http.ts"],"names":[],"mappings":";;;AAAA,uCAAuD;AAE1C,QAAA,WAAW,GAAG;IACzB,EAAE,EAAE,GAAG;IACP,UAAU,EAAE,GAAG;IACf,WAAW,EAAE,GAAG;IAChB,WAAW,EAAE,oCAA0B;CAC/B,CAAC;AAGE,QAAA,6BAA6B,GAAG,8BAA8B,CAAC;AAE/D,QAAA,yBAAyB,GAAG,oCAAoC,CAAC;AAEjE,QAAA,gBAAgB,GAAG,yBAAyB,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export declare const I18N_PREFIX = "$dms_ai";
|
|
2
|
+
export declare const I18N_SECTIONS: {
|
|
3
|
+
readonly MODULE: "module";
|
|
4
|
+
readonly PAGES: "pages";
|
|
5
|
+
readonly BLOCKS: "blocks";
|
|
6
|
+
readonly ACTIVITY: "activity";
|
|
7
|
+
readonly SETTINGS: "settings";
|
|
8
|
+
readonly SKILLS: "skills";
|
|
9
|
+
readonly STATUS: "status";
|
|
10
|
+
readonly CHANGES_TABLE: "changes_table";
|
|
11
|
+
};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.I18N_SECTIONS = exports.I18N_PREFIX = void 0;
|
|
4
|
+
exports.I18N_PREFIX = "$dms_ai";
|
|
5
|
+
exports.I18N_SECTIONS = {
|
|
6
|
+
MODULE: "module",
|
|
7
|
+
PAGES: "pages",
|
|
8
|
+
BLOCKS: "blocks",
|
|
9
|
+
ACTIVITY: "activity",
|
|
10
|
+
SETTINGS: "settings",
|
|
11
|
+
SKILLS: "skills",
|
|
12
|
+
STATUS: "status",
|
|
13
|
+
CHANGES_TABLE: "changes_table",
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=i18n.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"i18n.js","sourceRoot":"","sources":["../../src/constants/i18n.ts"],"names":[],"mappings":";;;AACa,QAAA,WAAW,GAAG,SAAS,CAAC;AAExB,QAAA,aAAa,GAAG;IAC3B,MAAM,EAAE,QAAQ;IAChB,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,QAAQ;IAChB,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;IACpB,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;IAChB,aAAa,EAAE,eAAe;CACtB,CAAC"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
export declare const AI_MODULE_ICON = "i-ph-sparkle";
|
|
2
|
+
export declare const AI_MODULE_LANDING_PAGE = "overview";
|
|
3
|
+
export declare const PAGE_IDS: {
|
|
4
|
+
readonly OVERVIEW: "overview";
|
|
5
|
+
readonly CHANGES: "changes";
|
|
6
|
+
readonly ACTIVITY: "activity";
|
|
7
|
+
readonly SKILLS: "skills";
|
|
8
|
+
readonly SETTINGS: "settings";
|
|
9
|
+
};
|
|
10
|
+
export declare const PAGE_ORDER: {
|
|
11
|
+
readonly OVERVIEW: 0;
|
|
12
|
+
readonly CHANGES: 1;
|
|
13
|
+
readonly ACTIVITY: 2;
|
|
14
|
+
readonly SKILLS: 3;
|
|
15
|
+
readonly SETTINGS: 4;
|
|
16
|
+
};
|
|
17
|
+
export declare const OVERVIEW_PERIOD_SCOPE = "ai-overview";
|
|
18
|
+
export declare const RECENT_CHANGE_SETS = 4;
|
|
19
|
+
export declare const TOP_TOOLS_LIMIT = 5;
|
|
20
|
+
export declare const ACTIVITY_PAGE_SIZE = 25;
|
|
21
|
+
export declare const SETTINGS_SKILLS_SECTION = "skills";
|
|
22
|
+
export declare const PAGE_ROUTES: {
|
|
23
|
+
readonly STATUS: "/ai/status";
|
|
24
|
+
readonly STATUS_FACTS: "/ai/status/facts";
|
|
25
|
+
readonly STATUS_BANNER: "/ai/status/banner";
|
|
26
|
+
readonly SIDECAR_RESTART: "/ai/sidecar/restart";
|
|
27
|
+
readonly KPI: "/ai/metrics/kpi";
|
|
28
|
+
readonly SERIES: "/ai/metrics/series";
|
|
29
|
+
readonly ALLOWED: "/ai/metrics/allowed";
|
|
30
|
+
readonly TOP_TOOLS: "/ai/metrics/top-tools?limit=5";
|
|
31
|
+
readonly USAGE: "/ai/metrics/usage?days=14";
|
|
32
|
+
readonly USAGE_SUMMARY: "/ai/metrics/usage/summary?days=14";
|
|
33
|
+
readonly CHANGES: "/ai/changes";
|
|
34
|
+
readonly RECENT_CHANGES: "/ai/recent-changes";
|
|
35
|
+
readonly CHANGE_UNDO: "/ai/changes/{_id}/undo";
|
|
36
|
+
readonly CHANGE_UNDO_CONFIRM: "/ai/changes/{id}/undo-confirm";
|
|
37
|
+
readonly CHANGE_REDO: "/ai/changes/{_id}/redo";
|
|
38
|
+
readonly ACTIVITY: "/ai/activity";
|
|
39
|
+
readonly ACTIVITY_EXPORT: "/ai/activity/export.csv";
|
|
40
|
+
readonly SKILLS_CATALOG: "/ai/skills/catalog";
|
|
41
|
+
readonly SKILL_CONFLICTS: "/ai/skills/conflicts";
|
|
42
|
+
readonly SETTINGS: "/ai/settings";
|
|
43
|
+
};
|
|
44
|
+
export declare const PAGE_LINKS: {
|
|
45
|
+
readonly CHANGES: "/modules/ai/changes";
|
|
46
|
+
readonly CHANGE_SET: "/modules/ai/changes?set={_id}";
|
|
47
|
+
readonly ACTIVITY: "/modules/ai/activity";
|
|
48
|
+
readonly SETTINGS: "/modules/ai/settings";
|
|
49
|
+
readonly SKILL_SETTINGS: "/modules/ai/settings#dms-form-settings-section-skills";
|
|
50
|
+
};
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PAGE_LINKS = exports.PAGE_ROUTES = exports.SETTINGS_SKILLS_SECTION = exports.ACTIVITY_PAGE_SIZE = exports.TOP_TOOLS_LIMIT = exports.RECENT_CHANGE_SETS = exports.OVERVIEW_PERIOD_SCOPE = exports.PAGE_ORDER = exports.PAGE_IDS = exports.AI_MODULE_LANDING_PAGE = exports.AI_MODULE_ICON = void 0;
|
|
4
|
+
const module_1 = require("./module");
|
|
5
|
+
exports.AI_MODULE_ICON = "i-ph-sparkle";
|
|
6
|
+
exports.AI_MODULE_LANDING_PAGE = "overview";
|
|
7
|
+
const MODULE_PAGES_PATH = "/modules/ai";
|
|
8
|
+
exports.PAGE_IDS = {
|
|
9
|
+
OVERVIEW: "overview",
|
|
10
|
+
CHANGES: "changes",
|
|
11
|
+
ACTIVITY: "activity",
|
|
12
|
+
SKILLS: "skills",
|
|
13
|
+
SETTINGS: "settings",
|
|
14
|
+
};
|
|
15
|
+
exports.PAGE_ORDER = {
|
|
16
|
+
OVERVIEW: 0,
|
|
17
|
+
CHANGES: 1,
|
|
18
|
+
ACTIVITY: 2,
|
|
19
|
+
SKILLS: 3,
|
|
20
|
+
SETTINGS: 4,
|
|
21
|
+
};
|
|
22
|
+
exports.OVERVIEW_PERIOD_SCOPE = "ai-overview";
|
|
23
|
+
exports.RECENT_CHANGE_SETS = 4;
|
|
24
|
+
exports.TOP_TOOLS_LIMIT = 5;
|
|
25
|
+
exports.ACTIVITY_PAGE_SIZE = 25;
|
|
26
|
+
const USAGE_DAYS = 14;
|
|
27
|
+
const SETTINGS_FORM_KEY = "settings";
|
|
28
|
+
exports.SETTINGS_SKILLS_SECTION = "skills";
|
|
29
|
+
exports.PAGE_ROUTES = {
|
|
30
|
+
STATUS: `${module_1.ROUTE_PREFIX}/status`,
|
|
31
|
+
STATUS_FACTS: `${module_1.ROUTE_PREFIX}/status/facts`,
|
|
32
|
+
STATUS_BANNER: `${module_1.ROUTE_PREFIX}/status/banner`,
|
|
33
|
+
SIDECAR_RESTART: `${module_1.ROUTE_PREFIX}/sidecar/restart`,
|
|
34
|
+
KPI: `${module_1.ROUTE_PREFIX}/metrics/kpi`,
|
|
35
|
+
SERIES: `${module_1.ROUTE_PREFIX}/metrics/series`,
|
|
36
|
+
ALLOWED: `${module_1.ROUTE_PREFIX}/metrics/allowed`,
|
|
37
|
+
TOP_TOOLS: `${module_1.ROUTE_PREFIX}/metrics/top-tools?limit=${exports.TOP_TOOLS_LIMIT}`,
|
|
38
|
+
USAGE: `${module_1.ROUTE_PREFIX}/metrics/usage?days=${USAGE_DAYS}`,
|
|
39
|
+
USAGE_SUMMARY: `${module_1.ROUTE_PREFIX}/metrics/usage/summary?days=${USAGE_DAYS}`,
|
|
40
|
+
CHANGES: `${module_1.ROUTE_PREFIX}/changes`,
|
|
41
|
+
RECENT_CHANGES: `${module_1.ROUTE_PREFIX}/recent-changes`,
|
|
42
|
+
CHANGE_UNDO: `${module_1.ROUTE_PREFIX}/changes/{_id}/undo`,
|
|
43
|
+
CHANGE_UNDO_CONFIRM: `${module_1.ROUTE_PREFIX}/changes/{id}/undo-confirm`,
|
|
44
|
+
CHANGE_REDO: `${module_1.ROUTE_PREFIX}/changes/{_id}/redo`,
|
|
45
|
+
ACTIVITY: `${module_1.ROUTE_PREFIX}/activity`,
|
|
46
|
+
ACTIVITY_EXPORT: `${module_1.ROUTE_PREFIX}/activity/export.csv`,
|
|
47
|
+
SKILLS_CATALOG: `${module_1.ROUTE_PREFIX}/skills/catalog`,
|
|
48
|
+
SKILL_CONFLICTS: `${module_1.ROUTE_PREFIX}/skills/conflicts`,
|
|
49
|
+
SETTINGS: `${module_1.ROUTE_PREFIX}/settings`,
|
|
50
|
+
};
|
|
51
|
+
exports.PAGE_LINKS = {
|
|
52
|
+
CHANGES: `${MODULE_PAGES_PATH}/${exports.PAGE_IDS.CHANGES}`,
|
|
53
|
+
CHANGE_SET: `${MODULE_PAGES_PATH}/${exports.PAGE_IDS.CHANGES}?set={_id}`,
|
|
54
|
+
ACTIVITY: `${MODULE_PAGES_PATH}/${exports.PAGE_IDS.ACTIVITY}`,
|
|
55
|
+
SETTINGS: `${MODULE_PAGES_PATH}/${exports.PAGE_IDS.SETTINGS}`,
|
|
56
|
+
SKILL_SETTINGS: `${MODULE_PAGES_PATH}/${exports.PAGE_IDS.SETTINGS}#dms-form-${SETTINGS_FORM_KEY}-section-${exports.SETTINGS_SKILLS_SECTION}`,
|
|
57
|
+
};
|
|
58
|
+
//# sourceMappingURL=pages.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pages.js","sourceRoot":"","sources":["../../src/constants/pages.ts"],"names":[],"mappings":";;;AAAA,qCAAwC;AAE3B,QAAA,cAAc,GAAG,cAAc,CAAC;AAChC,QAAA,sBAAsB,GAAG,UAAU,CAAC;AAGjD,MAAM,iBAAiB,GAAG,aAAa,CAAC;AAE3B,QAAA,QAAQ,GAAG;IACtB,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,UAAU;IACpB,MAAM,EAAE,QAAQ;IAChB,QAAQ,EAAE,UAAU;CACZ,CAAC;AAEE,QAAA,UAAU,GAAG;IACxB,QAAQ,EAAE,CAAC;IACX,OAAO,EAAE,CAAC;IACV,QAAQ,EAAE,CAAC;IACX,MAAM,EAAE,CAAC;IACT,QAAQ,EAAE,CAAC;CACH,CAAC;AAGE,QAAA,qBAAqB,GAAG,aAAa,CAAC;AAGtC,QAAA,kBAAkB,GAAG,CAAC,CAAC;AAEvB,QAAA,eAAe,GAAG,CAAC,CAAC;AAEpB,QAAA,kBAAkB,GAAG,EAAE,CAAC;AAErC,MAAM,UAAU,GAAG,EAAE,CAAC;AAGtB,MAAM,iBAAiB,GAAG,UAAU,CAAC;AACxB,QAAA,uBAAuB,GAAG,QAAQ,CAAC;AAGnC,QAAA,WAAW,GAAG;IACzB,MAAM,EAAE,GAAG,qBAAY,SAAS;IAChC,YAAY,EAAE,GAAG,qBAAY,eAAe;IAC5C,aAAa,EAAE,GAAG,qBAAY,gBAAgB;IAC9C,eAAe,EAAE,GAAG,qBAAY,kBAAkB;IAClD,GAAG,EAAE,GAAG,qBAAY,cAAc;IAClC,MAAM,EAAE,GAAG,qBAAY,iBAAiB;IACxC,OAAO,EAAE,GAAG,qBAAY,kBAAkB;IAC1C,SAAS,EAAE,GAAG,qBAAY,4BAA4B,uBAAe,EAAE;IACvE,KAAK,EAAE,GAAG,qBAAY,uBAAuB,UAAU,EAAE;IACzD,aAAa,EAAE,GAAG,qBAAY,+BAA+B,UAAU,EAAE;IACzE,OAAO,EAAE,GAAG,qBAAY,UAAU;IAClC,cAAc,EAAE,GAAG,qBAAY,iBAAiB;IAChD,WAAW,EAAE,GAAG,qBAAY,qBAAqB;IACjD,mBAAmB,EAAE,GAAG,qBAAY,4BAA4B;IAChE,WAAW,EAAE,GAAG,qBAAY,qBAAqB;IACjD,QAAQ,EAAE,GAAG,qBAAY,WAAW;IACpC,eAAe,EAAE,GAAG,qBAAY,sBAAsB;IACtD,cAAc,EAAE,GAAG,qBAAY,iBAAiB;IAChD,eAAe,EAAE,GAAG,qBAAY,mBAAmB;IACnD,QAAQ,EAAE,GAAG,qBAAY,WAAW;CAC5B,CAAC;AAGE,QAAA,UAAU,GAAG;IACxB,OAAO,EAAE,GAAG,iBAAiB,IAAI,gBAAQ,CAAC,OAAO,EAAE;IACnD,UAAU,EAAE,GAAG,iBAAiB,IAAI,gBAAQ,CAAC,OAAO,YAAY;IAChE,QAAQ,EAAE,GAAG,iBAAiB,IAAI,gBAAQ,CAAC,QAAQ,EAAE;IACrD,QAAQ,EAAE,GAAG,iBAAiB,IAAI,gBAAQ,CAAC,QAAQ,EAAE;IACrD,cAAc,EAAE,GAAG,iBAAiB,IAAI,gBAAQ,CAAC,QAAQ,aAAa,iBAAiB,YAAY,+BAAuB,EAAE;CACpH,CAAC"}
|
|
@@ -14,6 +14,9 @@ export declare const SIDECAR_LOG_FILE_NAME = "sidecar.log";
|
|
|
14
14
|
export declare const SIDECAR_HEALTH_PATH = "/health";
|
|
15
15
|
export declare const SIDECAR_HEALTH_TIMEOUT_MS = 1000;
|
|
16
16
|
export declare const SIDECAR_LOCK_POLL_INTERVAL_MS = 100;
|
|
17
|
+
export declare const SIDECAR_STOP_TIMEOUT_MS = 5000;
|
|
18
|
+
export declare const SIDECAR_EXIT_POLL_INTERVAL_MS = 100;
|
|
19
|
+
export declare const SIDECAR_OWNER_KEY = "@antelopejs/dms-ai/sidecar-owner";
|
|
17
20
|
export declare const SIDECAR_BUILD_ID_FLAG = "--build-id";
|
|
18
21
|
export declare const SIDECAR_MODULE_ROOTS_FLAG = "--module-roots";
|
|
19
22
|
export declare const SIDECAR_SKILL_DIRS_FLAG = "--skill-dirs";
|
|
@@ -28,4 +31,3 @@ export declare const SIDECAR_UNAVAILABLE_STATUS = 503;
|
|
|
28
31
|
export declare const SIDECAR_UNAVAILABLE_BODY: {
|
|
29
32
|
error: string;
|
|
30
33
|
};
|
|
31
|
-
export declare const HOST_ORIGIN_DEPRECATION_WARNING = "[dms-ai] the \"hostOrigin\" config option is deprecated and ignored: remove it from the module config.";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.SIDECAR_UNAVAILABLE_BODY = exports.SIDECAR_UNAVAILABLE_STATUS = exports.SIDECAR_AUTH_HEADER = exports.SIDECAR_LOOPBACK_HOST = exports.SIDECAR_BUILD_ID_HASH_ALGORITHM = exports.SIDECAR_DIST_EXTENSION = exports.MODULE_ROOTS_TIMEOUT_MS = exports.SIDECAR_BACKEND_URL_FLAG = exports.SIDECAR_BUILDER_FLAG = exports.SIDECAR_SKILL_DIRS_FLAG = exports.SIDECAR_MODULE_ROOTS_FLAG = exports.SIDECAR_BUILD_ID_FLAG = exports.SIDECAR_OWNER_KEY = exports.SIDECAR_EXIT_POLL_INTERVAL_MS = exports.SIDECAR_STOP_TIMEOUT_MS = exports.SIDECAR_LOCK_POLL_INTERVAL_MS = exports.SIDECAR_HEALTH_TIMEOUT_MS = exports.SIDECAR_HEALTH_PATH = exports.SIDECAR_LOG_FILE_NAME = exports.SIDECAR_LOCK_FILE_NAME = exports.SIDECAR_CACHE_DIR_SEGMENTS = exports.SIDECAR_SUCCESS_EXIT_CODE = exports.SIDECAR_DIST_REL = exports.SIDECAR_ENV_DISABLE_KEY = exports.SIDECAR_DISABLED_FLAG = exports.SIDECAR_LOG_PREFIX = exports.SIDECAR_RESPAWN_DELAY_MS = exports.SIDECAR_RESPAWN_WINDOW_MS = exports.SIDECAR_RESPAWN_MAX = exports.SIDECAR_SPAWN_TIMEOUT_MS = exports.SIDECAR_BIN_NAME = void 0;
|
|
4
4
|
exports.SIDECAR_BIN_NAME = "dms-ai-sidecar";
|
|
5
5
|
exports.SIDECAR_SPAWN_TIMEOUT_MS = 10_000;
|
|
6
6
|
exports.SIDECAR_RESPAWN_MAX = 3;
|
|
@@ -21,6 +21,9 @@ exports.SIDECAR_LOG_FILE_NAME = "sidecar.log";
|
|
|
21
21
|
exports.SIDECAR_HEALTH_PATH = "/health";
|
|
22
22
|
exports.SIDECAR_HEALTH_TIMEOUT_MS = 1000;
|
|
23
23
|
exports.SIDECAR_LOCK_POLL_INTERVAL_MS = 100;
|
|
24
|
+
exports.SIDECAR_STOP_TIMEOUT_MS = 5_000;
|
|
25
|
+
exports.SIDECAR_EXIT_POLL_INTERVAL_MS = 100;
|
|
26
|
+
exports.SIDECAR_OWNER_KEY = "@antelopejs/dms-ai/sidecar-owner";
|
|
24
27
|
exports.SIDECAR_BUILD_ID_FLAG = "--build-id";
|
|
25
28
|
exports.SIDECAR_MODULE_ROOTS_FLAG = "--module-roots";
|
|
26
29
|
exports.SIDECAR_SKILL_DIRS_FLAG = "--skill-dirs";
|
|
@@ -33,5 +36,4 @@ exports.SIDECAR_LOOPBACK_HOST = "127.0.0.1";
|
|
|
33
36
|
exports.SIDECAR_AUTH_HEADER = "x-dms-ai-token";
|
|
34
37
|
exports.SIDECAR_UNAVAILABLE_STATUS = 503;
|
|
35
38
|
exports.SIDECAR_UNAVAILABLE_BODY = { error: "sidecar_unavailable" };
|
|
36
|
-
exports.HOST_ORIGIN_DEPRECATION_WARNING = `${exports.SIDECAR_LOG_PREFIX} the "hostOrigin" config option is deprecated and ignored: remove it from the module config.`;
|
|
37
39
|
//# sourceMappingURL=sidecar.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sidecar.js","sourceRoot":"","sources":["../../src/constants/sidecar.ts"],"names":[],"mappings":";;;AAAa,QAAA,gBAAgB,GAAG,gBAAgB,CAAC;AACpC,QAAA,wBAAwB,GAAG,MAAM,CAAC;AAClC,QAAA,mBAAmB,GAAG,CAAC,CAAC;AACxB,QAAA,yBAAyB,GAAG,MAAM,CAAC;AACnC,QAAA,wBAAwB,GAAG,GAAG,CAAC;AAC/B,QAAA,kBAAkB,GAAG,UAAU,CAAC;AAChC,QAAA,qBAAqB,GAAG,GAAG,CAAC;AAC5B,QAAA,uBAAuB,GAAG,QAAQ,CAAC;AACnC,QAAA,gBAAgB,GAAG,6BAA6B,CAAC;AACjD,QAAA,yBAAyB,GAAG,CAAC,CAAC;AAC9B,QAAA,0BAA0B,GAAG;IACxC,cAAc;IACd,QAAQ;IACR,QAAQ;CACA,CAAC;AACE,QAAA,sBAAsB,GAAG,cAAc,CAAC;AACxC,QAAA,qBAAqB,GAAG,aAAa,CAAC;AACtC,QAAA,mBAAmB,GAAG,SAAS,CAAC;AAChC,QAAA,yBAAyB,GAAG,IAAI,CAAC;AACjC,QAAA,6BAA6B,GAAG,GAAG,CAAC;AACpC,QAAA,qBAAqB,GAAG,YAAY,CAAC;AACrC,QAAA,yBAAyB,GAAG,gBAAgB,CAAC;AAC7C,QAAA,uBAAuB,GAAG,cAAc,CAAC;AACzC,QAAA,oBAAoB,GAAG,mBAAmB,CAAC;AAC3C,QAAA,wBAAwB,GAAG,eAAe,CAAC;AAC3C,QAAA,uBAAuB,GAAG,KAAK,CAAC;AAChC,QAAA,sBAAsB,GAAG,KAAK,CAAC;AAC/B,QAAA,+BAA+B,GAAG,QAAQ,CAAC;AAC3C,QAAA,qBAAqB,GAAG,WAAW,CAAC;AACpC,QAAA,mBAAmB,GAAG,gBAAgB,CAAC;AAGvC,QAAA,0BAA0B,GAAG,GAAG,CAAC;AACjC,QAAA,wBAAwB,GAAG,EAAE,KAAK,EAAE,qBAAqB,EAAE,CAAC
|
|
1
|
+
{"version":3,"file":"sidecar.js","sourceRoot":"","sources":["../../src/constants/sidecar.ts"],"names":[],"mappings":";;;AAAa,QAAA,gBAAgB,GAAG,gBAAgB,CAAC;AACpC,QAAA,wBAAwB,GAAG,MAAM,CAAC;AAClC,QAAA,mBAAmB,GAAG,CAAC,CAAC;AACxB,QAAA,yBAAyB,GAAG,MAAM,CAAC;AACnC,QAAA,wBAAwB,GAAG,GAAG,CAAC;AAC/B,QAAA,kBAAkB,GAAG,UAAU,CAAC;AAChC,QAAA,qBAAqB,GAAG,GAAG,CAAC;AAC5B,QAAA,uBAAuB,GAAG,QAAQ,CAAC;AACnC,QAAA,gBAAgB,GAAG,6BAA6B,CAAC;AACjD,QAAA,yBAAyB,GAAG,CAAC,CAAC;AAC9B,QAAA,0BAA0B,GAAG;IACxC,cAAc;IACd,QAAQ;IACR,QAAQ;CACA,CAAC;AACE,QAAA,sBAAsB,GAAG,cAAc,CAAC;AACxC,QAAA,qBAAqB,GAAG,aAAa,CAAC;AACtC,QAAA,mBAAmB,GAAG,SAAS,CAAC;AAChC,QAAA,yBAAyB,GAAG,IAAI,CAAC;AACjC,QAAA,6BAA6B,GAAG,GAAG,CAAC;AACpC,QAAA,uBAAuB,GAAG,KAAK,CAAC;AAChC,QAAA,6BAA6B,GAAG,GAAG,CAAC;AACpC,QAAA,iBAAiB,GAAG,kCAAkC,CAAC;AACvD,QAAA,qBAAqB,GAAG,YAAY,CAAC;AACrC,QAAA,yBAAyB,GAAG,gBAAgB,CAAC;AAC7C,QAAA,uBAAuB,GAAG,cAAc,CAAC;AACzC,QAAA,oBAAoB,GAAG,mBAAmB,CAAC;AAC3C,QAAA,wBAAwB,GAAG,eAAe,CAAC;AAC3C,QAAA,uBAAuB,GAAG,KAAK,CAAC;AAChC,QAAA,sBAAsB,GAAG,KAAK,CAAC;AAC/B,QAAA,+BAA+B,GAAG,QAAQ,CAAC;AAC3C,QAAA,qBAAqB,GAAG,WAAW,CAAC;AACpC,QAAA,mBAAmB,GAAG,gBAAgB,CAAC;AAGvC,QAAA,0BAA0B,GAAG,GAAG,CAAC;AACjC,QAAA,wBAAwB,GAAG,EAAE,KAAK,EAAE,qBAAqB,EAAE,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -20,15 +20,7 @@ const spawn_sidecar_1 = require("./lifecycle/spawn-sidecar");
|
|
|
20
20
|
const log_buffer_1 = require("./logging/log-buffer");
|
|
21
21
|
require("./pages");
|
|
22
22
|
require("./routes");
|
|
23
|
-
let hasWarnedHostOrigin = false;
|
|
24
|
-
function warnDeprecatedHostOrigin(config) {
|
|
25
|
-
if (hasWarnedHostOrigin || !(0, config_1.hasDeprecatedHostOrigin)(config))
|
|
26
|
-
return;
|
|
27
|
-
hasWarnedHostOrigin = true;
|
|
28
|
-
logging_1.Logging.Warn(sidecar_1.HOST_ORIGIN_DEPRECATION_WARNING);
|
|
29
|
-
}
|
|
30
23
|
function construct(config) {
|
|
31
|
-
warnDeprecatedHostOrigin(config);
|
|
32
24
|
(0, config_1.setConfig)((0, config_1.parseConfig)(config));
|
|
33
25
|
}
|
|
34
26
|
async function start() {
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;AAmBA,8BAEC;AAED,sBAyBC;AAOD,0BAEC;AAzDD,0DAA6B;AAC7B,gEAA6D;AAC7D,yDAAmE;AACnE,iDAAwD;AACxD,kDAAsD;AACtD,qCAA6D;AAC7D,iEAIqC;AACrC,iDAAyD;AACzD,2DAA8D;AAC9D,6DAAgE;AAChE,6DAAyD;AACzD,qDAAuD;AACvD,mBAAiB;AACjB,oBAAkB;AAElB,SAAgB,SAAS,CAAC,MAAe;IACvC,IAAA,kBAAS,EAAC,IAAA,oBAAW,EAAC,MAAM,CAAC,CAAC,CAAC;AACjC,CAAC;AAEM,KAAK,UAAU,KAAK;IACzB,IAAA,4BAAe,GAAE,CAAC;IAClB,MAAM,IAAA,wBAAiB,EAAC;QACtB,IAAI,EAAE,sCAAoB;QAC1B,UAAU,EAAE,mBAAI,CAAC,IAAI,CAAC,SAAS,EAAE,qCAAmB,CAAC;QACrD,QAAQ,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE;QACvC,QAAQ,EAAE,0CAAwB;KACnC,CAAC,CAAC;IAIH,MAAM,CAAC,WAAW,EAAE,SAAS,EAAE,cAAc,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACjE,IAAA,iCAAkB,GAAE;QACpB,IAAA,mCAAmB,GAAE;QACrB,IAAA,6BAAkB,GAAE;KACrB,CAAC,CAAC;IACH,KAAK,IAAA,4BAAY,EAAC;QAChB,eAAe,EAAE,OAAO,CAAC,GAAG,EAAE;QAC9B,GAAG,IAAA,kBAAS,GAAE;QACd,WAAW;QACX,SAAS;QACT,cAAc;KACf,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;QACf,iBAAO,CAAC,KAAK,CAAC,GAAG,4BAAkB,gBAAgB,EAAE,GAAG,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;AACL,CAAC;AAOD,SAAgB,OAAO;IACrB,IAAA,0BAAe,GAAE,CAAC;AACpB,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { ChildProcess } from "node:child_process";
|
|
2
|
+
export interface SidecarLaunch {
|
|
3
|
+
buildId: string;
|
|
4
|
+
spawn(): Promise<ChildProcess | null>;
|
|
5
|
+
waitForPort(pid: number): Promise<number | null>;
|
|
6
|
+
}
|
|
7
|
+
export interface SidecarOwner {
|
|
8
|
+
attach(launch: SidecarLaunch): Promise<void>;
|
|
9
|
+
revive(): Promise<void>;
|
|
10
|
+
restart(): Promise<void>;
|
|
11
|
+
getPort(): number | null;
|
|
12
|
+
hasGivenUp(): boolean;
|
|
13
|
+
}
|
|
14
|
+
export declare function getSidecarOwner(): SidecarOwner;
|