@agimon-ai/po-web-dashboard 0.0.0-alpha.0 → 0.0.0-alpha.2

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.
Files changed (101) hide show
  1. package/dist/core.cjs +30 -0
  2. package/dist/core.d.mts +10 -2
  3. package/dist/core.mjs +10 -2
  4. package/dist/index.cjs +11 -4
  5. package/dist/index.d.mts +9 -7
  6. package/dist/index.mjs +4 -2
  7. package/dist/types/auth.cjs.map +1 -1
  8. package/dist/types/auth.d.mts +2 -0
  9. package/dist/types/auth.d.mts.map +1 -1
  10. package/dist/types/auth.mjs.map +1 -1
  11. package/dist/views.cjs +1 -1
  12. package/dist/views.d.mts +1 -1
  13. package/dist/views.mjs +1 -1
  14. package/dist/web/features/session/Composer.cjs +9 -55
  15. package/dist/web/features/session/Composer.cjs.map +1 -1
  16. package/dist/web/features/session/Composer.d.mts.map +1 -1
  17. package/dist/web/features/session/Composer.mjs +5 -51
  18. package/dist/web/features/session/Composer.mjs.map +1 -1
  19. package/dist/web/features/session/ComposerPrompt.cjs +4 -3
  20. package/dist/web/features/session/ComposerPrompt.cjs.map +1 -1
  21. package/dist/web/features/session/ComposerPrompt.d.mts.map +1 -1
  22. package/dist/web/features/session/ComposerPrompt.mjs +5 -4
  23. package/dist/web/features/session/ComposerPrompt.mjs.map +1 -1
  24. package/dist/web/features/session/Timeline.cjs +1 -1
  25. package/dist/web/features/session/Timeline.mjs +1 -1
  26. package/dist/web/features/settings/ContributedSettings.cjs +192 -57
  27. package/dist/web/features/settings/ContributedSettings.cjs.map +1 -1
  28. package/dist/web/features/settings/ContributedSettings.d.mts.map +1 -1
  29. package/dist/web/features/settings/ContributedSettings.mjs +194 -59
  30. package/dist/web/features/settings/ContributedSettings.mjs.map +1 -1
  31. package/dist/web/features/settings/ProviderSettings.cjs +71 -51
  32. package/dist/web/features/settings/ProviderSettings.cjs.map +1 -1
  33. package/dist/web/features/settings/ProviderSettings.d.mts.map +1 -1
  34. package/dist/web/features/settings/ProviderSettings.mjs +72 -52
  35. package/dist/web/features/settings/ProviderSettings.mjs.map +1 -1
  36. package/dist/web/features/settings/settings.fixture.cjs +17 -0
  37. package/dist/web/features/settings/settings.fixture.cjs.map +1 -1
  38. package/dist/web/features/settings/settings.fixture.mjs +17 -0
  39. package/dist/web/features/settings/settings.fixture.mjs.map +1 -1
  40. package/dist/web/lib/composerCapture.cjs +104 -0
  41. package/dist/web/lib/composerCapture.cjs.map +1 -0
  42. package/dist/web/lib/composerCapture.d.mts +8 -0
  43. package/dist/web/lib/composerCapture.d.mts.map +1 -0
  44. package/dist/web/lib/composerCapture.mjs +98 -0
  45. package/dist/web/lib/composerCapture.mjs.map +1 -0
  46. package/dist/web/lib/composerCompletion.cjs +66 -0
  47. package/dist/web/lib/composerCompletion.cjs.map +1 -0
  48. package/dist/web/lib/composerCompletion.d.mts +30 -0
  49. package/dist/web/lib/composerCompletion.d.mts.map +1 -0
  50. package/dist/web/lib/composerCompletion.mjs +62 -0
  51. package/dist/web/lib/composerCompletion.mjs.map +1 -0
  52. package/dist/web/lib/composition.cjs +1 -1
  53. package/dist/web/lib/composition.cjs.map +1 -1
  54. package/dist/web/lib/composition.mjs +1 -1
  55. package/dist/web/lib/composition.mjs.map +1 -1
  56. package/dist/web/lib/pluginRegistry.cjs +31 -14
  57. package/dist/web/lib/pluginRegistry.cjs.map +1 -1
  58. package/dist/web/lib/pluginRegistry.d.mts +9 -6
  59. package/dist/web/lib/pluginRegistry.d.mts.map +1 -1
  60. package/dist/web/lib/pluginRegistry.mjs +31 -14
  61. package/dist/web/lib/pluginRegistry.mjs.map +1 -1
  62. package/dist/web/lib/pluginSlotProps.cjs +3 -3
  63. package/dist/web/lib/pluginSlotProps.cjs.map +1 -1
  64. package/dist/web/lib/pluginSlotProps.mjs +3 -3
  65. package/dist/web/lib/pluginSlotProps.mjs.map +1 -1
  66. package/dist/web/lib/toolCompletionTabs.cjs +4 -3
  67. package/dist/web/lib/toolCompletionTabs.cjs.map +1 -1
  68. package/dist/web/lib/toolCompletionTabs.d.mts +1 -1
  69. package/dist/web/lib/toolCompletionTabs.d.mts.map +1 -1
  70. package/dist/web/lib/toolCompletionTabs.mjs +4 -3
  71. package/dist/web/lib/toolCompletionTabs.mjs.map +1 -1
  72. package/dist/web/lib/toolPrompt.cjs +7 -3
  73. package/dist/web/lib/toolPrompt.cjs.map +1 -1
  74. package/dist/web/lib/toolPrompt.d.mts +1 -1
  75. package/dist/web/lib/toolPrompt.d.mts.map +1 -1
  76. package/dist/web/lib/toolPrompt.mjs +8 -4
  77. package/dist/web/lib/toolPrompt.mjs.map +1 -1
  78. package/dist/web/stores/captureStore.cjs +2 -2
  79. package/dist/web/stores/captureStore.cjs.map +1 -1
  80. package/dist/web/stores/captureStore.mjs +1 -1
  81. package/dist/web/stores/captureStore.mjs.map +1 -1
  82. package/dist/web/stores/composerStore.cjs +10 -102
  83. package/dist/web/stores/composerStore.cjs.map +1 -1
  84. package/dist/web/stores/composerStore.d.mts +2 -4
  85. package/dist/web/stores/composerStore.d.mts.map +1 -1
  86. package/dist/web/stores/composerStore.mjs +1 -93
  87. package/dist/web/stores/composerStore.mjs.map +1 -1
  88. package/dist/web/stores/composerSubmissionStore.cjs +1 -1
  89. package/dist/web/stores/composerSubmissionStore.mjs +1 -1
  90. package/dist/web/stores/sessionStore.cjs +3 -3
  91. package/dist/web/stores/sessionStore.cjs.map +1 -1
  92. package/dist/web/stores/sessionStore.mjs +3 -3
  93. package/dist/web/stores/sessionStore.mjs.map +1 -1
  94. package/dist/web/stores/sessionsStore.cjs +1 -1
  95. package/dist/web/stores/sessionsStore.mjs +1 -1
  96. package/dist/web/stores/usePluginSlotProps.cjs +12 -1
  97. package/dist/web/stores/usePluginSlotProps.cjs.map +1 -1
  98. package/dist/web/stores/usePluginSlotProps.d.mts.map +1 -1
  99. package/dist/web/stores/usePluginSlotProps.mjs +12 -1
  100. package/dist/web/stores/usePluginSlotProps.mjs.map +1 -1
  101. package/package.json +5 -5
package/dist/core.cjs CHANGED
@@ -1,5 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  const require_commands = require("./web/lib/commands.cjs");
3
+ const require_composerCompletion = require("./web/lib/composerCompletion.cjs");
3
4
  const require_pluginScopes = require("./web/lib/pluginScopes.cjs");
4
5
  const require_templateCatalog = require("./web/lib/templateCatalog.cjs");
5
6
  const require_pluginRegistry = require("./web/lib/pluginRegistry.cjs");
@@ -8,20 +9,30 @@ const require_composition = require("./web/lib/composition.cjs");
8
9
  const require_contextComposition = require("./web/lib/contextComposition.cjs");
9
10
  const require_sessionProtocolCommands = require("./web/lib/sessionProtocolCommands.cjs");
10
11
  const require_transport = require("./web/lib/transport.cjs");
12
+ const require_pluginSlotProps = require("./web/lib/pluginSlotProps.cjs");
11
13
  const require_protocolHubSocket = require("./web/lib/protocolHubSocket.cjs");
12
14
  const require_sessionModel = require("./web/lib/sessionModel.cjs");
13
15
  const require_sessionSummary = require("./web/lib/sessionSummary.cjs");
14
16
  const require_sessionRailModel = require("./web/lib/sessionRailModel.cjs");
17
+ const require_toolMessageProps = require("./web/lib/toolMessageProps.cjs");
15
18
  const require_toolPrompt = require("./web/lib/toolPrompt.cjs");
19
+ const require_composerCapture = require("./web/lib/composerCapture.cjs");
16
20
  const require_sessionsStore = require("./web/stores/sessionsStore.cjs");
17
21
  const require_sessionStore = require("./web/stores/sessionStore.cjs");
22
+ const require_captureStore = require("./web/stores/captureStore.cjs");
18
23
  const require_menuStore = require("./web/stores/menuStore.cjs");
19
24
  const require_pagedTranscriptStore = require("./web/stores/pagedTranscriptStore.cjs");
20
25
  const require_threadStore = require("./web/stores/threadStore.cjs");
26
+ const require_transientTabsStore = require("./web/stores/transientTabsStore.cjs");
21
27
  const require_workspacesStore = require("./web/stores/workspacesStore.cjs");
28
+ const require_dialogDraftStore = require("./web/stores/dialogDraftStore.cjs");
29
+ const require_ToolRendererBoundary = require("./web/components/ToolRendererBoundary.cjs");
22
30
  exports.BUILTIN_COMMANDS = require_commands.BUILTIN_COMMANDS;
23
31
  exports.HOST_SLOTS = require_pluginRegistry.HOST_SLOTS;
24
32
  exports.LEGACY_WORKSPACE_ID = require_sessionRailModel.LEGACY_WORKSPACE_ID;
33
+ exports.MAX_COMPLETION_ITEMS = require_composerCompletion.MAX_COMPLETION_ITEMS;
34
+ exports.TRIGGER_CHARS = require_composerCompletion.TRIGGER_CHARS;
35
+ exports.ToolRendererBoundary = require_ToolRendererBoundary.ToolRendererBoundary;
25
36
  exports.abbreviateCwd = require_sessionSummary.abbreviateCwd;
26
37
  exports.abortCommand = require_commands.abortCommand;
27
38
  exports.abortRun = require_sessionStore.abortRun;
@@ -34,6 +45,7 @@ exports.answerDialogConfirm = require_sessionStore.answerDialogConfirm;
34
45
  exports.answerDialogValue = require_sessionStore.answerDialogValue;
35
46
  exports.appendQueued = require_sessionModel.appendQueued;
36
47
  exports.appendUserPrompt = require_sessionModel.appendUserPrompt;
48
+ exports.applyCaptureFrame = require_captureStore.applyCaptureFrame;
37
49
  exports.applyHistoryPage = require_sessionStore.applyHistoryPage;
38
50
  exports.applyProtocolQueue = require_sessionStore.applyProtocolQueue;
39
51
  exports.applyProtocolTranscript = require_sessionStore.applyProtocolTranscript;
@@ -65,6 +77,8 @@ exports.clearPendingMenu = require_menuStore.clearPendingMenu;
65
77
  exports.clearQueueCommand = require_commands.clearQueueCommand;
66
78
  exports.clearQueuedEntries = require_sessionModel.clearQueuedEntries;
67
79
  exports.clearQueuedMessages = require_sessionStore.clearQueuedMessages;
80
+ exports.closeTransientTab = require_transientTabsStore.closeTransientTab;
81
+ exports.commandCompletions = require_composerCompletion.commandCompletions;
68
82
  exports.compactCommand = require_commands.compactCommand;
69
83
  exports.completeSessionTransfer = require_sessionsStore.completeSessionTransfer;
70
84
  exports.contextGroups = require_contextComposition.contextGroups;
@@ -74,12 +88,16 @@ exports.deleteQueuedMessage = require_sessionStore.deleteQueuedMessage;
74
88
  exports.dialogCancelled = require_commands.dialogCancelled;
75
89
  exports.dialogConfirmed = require_commands.dialogConfirmed;
76
90
  exports.dialogValue = require_commands.dialogValue;
91
+ exports.disconnectCaptures = require_captureStore.disconnectCaptures;
77
92
  exports.dispatchChannelFrame = require_pluginRegistry.dispatchChannelFrame;
78
93
  exports.dropPluginSessionData = require_pluginRegistry.dropPluginSessionData;
79
94
  exports.dropSessionStore = require_sessionStore.dropSessionStore;
80
95
  exports.dropThreads = require_threadStore.dropThreads;
96
+ exports.dropTransientTabs = require_transientTabsStore.dropTransientTabs;
81
97
  exports.endSessionReplay = require_sessionStore.endSessionReplay;
82
98
  exports.enqueueAutomaticCommand = require_commands.enqueueAutomaticCommand;
99
+ exports.fileCompletions = require_composerCompletion.fileCompletions;
100
+ exports.findTransientTab = require_transientTabsStore.findTransientTab;
83
101
  exports.followUpCommand = require_commands.followUpCommand;
84
102
  exports.formatRunDuration = require_sessionSummary.formatRunDuration;
85
103
  exports.getAvailableModelsCommand = require_commands.getAvailableModelsCommand;
@@ -109,6 +127,7 @@ exports.nativeTemplateCatalog = require_pluginRegistry.nativeTemplateCatalog;
109
127
  exports.noSessions = require_sessionsStore.noSessions;
110
128
  exports.notifyHubConnected = require_transport.notifyHubConnected;
111
129
  exports.onHubConnected = require_transport.onHubConnected;
130
+ exports.openTransientTab = require_transientTabsStore.openTransientTab;
112
131
  exports.ownerLabel = require_contextComposition.ownerLabel;
113
132
  exports.ownersOf = require_contextComposition.ownersOf;
114
133
  exports.paletteCommands = require_pluginRegistry.paletteCommands;
@@ -124,8 +143,10 @@ exports.pluginLeaderBindings = require_pluginRegistry.pluginLeaderBindings;
124
143
  exports.pluginMinorModes = require_pluginRegistry.pluginMinorModes;
125
144
  exports.pluginRepositorySettingsPanels = require_pluginRegistry.pluginRepositorySettingsPanels;
126
145
  exports.pluginSelectionAxes = require_pluginRegistry.pluginSelectionAxes;
146
+ exports.pluginSessionContext = require_pluginSlotProps.pluginSessionContext;
127
147
  exports.pluginSettingsPanels = require_pluginRegistry.pluginSettingsPanels;
128
148
  exports.pluginSettingsSections = require_pluginRegistry.pluginSettingsSections;
149
+ exports.pluginSlotProps = require_pluginSlotProps.pluginSlotProps;
129
150
  exports.pluginToolRenderer = require_pluginRegistry.pluginToolRenderer;
130
151
  exports.pluginUserMessageActions = require_pluginRegistry.pluginUserMessageActions;
131
152
  exports.pluginsAtScope = require_pluginScopes.pluginsAtScope;
@@ -195,6 +216,7 @@ exports.slotFills = require_pluginRegistry.slotFills;
195
216
  exports.startPluginDefinitions = require_pluginRegistry.startPluginDefinitions;
196
217
  exports.startWebPlugins = require_pluginRegistry.startWebPlugins;
197
218
  exports.steerCommand = require_commands.steerCommand;
219
+ exports.submitCapture = require_captureStore.submitCapture;
198
220
  exports.submitMessage = require_sessionStore.submitMessage;
199
221
  exports.submitMessageWithAck = require_sessionStore.submitMessageWithAck;
200
222
  exports.subscribeActivitySources = require_composition.subscribeActivitySources;
@@ -203,14 +225,22 @@ exports.subscribeWebPluginRegistry = require_pluginRegistry.subscribeWebPluginRe
203
225
  exports.summariseArgs = require_sessionModel.summariseArgs;
204
226
  exports.textFromContent = require_sessionModel.textFromContent;
205
227
  exports.threadStoreKey = require_threadStore.threadStoreKey;
228
+ exports.toolMessageProps = require_toolMessageProps.toolMessageProps;
206
229
  exports.toolPromptClaim = require_toolPrompt.toolPromptClaim;
207
230
  exports.totalTokens = require_contextComposition.totalTokens;
231
+ exports.transientTabsStore = require_transientTabsStore.transientTabsStore;
232
+ exports.triggerTokenAt = require_composerCompletion.triggerTokenAt;
208
233
  exports.unsubscribeThread = require_threadStore.unsubscribeThread;
234
+ exports.updateDialogDraft = require_dialogDraftStore.updateDialogDraft;
209
235
  exports.useActiveSession = require_sessionStore.useActiveSession;
210
236
  exports.useActiveSessionMeta = require_sessionsStore.useActiveSessionMeta;
211
237
  exports.useActivityGroups = require_composition.useActivityGroups;
238
+ exports.useDialogDraft = require_dialogDraftStore.useDialogDraft;
239
+ exports.useDockFaces = require_composition.useDockFaces;
212
240
  exports.useHasOlderHistory = require_sessionStore.useHasOlderHistory;
213
241
  exports.useNoSessions = require_sessionsStore.useNoSessions;
242
+ exports.useTransientTabs = require_transientTabsStore.useTransientTabs;
243
+ exports.validateComposerCapture = require_composerCapture.validateComposerCapture;
214
244
  exports.waitForSession = require_sessionsStore.waitForSession;
215
245
  exports.webPluginDiagnostics = require_pluginRegistry.webPluginDiagnostics;
216
246
  exports.webPluginRegistryRevision = require_pluginRegistry.webPluginRegistryRevision;
package/dist/core.d.mts CHANGED
@@ -1,5 +1,6 @@
1
1
  import { AgentInfo, AssistantEntry, CommandInfo, DialogMethod, DialogRequest, EditorTextRequest, EntryKind, ModelChoice, NoticeEntry, ProfileIdentity, QueuedEntry, ReduceSessionOptions, SessionState, SessionStats, SettledEntry, TimelineEntry, ToolEntry, UserEntry, UserImage, appendQueued, appendUserPrompt, clearDialog, clearQueuedEntries, imagesFromContent, initialSessionState, isSupportedImageMimeType, prependHistory, reduceSession, removeQueuedEntry, replaceQueuedEntries, summariseArgs, textFromContent } from "./web/lib/sessionModel.mjs";
2
2
  import { BUILTIN_COMMANDS, RpcImage, abortCommand, builtinCommandFrame, clearQueueCommand, compactCommand, dialogCancelled, dialogConfirmed, dialogValue, enqueueAutomaticCommand, followUpCommand, getAvailableModelsCommand, getAvailableThinkingLevelsCommand, getCommandsCommand, getSessionStatsCommand, getStateCommand, promoteQueuedCommand, promptCommand, removeQueuedCommand, resumeQueueCommand, rewindCommand, setModelCommand, setSessionNameCommand, setThinkingLevelCommand, steerCommand } from "./web/lib/commands.mjs";
