UNPKG

dynamic-interaction

Version:

Dynamic interaction 动态交互mcp,用于cursor、windsurf、trae 等 AI 智能编辑器 Agent 运行时交互使用

53 lines (52 loc) 1.32 kB
"use strict"; /** * 会话上下文 * 定义会话的数据结构和状态 */ Object.defineProperty(exports, "__esModule", { value: true }); exports.SessionContextBuilder = void 0; class SessionContextBuilder { context = {}; setId(id) { this.context.id = id; return this; } setWebSocket(ws) { this.context.ws = ws; return this; } setRequest(request) { this.context.request = request; return this; } setStartTime(startTime) { this.context.startTime = startTime; return this; } setTimeout(timeout) { this.context.timeout = timeout; return this; } setMode(mode) { this.context.mode = mode; return this; } setMetadata(metadata) { this.context.metadata = metadata; return this; } build() { const required = ['id', 'ws', 'request', 'startTime', 'timeout', 'mode']; for (const field of required) { if (!(field in this.context)) { throw new Error(`Missing required field: ${field}`); } } return { ...this.context, timeoutId: null, metadata: this.context.metadata || {} }; } } exports.SessionContextBuilder = SessionContextBuilder;