sema-core 2.0.0 → 2.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/core/Conversation.d.ts.map +1 -1
- package/dist/core/Conversation.js +22 -22
- package/dist/core/Conversation.js.map +1 -1
- package/dist/core/RunTools.d.ts.map +1 -1
- package/dist/core/RunTools.js +6 -6
- package/dist/core/RunTools.js.map +1 -1
- package/dist/core/SemaCore.d.ts +20 -24
- package/dist/core/SemaCore.d.ts.map +1 -1
- package/dist/core/SemaCore.js +50 -40
- package/dist/core/SemaCore.js.map +1 -1
- package/dist/core/SemaEngine.d.ts +24 -15
- package/dist/core/SemaEngine.d.ts.map +1 -1
- package/dist/core/SemaEngine.js +116 -206
- package/dist/core/SemaEngine.js.map +1 -1
- package/dist/core/SemaSession.d.ts +43 -0
- package/dist/core/SemaSession.d.ts.map +1 -0
- package/dist/core/SemaSession.js +72 -0
- package/dist/core/SemaSession.js.map +1 -0
- package/dist/core/SessionPool.d.ts +32 -0
- package/dist/core/SessionPool.d.ts.map +1 -0
- package/dist/core/SessionPool.js +89 -0
- package/dist/core/SessionPool.js.map +1 -0
- package/dist/events/EventSystem.d.ts +40 -12
- package/dist/events/EventSystem.d.ts.map +1 -1
- package/dist/events/EventSystem.js +83 -25
- package/dist/events/EventSystem.js.map +1 -1
- package/dist/events/types.d.ts +11 -5
- package/dist/events/types.d.ts.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/manager/CronManager.d.ts +16 -5
- package/dist/manager/CronManager.d.ts.map +1 -1
- package/dist/manager/CronManager.js +46 -19
- package/dist/manager/CronManager.js.map +1 -1
- package/dist/manager/PermissionManager.d.ts +2 -2
- package/dist/manager/PermissionManager.d.ts.map +1 -1
- package/dist/manager/PermissionManager.js +18 -19
- package/dist/manager/PermissionManager.js.map +1 -1
- package/dist/manager/StateManager.d.ts +63 -134
- package/dist/manager/StateManager.d.ts.map +1 -1
- package/dist/manager/StateManager.js +140 -197
- package/dist/manager/StateManager.js.map +1 -1
- package/dist/manager/TaskManager.d.ts +28 -10
- package/dist/manager/TaskManager.d.ts.map +1 -1
- package/dist/manager/TaskManager.js +100 -39
- package/dist/manager/TaskManager.js.map +1 -1
- package/dist/prompt/design/design.d.ts.map +1 -1
- package/dist/prompt/design/design.js +15 -9
- package/dist/prompt/design/design.js.map +1 -1
- package/dist/prompt/system.d.ts +1 -1
- package/dist/prompt/system.d.ts.map +1 -1
- package/dist/prompt/system.js +5 -2
- package/dist/prompt/system.js.map +1 -1
- package/dist/services/agents/genSystemPrompt.d.ts +1 -1
- package/dist/services/agents/genSystemPrompt.js +1 -1
- package/dist/services/api/adapt/anthropic.d.ts +1 -1
- package/dist/services/api/adapt/anthropic.d.ts.map +1 -1
- package/dist/services/api/adapt/anthropic.js +7 -7
- package/dist/services/api/adapt/anthropic.js.map +1 -1
- package/dist/services/api/adapt/openai.d.ts +1 -1
- package/dist/services/api/adapt/openai.d.ts.map +1 -1
- package/dist/services/api/adapt/openai.js +7 -7
- package/dist/services/api/adapt/openai.js.map +1 -1
- package/dist/services/api/adapt/util.d.ts +2 -2
- package/dist/services/api/adapt/util.d.ts.map +1 -1
- package/dist/services/api/adapt/util.js +4 -4
- package/dist/services/api/adapt/util.js.map +1 -1
- package/dist/services/api/cache.d.ts +1 -1
- package/dist/services/api/cache.d.ts.map +1 -1
- package/dist/services/api/cache.js +7 -7
- package/dist/services/api/cache.js.map +1 -1
- package/dist/services/api/queryLLM.d.ts +14 -1
- package/dist/services/api/queryLLM.d.ts.map +1 -1
- package/dist/services/api/queryLLM.js +17 -17
- package/dist/services/api/queryLLM.js.map +1 -1
- package/dist/services/commands/runCommand.d.ts +1 -1
- package/dist/services/commands/runCommand.d.ts.map +1 -1
- package/dist/services/commands/runCommand.js +26 -26
- package/dist/services/commands/runCommand.js.map +1 -1
- package/dist/tools/CreateCron.d.ts +1 -1
- package/dist/tools/CreateCron.d.ts.map +1 -1
- package/dist/tools/CreateCron.js +2 -2
- package/dist/tools/CreateCron.js.map +1 -1
- package/dist/tools/CreateTodo.js +1 -1
- package/dist/tools/CreateTodo.js.map +1 -1
- package/dist/tools/EditNotebook.js +2 -2
- package/dist/tools/EditNotebook.js.map +1 -1
- package/dist/tools/FetchUrl.js +1 -1
- package/dist/tools/FetchUrl.js.map +1 -1
- package/dist/tools/GetTodo.js +1 -1
- package/dist/tools/GetTodo.js.map +1 -1
- package/dist/tools/ListTodos.js +1 -1
- package/dist/tools/ListTodos.js.map +1 -1
- package/dist/tools/PatchFile.js +2 -2
- package/dist/tools/PatchFile.js.map +1 -1
- package/dist/tools/PeekBgJob.d.ts.map +1 -1
- package/dist/tools/PeekBgJob.js +4 -3
- package/dist/tools/PeekBgJob.js.map +1 -1
- package/dist/tools/PickOption.js +3 -3
- package/dist/tools/PickOption.js.map +1 -1
- package/dist/tools/PlanToAgent.d.ts.map +1 -1
- package/dist/tools/PlanToAgent.js +10 -11
- package/dist/tools/PlanToAgent.js.map +1 -1
- package/dist/tools/RunShell.js +1 -1
- package/dist/tools/RunShell.js.map +1 -1
- package/dist/tools/SubAgent.d.ts.map +1 -1
- package/dist/tools/SubAgent.js +20 -17
- package/dist/tools/SubAgent.js.map +1 -1
- package/dist/tools/UpdateTodo.js +1 -1
- package/dist/tools/UpdateTodo.js.map +1 -1
- package/dist/tools/ViewFile.js +1 -1
- package/dist/tools/ViewFile.js.map +1 -1
- package/dist/tools/WriteFile.js +2 -2
- package/dist/tools/WriteFile.js.map +1 -1
- package/dist/tools/base/tools.d.ts +2 -2
- package/dist/tools/base/tools.d.ts.map +1 -1
- package/dist/tools/base/tools.js +10 -4
- package/dist/tools/base/tools.js.map +1 -1
- package/dist/types/agent.d.ts +2 -0
- package/dist/types/agent.d.ts.map +1 -1
- package/dist/types/cron.d.ts +1 -0
- package/dist/types/cron.d.ts.map +1 -1
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js.map +1 -1
- package/dist/types/session.d.ts +18 -0
- package/dist/types/session.d.ts.map +1 -0
- package/dist/types/session.js +3 -0
- package/dist/types/session.js.map +1 -0
- package/dist/types/task.d.ts +2 -0
- package/dist/types/task.d.ts.map +1 -1
- package/dist/util/compact.d.ts +2 -2
- package/dist/util/compact.d.ts.map +1 -1
- package/dist/util/compact.js +6 -7
- package/dist/util/compact.js.map +1 -1
- package/dist/util/file.d.ts +2 -0
- package/dist/util/file.d.ts.map +1 -1
- package/dist/util/file.js +11 -0
- package/dist/util/file.js.map +1 -1
- package/dist/util/fileReference.d.ts.map +1 -1
- package/dist/util/fileReference.js +4 -0
- package/dist/util/fileReference.js.map +1 -1
- package/dist/util/logLLM.d.ts +3 -3
- package/dist/util/logLLM.d.ts.map +1 -1
- package/dist/util/logLLM.js +10 -15
- package/dist/util/logLLM.js.map +1 -1
- package/dist/util/message.d.ts +1 -1
- package/dist/util/message.d.ts.map +1 -1
- package/dist/util/message.js +6 -6
- package/dist/util/message.js.map +1 -1
- package/dist/util/notifyRegistry.d.ts +18 -0
- package/dist/util/notifyRegistry.d.ts.map +1 -0
- package/dist/util/notifyRegistry.js +28 -0
- package/dist/util/notifyRegistry.js.map +1 -0
- package/dist/util/process.d.ts.map +1 -1
- package/dist/util/process.js +3 -4
- package/dist/util/process.js.map +1 -1
- package/dist/util/quickchat.d.ts +1 -1
- package/dist/util/quickchat.d.ts.map +1 -1
- package/dist/util/quickchat.js +12 -10
- package/dist/util/quickchat.js.map +1 -1
- package/dist/util/session.d.ts +4 -0
- package/dist/util/session.d.ts.map +1 -1
- package/dist/util/session.js +8 -1
- package/dist/util/session.js.map +1 -1
- package/dist/util/shell.d.ts +2 -0
- package/dist/util/shell.d.ts.map +1 -1
- package/dist/util/shell.js +20 -1
- package/dist/util/shell.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,4 +1,14 @@
|
|
|
1
1
|
/**
|
|
2
|
+
* 多会话状态管理
|
|
3
|
+
*
|
|
4
|
+
* 两层隔离:sessionId → agentId
|
|
5
|
+
* - StateManager 是单例注册表,持有 Map<sessionId, SessionRuntime>
|
|
6
|
+
* - SessionRuntime 持有单个会话的全部状态:
|
|
7
|
+
* - 按 agentId 隔离:statesMap / messageHistoryMap / readFileTimestampsMap / todosMap / todoTasksMap
|
|
8
|
+
* (agentId='main' 为该会话主代理,子代理为各自 taskId)
|
|
9
|
+
* - 会话级:abortController / 输入队列 / 编辑权限 / Plan&Design 模式标记 / 前台 agent 集合
|
|
10
|
+
* - 会话级配置:agentMode / useTools
|
|
11
|
+
*
|
|
2
12
|
* 子代理不触发 conversation:usage、message:chunk、tool:execution:chunk、state:update、todos:update、topic:update
|
|
3
13
|
* 子代理相关事件 message:complete、tool:execution:complete、tool:execution:error、session:interrupted、tool:permission:request 有agentId字段
|
|
4
14
|
*/
|
|
@@ -6,6 +16,8 @@ import { AppSessionState, TodoItem } from '../events/types';
|
|
|
6
16
|
import { Message } from '../types/message';
|
|
7
17
|
import { TodoTask } from '../types/todoTask';
|
|
8
18
|
import { LineEndingKind } from '../util/file';
|
|
19
|
+
import type { AgentContext } from '../types/agent';
|
|
20
|
+
import type { AgentMode } from '../types';
|
|
9
21
|
export interface PendingUserInput {
|
|
10
22
|
inputId: string;
|
|
11
23
|
input: string;
|
|
@@ -16,7 +28,7 @@ export interface PendingUserInput {
|
|
|
16
28
|
export declare const MAIN_AGENT_ID = "main";
|
|
17
29
|
/**
|
|
18
30
|
* 代理状态访问接口
|
|
19
|
-
* 封装对特定 agentId 的所有状态访问
|
|
31
|
+
* 封装对特定 (sessionId, agentId) 的所有状态访问
|
|
20
32
|
*/
|
|
21
33
|
export interface AgentStateAccessor {
|
|
22
34
|
getTodos(): TodoItem[];
|
|
@@ -44,100 +56,38 @@ export interface AgentStateAccessor {
|
|
|
44
56
|
clearAllState(): void;
|
|
45
57
|
}
|
|
46
58
|
/**
|
|
47
|
-
*
|
|
48
|
-
*
|
|
49
|
-
*
|
|
50
|
-
* 隔离状态(按 agentId):
|
|
51
|
-
* - statesMap: 代理状态 (currentState/previousState)
|
|
52
|
-
* - messageHistoryMap: 消息历史
|
|
53
|
-
* - readFileTimestampsMap: 文件读取时间戳
|
|
54
|
-
* - todosMap: todos 列表
|
|
55
|
-
*
|
|
56
|
-
* 共享状态:
|
|
57
|
-
* - sessionId: 会话ID
|
|
58
|
-
* - globalEditPermissionGranted: 全局编辑权限
|
|
59
|
-
* - currentAbortController: 中断控制器
|
|
59
|
+
* 单个会话的运行时状态
|
|
60
|
+
* 由 StateManager 按 sessionId 持有
|
|
60
61
|
*/
|
|
61
|
-
export declare class
|
|
62
|
-
|
|
62
|
+
export declare class SessionRuntime {
|
|
63
|
+
readonly sessionId: string;
|
|
63
64
|
private statesMap;
|
|
64
65
|
private messageHistoryMap;
|
|
65
66
|
private readFileTimestampsMap;
|
|
66
67
|
private todosMap;
|
|
67
68
|
private todoTasksMap;
|
|
68
69
|
private fileLineEndingsMap;
|
|
69
|
-
|
|
70
|
+
currentAbortController: AbortController | null;
|
|
70
71
|
private globalEditPermissionGranted;
|
|
71
72
|
private planModeInfoSent;
|
|
72
73
|
private designModeInfoSent;
|
|
73
|
-
currentAbortController: AbortController | null;
|
|
74
74
|
private foregroundAgents;
|
|
75
75
|
private pendingUserInputs;
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
*/
|
|
80
|
-
static getInstance(): StateManager;
|
|
81
|
-
/**
|
|
82
|
-
* 获取当前会话ID
|
|
83
|
-
*/
|
|
84
|
-
getSessionId(): string | null;
|
|
85
|
-
/**
|
|
86
|
-
* 设置会话ID
|
|
87
|
-
*/
|
|
88
|
-
setSessionId(sessionId: string | null): void;
|
|
89
|
-
/**
|
|
90
|
-
* 设置消息历史
|
|
91
|
-
*/
|
|
76
|
+
agentMode: AgentMode;
|
|
77
|
+
private systemPromptContent;
|
|
78
|
+
constructor(sessionId: string);
|
|
92
79
|
setMessageHistory(messages: Message[], agentId?: string, skipAutoSave?: boolean): void;
|
|
93
|
-
/**
|
|
94
|
-
* 获取消息历史
|
|
95
|
-
*/
|
|
96
80
|
getMessageHistory(agentId?: string): Message[];
|
|
97
|
-
/**
|
|
98
|
-
* 获取文件读取时间戳
|
|
99
|
-
*/
|
|
100
81
|
getReadFileTimestamps(agentId?: string): Record<string, number>;
|
|
101
|
-
/**
|
|
102
|
-
* 设置单个文件的读取时间戳
|
|
103
|
-
*/
|
|
104
82
|
setReadFileTimestamp(filePath: string, timestamp: number, agentId?: string): void;
|
|
105
|
-
/**
|
|
106
|
-
* 批量设置文件读取时间戳(覆盖)
|
|
107
|
-
*/
|
|
108
83
|
setReadFileTimestamps(timestamps: Record<string, number>, agentId?: string): void;
|
|
109
|
-
/**
|
|
110
|
-
* 获取单个文件的读取时间戳
|
|
111
|
-
*/
|
|
112
84
|
getReadFileTimestamp(filePath: string, agentId?: string): number | undefined;
|
|
113
|
-
/**
|
|
114
|
-
* 获取缓存的文件换行符类型
|
|
115
|
-
*/
|
|
116
85
|
getFileLineEnding(filePath: string, agentId?: string): LineEndingKind | undefined;
|
|
117
|
-
/**
|
|
118
|
-
* 缓存文件的换行符类型
|
|
119
|
-
*/
|
|
120
86
|
setFileLineEnding(filePath: string, ending: LineEndingKind, agentId?: string): void;
|
|
121
|
-
/**
|
|
122
|
-
* 获取 todos 列表
|
|
123
|
-
*/
|
|
124
87
|
getTodos(agentId?: string): TodoItem[];
|
|
125
|
-
/**
|
|
126
|
-
* 设置 todos 列表
|
|
127
|
-
*/
|
|
128
88
|
setTodos(todos: TodoItem[], agentId?: string): void;
|
|
129
|
-
/**
|
|
130
|
-
* 清理指定代理的 todos
|
|
131
|
-
*/
|
|
132
89
|
clearAgentTodos(agentId: string): void;
|
|
133
|
-
/**
|
|
134
|
-
* 智能更新 todos 列表
|
|
135
|
-
* 如果传入的 todos 都有 id 且是现有 todos 的子集,则进行子集更新,否则进行完全替换
|
|
136
|
-
*/
|
|
137
90
|
updateTodosIntelligently(newTodos: TodoItem[], agentId?: string): void;
|
|
138
|
-
/**
|
|
139
|
-
* 发送 todos 更新事件
|
|
140
|
-
*/
|
|
141
91
|
private emitTodosUpdateEvent;
|
|
142
92
|
private getTodoTasks;
|
|
143
93
|
createTodoTask(agentId: string, task: Omit<TodoTask, 'id' | 'createdAt' | 'updatedAt'>): string;
|
|
@@ -145,118 +95,97 @@ export declare class StateManager {
|
|
|
145
95
|
listTodoTasks(agentId: string): TodoTask[];
|
|
146
96
|
updateTodoTask(agentId: string, taskId: string, updates: Partial<Pick<TodoTask, 'title' | 'description' | 'status' | 'progressText'>>): TodoTask | undefined;
|
|
147
97
|
deleteTodoTask(agentId: string, taskId: string): boolean;
|
|
148
|
-
/**
|
|
149
|
-
* 建立阻塞关系:fromId 阻塞 toId(toId 需等待 fromId 完成)
|
|
150
|
-
* 双向写入保持一致性
|
|
151
|
-
*/
|
|
152
98
|
blockTask(agentId: string, fromId: string, toId: string): boolean;
|
|
153
|
-
/**
|
|
154
|
-
* 从持久化数据恢复 TodoTask 列表(主代理)
|
|
155
|
-
*/
|
|
156
99
|
restoreTodoTasks(tasks: TodoTask[]): void;
|
|
157
|
-
/**
|
|
158
|
-
* 从旧版 TodoItem 格式恢复为 TodoTask(兼容旧历史数据)
|
|
159
|
-
*/
|
|
160
100
|
restoreTodoTasksFromLegacy(todos: TodoItem[]): void;
|
|
161
|
-
/**
|
|
162
|
-
* 将 TodoTask 列表同步到 todosMap 并触发 UI 更新事件
|
|
163
|
-
*/
|
|
164
101
|
private syncTodoTasksToTodos;
|
|
165
|
-
/**
|
|
166
|
-
* 获取代理状态
|
|
167
|
-
*/
|
|
168
102
|
private getAgentState;
|
|
169
103
|
/**
|
|
170
104
|
* 更新状态并发送事件
|
|
171
105
|
* - 只有主代理 (agentId === MAIN_AGENT_ID) 才会发送全局状态事件
|
|
172
106
|
*/
|
|
173
107
|
updateState(newState: AppSessionState, agentId?: string): void;
|
|
174
|
-
/**
|
|
175
|
-
* 获取当前状态
|
|
176
|
-
*/
|
|
177
108
|
getCurrentState(agentId?: string): AppSessionState;
|
|
178
109
|
addForegroundAgent(taskId: string): void;
|
|
179
110
|
removeForegroundAgent(taskId: string): void;
|
|
180
111
|
getForegroundAgentIds(): string[];
|
|
181
112
|
clearForegroundAgents(): void;
|
|
182
|
-
/**
|
|
183
|
-
* 添加待处理输入到队列末尾
|
|
184
|
-
*/
|
|
185
113
|
addPendingUserInput(item: PendingUserInput): void;
|
|
186
|
-
/**
|
|
187
|
-
* 获取待处理输入队列长度
|
|
188
|
-
*/
|
|
189
114
|
getPendingUserInputsLength(): number;
|
|
190
|
-
/**
|
|
191
|
-
* 从队头连续取 inject 类型,遇到 command 停止
|
|
192
|
-
* 取出的从队列移除,command 及之后保留
|
|
193
|
-
*/
|
|
194
115
|
consumeInjectInputsBeforeNextCommand(): PendingUserInput[];
|
|
195
|
-
/**
|
|
196
|
-
* 消费全部剩余输入并清空队列
|
|
197
|
-
*/
|
|
198
116
|
consumeAllPendingInputs(): PendingUserInput[];
|
|
199
|
-
/**
|
|
200
|
-
* 清空待处理输入队列
|
|
201
|
-
*/
|
|
202
117
|
clearPendingUserInputs(): void;
|
|
203
118
|
/**
|
|
204
|
-
*
|
|
119
|
+
* 清空本会话所有状态数据
|
|
205
120
|
*/
|
|
206
121
|
clearAllState(): void;
|
|
207
122
|
/**
|
|
208
|
-
*
|
|
123
|
+
* 清理指定子代理的所有隔离状态
|
|
209
124
|
*/
|
|
210
125
|
clearAgentState(agentId: string): void;
|
|
211
126
|
/**
|
|
212
127
|
* 保存会话历史到文件
|
|
213
128
|
*/
|
|
214
129
|
saveSessionHistory(): Promise<void>;
|
|
215
|
-
/**
|
|
216
|
-
* 获取全局编辑权限状态
|
|
217
|
-
*/
|
|
218
130
|
hasGlobalEditPermission(): boolean;
|
|
219
|
-
/**
|
|
220
|
-
* 授予全局编辑权限
|
|
221
|
-
*/
|
|
222
131
|
grantGlobalEditPermission(): void;
|
|
223
132
|
/**
|
|
224
133
|
* 设置自动编辑状态(仅在 skipFileEditPermission 为 false 时生效)
|
|
225
134
|
*/
|
|
226
135
|
updateAutoEdit(enable: boolean): void;
|
|
227
|
-
/**
|
|
228
|
-
* 发送自动编辑状态更新事件
|
|
229
|
-
*/
|
|
230
136
|
private emitAutoEditUpdate;
|
|
231
|
-
/**
|
|
232
|
-
* 检查 Plan 模式信息是否已发送
|
|
233
|
-
*/
|
|
234
137
|
isPlanModeInfoSent(): boolean;
|
|
235
|
-
/**
|
|
236
|
-
* 标记 Plan 模式信息已发送
|
|
237
|
-
*/
|
|
238
138
|
markPlanModeInfoSent(): void;
|
|
139
|
+
resetPlanModeInfoSent(): void;
|
|
140
|
+
isDesignModeInfoSent(): boolean;
|
|
141
|
+
markDesignModeInfoSent(): void;
|
|
142
|
+
resetDesignModeInfoSent(): void;
|
|
143
|
+
getSystemPromptContent(): Array<{
|
|
144
|
+
type: 'text';
|
|
145
|
+
text: string;
|
|
146
|
+
}> | null;
|
|
147
|
+
setSystemPromptContent(content: Array<{
|
|
148
|
+
type: 'text';
|
|
149
|
+
text: string;
|
|
150
|
+
}>): void;
|
|
239
151
|
/**
|
|
240
|
-
*
|
|
152
|
+
* 为指定 agentId 创建状态访问代理对象
|
|
241
153
|
*/
|
|
242
|
-
|
|
154
|
+
forAgent(agentId: string): AgentStateAccessor;
|
|
155
|
+
}
|
|
156
|
+
/**
|
|
157
|
+
* 全局状态管理器(单例注册表)
|
|
158
|
+
* 按 sessionId 持有多个 SessionRuntime
|
|
159
|
+
*/
|
|
160
|
+
export declare class StateManager {
|
|
161
|
+
private static instance;
|
|
162
|
+
private sessions;
|
|
163
|
+
/** UI 层当前打开的活跃会话(多会话共存时由 UI 指定,用于通知兜底投递) */
|
|
164
|
+
private activeSessionId;
|
|
165
|
+
private constructor();
|
|
166
|
+
static getInstance(): StateManager;
|
|
243
167
|
/**
|
|
244
|
-
*
|
|
168
|
+
* 获取(不存在则创建)指定会话的运行时
|
|
245
169
|
*/
|
|
246
|
-
|
|
170
|
+
session(sessionId: string): SessionRuntime;
|
|
247
171
|
/**
|
|
248
|
-
*
|
|
172
|
+
* 从 AgentContext 直接取得代理状态访问器
|
|
249
173
|
*/
|
|
250
|
-
|
|
174
|
+
forAgent(ctx: AgentContext): AgentStateAccessor;
|
|
175
|
+
hasSession(sessionId: string): boolean;
|
|
176
|
+
/** 设置 UI 层当前活跃会话 */
|
|
177
|
+
setActiveSession(sessionId: string): void;
|
|
178
|
+
/** 获取 UI 层当前活跃会话(未设置或已关闭则为 null) */
|
|
179
|
+
getActiveSessionId(): string | null;
|
|
251
180
|
/**
|
|
252
|
-
*
|
|
181
|
+
* 移除单个会话的全部状态(会话级 dispose)
|
|
253
182
|
*/
|
|
254
|
-
|
|
183
|
+
removeSession(sessionId: string): void;
|
|
255
184
|
/**
|
|
256
|
-
*
|
|
257
|
-
* 返回一个封装了该 agentId 所有状态操作的对象
|
|
185
|
+
* 清空所有会话(进程级 dispose)
|
|
258
186
|
*/
|
|
259
|
-
|
|
187
|
+
clearAll(): void;
|
|
188
|
+
getSessionIds(): string[];
|
|
260
189
|
}
|
|
261
190
|
/**
|
|
262
191
|
* 获取 StateManager 单例实例
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StateManager.d.ts","sourceRoot":"","sources":["../../src/manager/StateManager.ts"],"names":[],"mappings":"AACA
|
|
1
|
+
{"version":3,"file":"StateManager.d.ts","sourceRoot":"","sources":["../../src/manager/StateManager.ts"],"names":[],"mappings":"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"}
|