diff options
Diffstat (limited to 'packages/session-orchestrator/src')
| -rw-r--r-- | packages/session-orchestrator/src/index.ts | 2 | ||||
| -rw-r--r-- | packages/session-orchestrator/src/orchestrator.ts | 14 |
2 files changed, 16 insertions, 0 deletions
diff --git a/packages/session-orchestrator/src/index.ts b/packages/session-orchestrator/src/index.ts index afec2b4..3d8ad18 100644 --- a/packages/session-orchestrator/src/index.ts +++ b/packages/session-orchestrator/src/index.ts @@ -1,8 +1,10 @@ export { extension, manifest } from "./extension.js"; export { type ConversationClosedPayload, + type ConversationOpenedPayload, cacheWarmHandle, conversationClosed, + conversationOpened, createSessionOrchestrator, createWarmService, type EnqueueInput, diff --git a/packages/session-orchestrator/src/orchestrator.ts b/packages/session-orchestrator/src/orchestrator.ts index 3a74c2d..82ca59e 100644 --- a/packages/session-orchestrator/src/orchestrator.ts +++ b/packages/session-orchestrator/src/orchestrator.ts @@ -97,6 +97,20 @@ export interface ConversationClosedPayload { export const conversationClosed: EventHookDescriptor<ConversationClosedPayload> = defineEventHook<ConversationClosedPayload>("session-orchestrator/conversation-closed"); +/** Payload for the conversationOpened bus event. */ +export interface ConversationOpenedPayload { + readonly conversationId: string; +} + +/** + * Fired when a client requests to "open" a conversation (e.g. the CLI `--open` + * flag). Transport-ws subscribes and broadcasts a `conversation.open` WS + * message to all connected frontend clients. The frontend decides whether to + * open/focus a tab — the backend just signals. + */ +export const conversationOpened: EventHookDescriptor<ConversationOpenedPayload> = + defineEventHook<ConversationOpenedPayload>("session-orchestrator/conversation-opened"); + /** Payload for the warmCompleted bus event. */ export interface WarmCompletedPayload { readonly conversationId: string; |