3
+ import { CompletionItem, CompletionKind, CompletionTrigger, MAX_COMPLETION_ITEMS, TRIGGER_CHARS, commandCompletions, fileCompletions, triggerTokenAt } from "./web/lib/composerCompletion.mjs";
3
4
  import { bindSessionProtocol, hasSessionProtocol, requestSessionProtocolFrame, sendSessionProtocolFrame } from "./web/lib/sessionProtocolCommands.mjs";
4
5
  import { bindTransport, invokeServerMethod, notifyHubConnected, onHubConnected, releaseTransport, sendFrame, sendFrameWithAck, sendHubFrame } from "./web/lib/transport.mjs";
5
6
  import { SessionSocket, SessionSocketHandlers, createProtocolHubSocket } from "./web/lib/protocolHubSocket.mjs";
@@ -7,6 +8,10 @@ import { InstalledNativeTemplate, NativeTemplateCatalog, bindBundledNativeTempla
7
8
  import { HOST_SLOTS, InstallDiagnostic, InstallDiagnosticKind, InstalledContextAction, InstalledRepositorySettingsPanel, InstalledSettingsPanel, InstalledUserMessageAction, ResolvedFill, activateWebPluginSession, activateWebPluginWorkspace, activityGroupSlot, bindSessionWebWorkspace, dispatchChannelFrame, dropPluginSessionData, installGlobalWebPlugins, installSessionWebPlugins, installWebPlugins, installWorkspaceWebPlugins, installedWebPlugins, isDesktopClient, nativeTemplateCatalog, paletteCommands, pluginActivityGroups, pluginContextActions, pluginDockFaces, pluginFileLinks, pluginLeaderBindings, pluginMinorModes, pluginRepositorySettingsPanels, pluginSelectionAxes, pluginSettingsPanels, pluginSettingsSections, pluginToolRenderer, pluginUserMessageActions, removeSessionWebPlugins, removeWorkspaceWebPlugins, resetWebPlugins, sessionToolRenderer, sessionWebPluginsInstalled, setWebPluginLoadDiagnostics, slotFills, startPluginDefinitions, startWebPlugins, subscribeWebPluginRegistry, webPluginDiagnostics, webPluginRegistryRevision, webPluginsInstalled, webTabs, webTemplateCatalog, workspaceSlotFills } from "./web/lib/pluginRegistry.mjs";
8
9
  import { mergeScopedPlugins, pluginsAtScope } from "./web/lib/pluginScopes.mjs";
9
10
  import { ToolPromptClaim, ToolPromptInput, toolPromptClaim } from "./web/lib/toolPrompt.mjs";
11
+ import { TransientTabActions, pluginSessionContext, pluginSlotProps } from "./web/lib/pluginSlotProps.mjs";
12
+ import { toolMessageProps } from "./web/lib/toolMessageProps.mjs";
13
+ import { ToolRendererBoundary } from "./web/components/ToolRendererBoundary.mjs";
14
+ import { updateDialogDraft, useDialogDraft } from "./web/stores/dialogDraftStore.mjs";
10
15
  import { AttachPhase, StatusLineInput, abbreviateCwd, formatRunDuration, personaInitials, runningCount, sessionStatusLine } from "./web/lib/sessionSummary.mjs";
11
16
  import { LEGACY_WORKSPACE_ID, RailRestartState, RailSessionInput, SessionRailModelInput, buildRailWorkspaces, pendingSetupView, workspaceName } from "./web/lib/sessionRailModel.mjs";
12
17
  import { SessionMeta, SessionsState, activeSessionId, applySessionBacklog, applySessionRemoved, applySessionUpsert, applySessionsSnapshot, beginSessionTransfer, completeSessionTransfer, markSocketClosed, noSessions, resetSessions, resolveParentId, sessionsStore, setActiveSession, useActiveSessionMeta, useNoSessions, waitForSession } from "./web/stores/sessionsStore.mjs";
@@ -14,8 +19,11 @@ import { HistoryPage, abortRun, answerDialogConfirm, answerDialogValue, applyHis
14
19
  import { createPagedTranscript } from "./web/stores/pagedTranscriptStore.mjs";
15
20
  import { applyThreadTranscriptFrame, bindThreadReader, dropThreads, heldThreads, resetThreads, resubscribeThreads, subscribeThread, threadStoreKey, unsubscribeThread } from "./web/stores/threadStore.mjs";
16
21
  import { WorkspacesState, applyWorkspaceRemoved, applyWorkspaceUpsert, applyWorkspacesSnapshot, resetWorkspaces, selectWorkspace, workspacesStore } from "./web/stores/workspacesStore.mjs";
17
- import { ActivityGroup, MinorMode, SelectionAxis, activityGroups, minorModes, selectionAxes, subscribeActivitySources, useActivityGroups } from "./web/lib/composition.mjs";
22
+ import { ActivityGroup, MinorMode, SelectionAxis, activityGroups, minorModes, selectionAxes, subscribeActivitySources, useActivityGroups, useDockFaces } from "./web/lib/composition.mjs";
18
23
  import { parseSelection } from "./web/lib/statusLine.mjs";
19
24
  import { MenuClaim, MenuKind, MenuState, claimDialogMenu, clearPendingMenu, menuStore, pendingMenuFor, releaseDialogMenu, resetMenuStore, setPendingMenu } from "./web/stores/menuStore.mjs";
20
25
  import { ContextGroup, ContextItemSource, contextGroups, inactiveTotal, ownerLabel, ownersOf, projectedGroups, totalTokens } from "./web/lib/contextComposition.mjs";
21
- export { type ActivityGroup, AgentInfo, AssistantEntry, AttachPhase, BUILTIN_COMMANDS, CommandInfo, type ContextGroup, type ContextItemSource, DialogMethod, DialogRequest, EditorTextRequest, EntryKind, HOST_SLOTS, HistoryPage, InstallDiagnostic, InstallDiagnosticKind, InstalledContextAction, type InstalledNativeTemplate, InstalledRepositorySettingsPanel, InstalledSettingsPanel, InstalledUserMessageAction, LEGACY_WORKSPACE_ID, MenuClaim, MenuKind, MenuState, type MinorMode, ModelChoice, type NativeTemplateCatalog, NoticeEntry, ProfileIdentity, QueuedEntry, RailRestartState, RailSessionInput, ReduceSessionOptions, ResolvedFill, RpcImage, type SelectionAxis, SessionMeta, SessionRailModelInput, SessionSocket, SessionSocketHandlers, SessionState, SessionStats, SessionsState, SettledEntry, StatusLineInput, TimelineEntry, ToolEntry, ToolPromptClaim, ToolPromptInput, UserEntry, UserImage, WorkspacesState, abbreviateCwd, abortCommand, abortRun, activateWebPluginSession, activateWebPluginWorkspace, activeSessionId, activityGroupSlot, activityGroups, answerDialogConfirm, answerDialogValue, appendQueued, appendUserPrompt, applyHistoryPage, applyProtocolQueue, applyProtocolTranscript, applySessionBacklog, applySessionFrame, applySessionLifecycle, applySessionRemoved, applySessionUpsert, applySessionsSnapshot, applyThreadFrame, applyThreadTranscriptFrame, applyWorkspaceRemoved, applyWorkspaceUpsert, applyWorkspacesSnapshot, beginSessionReplay, beginSessionTransfer, bindBundledNativeTemplates, bindHistoryReader, bindSessionProtocol, bindSessionWebWorkspace, bindThreadReader, bindTransport, buildRailWorkspaces, builtinCommandFrame, cancelDialog, claimDialogMenu, clearDialog, clearPendingMenu, clearQueueCommand, clearQueuedEntries, clearQueuedMessages, compactCommand, completeSessionTransfer, contextGroups, createPagedTranscript, createProtocolHubSocket, deleteQueuedMessage, dialogCancelled, dialogConfirmed, dialogValue, dispatchChannelFrame, dropPluginSessionData, dropSessionStore, dropThreads, endSessionReplay, enqueueAutomaticCommand, followUpCommand, formatRunDuration, getAvailableModelsCommand, getAvailableThinkingLevelsCommand, getCommandsCommand, getSessionStatsCommand, getStateCommand, hasSessionProtocol, heldThreads, imagesFromContent, inactiveTotal, initialSessionState, installGlobalWebPlugins, installSessionWebPlugins, installWebPlugins, installWorkspaceWebPlugins, installedWebPlugins, invokeServerMethod, isDesktopClient, isSupportedImageMimeType, loadModelChoices, markSocketClosed, menuStore, mergeScopedPlugins, minorModes, nativeTemplateCatalog, noSessions, notifyHubConnected, onHubConnected, ownerLabel, ownersOf, paletteCommands, parseSelection, pendingMenuFor, pendingSetupView, personaInitials, pluginActivityGroups, pluginContextActions, pluginDockFaces, pluginFileLinks, pluginLeaderBindings, pluginMinorModes, pluginRepositorySettingsPanels, pluginSelectionAxes, pluginSettingsPanels, pluginSettingsSections, pluginToolRenderer, pluginUserMessageActions, pluginsAtScope, prependHistory, projectedGroups, promoteQueuedCommand, promoteQueuedMessage, promptCommand, queueFollowUp, queueFollowUpWithAck, reduceSession, refreshSessionFacts, refreshSessionStats, releaseDialogMenu, releaseProtocolTranscript, releaseTransport, removeQueuedCommand, removeQueuedEntry, removeSessionWebPlugins, removeWorkspaceWebPlugins, renameSession, replaceQueuedEntries, requestLatestHistory, requestNewerHistory, requestOlderHistory, requestSessionProtocolFrame, resetMenuStore, resetSessionStore, resetSessionStores, resetSessions, resetThreads, resetWebPlugins, resetWorkspaces, resolveNativeTemplate, resolveParentId, resubscribeThreads, resumeQueueCommand, resumeQueuedMessages, rewindCommand, rewindToMessage, runCommand, runningCount, seedHistoryCursor, selectFastMode, selectModel, selectThinkingLevel, selectWorkspace, selectionAxes, sendFrame, sendFrameWithAck, sendHubFrame, sendSessionProtocolFrame, sessionStatusLine, sessionStoreFor, sessionToolRenderer, sessionWebPluginsInstalled, sessionsStore, setActiveSession, setAgentLock, setHasNewerHistory, setModelCommand, setPendingMenu, setSessionNameCommand, setThinkingLevelCommand, setWebPluginLoadDiagnostics, slotFills, startPluginDefinitions, startWebPlugins, steerCommand, submitMessage, submitMessageWithAck, subscribeActivitySources, subscribeThread, subscribeWebPluginRegistry, summariseArgs, textFromContent, threadStoreKey, toolPromptClaim, totalTokens, unsubscribeThread, useActiveSession, useActiveSessionMeta, useActivityGroups, useHasOlderHistory, useNoSessions, waitForSession, webPluginDiagnostics, webPluginRegistryRevision, webPluginsInstalled, webTabs, webTemplateCatalog, workspaceName, workspaceSlotFills, workspacesStore };
26
+ import { closeTransientTab, dropTransientTabs, findTransientTab, openTransientTab, transientTabsStore, useTransientTabs } from "./web/stores/transientTabsStore.mjs";
27
+ import { validateComposerCapture } from "./web/lib/composerCapture.mjs";
28
+ import { applyCaptureFrame, disconnectCaptures, submitCapture } from "./web/stores/captureStore.mjs";
29
+ export { type ActivityGroup, AgentInfo, AssistantEntry, AttachPhase, BUILTIN_COMMANDS, CommandInfo, CompletionItem, CompletionKind, CompletionTrigger, type ContextGroup, type ContextItemSource, DialogMethod, DialogRequest, EditorTextRequest, EntryKind, HOST_SLOTS, HistoryPage, InstallDiagnostic, InstallDiagnosticKind, InstalledContextAction, type InstalledNativeTemplate, InstalledRepositorySettingsPanel, InstalledSettingsPanel, InstalledUserMessageAction, LEGACY_WORKSPACE_ID, MAX_COMPLETION_ITEMS, MenuClaim, MenuKind, MenuState, type MinorMode, ModelChoice, type NativeTemplateCatalog, NoticeEntry, ProfileIdentity, QueuedEntry, RailRestartState, RailSessionInput, ReduceSessionOptions, ResolvedFill, RpcImage, type SelectionAxis, SessionMeta, SessionRailModelInput, SessionSocket, SessionSocketHandlers, SessionState, SessionStats, SessionsState, SettledEntry, StatusLineInput, TRIGGER_CHARS, TimelineEntry, ToolEntry, ToolPromptClaim, ToolPromptInput, ToolRendererBoundary, type TransientTabActions, UserEntry, UserImage, WorkspacesState, abbreviateCwd, abortCommand, abortRun, activateWebPluginSession, activateWebPluginWorkspace, activeSessionId, activityGroupSlot, activityGroups, answerDialogConfirm, answerDialogValue, appendQueued, appendUserPrompt, applyCaptureFrame, applyHistoryPage, applyProtocolQueue, applyProtocolTranscript, applySessionBacklog, applySessionFrame, applySessionLifecycle, applySessionRemoved, applySessionUpsert, applySessionsSnapshot, applyThreadFrame, applyThreadTranscriptFrame, applyWorkspaceRemoved, applyWorkspaceUpsert, applyWorkspacesSnapshot, beginSessionReplay, beginSessionTransfer, bindBundledNativeTemplates, bindHistoryReader, bindSessionProtocol, bindSessionWebWorkspace, bindThreadReader, bindTransport, buildRailWorkspaces, builtinCommandFrame, cancelDialog, claimDialogMenu, clearDialog, clearPendingMenu, clearQueueCommand, clearQueuedEntries, clearQueuedMessages, closeTransientTab, commandCompletions, compactCommand, completeSessionTransfer, contextGroups, createPagedTranscript, createProtocolHubSocket, deleteQueuedMessage, dialogCancelled, dialogConfirmed, dialogValue, disconnectCaptures, dispatchChannelFrame, dropPluginSessionData, dropSessionStore, dropThreads, dropTransientTabs, endSessionReplay, enqueueAutomaticCommand, fileCompletions, findTransientTab, followUpCommand, formatRunDuration, getAvailableModelsCommand, getAvailableThinkingLevelsCommand, getCommandsCommand, getSessionStatsCommand, getStateCommand, hasSessionProtocol, heldThreads, imagesFromContent, inactiveTotal, initialSessionState, installGlobalWebPlugins, installSessionWebPlugins, installWebPlugins, installWorkspaceWebPlugins, installedWebPlugins, invokeServerMethod, isDesktopClient, isSupportedImageMimeType, loadModelChoices, markSocketClosed, menuStore, mergeScopedPlugins, minorModes, nativeTemplateCatalog, noSessions, notifyHubConnected, onHubConnected, openTransientTab, ownerLabel, ownersOf, paletteCommands, parseSelection, pendingMenuFor, pendingSetupView, personaInitials, pluginActivityGroups, pluginContextActions, pluginDockFaces, pluginFileLinks, pluginLeaderBindings, pluginMinorModes, pluginRepositorySettingsPanels, pluginSelectionAxes, pluginSessionContext, pluginSettingsPanels, pluginSettingsSections, pluginSlotProps, pluginToolRenderer, pluginUserMessageActions, pluginsAtScope, prependHistory, projectedGroups, promoteQueuedCommand, promoteQueuedMessage, promptCommand, queueFollowUp, queueFollowUpWithAck, reduceSession, refreshSessionFacts, refreshSessionStats, releaseDialogMenu, releaseProtocolTranscript, releaseTransport, removeQueuedCommand, removeQueuedEntry, removeSessionWebPlugins, removeWorkspaceWebPlugins, renameSession, replaceQueuedEntries, requestLatestHistory, requestNewerHistory, requestOlderHistory, requestSessionProtocolFrame, resetMenuStore, resetSessionStore, resetSessionStores, resetSessions, resetThreads, resetWebPlugins, resetWorkspaces, resolveNativeTemplate, resolveParentId, resubscribeThreads, resumeQueueCommand, resumeQueuedMessages, rewindCommand, rewindToMessage, runCommand, runningCount, seedHistoryCursor, selectFastMode, selectModel, selectThinkingLevel, selectWorkspace, selectionAxes, sendFrame, sendFrameWithAck, sendHubFrame, sendSessionProtocolFrame, sessionStatusLine, sessionStoreFor, sessionToolRenderer, sessionWebPluginsInstalled, sessionsStore, setActiveSession, setAgentLock, setHasNewerHistory, setModelCommand, setPendingMenu, setSessionNameCommand, setThinkingLevelCommand, setWebPluginLoadDiagnostics, slotFills, startPluginDefinitions, startWebPlugins, steerCommand, submitCapture, submitMessage, submitMessageWithAck, subscribeActivitySources, subscribeThread, subscribeWebPluginRegistry, summariseArgs, textFromContent, threadStoreKey, toolMessageProps, toolPromptClaim, totalTokens, transientTabsStore, triggerTokenAt, unsubscribeThread, updateDialogDraft, useActiveSession, useActiveSessionMeta, useActivityGroups, useDialogDraft, useDockFaces, useHasOlderHistory, useNoSessions, useTransientTabs, validateComposerCapture, waitForSession, webPluginDiagnostics, webPluginRegistryRevision, webPluginsInstalled, webTabs, webTemplateCatalog, workspaceName, workspaceSlotFills, workspacesStore };
package/dist/core.mjs CHANGED
@@ -1,21 +1,29 @@
1
1
  import { BUILTIN_COMMANDS, abortCommand, builtinCommandFrame, clearQueueCommand, compactCommand, dialogCancelled, dialogConfirmed, dialogValue, enqueueAutomaticCommand, followUpCommand, getAvailableModelsCommand, getAvailableThinkingLevelsCommand, getCommandsCommand, getSessionStatsCommand, getStateCommand, promoteQueuedCommand, promptCommand, removeQueuedCommand, resumeQueueCommand, rewindCommand, setModelCommand, setSessionNameCommand, setThinkingLevelCommand, steerCommand } from "./web/lib/commands.mjs";
2
+ import { MAX_COMPLETION_ITEMS, TRIGGER_CHARS, commandCompletions, fileCompletions, triggerTokenAt } from "./web/lib/composerCompletion.mjs";
2
3
  import { mergeScopedPlugins, pluginsAtScope } from "./web/lib/pluginScopes.mjs";
3
4
  import { bindBundledNativeTemplates, resolveNativeTemplate } from "./web/lib/templateCatalog.mjs";
4
5
  import { HOST_SLOTS, activateWebPluginSession, activateWebPluginWorkspace, activityGroupSlot, bindSessionWebWorkspace, dispatchChannelFrame, dropPluginSessionData, installGlobalWebPlugins, installSessionWebPlugins, installWebPlugins, installWorkspaceWebPlugins, installedWebPlugins, isDesktopClient, nativeTemplateCatalog, paletteCommands, pluginActivityGroups, pluginContextActions, pluginDockFaces, pluginFileLinks, pluginLeaderBindings, pluginMinorModes, pluginRepositorySettingsPanels, pluginSelectionAxes, pluginSettingsPanels, pluginSettingsSections, pluginToolRenderer, pluginUserMessageActions, removeSessionWebPlugins, removeWorkspaceWebPlugins, resetWebPlugins, sessionToolRenderer, sessionWebPluginsInstalled, setWebPluginLoadDiagnostics, slotFills, startPluginDefinitions, startWebPlugins, subscribeWebPluginRegistry, webPluginDiagnostics, webPluginRegistryRevision, webPluginsInstalled, webTabs, webTemplateCatalog, workspaceSlotFills } from "./web/lib/pluginRegistry.mjs";
5
6
  import { parseSelection } from "./web/lib/statusLine.mjs";
6
- import { activityGroups, minorModes, selectionAxes, subscribeActivitySources, useActivityGroups } from "./web/lib/composition.mjs";
7
+ import { activityGroups, minorModes, selectionAxes, subscribeActivitySources, useActivityGroups, useDockFaces } from "./web/lib/composition.mjs";
7
8
  import { contextGroups, inactiveTotal, ownerLabel, ownersOf, projectedGroups, totalTokens } from "./web/lib/contextComposition.mjs";
8
9
  import { bindSessionProtocol, hasSessionProtocol, requestSessionProtocolFrame, sendSessionProtocolFrame } from "./web/lib/sessionProtocolCommands.mjs";
9
10
  import { bindTransport, invokeServerMethod, notifyHubConnected, onHubConnected, releaseTransport, sendFrame, sendFrameWithAck, sendHubFrame } from "./web/lib/transport.mjs";
11
+ import { pluginSessionContext, pluginSlotProps } from "./web/lib/pluginSlotProps.mjs";
10
12
  import { createProtocolHubSocket } from "./web/lib/protocolHubSocket.mjs";
11
13
  import { appendQueued, appendUserPrompt, clearDialog, clearQueuedEntries, imagesFromContent, initialSessionState, isSupportedImageMimeType, prependHistory, reduceSession, removeQueuedEntry, replaceQueuedEntries, summariseArgs, textFromContent } from "./web/lib/sessionModel.mjs";
12
14
  import { abbreviateCwd, formatRunDuration, personaInitials, runningCount, sessionStatusLine } from "./web/lib/sessionSummary.mjs";
13
15
  import { LEGACY_WORKSPACE_ID, buildRailWorkspaces, pendingSetupView, workspaceName } from "./web/lib/sessionRailModel.mjs";
16
+ import { toolMessageProps } from "./web/lib/toolMessageProps.mjs";
14
17
  import { toolPromptClaim } from "./web/lib/toolPrompt.mjs";
18
+ import { validateComposerCapture } from "./web/lib/composerCapture.mjs";
15
19
  import { activeSessionId, applySessionBacklog, applySessionRemoved, applySessionUpsert, applySessionsSnapshot, beginSessionTransfer, completeSessionTransfer, markSocketClosed, noSessions, resetSessions, resolveParentId, sessionsStore, setActiveSession, useActiveSessionMeta, useNoSessions, waitForSession } from "./web/stores/sessionsStore.mjs";
16
20
  import { abortRun, answerDialogConfirm, answerDialogValue, applyHistoryPage, applyProtocolQueue, applyProtocolTranscript, applySessionFrame, applySessionLifecycle, applyThreadFrame, beginSessionReplay, bindHistoryReader, cancelDialog, clearQueuedMessages, deleteQueuedMessage, dropSessionStore, endSessionReplay, loadModelChoices, promoteQueuedMessage, queueFollowUp, queueFollowUpWithAck, refreshSessionFacts, refreshSessionStats, releaseProtocolTranscript, renameSession, requestLatestHistory, requestNewerHistory, requestOlderHistory, resetSessionStore, resetSessionStores, resumeQueuedMessages, rewindToMessage, runCommand, seedHistoryCursor, selectFastMode, selectModel, selectThinkingLevel, sessionStoreFor, setAgentLock, setHasNewerHistory, submitMessage, submitMessageWithAck, useActiveSession, useHasOlderHistory } from "./web/stores/sessionStore.mjs";
21
+ import { applyCaptureFrame, disconnectCaptures, submitCapture } from "./web/stores/captureStore.mjs";
17
22
  import { claimDialogMenu, clearPendingMenu, menuStore, pendingMenuFor, releaseDialogMenu, resetMenuStore, setPendingMenu } from "./web/stores/menuStore.mjs";
18
23
  import { createPagedTranscript } from "./web/stores/pagedTranscriptStore.mjs";
19
24
  import { applyThreadTranscriptFrame, bindThreadReader, dropThreads, heldThreads, resetThreads, resubscribeThreads, subscribeThread, threadStoreKey, unsubscribeThread } from "./web/stores/threadStore.mjs";
25
+ import { closeTransientTab, dropTransientTabs, findTransientTab, openTransientTab, transientTabsStore, useTransientTabs } from "./web/stores/transientTabsStore.mjs";
20
26
  import { applyWorkspaceRemoved, applyWorkspaceUpsert, applyWorkspacesSnapshot, resetWorkspaces, selectWorkspace, workspacesStore } from "./web/stores/workspacesStore.mjs";
21
- export { BUILTIN_COMMANDS, HOST_SLOTS, LEGACY_WORKSPACE_ID, abbreviateCwd, abortCommand, abortRun, activateWebPluginSession, activateWebPluginWorkspace, activeSessionId, activityGroupSlot, activityGroups, answerDialogConfirm, answerDialogValue, appendQueued, appendUserPrompt, applyHistoryPage, applyProtocolQueue, applyProtocolTranscript, applySessionBacklog, applySessionFrame, applySessionLifecycle, applySessionRemoved, applySessionUpsert, applySessionsSnapshot, applyThreadFrame, applyThreadTranscriptFrame, applyWorkspaceRemoved, applyWorkspaceUpsert, applyWorkspacesSnapshot, beginSessionReplay, beginSessionTransfer, bindBundledNativeTemplates, bindHistoryReader, bindSessionProtocol, bindSessionWebWorkspace, bindThreadReader, bindTransport, buildRailWorkspaces, builtinCommandFrame, cancelDialog, claimDialogMenu, clearDialog, clearPendingMenu, clearQueueCommand, clearQueuedEntries, clearQueuedMessages, compactCommand, completeSessionTransfer, contextGroups, createPagedTranscript, createProtocolHubSocket, deleteQueuedMessage, dialogCancelled, dialogConfirmed, dialogValue, dispatchChannelFrame, dropPluginSessionData, dropSessionStore, dropThreads, endSessionReplay, enqueueAutomaticCommand, followUpCommand, formatRunDuration, getAvailableModelsCommand, getAvailableThinkingLevelsCommand, getCommandsCommand, getSessionStatsCommand, getStateCommand, hasSessionProtocol, heldThreads, imagesFromContent, inactiveTotal, initialSessionState, installGlobalWebPlugins, installSessionWebPlugins, installWebPlugins, installWorkspaceWebPlugins, installedWebPlugins, invokeServerMethod, isDesktopClient, isSupportedImageMimeType, loadModelChoices, markSocketClosed, menuStore, mergeScopedPlugins, minorModes, nativeTemplateCatalog, noSessions, notifyHubConnected, onHubConnected, ownerLabel, ownersOf, paletteCommands, parseSelection, pendingMenuFor, pendingSetupView, personaInitials, pluginActivityGroups, pluginContextActions, pluginDockFaces, pluginFileLinks, pluginLeaderBindings, pluginMinorModes, pluginRepositorySettingsPanels, pluginSelectionAxes, pluginSettingsPanels, pluginSettingsSections, pluginToolRenderer, pluginUserMessageActions, pluginsAtScope, prependHistory, projectedGroups, promoteQueuedCommand, promoteQueuedMessage, promptCommand, queueFollowUp, queueFollowUpWithAck, reduceSession, refreshSessionFacts, refreshSessionStats, releaseDialogMenu, releaseProtocolTranscript, releaseTransport, removeQueuedCommand, removeQueuedEntry, removeSessionWebPlugins, removeWorkspaceWebPlugins, renameSession, replaceQueuedEntries, requestLatestHistory, requestNewerHistory, requestOlderHistory, requestSessionProtocolFrame, resetMenuStore, resetSessionStore, resetSessionStores, resetSessions, resetThreads, resetWebPlugins, resetWorkspaces, resolveNativeTemplate, resolveParentId, resubscribeThreads, resumeQueueCommand, resumeQueuedMessages, rewindCommand, rewindToMessage, runCommand, runningCount, seedHistoryCursor, selectFastMode, selectModel, selectThinkingLevel, selectWorkspace, selectionAxes, sendFrame, sendFrameWithAck, sendHubFrame, sendSessionProtocolFrame, sessionStatusLine, sessionStoreFor, sessionToolRenderer, sessionWebPluginsInstalled, sessionsStore, setActiveSession, setAgentLock, setHasNewerHistory, setModelCommand, setPendingMenu, setSessionNameCommand, setThinkingLevelCommand, setWebPluginLoadDiagnostics, slotFills, startPluginDefinitions, startWebPlugins, steerCommand, submitMessage, submitMessageWithAck, subscribeActivitySources, subscribeThread, subscribeWebPluginRegistry, summariseArgs, textFromContent, threadStoreKey, toolPromptClaim, totalTokens, unsubscribeThread, useActiveSession, useActiveSessionMeta, useActivityGroups, useHasOlderHistory, useNoSessions, waitForSession, webPluginDiagnostics, webPluginRegistryRevision, webPluginsInstalled, webTabs, webTemplateCatalog, workspaceName, workspaceSlotFills, workspacesStore };
27
+ import { updateDialogDraft, useDialogDraft } from "./web/stores/dialogDraftStore.mjs";
28
+ import { ToolRendererBoundary } from "./web/components/ToolRendererBoundary.mjs";
29
+ export { BUILTIN_COMMANDS, HOST_SLOTS, LEGACY_WORKSPACE_ID, MAX_COMPLETION_ITEMS, TRIGGER_CHARS, ToolRendererBoundary, abbreviateCwd, abortCommand, abortRun, activateWebPluginSession, activateWebPluginWorkspace, activeSessionId, activityGroupSlot, activityGroups, answerDialogConfirm, answerDialogValue, appendQueued, appendUserPrompt, applyCaptureFrame, applyHistoryPage, applyProtocolQueue, applyProtocolTranscript, applySessionBacklog, applySessionFrame, applySessionLifecycle, applySessionRemoved, applySessionUpsert, applySessionsSnapshot, applyThreadFrame, applyThreadTranscriptFrame, applyWorkspaceRemoved, applyWorkspaceUpsert, applyWorkspacesSnapshot, beginSessionReplay, beginSessionTransfer, bindBundledNativeTemplates, bindHistoryReader, bindSessionProtocol, bindSessionWebWorkspace, bindThreadReader, bindTransport, buildRailWorkspaces, builtinCommandFrame, cancelDialog, claimDialogMenu, clearDialog, clearPendingMenu, clearQueueCommand, clearQueuedEntries, clearQueuedMessages, closeTransientTab, commandCompletions, compactCommand, completeSessionTransfer, contextGroups, createPagedTranscript, createProtocolHubSocket, deleteQueuedMessage, dialogCancelled, dialogConfirmed, dialogValue, disconnectCaptures, dispatchChannelFrame, dropPluginSessionData, dropSessionStore, dropThreads, dropTransientTabs, endSessionReplay, enqueueAutomaticCommand, fileCompletions, findTransientTab, followUpCommand, formatRunDuration, getAvailableModelsCommand, getAvailableThinkingLevelsCommand, getCommandsCommand, getSessionStatsCommand, getStateCommand, hasSessionProtocol, heldThreads, imagesFromContent, inactiveTotal, initialSessionState, installGlobalWebPlugins, installSessionWebPlugins, installWebPlugins, installWorkspaceWebPlugins, installedWebPlugins, invokeServerMethod, isDesktopClient, isSupportedImageMimeType, loadModelChoices, markSocketClosed, menuStore, mergeScopedPlugins, minorModes, nativeTemplateCatalog, noSessions, notifyHubConnected, onHubConnected, openTransientTab, ownerLabel, ownersOf, paletteCommands, parseSelection, pendingMenuFor, pendingSetupView, personaInitials, pluginActivityGroups, pluginContextActions, pluginDockFaces, pluginFileLinks, pluginLeaderBindings, pluginMinorModes, pluginRepositorySettingsPanels, pluginSelectionAxes, pluginSessionContext, pluginSettingsPanels, pluginSettingsSections, pluginSlotProps, pluginToolRenderer, pluginUserMessageActions, pluginsAtScope, prependHistory, projectedGroups, promoteQueuedCommand, promoteQueuedMessage, promptCommand, queueFollowUp, queueFollowUpWithAck, reduceSession, refreshSessionFacts, refreshSessionStats, releaseDialogMenu, releaseProtocolTranscript, releaseTransport, removeQueuedCommand, removeQueuedEntry, removeSessionWebPlugins, removeWorkspaceWebPlugins, renameSession, replaceQueuedEntries, requestLatestHistory, requestNewerHistory, requestOlderHistory, requestSessionProtocolFrame, resetMenuStore, resetSessionStore, resetSessionStores, resetSessions, resetThreads, resetWebPlugins, resetWorkspaces, resolveNativeTemplate, resolveParentId, resubscribeThreads, resumeQueueCommand, resumeQueuedMessages, rewindCommand, rewindToMessage, runCommand, runningCount, seedHistoryCursor, selectFastMode, selectModel, selectThinkingLevel, selectWorkspace, selectionAxes, sendFrame, sendFrameWithAck, sendHubFrame, sendSessionProtocolFrame, sessionStatusLine, sessionStoreFor, sessionToolRenderer, sessionWebPluginsInstalled, sessionsStore, setActiveSession, setAgentLock, setHasNewerHistory, setModelCommand, setPendingMenu, setSessionNameCommand, setThinkingLevelCommand, setWebPluginLoadDiagnostics, slotFills, startPluginDefinitions, startWebPlugins, steerCommand, submitCapture, submitMessage, submitMessageWithAck, subscribeActivitySources, subscribeThread, subscribeWebPluginRegistry, summariseArgs, textFromContent, threadStoreKey, toolMessageProps, toolPromptClaim, totalTokens, transientTabsStore, triggerTokenAt, unsubscribeThread, updateDialogDraft, useActiveSession, useActiveSessionMeta, useActivityGroups, useDialogDraft, useDockFaces, useHasOlderHistory, useNoSessions, useTransientTabs, validateComposerCapture, waitForSession, webPluginDiagnostics, webPluginRegistryRevision, webPluginsInstalled, webTabs, webTemplateCatalog, workspaceName, workspaceSlotFills, workspacesStore };
package/dist/index.cjs CHANGED
@@ -6,6 +6,7 @@ const require_authApi = require("./web/lib/authApi.cjs");
6
6
  const require_browserNotifications = require("./web/lib/browserNotifications.cjs");
7
7
  const require_browserTelemetry = require("./web/lib/browserTelemetry.cjs");
8
8
  const require_commands = require("./web/lib/commands.cjs");
9
+ const require_composerCompletion = require("./web/lib/composerCompletion.cjs");
9
10
  const require_composerSubmissions = require("./web/lib/composerSubmissions.cjs");
10
11
  const require_leaderTree = require("./web/lib/leaderTree.cjs");
11
12
  const require_pluginScopes = require("./web/lib/pluginScopes.cjs");
@@ -49,10 +50,11 @@ const require_toolCompletionTabs = require("./web/lib/toolCompletionTabs.cjs");
49
50
  const require_toolMessageProps = require("./web/lib/toolMessageProps.cjs");
50
51
  const require_toolPrompt = require("./web/lib/toolPrompt.cjs");
51
52
  const require_useSessionMcp = require("./web/lib/useSessionMcp.cjs");
52
- const require_composerStore = require("./web/stores/composerStore.cjs");
53
+ const require_composerCapture = require("./web/lib/composerCapture.cjs");
53
54
  const require_sessionsStore = require("./web/stores/sessionsStore.cjs");
54
55
  const require_sessionStore = require("./web/stores/sessionStore.cjs");
55
56
  const require_captureStore = require("./web/stores/captureStore.cjs");
57
+ const require_composerStore = require("./web/stores/composerStore.cjs");
56
58
  const require_composerSubmissionStore = require("./web/stores/composerSubmissionStore.cjs");
57
59
  const require_devProxyStore = require("./web/stores/devProxyStore.cjs");
58
60
  const require_fileLinkModesStore = require("./web/stores/fileLinkModesStore.cjs");
@@ -87,15 +89,17 @@ exports.EMPTY_NEW_SESSION_DRAFT = require_newSessionStore.EMPTY_NEW_SESSION_DRAF
87
89
  exports.EMPTY_SETTINGS_DRAFT = require_settingsDraftStore.EMPTY_SETTINGS_DRAFT;
88
90
  exports.HOST_SLOTS = require_pluginRegistry.HOST_SLOTS;
89
91
  exports.LEGACY_WORKSPACE_ID = require_sessionRailModel.LEGACY_WORKSPACE_ID;
92
+ exports.MAX_COMPLETION_ITEMS = require_composerCompletion.MAX_COMPLETION_ITEMS;
90
93
  exports.MAX_COMPOSER_ATTACHMENTS = require_composerStore.MAX_COMPOSER_ATTACHMENTS;
91
- exports.MAX_COMPOSER_IMAGE_BYTES = require_composerStore.MAX_COMPOSER_IMAGE_BYTES;
92
- exports.MAX_COMPOSER_TEXT_BYTES = require_composerStore.MAX_COMPOSER_TEXT_BYTES;
94
+ exports.MAX_COMPOSER_IMAGE_BYTES = require_composerCapture.MAX_COMPOSER_IMAGE_BYTES;
95
+ exports.MAX_COMPOSER_TEXT_BYTES = require_composerCapture.MAX_COMPOSER_TEXT_BYTES;
93
96
  exports.MAX_COMPOSER_TOTAL_IMAGE_BYTES = require_composerStore.MAX_COMPOSER_TOTAL_IMAGE_BYTES;
94
97
  exports.MAX_COMPOSER_TOTAL_TEXT_BYTES = require_composerStore.MAX_COMPOSER_TOTAL_TEXT_BYTES;
95
98
  exports.MAX_COMPOSER_UPLOAD_BYTES = require_composerStore.MAX_COMPOSER_UPLOAD_BYTES;
96
99
  exports.PACKAGED_MINOR_MODES = require_composition.PACKAGED_MINOR_MODES;
97
100
  exports.PACKAGED_SELECTION_AXES = require_composition.PACKAGED_SELECTION_AXES;
98
101
  exports.STEP_UP_HEADER_NAME = require_webauthnClient.STEP_UP_HEADER_NAME;
102
+ exports.TRIGGER_CHARS = require_composerCompletion.TRIGGER_CHARS;
99
103
  exports.abbreviateCwd = require_sessionSummary.abbreviateCwd;
100
104
  exports.abortCommand = require_commands.abortCommand;
101
105
  exports.abortRun = require_sessionStore.abortRun;
@@ -178,6 +182,7 @@ exports.closeResumeDialog = require_railDialogStore.closeResumeDialog;
178
182
  exports.closeTransientTab = require_transientTabsStore.closeTransientTab;
179
183
  exports.collectNativeTemplates = require_templateCatalog.collectNativeTemplates;
180
184
  exports.collectWebTemplates = require_templateCatalog.collectWebTemplates;
185
+ exports.commandCompletions = require_composerCompletion.commandCompletions;
181
186
  exports.compactCommand = require_commands.compactCommand;
182
187
  exports.completeSessionTransfer = require_sessionsStore.completeSessionTransfer;
183
188
  exports.composerStore = require_composerStore.composerStore;
@@ -227,6 +232,7 @@ exports.fetchContextItemDetail = require_contextDetailApi.fetchContextItemDetail
227
232
  exports.fetchDevProxyTargets = require_devProxyApi.fetchDevProxyTargets;
228
233
  exports.fetchRemoteState = require_remoteApi.fetchRemoteState;
229
234
  exports.fetchWithStepUp = require_stepUp.fetchWithStepUp;
235
+ exports.fileCompletions = require_composerCompletion.fileCompletions;
230
236
  exports.fileLinkFor = require_composition.fileLinkFor;
231
237
  exports.fileTabForPath = require_composition.fileTabForPath;
232
238
  exports.findTransientTab = require_transientTabsStore.findTransientTab;
@@ -499,6 +505,7 @@ exports.toolPromptStore = require_toolPromptStore.toolPromptStore;
499
505
  exports.totalTokens = require_contextComposition.totalTokens;
500
506
  exports.transientTabsOf = require_transientTabsStore.transientTabsOf;
501
507
  exports.transientTabsStore = require_transientTabsStore.transientTabsStore;
508
+ exports.triggerTokenAt = require_composerCompletion.triggerTokenAt;
502
509
  exports.turnRemoteAccessOff = require_remoteAccessStore.turnRemoteAccessOff;
503
510
  exports.turnRemoteAccessOn = require_remoteAccessStore.turnRemoteAccessOn;
504
511
  exports.uiStore = require_uiStore.uiStore;
@@ -527,7 +534,7 @@ exports.useTemplateConfiguration = require_templateStore.useTemplateConfiguratio
527
534
  exports.useToolPrompt = require_useToolPrompt.useToolPrompt;
528
535
  exports.useTransientTabs = require_transientTabsStore.useTransientTabs;
529
536
  exports.useWebPluginRegistry = require_useWebPluginRegistry.useWebPluginRegistry;
530
- exports.validateComposerCapture = require_composerStore.validateComposerCapture;
537
+ exports.validateComposerCapture = require_composerCapture.validateComposerCapture;
531
538
  exports.waitForSession = require_sessionsStore.waitForSession;
532
539
  exports.watchDashboardTranscript = require_dashboardTranscript.watchDashboardTranscript;
533
540
  exports.webPluginCompositionStore = require_pluginCompositions.webPluginCompositionStore;
package/dist/index.d.mts CHANGED
@@ -1,5 +1,6 @@
1
1
  import { AgentInfo, AssistantEntry, CommandInfo, DialogMethod, DialogRequest, EditorTextRequest, EntryKind, ModelChoice, NoticeEntry, ProfileIdentity, QueuedEntry, ReduceSessionOptions, SessionState, SessionStats, SettledEntry, TimelineEntry, ToolEntry, UserEntry, UserImage, appendQueued, appendUserPrompt, clearDialog, clearQueuedEntries, imagesFromContent, initialSessionState, isSupportedImageMimeType, prependHistory, reduceSession, removeQueuedEntry, replaceQueuedEntries, summariseArgs, textFromContent } from "./web/lib/sessionModel.mjs";
2
2
  import { BUILTIN_COMMANDS, RpcImage, abortCommand, builtinCommandFrame, clearQueueCommand, compactCommand, dialogCancelled, dialogConfirmed, dialogValue, enqueueAutomaticCommand, followUpCommand, getAvailableModelsCommand, getAvailableThinkingLevelsCommand, getCommandsCommand, getSessionStatsCommand, getStateCommand, promoteQueuedCommand, promptCommand, removeQueuedCommand, resumeQueueCommand, rewindCommand, setModelCommand, setSessionNameCommand, setThinkingLevelCommand, steerCommand } from "./web/lib/commands.mjs";
3
+ import { CompletionItem, CompletionKind, CompletionTrigger, MAX_COMPLETION_ITEMS, TRIGGER_CHARS, commandCompletions, fileCompletions, triggerTokenAt } from "./web/lib/composerCompletion.mjs";
3
4
  import { bindSessionProtocol, hasSessionProtocol, requestSessionProtocolFrame, sendSessionProtocolFrame } from "./web/lib/sessionProtocolCommands.mjs";
4
5
  import { bindTransport, invokeServerMethod, notifyHubConnected, onHubConnected, releaseTransport, sendFrame, sendFrameWithAck, sendHubFrame } from "./web/lib/transport.mjs";
5
6
  import { SessionSocket, SessionSocketHandlers, createProtocolHubSocket } from "./web/lib/protocolHubSocket.mjs";
@@ -7,6 +8,9 @@ import { InstalledNativeTemplate, InstalledWebTemplate, NativeTemplateCatalog, W
7
8
  import { HOST_SLOTS, InstallDiagnostic, InstallDiagnosticKind, InstalledContextAction, InstalledRepositorySettingsPanel, InstalledSettingsPanel, InstalledUserMessageAction, ResolvedFill, activateWebPluginSession, activateWebPluginWorkspace, activityGroupSlot, bindSessionWebWorkspace, dispatchChannelFrame, dropPluginSessionData, installGlobalWebPlugins, installSessionWebPlugins, installWebPlugins, installWorkspaceWebPlugins, installedWebPlugins, isDesktopClient, nativeTemplateCatalog, paletteCommands, pluginActivityGroups, pluginContextActions, pluginDockFaces, pluginFileLinks, pluginLeaderBindings, pluginMinorModes, pluginRepositorySettingsPanels, pluginSelectionAxes, pluginSettingsPanels, pluginSettingsSections, pluginToolRenderer, pluginUserMessageActions, removeSessionWebPlugins, removeWorkspaceWebPlugins, resetWebPlugins, sessionToolRenderer, sessionWebPluginsInstalled, setWebPluginLoadDiagnostics, slotFills, startPluginDefinitions, startWebPlugins, subscribeWebPluginRegistry, webPluginDiagnostics, webPluginRegistryRevision, webPluginsInstalled, webTabs, webTemplateCatalog, workspaceSlotFills } from "./web/lib/pluginRegistry.mjs";
8
9
  import { mergeScopedPlugins, pluginsAtScope } from "./web/lib/pluginScopes.mjs";
9
10
  import { ToolPromptClaim, ToolPromptInput, toolPromptClaim } from "./web/lib/toolPrompt.mjs";
11
+ import { TransientTabActions, pluginSessionContext, pluginSlotProps } from "./web/lib/pluginSlotProps.mjs";
12
+ import { toolMessageProps } from "./web/lib/toolMessageProps.mjs";
13
+ import { DialogDraft, dialogDraftStore, updateDialogDraft, useDialogDraft } from "./web/stores/dialogDraftStore.mjs";
10
14
  import { AttachPhase, StatusLineInput, abbreviateCwd, formatRunDuration, personaInitials, runningCount, sessionStatusLine } from "./web/lib/sessionSummary.mjs";
11
15
  import { LEGACY_WORKSPACE_ID, RailRestartState, RailSessionInput, SessionRailModelInput, buildRailWorkspaces, pendingSetupView, workspaceName } from "./web/lib/sessionRailModel.mjs";
12
16
  import { SessionMeta, SessionsState, activeSessionId, applySessionBacklog, applySessionRemoved, applySessionUpsert, applySessionsSnapshot, beginSessionTransfer, completeSessionTransfer, markSocketClosed, noSessions, resetSessions, resolveParentId, sessionsStore, setActiveSession, useActiveSessionMeta, useNoSessions, waitForSession } from "./web/stores/sessionsStore.mjs";
@@ -19,6 +23,9 @@ import { ActivityGroup, FileLinkResolver, MinorMode, MinorModeAvailability, Mino
19
23
  import { Selection, ansiSegments, emptySelection, parseSelection, stripAnsi } from "./web/lib/statusLine.mjs";
20
24
  import { MenuClaim, MenuKind, MenuState, claimDialogMenu, clearPendingMenu, menuStore, pendingMenuFor, releaseDialogMenu, resetMenuStore, setPendingMenu } from "./web/stores/menuStore.mjs";
21
25
  import { ContextGroup, ContextGroupKind, ContextItem, ContextItemSource, ContextOwner, contextGroups, inactiveTotal, ownerLabel, ownersOf, projectedGroups, totalTokens } from "./web/lib/contextComposition.mjs";
26
+ import { closeTransientTab, dropTransientTabs, findTransientTab, openTransientTab, resetTransientTabs, transientTabsOf, transientTabsStore, useTransientTabs } from "./web/stores/transientTabsStore.mjs";
27
+ import { MAX_COMPOSER_IMAGE_BYTES, MAX_COMPOSER_TEXT_BYTES, validateComposerCapture } from "./web/lib/composerCapture.mjs";
28
+ import { applyCaptureFrame, disconnectCaptures, onCaptureStatus, pendingCaptureSessions, submitCapture } from "./web/stores/captureStore.mjs";
22
29
  import { LoginFlowResult, LogoutResult, ProvidersResult, answerLogin, cancelLogin, listProviders, logoutProvider, readLogin, startLogin } from "./web/lib/authApi.mjs";
23
30
  import { BrowserNotificationDeliveryStatus, BrowserNotificationPermissionStatus, browserNotificationPermission, deliverBrowserNotification, requestBrowserNotificationPermission } from "./web/lib/browserNotifications.mjs";
24
31
  import { onComposerSubmitted, publishComposerSubmission } from "./web/lib/composerSubmissions.mjs";
@@ -33,7 +40,6 @@ import { LivePushStatus, disableLivePush, enableLivePush, livePushStatus, restor
33
40
  import { acquireModelContext, disposeModelContextAdapter } from "./web/lib/modelContextAdapter.mjs";
34
41
  import { createProtocolTransport, protocolSocketUrl } from "./web/lib/piTransport.mjs";
35
42
  import { WebPluginCompositionPhase, WebPluginCompositionState, WebPluginMountState, WebTemplateDecision, bindWebPluginCompositions, focusWorkspaceWebPlugins, refreshWebPluginCompositions, reloadWebTemplateDecision, retryWebPluginCompositions, webPluginCompositionStore, webPluginMountState } from "./web/lib/pluginCompositions.mjs";
36
- import { TransientTabActions, pluginSessionContext, pluginSlotProps } from "./web/lib/pluginSlotProps.mjs";
37
43
  import { focusPrompt, registerPromptInput } from "./web/lib/promptFocus.mjs";
38
44
  import { toQueuedEntries, toTimelineEntries } from "./web/lib/protocolTimeline.mjs";
39
45
  import { qrMatrix } from "./web/lib/qrMatrix.mjs";
@@ -51,11 +57,9 @@ import { fetchWithStepUp } from "./web/lib/stepUp.mjs";
51
57
  import { bindThreadRenderer, releaseThreadRenderer, renderThread } from "./web/lib/threadRenderer.mjs";
52
58
  import { GroupUnit, SingleUnit, TimelineUnit, groupSummary, groupTone, timelineUnits } from "./web/lib/timelineGroups.mjs";
53
59
  import { createToolCompletionTabs } from "./web/lib/toolCompletionTabs.mjs";
54
- import { toolMessageProps } from "./web/lib/toolMessageProps.mjs";
55
60
  import { SessionMcpViewState, useSessionMcp } from "./web/lib/useSessionMcp.mjs";
56
61
  import { PasskeyOutcome, STEP_UP_HEADER_NAME, assertionFor, passkeysAvailable, registerPasskey, signInWithPasskey } from "./web/lib/webauthnClient.mjs";
57
- import { applyCaptureFrame, disconnectCaptures, onCaptureStatus, pendingCaptureSessions, submitCapture } from "./web/stores/captureStore.mjs";
58
- import { ComposerAttachment, ComposerContextAttachment, ComposerFileAttachment, ComposerImageAttachment, ComposerSessionState, ComposerTextAttachment, MAX_COMPOSER_ATTACHMENTS, MAX_COMPOSER_IMAGE_BYTES, MAX_COMPOSER_TEXT_BYTES, MAX_COMPOSER_TOTAL_IMAGE_BYTES, MAX_COMPOSER_TOTAL_TEXT_BYTES, MAX_COMPOSER_UPLOAD_BYTES, appendComposerDraft, appendComposerQuote, attachComposerCapture, attachComposerContext, clearComposerState, composerStore, dropComposerState, inlineTextBytes, resetComposerStore, restoreComposerDrafts, saveComposerDrafts, tabComposerContext, updateComposerState, useComposerState, validateComposerCapture } from "./web/stores/composerStore.mjs";
62
+ import { ComposerAttachment, ComposerContextAttachment, ComposerFileAttachment, ComposerImageAttachment, ComposerSessionState, ComposerTextAttachment, MAX_COMPOSER_ATTACHMENTS, MAX_COMPOSER_TOTAL_IMAGE_BYTES, MAX_COMPOSER_TOTAL_TEXT_BYTES, MAX_COMPOSER_UPLOAD_BYTES, appendComposerDraft, appendComposerQuote, attachComposerCapture, attachComposerContext, clearComposerState, composerStore, dropComposerState, inlineTextBytes, resetComposerStore, restoreComposerDrafts, saveComposerDrafts, tabComposerContext, updateComposerState, useComposerState } from "./web/stores/composerStore.mjs";
59
63
  import { attachmentPrompt, composerSubmissionStore, submitComposerDraft } from "./web/stores/composerSubmissionStore.mjs";
60
64
  import { DevProxyState, createDevProxyTarget, deleteDevProxyTarget, devProxyStore, refreshDevProxyTargets, resetDevProxyStore } from "./web/stores/devProxyStore.mjs";
61
65
  import { bindSessionFileLinkModes } from "./web/stores/fileLinkModesStore.mjs";
@@ -67,15 +71,13 @@ import { dispatchHeldSessionChannel, heldSessionChannels, holdSessionChannels }
67
71
  import { TemplateConfiguration, configuredTemplate, ensureTemplateConfiguration, refreshTemplateConfiguration, saveTemplateDefault, templateStore, useTemplateConfiguration } from "./web/stores/templateStore.mjs";
68
72
  import { ThemeState, applyStoredTheme, availableThemes, selectTheme, themeStore } from "./web/stores/themeStore.mjs";
69
73
  import { ToolPromptState, markToolPromptFailed, resetToolPromptStore, toolPromptStore } from "./web/stores/toolPromptStore.mjs";
70
- import { closeTransientTab, dropTransientTabs, findTransientTab, openTransientTab, resetTransientTabs, transientTabsOf, transientTabsStore, useTransientTabs } from "./web/stores/transientTabsStore.mjs";
71
74
  import { DockTab, UiState, setDockOpen, setDockTab, uiStore } from "./web/stores/uiStore.mjs";
72
75
  import { useOpenTab } from "./web/stores/useOpenTab.mjs";
73
76
  import { usePluginSlotProps } from "./web/stores/usePluginSlotProps.mjs";
74
77
  import { useToolPrompt } from "./web/stores/useToolPrompt.mjs";
75
78
  import { useWebPluginRegistry } from "./web/stores/useWebPluginRegistry.mjs";
76
79
  import { WorkspaceAdmissionDraft, admitDashboardWorkspace, resetWorkspaceAdmission, updateWorkspaceAdmission, workspaceAdmissionStore } from "./web/stores/workspaceAdmissionStore.mjs";
77
- import { DialogDraft, dialogDraftStore, updateDialogDraft, useDialogDraft } from "./web/stores/dialogDraftStore.mjs";
78
80
  import { EMPTY_SETTINGS_DRAFT, SettingsDraftState, SettingsDraftTarget, discardSettingsDraft, loadSettingsDraft, saveSettingsDraft, setSettingsDraft, settingsDraftKey, settingsDraftStore } from "./web/stores/settingsDraftStore.mjs";
79
81
  import { dashboardStateFor, useDashboardState } from "./web/stores/dashboardStateStore.mjs";
80
82
  import { DashboardRendererProvider, DashboardRenderers } from "./web/lib/dashboardRenderers.mjs";
81
- export { ActivityGroup, AgentInfo, AssistantEntry, AttachPhase, BUILTIN_COMMANDS, BrowserNotificationDeliveryStatus, BrowserNotificationPermissionStatus, BrowserPerformanceEvent, BrowserPerformanceEventName, CommandInfo, ComposerAttachment, ComposerContextAttachment, ComposerFileAttachment, ComposerImageAttachment, ComposerSessionState, ComposerTextAttachment, ContextGroup, ContextGroupKind, ContextItem, ContextItemSource, ContextOwner, CreateSessionResult, DEFAULT_REPOSITORY_SETTINGS_SECTION, DEFAULT_SETTINGS_SECTION, DashboardRendererProvider, type DashboardRenderers, DashboardRoute, DevProxyState, DialogDraft, DialogMethod, DialogRequest, DockTab, EMPTY_NEW_SESSION_DRAFT, EMPTY_SETTINGS_DRAFT, EditorTextRequest, EnableResult, EntryKind, FetchItemDetailResult, FileLinkResolver, FileMention, GroupUnit, HOST_SLOTS, HistoryPage, ImageSettingsResult, InstallDiagnostic, InstallDiagnosticKind, InstalledContextAction, InstalledNativeTemplate, InstalledRepositorySettingsPanel, InstalledSettingsPanel, InstalledUserMessageAction, InstalledWebTemplate, LEGACY_WORKSPACE_ID, LeaderConflict, LeaderGroup, LeaderOption, LivePushStatus, LoginFlowResult, LogoutResult, MAX_COMPOSER_ATTACHMENTS, MAX_COMPOSER_IMAGE_BYTES, MAX_COMPOSER_TEXT_BYTES, MAX_COMPOSER_TOTAL_IMAGE_BYTES, MAX_COMPOSER_TOTAL_TEXT_BYTES, MAX_COMPOSER_UPLOAD_BYTES, MenuClaim, MenuKind, MenuState, MinorMode, MinorModeAvailability, MinorModeSource, ModelChoice, NativeTemplateCatalog, NewSessionDraft, NewSessionState, NoticeEntry, PACKAGED_MINOR_MODES, PACKAGED_SELECTION_AXES, PairingResult, PaletteState, PasskeyOutcome, PasskeySupportView, PlannedWritesInput, ProfileIdentity, ProvidersResult, QueuedEntry, RailDialogState, RailRestartState, RailSessionInput, ReadConfigResult, ReadRepositorySettingsResult, ReduceSessionOptions, RemoteAccessState, RemoteStep, RemoveWorkspaceResult, ResolvedFill, RestartSessionResult, ResumeDraft, ResumeSessionResult, ResumeTarget, ReviveSessionResult, RpcImage, STEP_UP_HEADER_NAME, Selection, SelectionAxis, SessionAsset, SessionHistoryResult, SessionMcpResult, SessionMcpViewState, SessionMeta, SessionRailModelInput, SessionSocket, SessionSocketHandlers, SessionState, SessionStats, SessionsState, SettingsDraftState, SettingsDraftTarget, SettingsSection, SettingsWorkspace, SettledEntry, SingleUnit, StateResult, StatusLineInput, StopSessionResult, StoredSessionAttachment, TargetResult, TargetsResult, TemplateConfiguration, ThemeState, TimelineEntry, TimelineUnit, ToolEntry, ToolPromptClaim, ToolPromptInput, ToolPromptState, TransientTabActions, UiState, UserEntry, UserImage, WebPluginCompositionPhase, WebPluginCompositionState, WebPluginMountState, WebTemplateCatalog, WebTemplateDecision, WebTemplateDiagnostic, WorkspaceAdmissionDraft, WorkspaceResult, WorkspacesResult, WorkspacesState, WriteConfigResult, abbreviateCwd, abortCommand, abortRun, acquireModelContext, activateWebPluginSession, activateWebPluginWorkspace, activeSessionId, activityGroupSlot, activityGroups, addDevProxyTarget, addPasskey, admitDashboardWorkspace, admitWorkspace, ansiSegments, answerDialogConfirm, answerDialogValue, answerLogin, appendComposerDraft, appendComposerQuote, appendQueued, appendUserPrompt, applyCaptureFrame, applyHistoryPage, applyProtocolQueue, applyProtocolTranscript, applyRemoteState, applySessionBacklog, applySessionFrame, applySessionLifecycle, applySessionRemoved, applySessionUpsert, applySessionsSnapshot, applyStoredTheme, applyThreadFrame, applyThreadTranscriptFrame, applyWorkspaceRemoved, applyWorkspaceUpsert, applyWorkspacesSnapshot, approveDevice, approvePairing, assertionFor, attachComposerCapture, attachComposerContext, attachmentPrompt, availableThemes, beginSessionReplay, beginSessionTransfer, bindBundledNativeTemplates, bindBundledWebTemplates, bindDashboardTranscriptWatcher, bindFileLinkModes, bindHistoryReader, bindSessionActivityRenderer, bindSessionFileLinkModes, bindSessionProtocol, bindSessionTranscriptRenderer, bindSessionWebWorkspace, bindThreadReader, bindThreadRenderer, bindTransport, bindWebPluginCompositions, browserNotificationPermission, browserReadyDuration, buildRailWorkspaces, builtinCommandFrame, canSaveSettings, cancelDialog, cancelLogin, claimDialogMenu, clearComposerState, clearDialog, clearPendingMenu, clearQueueCommand, clearQueuedEntries, clearQueuedMessages, closeNewSession, closePalette, closeRemoteDialog, closeResumeDialog, closeTransientTab, collectNativeTemplates, collectWebTemplates, compactCommand, completeSessionTransfer, composerStore, composerSubmissionStore, configuredTemplate, contextGroups, createDevProxyTarget, createPagedTranscript, createPlainSession, createProtocolHubSocket, createProtocolTransport, createSession, createSessionMcpClient, createToolCompletionTabs, createWorkspaceSession, dashboardRouteFrom, dashboardStateFor, deleteDevProxyTarget, deleteQueuedMessage, deliverBrowserNotification, denyDevice, denyPairing, devProxyStore, dialogCancelled, dialogConfirmed, dialogDraftStore, dialogValue, disableLivePush, disableRemoteAccess, discardSettingsDraft, disconnectCaptures, dispatchChannelFrame, dispatchHeldSessionChannel, disposeModelContextAdapter, dropComposerState, dropPluginSessionData, dropSessionStore, dropThreads, dropTransientTabs, emptySelection, enableLivePush, enableRemoteAccess, endSessionReplay, enqueueAutomaticCommand, ensureTemplateConfiguration, fetchContextItemDetail, fetchDevProxyTargets, fetchRemoteState, fetchWithStepUp, fileLinkFor, fileTabForPath, findTransientTab, flushBrowserTelemetry, focusPrompt, focusWorkspaceWebPlugins, followUpCommand, formatRunDuration, getAvailableModelsCommand, getAvailableThinkingLevelsCommand, getCommandsCommand, getSessionStatsCommand, getStateCommand, groupSummary, groupTone, hasSessionProtocol, heldSessionChannels, heldThreads, holdSessionChannels, imagesFromContent, inactiveTotal, initialSessionState, inlineTextBytes, installBrowserErrorReporting, installGlobalWebPlugins, installSessionWebPlugins, installWebPlugins, installWorkspaceWebPlugins, installedWebPlugins, invokeServerMethod, isDesktopClient, isSessionMcpActivity, isSupportedImageMimeType, leaderConflicts, leaderGroup, listDirectory, listProviders, listSessionHistory, listSessionMcpClients, listSettingsModels, listSettingsRepositories, listWorkspaceHistory, listWorkspaces, livePushStatus, loadModelChoices, loadSessionAsset, loadSessionAvatar, loadSettingsDraft, logoutProvider, markSocketClosed, markToolPromptFailed, mediaKindFor, menuStore, mergeScopedPlugins, minorModes, mintPairingCode, nativeTemplateCatalog, newPairingCode, newSessionDraftStore, newSessionStore, noSessions, notifyHubConnected, onCaptureStatus, onComposerSubmitted, onHubConnected, openNewSession, openPalette, openRemoteDialog, openResumeDialog, openTransientTab, ownerLabel, ownersOf, paletteCommands, paletteStore, parseFileMentions, parseSelection, passkeysAvailable, pendingCaptureSessions, pendingMenuFor, pendingSetupView, personaInitials, plannedSettingsWrites, pluginActivityGroups, pluginContextActions, pluginDockFaces, pluginFileLinks, pluginLeaderBindings, pluginMinorModes, pluginRepositorySettingsPanels, pluginSelectionAxes, pluginSessionContext, pluginSettingsPanels, pluginSettingsSections, pluginSlotProps, pluginToolRenderer, pluginUserMessageActions, pluginsAtScope, prependHistory, projectedGroups, promoteQueuedCommand, promoteQueuedMessage, promptCommand, protocolSocketUrl, publishComposerSubmission, qrMatrix, queueFollowUp, queueFollowUpWithAck, railDialogStore, railRestartStore, readDormantTranscriptPage, readImageSettings, readLogin, readRepositorySettings, readSessionMcpActivity, readSessionMcpConfig, readSettingsConfig, recordBrowserError, recordBrowserPerformance, reduceSession, refreshDevProxyTargets, refreshPasskeys, refreshRemoteState, refreshSessionFacts, refreshSessionStats, refreshTemplateConfiguration, refreshWebPluginCompositions, registerPasskey, registerPromptInput, releaseDialogMenu, releaseProtocolTranscript, releaseSessionActivityRenderer, releaseSessionTranscriptRenderer, releaseThreadRenderer, releaseTransport, reloadWebTemplateDecision, rememberHostChannelKey, rememberedHostChannelKey, remoteAccessStore, removeDevProxyTarget, removeQueuedCommand, removeQueuedEntry, removeSessionMcpSetup, removeSessionWebPlugins, removeWorkspace, removeWorkspaceWebPlugins, renameSession, renderSessionActivity, renderSessionTranscript, renderThread, replaceQueuedEntries, requestBrowserNotificationPermission, requestLatestHistory, requestNewerHistory, requestOlderHistory, requestSessionProtocolFrame, resetComposerStore, resetDevProxyStore, resetMenuStore, resetNewSessionStore, resetRailDialogStore, resetSealedSessions, resetSessionStore, resetSessionStores, resetSessions, resetThreads, resetToolPromptStore, resetTransientTabs, resetWebPlugins, resetWorkspaceAdmission, resetWorkspaces, resolveNativeTemplate, resolveParentId, resolveWebTemplate, restartDashboardSession, restartSession, restoreComposerDrafts, restoreLivePushRegistration, restoreSealedSession, resubscribeThreads, resumeDashboardSession, resumeDraftStore, resumeQueueCommand, resumeQueuedMessages, resumeSession, resumeWorkspaceSession, retryWebPluginCompositions, reviveSession, revokeDevice, revokePairedDevice, revokeSessionMcpClient, revokeTrustedDevice, revokeTrustedNativeDevice, rewindCommand, rewindToMessage, runCommand, runningCount, saveComposerDrafts, saveRemoteSettings, saveSettingsDraft, saveTemplateDefault, sealedHttpSession, sealedProtocolSession, sealedSession, searchDirectories, searchSessionFiles, seedHistoryCursor, selectFastMode, selectModel, selectTheme, selectThinkingLevel, selectWorkspace, selectionAxes, sendFrame, sendFrameWithAck, sendHubFrame, sendSessionProtocolFrame, sessionStatusLine, sessionStoreFor, sessionToolRenderer, sessionWebPluginsInstalled, sessionsStore, setActiveSession, setAgentLock, setDockOpen, setDockTab, setHasNewerHistory, setModelCommand, setNewSessionName, setPalettePath, setPendingMenu, setSessionNameCommand, setSettingsDraft, setThinkingLevelCommand, setWebPluginLoadDiagnostics, settingsDraftKey, settingsDraftStore, settingsKeyOf, settingsLockedReason, settingsSection, settingsSections, showRemoteOptions, signInWithPasskey, slotFills, startLogin, startPluginDefinitions, startWebPlugins, steerCommand, stopSession, stripAnsi, submitCapture, submitComposerDraft, submitMessage, submitMessageWithAck, subscribeActivitySources, subscribeThread, subscribeWebPluginRegistry, summariseArgs, tabComposerContext, templateStore, textFromContent, themeStore, threadStoreKey, timelineUnits, toQueuedEntries, toTimelineEntries, togglePalette, toolMessageProps, toolPromptClaim, toolPromptStore, totalTokens, transientTabsOf, transientTabsStore, turnRemoteAccessOff, turnRemoteAccessOn, uiStore, unsubscribeThread, updateComposerState, updateDialogDraft, updateRemoteSettings, updateResumeDraft, updateWorkspaceAdmission, uploadSessionAttachment, useActiveSession, useActiveSessionMeta, useActivityGroups, useComposerState, useDashboardRoute, useDashboardState, useDialogDraft, useDockFaces, useFileLinks, useHasOlderHistory, useNoSessions, useOpenTab, usePluginSlotProps, useSessionMcp, useTemplateConfiguration, useToolPrompt, useTransientTabs, useWebPluginRegistry, validateComposerCapture, waitForSession, watchDashboardTranscript, webPluginCompositionStore, webPluginDiagnostics, webPluginMountState, webPluginRegistryRevision, webPluginsInstalled, webTabs, webTemplateCatalog, workspaceAdmissionStore, workspaceName, workspaceSlotFills, workspacesStore, writeImageSettings, writeRepositorySelection, writeSettingsValue };
83
+ export { ActivityGroup, AgentInfo, AssistantEntry, AttachPhase, BUILTIN_COMMANDS, BrowserNotificationDeliveryStatus, BrowserNotificationPermissionStatus, BrowserPerformanceEvent, BrowserPerformanceEventName, CommandInfo, CompletionItem, CompletionKind, CompletionTrigger, ComposerAttachment, ComposerContextAttachment, ComposerFileAttachment, ComposerImageAttachment, ComposerSessionState, ComposerTextAttachment, ContextGroup, ContextGroupKind, ContextItem, ContextItemSource, ContextOwner, CreateSessionResult, DEFAULT_REPOSITORY_SETTINGS_SECTION, DEFAULT_SETTINGS_SECTION, DashboardRendererProvider, type DashboardRenderers, DashboardRoute, DevProxyState, DialogDraft, DialogMethod, DialogRequest, DockTab, EMPTY_NEW_SESSION_DRAFT, EMPTY_SETTINGS_DRAFT, EditorTextRequest, EnableResult, EntryKind, FetchItemDetailResult, FileLinkResolver, FileMention, GroupUnit, HOST_SLOTS, HistoryPage, ImageSettingsResult, InstallDiagnostic, InstallDiagnosticKind, InstalledContextAction, InstalledNativeTemplate, InstalledRepositorySettingsPanel, InstalledSettingsPanel, InstalledUserMessageAction, InstalledWebTemplate, LEGACY_WORKSPACE_ID, LeaderConflict, LeaderGroup, LeaderOption, LivePushStatus, LoginFlowResult, LogoutResult, MAX_COMPLETION_ITEMS, MAX_COMPOSER_ATTACHMENTS, MAX_COMPOSER_IMAGE_BYTES, MAX_COMPOSER_TEXT_BYTES, MAX_COMPOSER_TOTAL_IMAGE_BYTES, MAX_COMPOSER_TOTAL_TEXT_BYTES, MAX_COMPOSER_UPLOAD_BYTES, MenuClaim, MenuKind, MenuState, MinorMode, MinorModeAvailability, MinorModeSource, ModelChoice, NativeTemplateCatalog, NewSessionDraft, NewSessionState, NoticeEntry, PACKAGED_MINOR_MODES, PACKAGED_SELECTION_AXES, PairingResult, PaletteState, PasskeyOutcome, PasskeySupportView, PlannedWritesInput, ProfileIdentity, ProvidersResult, QueuedEntry, RailDialogState, RailRestartState, RailSessionInput, ReadConfigResult, ReadRepositorySettingsResult, ReduceSessionOptions, RemoteAccessState, RemoteStep, RemoveWorkspaceResult, ResolvedFill, RestartSessionResult, ResumeDraft, ResumeSessionResult, ResumeTarget, ReviveSessionResult, RpcImage, STEP_UP_HEADER_NAME, Selection, SelectionAxis, SessionAsset, SessionHistoryResult, SessionMcpResult, SessionMcpViewState, SessionMeta, SessionRailModelInput, SessionSocket, SessionSocketHandlers, SessionState, SessionStats, SessionsState, SettingsDraftState, SettingsDraftTarget, SettingsSection, SettingsWorkspace, SettledEntry, SingleUnit, StateResult, StatusLineInput, StopSessionResult, StoredSessionAttachment, TRIGGER_CHARS, TargetResult, TargetsResult, TemplateConfiguration, ThemeState, TimelineEntry, TimelineUnit, ToolEntry, ToolPromptClaim, ToolPromptInput, ToolPromptState, TransientTabActions, UiState, UserEntry, UserImage, WebPluginCompositionPhase, WebPluginCompositionState, WebPluginMountState, WebTemplateCatalog, WebTemplateDecision, WebTemplateDiagnostic, WorkspaceAdmissionDraft, WorkspaceResult, WorkspacesResult, WorkspacesState, WriteConfigResult, abbreviateCwd, abortCommand, abortRun, acquireModelContext, activateWebPluginSession, activateWebPluginWorkspace, activeSessionId, activityGroupSlot, activityGroups, addDevProxyTarget, addPasskey, admitDashboardWorkspace, admitWorkspace, ansiSegments, answerDialogConfirm, answerDialogValue, answerLogin, appendComposerDraft, appendComposerQuote, appendQueued, appendUserPrompt, applyCaptureFrame, applyHistoryPage, applyProtocolQueue, applyProtocolTranscript, applyRemoteState, applySessionBacklog, applySessionFrame, applySessionLifecycle, applySessionRemoved, applySessionUpsert, applySessionsSnapshot, applyStoredTheme, applyThreadFrame, applyThreadTranscriptFrame, applyWorkspaceRemoved, applyWorkspaceUpsert, applyWorkspacesSnapshot, approveDevice, approvePairing, assertionFor, attachComposerCapture, attachComposerContext, attachmentPrompt, availableThemes, beginSessionReplay, beginSessionTransfer, bindBundledNativeTemplates, bindBundledWebTemplates, bindDashboardTranscriptWatcher, bindFileLinkModes, bindHistoryReader, bindSessionActivityRenderer, bindSessionFileLinkModes, bindSessionProtocol, bindSessionTranscriptRenderer, bindSessionWebWorkspace, bindThreadReader, bindThreadRenderer, bindTransport, bindWebPluginCompositions, browserNotificationPermission, browserReadyDuration, buildRailWorkspaces, builtinCommandFrame, canSaveSettings, cancelDialog, cancelLogin, claimDialogMenu, clearComposerState, clearDialog, clearPendingMenu, clearQueueCommand, clearQueuedEntries, clearQueuedMessages, closeNewSession, closePalette, closeRemoteDialog, closeResumeDialog, closeTransientTab, collectNativeTemplates, collectWebTemplates, commandCompletions, compactCommand, completeSessionTransfer, composerStore, composerSubmissionStore, configuredTemplate, contextGroups, createDevProxyTarget, createPagedTranscript, createPlainSession, createProtocolHubSocket, createProtocolTransport, createSession, createSessionMcpClient, createToolCompletionTabs, createWorkspaceSession, dashboardRouteFrom, dashboardStateFor, deleteDevProxyTarget, deleteQueuedMessage, deliverBrowserNotification, denyDevice, denyPairing, devProxyStore, dialogCancelled, dialogConfirmed, dialogDraftStore, dialogValue, disableLivePush, disableRemoteAccess, discardSettingsDraft, disconnectCaptures, dispatchChannelFrame, dispatchHeldSessionChannel, disposeModelContextAdapter, dropComposerState, dropPluginSessionData, dropSessionStore, dropThreads, dropTransientTabs, emptySelection, enableLivePush, enableRemoteAccess, endSessionReplay, enqueueAutomaticCommand, ensureTemplateConfiguration, fetchContextItemDetail, fetchDevProxyTargets, fetchRemoteState, fetchWithStepUp, fileCompletions, fileLinkFor, fileTabForPath, findTransientTab, flushBrowserTelemetry, focusPrompt, focusWorkspaceWebPlugins, followUpCommand, formatRunDuration, getAvailableModelsCommand, getAvailableThinkingLevelsCommand, getCommandsCommand, getSessionStatsCommand, getStateCommand, groupSummary, groupTone, hasSessionProtocol, heldSessionChannels, heldThreads, holdSessionChannels, imagesFromContent, inactiveTotal, initialSessionState, inlineTextBytes, installBrowserErrorReporting, installGlobalWebPlugins, installSessionWebPlugins, installWebPlugins, installWorkspaceWebPlugins, installedWebPlugins, invokeServerMethod, isDesktopClient, isSessionMcpActivity, isSupportedImageMimeType, leaderConflicts, leaderGroup, listDirectory, listProviders, listSessionHistory, listSessionMcpClients, listSettingsModels, listSettingsRepositories, listWorkspaceHistory, listWorkspaces, livePushStatus, loadModelChoices, loadSessionAsset, loadSessionAvatar, loadSettingsDraft, logoutProvider, markSocketClosed, markToolPromptFailed, mediaKindFor, menuStore, mergeScopedPlugins, minorModes, mintPairingCode, nativeTemplateCatalog, newPairingCode, newSessionDraftStore, newSessionStore, noSessions, notifyHubConnected, onCaptureStatus, onComposerSubmitted, onHubConnected, openNewSession, openPalette, openRemoteDialog, openResumeDialog, openTransientTab, ownerLabel, ownersOf, paletteCommands, paletteStore, parseFileMentions, parseSelection, passkeysAvailable, pendingCaptureSessions, pendingMenuFor, pendingSetupView, personaInitials, plannedSettingsWrites, pluginActivityGroups, pluginContextActions, pluginDockFaces, pluginFileLinks, pluginLeaderBindings, pluginMinorModes, pluginRepositorySettingsPanels, pluginSelectionAxes, pluginSessionContext, pluginSettingsPanels, pluginSettingsSections, pluginSlotProps, pluginToolRenderer, pluginUserMessageActions, pluginsAtScope, prependHistory, projectedGroups, promoteQueuedCommand, promoteQueuedMessage, promptCommand, protocolSocketUrl, publishComposerSubmission, qrMatrix, queueFollowUp, queueFollowUpWithAck, railDialogStore, railRestartStore, readDormantTranscriptPage, readImageSettings, readLogin, readRepositorySettings, readSessionMcpActivity, readSessionMcpConfig, readSettingsConfig, recordBrowserError, recordBrowserPerformance, reduceSession, refreshDevProxyTargets, refreshPasskeys, refreshRemoteState, refreshSessionFacts, refreshSessionStats, refreshTemplateConfiguration, refreshWebPluginCompositions, registerPasskey, registerPromptInput, releaseDialogMenu, releaseProtocolTranscript, releaseSessionActivityRenderer, releaseSessionTranscriptRenderer, releaseThreadRenderer, releaseTransport, reloadWebTemplateDecision, rememberHostChannelKey, rememberedHostChannelKey, remoteAccessStore, removeDevProxyTarget, removeQueuedCommand, removeQueuedEntry, removeSessionMcpSetup, removeSessionWebPlugins, removeWorkspace, removeWorkspaceWebPlugins, renameSession, renderSessionActivity, renderSessionTranscript, renderThread, replaceQueuedEntries, requestBrowserNotificationPermission, requestLatestHistory, requestNewerHistory, requestOlderHistory, requestSessionProtocolFrame, resetComposerStore, resetDevProxyStore, resetMenuStore, resetNewSessionStore, resetRailDialogStore, resetSealedSessions, resetSessionStore, resetSessionStores, resetSessions, resetThreads, resetToolPromptStore, resetTransientTabs, resetWebPlugins, resetWorkspaceAdmission, resetWorkspaces, resolveNativeTemplate, resolveParentId, resolveWebTemplate, restartDashboardSession, restartSession, restoreComposerDrafts, restoreLivePushRegistration, restoreSealedSession, resubscribeThreads, resumeDashboardSession, resumeDraftStore, resumeQueueCommand, resumeQueuedMessages, resumeSession, resumeWorkspaceSession, retryWebPluginCompositions, reviveSession, revokeDevice, revokePairedDevice, revokeSessionMcpClient, revokeTrustedDevice, revokeTrustedNativeDevice, rewindCommand, rewindToMessage, runCommand, runningCount, saveComposerDrafts, saveRemoteSettings, saveSettingsDraft, saveTemplateDefault, sealedHttpSession, sealedProtocolSession, sealedSession, searchDirectories, searchSessionFiles, seedHistoryCursor, selectFastMode, selectModel, selectTheme, selectThinkingLevel, selectWorkspace, selectionAxes, sendFrame, sendFrameWithAck, sendHubFrame, sendSessionProtocolFrame, sessionStatusLine, sessionStoreFor, sessionToolRenderer, sessionWebPluginsInstalled, sessionsStore, setActiveSession, setAgentLock, setDockOpen, setDockTab, setHasNewerHistory, setModelCommand, setNewSessionName, setPalettePath, setPendingMenu, setSessionNameCommand, setSettingsDraft, setThinkingLevelCommand, setWebPluginLoadDiagnostics, settingsDraftKey, settingsDraftStore, settingsKeyOf, settingsLockedReason, settingsSection, settingsSections, showRemoteOptions, signInWithPasskey, slotFills, startLogin, startPluginDefinitions, startWebPlugins, steerCommand, stopSession, stripAnsi, submitCapture, submitComposerDraft, submitMessage, submitMessageWithAck, subscribeActivitySources, subscribeThread, subscribeWebPluginRegistry, summariseArgs, tabComposerContext, templateStore, textFromContent, themeStore, threadStoreKey, timelineUnits, toQueuedEntries, toTimelineEntries, togglePalette, toolMessageProps, toolPromptClaim, toolPromptStore, totalTokens, transientTabsOf, transientTabsStore, triggerTokenAt, turnRemoteAccessOff, turnRemoteAccessOn, uiStore, unsubscribeThread, updateComposerState, updateDialogDraft, updateRemoteSettings, updateResumeDraft, updateWorkspaceAdmission, uploadSessionAttachment, useActiveSession, useActiveSessionMeta, useActivityGroups, useComposerState, useDashboardRoute, useDashboardState, useDialogDraft, useDockFaces, useFileLinks, useHasOlderHistory, useNoSessions, useOpenTab, usePluginSlotProps, useSessionMcp, useTemplateConfiguration, useToolPrompt, useTransientTabs, useWebPluginRegistry, validateComposerCapture, waitForSession, watchDashboardTranscript, webPluginCompositionStore, webPluginDiagnostics, webPluginMountState, webPluginRegistryRevision, webPluginsInstalled, webTabs, webTemplateCatalog, workspaceAdmissionStore, workspaceName, workspaceSlotFills, workspacesStore, writeImageSettings, writeRepositorySelection, writeSettingsValue };
package/dist/index.mjs CHANGED
@@ -5,6 +5,7 @@ import { answerLogin, cancelLogin, listProviders, logoutProvider, readLogin, sta
5
5
  import { browserNotificationPermission, deliverBrowserNotification, requestBrowserNotificationPermission } from "./web/lib/browserNotifications.mjs";
6
6
  import { browserReadyDuration, flushBrowserTelemetry, installBrowserErrorReporting, recordBrowserError, recordBrowserPerformance } from "./web/lib/browserTelemetry.mjs";
7
7
  import { BUILTIN_COMMANDS, abortCommand, builtinCommandFrame, clearQueueCommand, compactCommand, dialogCancelled, dialogConfirmed, dialogValue, enqueueAutomaticCommand, followUpCommand, getAvailableModelsCommand, getAvailableThinkingLevelsCommand, getCommandsCommand, getSessionStatsCommand, getStateCommand, promoteQueuedCommand, promptCommand, removeQueuedCommand, resumeQueueCommand, rewindCommand, setModelCommand, setSessionNameCommand, setThinkingLevelCommand, steerCommand } from "./web/lib/commands.mjs";
8
+ import { MAX_COMPLETION_ITEMS, TRIGGER_CHARS, commandCompletions, fileCompletions, triggerTokenAt } from "./web/lib/composerCompletion.mjs";
8
9
  import { onComposerSubmitted, publishComposerSubmission } from "./web/lib/composerSubmissions.mjs";
9
10
  import { leaderConflicts, leaderGroup } from "./web/lib/leaderTree.mjs";
10
11
  import { mergeScopedPlugins, pluginsAtScope } from "./web/lib/pluginScopes.mjs";
@@ -48,10 +49,11 @@ import { createToolCompletionTabs } from "./web/lib/toolCompletionTabs.mjs";
48
49
  import { toolMessageProps } from "./web/lib/toolMessageProps.mjs";
49
50
  import { toolPromptClaim } from "./web/lib/toolPrompt.mjs";
50
51
  import { useSessionMcp } from "./web/lib/useSessionMcp.mjs";
51
- import { MAX_COMPOSER_ATTACHMENTS, MAX_COMPOSER_IMAGE_BYTES, MAX_COMPOSER_TEXT_BYTES, MAX_COMPOSER_TOTAL_IMAGE_BYTES, MAX_COMPOSER_TOTAL_TEXT_BYTES, MAX_COMPOSER_UPLOAD_BYTES, appendComposerDraft, appendComposerQuote, attachComposerCapture, attachComposerContext, clearComposerState, composerStore, dropComposerState, inlineTextBytes, resetComposerStore, restoreComposerDrafts, saveComposerDrafts, tabComposerContext, updateComposerState, useComposerState, validateComposerCapture } from "./web/stores/composerStore.mjs";
52
+ import { MAX_COMPOSER_IMAGE_BYTES, MAX_COMPOSER_TEXT_BYTES, validateComposerCapture } from "./web/lib/composerCapture.mjs";
52
53
  import { activeSessionId, applySessionBacklog, applySessionRemoved, applySessionUpsert, applySessionsSnapshot, beginSessionTransfer, completeSessionTransfer, markSocketClosed, noSessions, resetSessions, resolveParentId, sessionsStore, setActiveSession, useActiveSessionMeta, useNoSessions, waitForSession } from "./web/stores/sessionsStore.mjs";
53
54
  import { abortRun, answerDialogConfirm, answerDialogValue, applyHistoryPage, applyProtocolQueue, applyProtocolTranscript, applySessionFrame, applySessionLifecycle, applyThreadFrame, beginSessionReplay, bindHistoryReader, cancelDialog, clearQueuedMessages, deleteQueuedMessage, dropSessionStore, endSessionReplay, loadModelChoices, promoteQueuedMessage, queueFollowUp, queueFollowUpWithAck, refreshSessionFacts, refreshSessionStats, releaseProtocolTranscript, renameSession, requestLatestHistory, requestNewerHistory, requestOlderHistory, resetSessionStore, resetSessionStores, resumeQueuedMessages, rewindToMessage, runCommand, seedHistoryCursor, selectFastMode, selectModel, selectThinkingLevel, sessionStoreFor, setAgentLock, setHasNewerHistory, submitMessage, submitMessageWithAck, useActiveSession, useHasOlderHistory } from "./web/stores/sessionStore.mjs";
54
55
  import { applyCaptureFrame, disconnectCaptures, onCaptureStatus, pendingCaptureSessions, submitCapture } from "./web/stores/captureStore.mjs";
56
+ import { MAX_COMPOSER_ATTACHMENTS, MAX_COMPOSER_TOTAL_IMAGE_BYTES, MAX_COMPOSER_TOTAL_TEXT_BYTES, MAX_COMPOSER_UPLOAD_BYTES, appendComposerDraft, appendComposerQuote, attachComposerCapture, attachComposerContext, clearComposerState, composerStore, dropComposerState, inlineTextBytes, resetComposerStore, restoreComposerDrafts, saveComposerDrafts, tabComposerContext, updateComposerState, useComposerState } from "./web/stores/composerStore.mjs";
55
57
  import { attachmentPrompt, composerSubmissionStore, submitComposerDraft } from "./web/stores/composerSubmissionStore.mjs";
56
58
  import { createDevProxyTarget, deleteDevProxyTarget, devProxyStore, refreshDevProxyTargets, resetDevProxyStore } from "./web/stores/devProxyStore.mjs";
57
59
  import { bindSessionFileLinkModes } from "./web/stores/fileLinkModesStore.mjs";
@@ -78,4 +80,4 @@ import { admitDashboardWorkspace, resetWorkspaceAdmission, updateWorkspaceAdmiss
78
80
  import { dialogDraftStore, updateDialogDraft, useDialogDraft } from "./web/stores/dialogDraftStore.mjs";
79
81
  import { EMPTY_SETTINGS_DRAFT, discardSettingsDraft, loadSettingsDraft, saveSettingsDraft, setSettingsDraft, settingsDraftKey, settingsDraftStore } from "./web/stores/settingsDraftStore.mjs";
80
82
  import { dashboardStateFor, useDashboardState } from "./web/stores/dashboardStateStore.mjs";
81
- export { BUILTIN_COMMANDS, DEFAULT_REPOSITORY_SETTINGS_SECTION, DEFAULT_SETTINGS_SECTION, DashboardRendererProvider, EMPTY_NEW_SESSION_DRAFT, EMPTY_SETTINGS_DRAFT, HOST_SLOTS, LEGACY_WORKSPACE_ID, MAX_COMPOSER_ATTACHMENTS, MAX_COMPOSER_IMAGE_BYTES, MAX_COMPOSER_TEXT_BYTES, MAX_COMPOSER_TOTAL_IMAGE_BYTES, MAX_COMPOSER_TOTAL_TEXT_BYTES, MAX_COMPOSER_UPLOAD_BYTES, PACKAGED_MINOR_MODES, PACKAGED_SELECTION_AXES, STEP_UP_HEADER_NAME, abbreviateCwd, abortCommand, abortRun, acquireModelContext, activateWebPluginSession, activateWebPluginWorkspace, activeSessionId, activityGroupSlot, activityGroups, addDevProxyTarget, addPasskey, admitDashboardWorkspace, admitWorkspace, ansiSegments, answerDialogConfirm, answerDialogValue, answerLogin, appendComposerDraft, appendComposerQuote, appendQueued, appendUserPrompt, applyCaptureFrame, applyHistoryPage, applyProtocolQueue, applyProtocolTranscript, applyRemoteState, applySessionBacklog, applySessionFrame, applySessionLifecycle, applySessionRemoved, applySessionUpsert, applySessionsSnapshot, applyStoredTheme, applyThreadFrame, applyThreadTranscriptFrame, applyWorkspaceRemoved, applyWorkspaceUpsert, applyWorkspacesSnapshot, approveDevice, approvePairing, assertionFor, attachComposerCapture, attachComposerContext, attachmentPrompt, availableThemes, beginSessionReplay, beginSessionTransfer, bindBundledNativeTemplates, bindBundledWebTemplates, bindDashboardTranscriptWatcher, bindFileLinkModes, bindHistoryReader, bindSessionActivityRenderer, bindSessionFileLinkModes, bindSessionProtocol, bindSessionTranscriptRenderer, bindSessionWebWorkspace, bindThreadReader, bindThreadRenderer, bindTransport, bindWebPluginCompositions, browserNotificationPermission, browserReadyDuration, buildRailWorkspaces, builtinCommandFrame, canSaveSettings, cancelDialog, cancelLogin, claimDialogMenu, clearComposerState, clearDialog, clearPendingMenu, clearQueueCommand, clearQueuedEntries, clearQueuedMessages, closeNewSession, closePalette, closeRemoteDialog, closeResumeDialog, closeTransientTab, collectNativeTemplates, collectWebTemplates, compactCommand, completeSessionTransfer, composerStore, composerSubmissionStore, configuredTemplate, contextGroups, createDevProxyTarget, createPagedTranscript, createPlainSession, createProtocolHubSocket, createProtocolTransport, createSession, createSessionMcpClient, createToolCompletionTabs, createWorkspaceSession, dashboardRouteFrom, dashboardStateFor, deleteDevProxyTarget, deleteQueuedMessage, deliverBrowserNotification, denyDevice, denyPairing, devProxyStore, dialogCancelled, dialogConfirmed, dialogDraftStore, dialogValue, disableLivePush, disableRemoteAccess, discardSettingsDraft, disconnectCaptures, dispatchChannelFrame, dispatchHeldSessionChannel, disposeModelContextAdapter, dropComposerState, dropPluginSessionData, dropSessionStore, dropThreads, dropTransientTabs, emptySelection, enableLivePush, enableRemoteAccess, endSessionReplay, enqueueAutomaticCommand, ensureTemplateConfiguration, fetchContextItemDetail, fetchDevProxyTargets, fetchRemoteState, fetchWithStepUp, fileLinkFor, fileTabForPath, findTransientTab, flushBrowserTelemetry, focusPrompt, focusWorkspaceWebPlugins, followUpCommand, formatRunDuration, getAvailableModelsCommand, getAvailableThinkingLevelsCommand, getCommandsCommand, getSessionStatsCommand, getStateCommand, groupSummary, groupTone, hasSessionProtocol, heldSessionChannels, heldThreads, holdSessionChannels, imagesFromContent, inactiveTotal, initialSessionState, inlineTextBytes, installBrowserErrorReporting, installGlobalWebPlugins, installSessionWebPlugins, installWebPlugins, installWorkspaceWebPlugins, installedWebPlugins, invokeServerMethod, isDesktopClient, isSessionMcpActivity, isSupportedImageMimeType, leaderConflicts, leaderGroup, listDirectory, listProviders, listSessionHistory, listSessionMcpClients, listSettingsModels, listSettingsRepositories, listWorkspaceHistory, listWorkspaces, livePushStatus, loadModelChoices, loadSessionAsset, loadSessionAvatar, loadSettingsDraft, logoutProvider, markSocketClosed, markToolPromptFailed, mediaKindFor, menuStore, mergeScopedPlugins, minorModes, mintPairingCode, nativeTemplateCatalog, newPairingCode, newSessionDraftStore, newSessionStore, noSessions, notifyHubConnected, onCaptureStatus, onComposerSubmitted, onHubConnected, openNewSession, openPalette, openRemoteDialog, openResumeDialog, openTransientTab, ownerLabel, ownersOf, paletteCommands, paletteStore, parseFileMentions, parseSelection, passkeysAvailable, pendingCaptureSessions, pendingMenuFor, pendingSetupView, personaInitials, plannedSettingsWrites, pluginActivityGroups, pluginContextActions, pluginDockFaces, pluginFileLinks, pluginLeaderBindings, pluginMinorModes, pluginRepositorySettingsPanels, pluginSelectionAxes, pluginSessionContext, pluginSettingsPanels, pluginSettingsSections, pluginSlotProps, pluginToolRenderer, pluginUserMessageActions, pluginsAtScope, prependHistory, projectedGroups, promoteQueuedCommand, promoteQueuedMessage, promptCommand, protocolSocketUrl, publishComposerSubmission, qrMatrix, queueFollowUp, queueFollowUpWithAck, railDialogStore, railRestartStore, readDormantTranscriptPage, readImageSettings, readLogin, readRepositorySettings, readSessionMcpActivity, readSessionMcpConfig, readSettingsConfig, recordBrowserError, recordBrowserPerformance, reduceSession, refreshDevProxyTargets, refreshPasskeys, refreshRemoteState, refreshSessionFacts, refreshSessionStats, refreshTemplateConfiguration, refreshWebPluginCompositions, registerPasskey, registerPromptInput, releaseDialogMenu, releaseProtocolTranscript, releaseSessionActivityRenderer, releaseSessionTranscriptRenderer, releaseThreadRenderer, releaseTransport, reloadWebTemplateDecision, rememberHostChannelKey, rememberedHostChannelKey, remoteAccessStore, removeDevProxyTarget, removeQueuedCommand, removeQueuedEntry, removeSessionMcpSetup, removeSessionWebPlugins, removeWorkspace, removeWorkspaceWebPlugins, renameSession, renderSessionActivity, renderSessionTranscript, renderThread, replaceQueuedEntries, requestBrowserNotificationPermission, requestLatestHistory, requestNewerHistory, requestOlderHistory, requestSessionProtocolFrame, resetComposerStore, resetDevProxyStore, resetMenuStore, resetNewSessionStore, resetRailDialogStore, resetSealedSessions, resetSessionStore, resetSessionStores, resetSessions, resetThreads, resetToolPromptStore, resetTransientTabs, resetWebPlugins, resetWorkspaceAdmission, resetWorkspaces, resolveNativeTemplate, resolveParentId, resolveWebTemplate, restartDashboardSession, restartSession, restoreComposerDrafts, restoreLivePushRegistration, restoreSealedSession, resubscribeThreads, resumeDashboardSession, resumeDraftStore, resumeQueueCommand, resumeQueuedMessages, resumeSession, resumeWorkspaceSession, retryWebPluginCompositions, reviveSession, revokeDevice, revokePairedDevice, revokeSessionMcpClient, revokeTrustedDevice, revokeTrustedNativeDevice, rewindCommand, rewindToMessage, runCommand, runningCount, saveComposerDrafts, saveRemoteSettings, saveSettingsDraft, saveTemplateDefault, sealedHttpSession, sealedProtocolSession, sealedSession, searchDirectories, searchSessionFiles, seedHistoryCursor, selectFastMode, selectModel, selectTheme, selectThinkingLevel, selectWorkspace, selectionAxes, sendFrame, sendFrameWithAck, sendHubFrame, sendSessionProtocolFrame, sessionStatusLine, sessionStoreFor, sessionToolRenderer, sessionWebPluginsInstalled, sessionsStore, setActiveSession, setAgentLock, setDockOpen, setDockTab, setHasNewerHistory, setModelCommand, setNewSessionName, setPalettePath, setPendingMenu, setSessionNameCommand, setSettingsDraft, setThinkingLevelCommand, setWebPluginLoadDiagnostics, settingsDraftKey, settingsDraftStore, settingsKeyOf, settingsLockedReason, settingsSection, settingsSections, showRemoteOptions, signInWithPasskey, slotFills, startLogin, startPluginDefinitions, startWebPlugins, steerCommand, stopSession, stripAnsi, submitCapture, submitComposerDraft, submitMessage, submitMessageWithAck, subscribeActivitySources, subscribeThread, subscribeWebPluginRegistry, summariseArgs, tabComposerContext, templateStore, textFromContent, themeStore, threadStoreKey, timelineUnits, toQueuedEntries, toTimelineEntries, togglePalette, toolMessageProps, toolPromptClaim, toolPromptStore, totalTokens, transientTabsOf, transientTabsStore, turnRemoteAccessOff, turnRemoteAccessOn, uiStore, unsubscribeThread, updateComposerState, updateDialogDraft, updateRemoteSettings, updateResumeDraft, updateWorkspaceAdmission, uploadSessionAttachment, useActiveSession, useActiveSessionMeta, useActivityGroups, useComposerState, useDashboardRoute, useDashboardState, useDialogDraft, useDockFaces, useFileLinks, useHasOlderHistory, useNoSessions, useOpenTab, usePluginSlotProps, useSessionMcp, useTemplateConfiguration, useToolPrompt, useTransientTabs, useWebPluginRegistry, validateComposerCapture, waitForSession, watchDashboardTranscript, webPluginCompositionStore, webPluginDiagnostics, webPluginMountState, webPluginRegistryRevision, webPluginsInstalled, webTabs, webTemplateCatalog, workspaceAdmissionStore, workspaceName, workspaceSlotFills, workspacesStore, writeImageSettings, writeRepositorySelection, writeSettingsValue };
83
+ export { BUILTIN_COMMANDS, DEFAULT_REPOSITORY_SETTINGS_SECTION, DEFAULT_SETTINGS_SECTION, DashboardRendererProvider, EMPTY_NEW_SESSION_DRAFT, EMPTY_SETTINGS_DRAFT, HOST_SLOTS, LEGACY_WORKSPACE_ID, MAX_COMPLETION_ITEMS, MAX_COMPOSER_ATTACHMENTS, MAX_COMPOSER_IMAGE_BYTES, MAX_COMPOSER_TEXT_BYTES, MAX_COMPOSER_TOTAL_IMAGE_BYTES, MAX_COMPOSER_TOTAL_TEXT_BYTES, MAX_COMPOSER_UPLOAD_BYTES, PACKAGED_MINOR_MODES, PACKAGED_SELECTION_AXES, STEP_UP_HEADER_NAME, TRIGGER_CHARS, abbreviateCwd, abortCommand, abortRun, acquireModelContext, activateWebPluginSession, activateWebPluginWorkspace, activeSessionId, activityGroupSlot, activityGroups, addDevProxyTarget, addPasskey, admitDashboardWorkspace, admitWorkspace, ansiSegments, answerDialogConfirm, answerDialogValue, answerLogin, appendComposerDraft, appendComposerQuote, appendQueued, appendUserPrompt, applyCaptureFrame, applyHistoryPage, applyProtocolQueue, applyProtocolTranscript, applyRemoteState, applySessionBacklog, applySessionFrame, applySessionLifecycle, applySessionRemoved, applySessionUpsert, applySessionsSnapshot, applyStoredTheme, applyThreadFrame, applyThreadTranscriptFrame, applyWorkspaceRemoved, applyWorkspaceUpsert, applyWorkspacesSnapshot, approveDevice, approvePairing, assertionFor, attachComposerCapture, attachComposerContext, attachmentPrompt, availableThemes, beginSessionReplay, beginSessionTransfer, bindBundledNativeTemplates, bindBundledWebTemplates, bindDashboardTranscriptWatcher, bindFileLinkModes, bindHistoryReader, bindSessionActivityRenderer, bindSessionFileLinkModes, bindSessionProtocol, bindSessionTranscriptRenderer, bindSessionWebWorkspace, bindThreadReader, bindThreadRenderer, bindTransport, bindWebPluginCompositions, browserNotificationPermission, browserReadyDuration, buildRailWorkspaces, builtinCommandFrame, canSaveSettings, cancelDialog, cancelLogin, claimDialogMenu, clearComposerState, clearDialog, clearPendingMenu, clearQueueCommand, clearQueuedEntries, clearQueuedMessages, closeNewSession, closePalette, closeRemoteDialog, closeResumeDialog, closeTransientTab, collectNativeTemplates, collectWebTemplates, commandCompletions, compactCommand, completeSessionTransfer, composerStore, composerSubmissionStore, configuredTemplate, contextGroups, createDevProxyTarget, createPagedTranscript, createPlainSession, createProtocolHubSocket, createProtocolTransport, createSession, createSessionMcpClient, createToolCompletionTabs, createWorkspaceSession, dashboardRouteFrom, dashboardStateFor, deleteDevProxyTarget, deleteQueuedMessage, deliverBrowserNotification, denyDevice, denyPairing, devProxyStore, dialogCancelled, dialogConfirmed, dialogDraftStore, dialogValue, disableLivePush, disableRemoteAccess, discardSettingsDraft, disconnectCaptures, dispatchChannelFrame, dispatchHeldSessionChannel, disposeModelContextAdapter, dropComposerState, dropPluginSessionData, dropSessionStore, dropThreads, dropTransientTabs, emptySelection, enableLivePush, enableRemoteAccess, endSessionReplay, enqueueAutomaticCommand, ensureTemplateConfiguration, fetchContextItemDetail, fetchDevProxyTargets, fetchRemoteState, fetchWithStepUp, fileCompletions, fileLinkFor, fileTabForPath, findTransientTab, flushBrowserTelemetry, focusPrompt, focusWorkspaceWebPlugins, followUpCommand, formatRunDuration, getAvailableModelsCommand, getAvailableThinkingLevelsCommand, getCommandsCommand, getSessionStatsCommand, getStateCommand, groupSummary, groupTone, hasSessionProtocol, heldSessionChannels, heldThreads, holdSessionChannels, imagesFromContent, inactiveTotal, initialSessionState, inlineTextBytes, installBrowserErrorReporting, installGlobalWebPlugins, installSessionWebPlugins, installWebPlugins, installWorkspaceWebPlugins, installedWebPlugins, invokeServerMethod, isDesktopClient, isSessionMcpActivity, isSupportedImageMimeType, leaderConflicts, leaderGroup, listDirectory, listProviders, listSessionHistory, listSessionMcpClients, listSettingsModels, listSettingsRepositories, listWorkspaceHistory, listWorkspaces, livePushStatus, loadModelChoices, loadSessionAsset, loadSessionAvatar, loadSettingsDraft, logoutProvider, markSocketClosed, markToolPromptFailed, mediaKindFor, menuStore, mergeScopedPlugins, minorModes, mintPairingCode, nativeTemplateCatalog, newPairingCode, newSessionDraftStore, newSessionStore, noSessions, notifyHubConnected, onCaptureStatus, onComposerSubmitted, onHubConnected, openNewSession, openPalette, openRemoteDialog, openResumeDialog, openTransientTab, ownerLabel, ownersOf, paletteCommands, paletteStore, parseFileMentions, parseSelection, passkeysAvailable, pendingCaptureSessions, pendingMenuFor, pendingSetupView, personaInitials, plannedSettingsWrites, pluginActivityGroups, pluginContextActions, pluginDockFaces, pluginFileLinks, pluginLeaderBindings, pluginMinorModes, pluginRepositorySettingsPanels, pluginSelectionAxes, pluginSessionContext, pluginSettingsPanels, pluginSettingsSections, pluginSlotProps, pluginToolRenderer, pluginUserMessageActions, pluginsAtScope, prependHistory, projectedGroups, promoteQueuedCommand, promoteQueuedMessage, promptCommand, protocolSocketUrl, publishComposerSubmission, qrMatrix, queueFollowUp, queueFollowUpWithAck, railDialogStore, railRestartStore, readDormantTranscriptPage, readImageSettings, readLogin, readRepositorySettings, readSessionMcpActivity, readSessionMcpConfig, readSettingsConfig, recordBrowserError, recordBrowserPerformance, reduceSession, refreshDevProxyTargets, refreshPasskeys, refreshRemoteState, refreshSessionFacts, refreshSessionStats, refreshTemplateConfiguration, refreshWebPluginCompositions, registerPasskey, registerPromptInput, releaseDialogMenu, releaseProtocolTranscript, releaseSessionActivityRenderer, releaseSessionTranscriptRenderer, releaseThreadRenderer, releaseTransport, reloadWebTemplateDecision, rememberHostChannelKey, rememberedHostChannelKey, remoteAccessStore, removeDevProxyTarget, removeQueuedCommand, removeQueuedEntry, removeSessionMcpSetup, removeSessionWebPlugins, removeWorkspace, removeWorkspaceWebPlugins, renameSession, renderSessionActivity, renderSessionTranscript, renderThread, replaceQueuedEntries, requestBrowserNotificationPermission, requestLatestHistory, requestNewerHistory, requestOlderHistory, requestSessionProtocolFrame, resetComposerStore, resetDevProxyStore, resetMenuStore, resetNewSessionStore, resetRailDialogStore, resetSealedSessions, resetSessionStore, resetSessionStores, resetSessions, resetThreads, resetToolPromptStore, resetTransientTabs, resetWebPlugins, resetWorkspaceAdmission, resetWorkspaces, resolveNativeTemplate, resolveParentId, resolveWebTemplate, restartDashboardSession, restartSession, restoreComposerDrafts, restoreLivePushRegistration, restoreSealedSession, resubscribeThreads, resumeDashboardSession, resumeDraftStore, resumeQueueCommand, resumeQueuedMessages, resumeSession, resumeWorkspaceSession, retryWebPluginCompositions, reviveSession, revokeDevice, revokePairedDevice, revokeSessionMcpClient, revokeTrustedDevice, revokeTrustedNativeDevice, rewindCommand, rewindToMessage, runCommand, runningCount, saveComposerDrafts, saveRemoteSettings, saveSettingsDraft, saveTemplateDefault, sealedHttpSession, sealedProtocolSession, sealedSession, searchDirectories, searchSessionFiles, seedHistoryCursor, selectFastMode, selectModel, selectTheme, selectThinkingLevel, selectWorkspace, selectionAxes, sendFrame, sendFrameWithAck, sendHubFrame, sendSessionProtocolFrame, sessionStatusLine, sessionStoreFor, sessionToolRenderer, sessionWebPluginsInstalled, sessionsStore, setActiveSession, setAgentLock, setDockOpen, setDockTab, setHasNewerHistory, setModelCommand, setNewSessionName, setPalettePath, setPendingMenu, setSessionNameCommand, setSettingsDraft, setThinkingLevelCommand, setWebPluginLoadDiagnostics, settingsDraftKey, settingsDraftStore, settingsKeyOf, settingsLockedReason, settingsSection, settingsSections, showRemoteOptions, signInWithPasskey, slotFills, startLogin, startPluginDefinitions, startWebPlugins, steerCommand, stopSession, stripAnsi, submitCapture, submitComposerDraft, submitMessage, submitMessageWithAck, subscribeActivitySources, subscribeThread, subscribeWebPluginRegistry, summariseArgs, tabComposerContext, templateStore, textFromContent, themeStore, threadStoreKey, timelineUnits, toQueuedEntries, toTimelineEntries, togglePalette, toolMessageProps, toolPromptClaim, toolPromptStore, totalTokens, transientTabsOf, transientTabsStore, triggerTokenAt, turnRemoteAccessOff, turnRemoteAccessOn, uiStore, unsubscribeThread, updateComposerState, updateDialogDraft, updateRemoteSettings, updateResumeDraft, updateWorkspaceAdmission, uploadSessionAttachment, useActiveSession, useActiveSessionMeta, useActivityGroups, useComposerState, useDashboardRoute, useDashboardState, useDialogDraft, useDockFaces, useFileLinks, useHasOlderHistory, useNoSessions, useOpenTab, usePluginSlotProps, useSessionMcp, useTemplateConfiguration, useToolPrompt, useTransientTabs, useWebPluginRegistry, validateComposerCapture, waitForSession, watchDashboardTranscript, webPluginCompositionStore, webPluginDiagnostics, webPluginMountState, webPluginRegistryRevision, webPluginsInstalled, webTabs, webTemplateCatalog, workspaceAdmissionStore, workspaceName, workspaceSlotFills, workspacesStore, writeImageSettings, writeRepositorySelection, writeSettingsValue };
@@ -1 +1 @@
1
- {"version":3,"file":"auth.cjs","names":[],"sources":["../../src/types/auth.ts"],"sourcesContent":["/**\n * Wire vocabulary for provider authentication, shared by the hub routes and\n * the settings page.\n *\n * The hub keeps one Pi ModelRuntime over the same auth.json the sessions\n * read, so a login here is a login for every session on this machine. Prompt\n * and event shapes restate pi-ai's AuthPrompt and AuthEvent so neither the\n * flow service nor the page needs a pi import; the abort signal never leaves\n * the hub.\n */\n\n/** REST endpoint listing providers with their auth state; DELETE /:providerId signs out. */\nexport const AUTH_PROVIDERS_API_ROUTE = '/api/plugins/po/providers';\n/** REST endpoint for login flows: POST starts one, GET /:flowId polls it, POST /:flowId/answer answers its prompt, DELETE /:flowId cancels. */\nexport const AUTH_LOGINS_API_ROUTE = '/api/plugins/po/logins';\n\nexport type AuthMethodType = 'api_key' | 'oauth';\n\nexport interface ProviderAuthMethod {\n type: AuthMethodType;\n /** What the provider calls this method: \"Anthropic API key\", \"Anthropic (Claude Pro/Max)\". */\n label: string;\n}\n\nexport interface ProviderAuthSummary {\n id: string;\n name: string;\n /** Login methods the provider offers; ambient-only providers list none. */\n methods: ProviderAuthMethod[];\n /**\n * Present once the provider has working auth: how, and where the credential\n * comes from (\"stored\", or the environment variable that holds the key).\n */\n authenticated?: { type: AuthMethodType; source?: string };\n}\n\nexport interface LoginSelectOption {\n id: string;\n label: string;\n description?: string;\n}\n\n/** pi-ai's AuthPrompt, restated. `signal` cancels this one question, not the flow. */\nexport type LoginPrompt = { signal?: AbortSignal } & (\n | { type: 'text'; message: string; placeholder?: string }\n | { type: 'secret'; message: string; placeholder?: string }\n | { type: 'select'; message: string; options: readonly LoginSelectOption[] }\n | { type: 'manual_code'; message: string; placeholder?: string }\n);\n\n/** The question the page answers: a prompt with an id and without its signal. */\nexport interface LoginPromptView {\n id: string;\n type: LoginPrompt['type'];\n message: string;\n placeholder?: string;\n /** Present for select prompts. */\n options?: LoginSelectOption[];\n}\n\n/** pi-ai's AuthEvent, restated. */\nexport type LoginEvent =\n | { type: 'info'; message: string; links?: readonly { url: string; label?: string }[] }\n | { type: 'auth_url'; url: string; instructions?: string }\n | {\n type: 'device_code';\n userCode: string;\n verificationUri: string;\n intervalSeconds?: number;\n expiresInSeconds?: number;\n }\n | { type: 'progress'; message: string };\n\nexport type LoginFlowStatus = 'running' | 'succeeded' | 'failed' | 'cancelled';\n\nexport interface LoginFlowSnapshot {\n id: string;\n providerId: string;\n providerName: string;\n type: AuthMethodType;\n status: LoginFlowStatus;\n events: LoginEvent[];\n /** The question the flow is waiting on, while there is one. */\n prompt?: LoginPromptView;\n /**\n * The login was started from the tunnel. The page uses this to explain that\n * the provider's redirect lands on a loopback address this browser cannot\n * reach, so the code has to be pasted back.\n */\n remote?: boolean;\n /** Why the flow failed, once it has. */\n error?: string;\n}\n\n/** pi-ai's AuthInteraction: what a provider's login needs from its host. */\nexport interface LoginInteraction {\n signal: AbortSignal;\n prompt(prompt: LoginPrompt): Promise<string>;\n notify(event: LoginEvent): void;\n}\n\nexport interface AuthRuntimeProvider {\n readonly id: string;\n readonly name: string;\n readonly auth: {\n /** Absent `login` means ambient-only (env vars, AWS profiles): nothing to sign in to. */\n apiKey?: { name: string; login?: unknown };\n oauth?: { name: string; loginLabel?: string };\n };\n}\n\n/**\n * The slice of Pi's ModelRuntime the hub relies on, so a test can stand in a\n * fake and the adapter never types against the whole agent.\n */\nexport interface AuthRuntime {\n getProviders(): readonly AuthRuntimeProvider[];\n getProviderAuthStatus(providerId: string): { configured: boolean; source?: string; label?: string };\n /** Models the runtime already knows about, without touching the network. */\n getAvailableSnapshot(): readonly { provider: string; id: string }[];\n hasConfiguredAuth(providerId: string): boolean;\n isUsingOAuth(providerId: string): boolean;\n /** Re-reads models.json and every provider's auth state without touching the network. */\n refresh(options: { allowNetwork: boolean }): Promise<unknown>;\n login(providerId: string, type: AuthMethodType, interaction: LoginInteraction): Promise<unknown>;\n logout(providerId: string, options?: { signal?: AbortSignal }): Promise<void>;\n}\n"],"mappings":";;;;;;;;;;;;AAYA,MAAa,2BAA2B;;AAExC,MAAa,wBAAwB"}
1
+ {"version":3,"file":"auth.cjs","names":[],"sources":["../../src/types/auth.ts"],"sourcesContent":["/**\n * Wire vocabulary for provider authentication, shared by the hub routes and\n * the settings page.\n *\n * The hub keeps one Pi ModelRuntime over the same auth.json the sessions\n * read, so a login here is a login for every session on this machine. Prompt\n * and event shapes restate pi-ai's AuthPrompt and AuthEvent so neither the\n * flow service nor the page needs a pi import; the abort signal never leaves\n * the hub.\n */\n\n/** REST endpoint listing providers with their auth state; DELETE /:providerId signs out. */\nexport const AUTH_PROVIDERS_API_ROUTE = '/api/plugins/po/providers';\n/** REST endpoint for login flows: POST starts one, GET /:flowId polls it, POST /:flowId/answer answers its prompt, DELETE /:flowId cancels. */\nexport const AUTH_LOGINS_API_ROUTE = '/api/plugins/po/logins';\n\nexport type AuthMethodType = 'api_key' | 'oauth';\n\nexport interface ProviderAuthMethod {\n type: AuthMethodType;\n /** What the provider calls this method: \"Anthropic API key\", \"Anthropic (Claude Pro/Max)\". */\n label: string;\n}\n\nexport interface ProviderAuthSummary {\n id: string;\n name: string;\n /** Login methods the provider offers; ambient-only providers list none. */\n methods: ProviderAuthMethod[];\n /**\n * Present once the provider has working auth: how, and where the credential\n * comes from (\"stored\", or the environment variable that holds the key).\n */\n authenticated?: { type: AuthMethodType; source?: string };\n /** Set for Po's own shared sign-in, which serves Po features rather than chat models. */\n kind?: 'po-feature';\n}\n\nexport interface LoginSelectOption {\n id: string;\n label: string;\n description?: string;\n}\n\n/** pi-ai's AuthPrompt, restated. `signal` cancels this one question, not the flow. */\nexport type LoginPrompt = { signal?: AbortSignal } & (\n | { type: 'text'; message: string; placeholder?: string }\n | { type: 'secret'; message: string; placeholder?: string }\n | { type: 'select'; message: string; options: readonly LoginSelectOption[] }\n | { type: 'manual_code'; message: string; placeholder?: string }\n);\n\n/** The question the page answers: a prompt with an id and without its signal. */\nexport interface LoginPromptView {\n id: string;\n type: LoginPrompt['type'];\n message: string;\n placeholder?: string;\n /** Present for select prompts. */\n options?: LoginSelectOption[];\n}\n\n/** pi-ai's AuthEvent, restated. */\nexport type LoginEvent =\n | { type: 'info'; message: string; links?: readonly { url: string; label?: string }[] }\n | { type: 'auth_url'; url: string; instructions?: string }\n | {\n type: 'device_code';\n userCode: string;\n verificationUri: string;\n intervalSeconds?: number;\n expiresInSeconds?: number;\n }\n | { type: 'progress'; message: string };\n\nexport type LoginFlowStatus = 'running' | 'succeeded' | 'failed' | 'cancelled';\n\nexport interface LoginFlowSnapshot {\n id: string;\n providerId: string;\n providerName: string;\n type: AuthMethodType;\n status: LoginFlowStatus;\n events: LoginEvent[];\n /** The question the flow is waiting on, while there is one. */\n prompt?: LoginPromptView;\n /**\n * The login was started from the tunnel. The page uses this to explain that\n * the provider's redirect lands on a loopback address this browser cannot\n * reach, so the code has to be pasted back.\n */\n remote?: boolean;\n /** Why the flow failed, once it has. */\n error?: string;\n}\n\n/** pi-ai's AuthInteraction: what a provider's login needs from its host. */\nexport interface LoginInteraction {\n signal: AbortSignal;\n prompt(prompt: LoginPrompt): Promise<string>;\n notify(event: LoginEvent): void;\n}\n\nexport interface AuthRuntimeProvider {\n readonly id: string;\n readonly name: string;\n readonly auth: {\n /** Absent `login` means ambient-only (env vars, AWS profiles): nothing to sign in to. */\n apiKey?: { name: string; login?: unknown };\n oauth?: { name: string; loginLabel?: string };\n };\n}\n\n/**\n * The slice of Pi's ModelRuntime the hub relies on, so a test can stand in a\n * fake and the adapter never types against the whole agent.\n */\nexport interface AuthRuntime {\n getProviders(): readonly AuthRuntimeProvider[];\n getProviderAuthStatus(providerId: string): { configured: boolean; source?: string; label?: string };\n /** Models the runtime already knows about, without touching the network. */\n getAvailableSnapshot(): readonly { provider: string; id: string }[];\n hasConfiguredAuth(providerId: string): boolean;\n isUsingOAuth(providerId: string): boolean;\n /** Re-reads models.json and every provider's auth state without touching the network. */\n refresh(options: { allowNetwork: boolean }): Promise<unknown>;\n login(providerId: string, type: AuthMethodType, interaction: LoginInteraction): Promise<unknown>;\n logout(providerId: string, options?: { signal?: AbortSignal }): Promise<void>;\n}\n"],"mappings":";;;;;;;;;;;;AAYA,MAAa,2BAA2B;;AAExC,MAAa,wBAAwB"}
@@ -32,6 +32,8 @@ export interface ProviderAuthSummary {
32
32
  type: AuthMethodType;
33
33
  source?: string;
34
34
  };
35
+ /** Set for Po's own shared sign-in, which serves Po features rather than chat models. */
36
+ kind?: 'po-feature';
35
37
  }
36
38
  export interface LoginSelectOption {
37
39
  id: string;
@@ -1 +1 @@
1
- {"version":3,"file":"auth.d.mts","names":[],"sources":["../../src/types/auth.ts"],"mappings":";;;;;;;;;;;;qBAYa;;qBAEA;YAED;iBAEK;EACf,MAAM;;EAEN;;iBAGe;EACf;EACA;;EAEA,SAAS;;;;;EAKT;IAAkB,MAAM;IAAgB;;;iBAGzB;EACf;EACA;EACA;;;YAIU;EAAgB,SAAS;;EAC/B;EAAc;EAAiB;;EAC/B;EAAgB;EAAiB;;EACjC;EAAgB;EAAiB,kBAAkB;;EACnD;EAAqB;EAAiB;;;iBAI3B;EACf;EACA,MAAM;EACN;EACA;;EAEA,UAAU;;;YAIA;EACN;EAAc;EAAiB;IAAmB;IAAa;;;EAC/D;EAAkB;EAAa;;EAE/B;EACA;EACA;EACA;EACA;;EAEA;EAAkB;;YAEZ;iBAEK;EACf;EACA;EACA;EACA,MAAM;EACN,QAAQ;EACR,QAAQ;;EAER,SAAS;;;;;;EAMT;;EAEA;;;iBAIe;EACf,QAAQ;EACR,OAAO,QAAQ,cAAc;EAC7B,OAAO,OAAO;;iBAGC;WACN;WACA;WACA;;IAEP;MAAW;MAAc;;IACzB;MAAU;MAAc;;;;;;;;iBAQX;EACf,yBAAyB;EACzB,sBAAsB;IAAuB;IAAqB;IAAiB;;;EAEnF;IAAmC;IAAkB;;EACrD,kBAAkB;EAClB,aAAa;;EAEb,QAAQ;IAAW;MAA0B;EAC7C,MAAM,oBAAoB,MAAM,gBAAgB,aAAa,mBAAmB;EAChF,OAAO,oBAAoB;IAAY,SAAS;MAAgB"}
1
+ {"version":3,"file":"auth.d.mts","names":[],"sources":["../../src/types/auth.ts"],"mappings":";;;;;;;;;;;;qBAYa;;qBAEA;YAED;iBAEK;EACf,MAAM;;EAEN;;iBAGe;EACf;EACA;;EAEA,SAAS;;;;;EAKT;IAAkB,MAAM;IAAgB;;;EAExC;;iBAGe;EACf;EACA;EACA;;;YAIU;EAAgB,SAAS;;EAC/B;EAAc;EAAiB;;EAC/B;EAAgB;EAAiB;;EACjC;EAAgB;EAAiB,kBAAkB;;EACnD;EAAqB;EAAiB;;;iBAI3B;EACf;EACA,MAAM;EACN;EACA;;EAEA,UAAU;;;YAIA;EACN;EAAc;EAAiB;IAAmB;IAAa;;;EAC/D;EAAkB;EAAa;;EAE/B;EACA;EACA;EACA;EACA;;EAEA;EAAkB;;YAEZ;iBAEK;EACf;EACA;EACA;EACA,MAAM;EACN,QAAQ;EACR,QAAQ;;EAER,SAAS;;;;;;EAMT;;EAEA;;;iBAIe;EACf,QAAQ;EACR,OAAO,QAAQ,cAAc;EAC7B,OAAO,OAAO;;iBAGC;WACN;WACA;WACA;;IAEP;MAAW;MAAc;;IACzB;MAAU;MAAc;;;;;;;;iBAQX;EACf,yBAAyB;EACzB,sBAAsB;IAAuB;IAAqB;IAAiB;;;EAEnF;IAAmC;IAAkB;;EACrD,kBAAkB;EAClB,aAAa;;EAEb,QAAQ;IAAW;MAA0B;EAC7C,MAAM,oBAAoB,MAAM,gBAAgB,aAAa,mBAAmB;EAChF,OAAO,oBAAoB;IAAY,SAAS;MAAgB"}
@@ -1 +1 @@
1
- {"version":3,"file":"auth.mjs","names":[],"sources":["../../src/types/auth.ts"],"sourcesContent":["/**\n * Wire vocabulary for provider authentication, shared by the hub routes and\n * the settings page.\n *\n * The hub keeps one Pi ModelRuntime over the same auth.json the sessions\n * read, so a login here is a login for every session on this machine. Prompt\n * and event shapes restate pi-ai's AuthPrompt and AuthEvent so neither the\n * flow service nor the page needs a pi import; the abort signal never leaves\n * the hub.\n */\n\n/** REST endpoint listing providers with their auth state; DELETE /:providerId signs out. */\nexport const AUTH_PROVIDERS_API_ROUTE = '/api/plugins/po/providers';\n/** REST endpoint for login flows: POST starts one, GET /:flowId polls it, POST /:flowId/answer answers its prompt, DELETE /:flowId cancels. */\nexport const AUTH_LOGINS_API_ROUTE = '/api/plugins/po/logins';\n\nexport type AuthMethodType = 'api_key' | 'oauth';\n\nexport interface ProviderAuthMethod {\n type: AuthMethodType;\n /** What the provider calls this method: \"Anthropic API key\", \"Anthropic (Claude Pro/Max)\". */\n label: string;\n}\n\nexport interface ProviderAuthSummary {\n id: string;\n name: string;\n /** Login methods the provider offers; ambient-only providers list none. */\n methods: ProviderAuthMethod[];\n /**\n * Present once the provider has working auth: how, and where the credential\n * comes from (\"stored\", or the environment variable that holds the key).\n */\n authenticated?: { type: AuthMethodType; source?: string };\n}\n\nexport interface LoginSelectOption {\n id: string;\n label: string;\n description?: string;\n}\n\n/** pi-ai's AuthPrompt, restated. `signal` cancels this one question, not the flow. */\nexport type LoginPrompt = { signal?: AbortSignal } & (\n | { type: 'text'; message: string; placeholder?: string }\n | { type: 'secret'; message: string; placeholder?: string }\n | { type: 'select'; message: string; options: readonly LoginSelectOption[] }\n | { type: 'manual_code'; message: string; placeholder?: string }\n);\n\n/** The question the page answers: a prompt with an id and without its signal. */\nexport interface LoginPromptView {\n id: string;\n type: LoginPrompt['type'];\n message: string;\n placeholder?: string;\n /** Present for select prompts. */\n options?: LoginSelectOption[];\n}\n\n/** pi-ai's AuthEvent, restated. */\nexport type LoginEvent =\n | { type: 'info'; message: string; links?: readonly { url: string; label?: string }[] }\n | { type: 'auth_url'; url: string; instructions?: string }\n | {\n type: 'device_code';\n userCode: string;\n verificationUri: string;\n intervalSeconds?: number;\n expiresInSeconds?: number;\n }\n | { type: 'progress'; message: string };\n\nexport type LoginFlowStatus = 'running' | 'succeeded' | 'failed' | 'cancelled';\n\nexport interface LoginFlowSnapshot {\n id: string;\n providerId: string;\n providerName: string;\n type: AuthMethodType;\n status: LoginFlowStatus;\n events: LoginEvent[];\n /** The question the flow is waiting on, while there is one. */\n prompt?: LoginPromptView;\n /**\n * The login was started from the tunnel. The page uses this to explain that\n * the provider's redirect lands on a loopback address this browser cannot\n * reach, so the code has to be pasted back.\n */\n remote?: boolean;\n /** Why the flow failed, once it has. */\n error?: string;\n}\n\n/** pi-ai's AuthInteraction: what a provider's login needs from its host. */\nexport interface LoginInteraction {\n signal: AbortSignal;\n prompt(prompt: LoginPrompt): Promise<string>;\n notify(event: LoginEvent): void;\n}\n\nexport interface AuthRuntimeProvider {\n readonly id: string;\n readonly name: string;\n readonly auth: {\n /** Absent `login` means ambient-only (env vars, AWS profiles): nothing to sign in to. */\n apiKey?: { name: string; login?: unknown };\n oauth?: { name: string; loginLabel?: string };\n };\n}\n\n/**\n * The slice of Pi's ModelRuntime the hub relies on, so a test can stand in a\n * fake and the adapter never types against the whole agent.\n */\nexport interface AuthRuntime {\n getProviders(): readonly AuthRuntimeProvider[];\n getProviderAuthStatus(providerId: string): { configured: boolean; source?: string; label?: string };\n /** Models the runtime already knows about, without touching the network. */\n getAvailableSnapshot(): readonly { provider: string; id: string }[];\n hasConfiguredAuth(providerId: string): boolean;\n isUsingOAuth(providerId: string): boolean;\n /** Re-reads models.json and every provider's auth state without touching the network. */\n refresh(options: { allowNetwork: boolean }): Promise<unknown>;\n login(providerId: string, type: AuthMethodType, interaction: LoginInteraction): Promise<unknown>;\n logout(providerId: string, options?: { signal?: AbortSignal }): Promise<void>;\n}\n"],"mappings":";;;;;;;;;;;;AAYA,MAAa,2BAA2B;;AAExC,MAAa,wBAAwB"}
1
+ {"version":3,"file":"auth.mjs","names":[],"sources":["../../src/types/auth.ts"],"sourcesContent":["/**\n * Wire vocabulary for provider authentication, shared by the hub routes and\n * the settings page.\n *\n * The hub keeps one Pi ModelRuntime over the same auth.json the sessions\n * read, so a login here is a login for every session on this machine. Prompt\n * and event shapes restate pi-ai's AuthPrompt and AuthEvent so neither the\n * flow service nor the page needs a pi import; the abort signal never leaves\n * the hub.\n */\n\n/** REST endpoint listing providers with their auth state; DELETE /:providerId signs out. */\nexport const AUTH_PROVIDERS_API_ROUTE = '/api/plugins/po/providers';\n/** REST endpoint for login flows: POST starts one, GET /:flowId polls it, POST /:flowId/answer answers its prompt, DELETE /:flowId cancels. */\nexport const AUTH_LOGINS_API_ROUTE = '/api/plugins/po/logins';\n\nexport type AuthMethodType = 'api_key' | 'oauth';\n\nexport interface ProviderAuthMethod {\n type: AuthMethodType;\n /** What the provider calls this method: \"Anthropic API key\", \"Anthropic (Claude Pro/Max)\". */\n label: string;\n}\n\nexport interface ProviderAuthSummary {\n id: string;\n name: string;\n /** Login methods the provider offers; ambient-only providers list none. */\n methods: ProviderAuthMethod[];\n /**\n * Present once the provider has working auth: how, and where the credential\n * comes from (\"stored\", or the environment variable that holds the key).\n */\n authenticated?: { type: AuthMethodType; source?: string };\n /** Set for Po's own shared sign-in, which serves Po features rather than chat models. */\n kind?: 'po-feature';\n}\n\nexport interface LoginSelectOption {\n id: string;\n label: string;\n description?: string;\n}\n\n/** pi-ai's AuthPrompt, restated. `signal` cancels this one question, not the flow. */\nexport type LoginPrompt = { signal?: AbortSignal } & (\n | { type: 'text'; message: string; placeholder?: string }\n | { type: 'secret'; message: string; placeholder?: string }\n | { type: 'select'; message: string; options: readonly LoginSelectOption[] }\n | { type: 'manual_code'; message: string; placeholder?: string }\n);\n\n/** The question the page answers: a prompt with an id and without its signal. */\nexport interface LoginPromptView {\n id: string;\n type: LoginPrompt['type'];\n message: string;\n placeholder?: string;\n /** Present for select prompts. */\n options?: LoginSelectOption[];\n}\n\n/** pi-ai's AuthEvent, restated. */\nexport type LoginEvent =\n | { type: 'info'; message: string; links?: readonly { url: string; label?: string }[] }\n | { type: 'auth_url'; url: string; instructions?: string }\n | {\n type: 'device_code';\n userCode: string;\n verificationUri: string;\n intervalSeconds?: number;\n expiresInSeconds?: number;\n }\n | { type: 'progress'; message: string };\n\nexport type LoginFlowStatus = 'running' | 'succeeded' | 'failed' | 'cancelled';\n\nexport interface LoginFlowSnapshot {\n id: string;\n providerId: string;\n providerName: string;\n type: AuthMethodType;\n status: LoginFlowStatus;\n events: LoginEvent[];\n /** The question the flow is waiting on, while there is one. */\n prompt?: LoginPromptView;\n /**\n * The login was started from the tunnel. The page uses this to explain that\n * the provider's redirect lands on a loopback address this browser cannot\n * reach, so the code has to be pasted back.\n */\n remote?: boolean;\n /** Why the flow failed, once it has. */\n error?: string;\n}\n\n/** pi-ai's AuthInteraction: what a provider's login needs from its host. */\nexport interface LoginInteraction {\n signal: AbortSignal;\n prompt(prompt: LoginPrompt): Promise<string>;\n notify(event: LoginEvent): void;\n}\n\nexport interface AuthRuntimeProvider {\n readonly id: string;\n readonly name: string;\n readonly auth: {\n /** Absent `login` means ambient-only (env vars, AWS profiles): nothing to sign in to. */\n apiKey?: { name: string; login?: unknown };\n oauth?: { name: string; loginLabel?: string };\n };\n}\n\n/**\n * The slice of Pi's ModelRuntime the hub relies on, so a test can stand in a\n * fake and the adapter never types against the whole agent.\n */\nexport interface AuthRuntime {\n getProviders(): readonly AuthRuntimeProvider[];\n getProviderAuthStatus(providerId: string): { configured: boolean; source?: string; label?: string };\n /** Models the runtime already knows about, without touching the network. */\n getAvailableSnapshot(): readonly { provider: string; id: string }[];\n hasConfiguredAuth(providerId: string): boolean;\n isUsingOAuth(providerId: string): boolean;\n /** Re-reads models.json and every provider's auth state without touching the network. */\n refresh(options: { allowNetwork: boolean }): Promise<unknown>;\n login(providerId: string, type: AuthMethodType, interaction: LoginInteraction): Promise<unknown>;\n logout(providerId: string, options?: { signal?: AbortSignal }): Promise<void>;\n}\n"],"mappings":";;;;;;;;;;;;AAYA,MAAa,2BAA2B;;AAExC,MAAa,wBAAwB"}