aws-runtime-bridge 1.9.92 → 1.9.93
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/adapter/AcodeSdkAdapter.d.ts +22 -126
- package/dist/adapter/AdapterRegistry.d.ts +10 -38
- package/dist/adapter/ClaudeSdkAdapter.d.ts +21 -84
- package/dist/adapter/CodexSdkAdapter.d.ts +2 -10
- package/dist/adapter/OpencodeSdkAdapter.d.ts +6 -42
- package/dist/adapter/acode-tool-names.d.ts +3 -12
- package/dist/adapter/idle-poll-loop.d.ts +4 -16
- package/dist/adapter/index.d.ts +1 -4
- package/dist/adapter/instance-ai-config-resolver.d.ts +9 -29
- package/dist/adapter/types.d.ts +124 -242
- package/dist/adapters/cc-switch/common.d.ts +4 -14
- package/dist/adapters/cc-switch/index.d.ts +3 -11
- package/dist/adapters/cc-switch/mcp-acode.d.ts +1 -7
- package/dist/adapters/cc-switch/mcp-claude.d.ts +1 -5
- package/dist/adapters/cc-switch/mcp-claudecode.d.ts +1 -5
- package/dist/adapters/cc-switch/mcp-codex.d.ts +1 -7
- package/dist/adapters/cc-switch/mcp-opencode.d.ts +3 -11
- package/dist/adapters/cc-switch/mcp-placeholder.d.ts +1 -5
- package/dist/adapters/cc-switch/skill-acode.d.ts +1 -6
- package/dist/adapters/cc-switch/skill-claude.d.ts +1 -5
- package/dist/adapters/cc-switch/skill-claudecode.d.ts +1 -5
- package/dist/adapters/cc-switch/skill-opencode.d.ts +1 -5
- package/dist/adapters/cc-switch/skill-placeholder.d.ts +1 -5
- package/dist/config.d.ts +39 -57
- package/dist/index.d.ts +1 -5
- package/dist/middleware/auth.d.ts +4 -22
- package/dist/routes/acode-todos.d.ts +1 -9
- package/dist/routes/dashboard.d.ts +1 -6
- package/dist/routes/events.d.ts +1 -5
- package/dist/routes/file-browser.d.ts +2 -8
- package/dist/routes/file-diff-rollback.d.ts +13 -41
- package/dist/routes/file-snapshot.d.ts +1 -8
- package/dist/routes/git.d.ts +18 -91
- package/dist/routes/instance.d.ts +4 -15
- package/dist/routes/processes.d.ts +1 -5
- package/dist/routes/properties.d.ts +1 -5
- package/dist/routes/pty.d.ts +9 -36
- package/dist/routes/runtime-binding.d.ts +1 -4
- package/dist/routes/sessions.d.ts +2 -9
- package/dist/routes/sub-agents.d.ts +1 -12
- package/dist/routes/task-context.d.ts +1 -6
- package/dist/routes/terminal.d.ts +18 -92
- package/dist/routes/yml.d.ts +1 -5
- package/dist/services/acode-package.d.ts +2 -12
- package/dist/services/agent-event-store.d.ts +6 -26
- package/dist/services/agent-process-manager.d.ts +30 -184
- package/dist/services/ai-source-apply.d.ts +1 -3
- package/dist/services/auto-register.d.ts +29 -106
- package/dist/services/bridge-package-publish-hooks.d.ts +5 -19
- package/dist/services/cc-switch-sdk.d.ts +1 -6
- package/dist/services/cli-commands.d.ts +12 -33
- package/dist/services/event-delta-pusher.d.ts +5 -20
- package/dist/services/fileSnapshotStore.d.ts +7 -35
- package/dist/services/instance-ai-config-service.d.ts +4 -21
- package/dist/services/instance-service.d.ts +1 -10
- package/dist/services/instance-state.d.ts +5 -30
- package/dist/services/legacy-path-migration.d.ts +1 -1
- package/dist/services/lifecycle-state.d.ts +1 -4
- package/dist/services/mcp-launch-binding-queue.d.ts +2 -8
- package/dist/services/orphan-monitor.d.ts +20 -63
- package/dist/services/panel-auth.d.ts +12 -28
- package/dist/services/process-detector.d.ts +18 -122
- package/dist/services/process-registry.d.ts +30 -150
- package/dist/services/ring-buffer.d.ts +9 -42
- package/dist/services/runtime-binding.d.ts +2 -9
- package/dist/services/runtime-lifecycle-policy.d.ts +3 -15
- package/dist/services/session-output.d.ts +14 -67
- package/dist/services/startup-config-wizard.d.ts +3 -10
- package/dist/services/system-metrics.d.ts +1 -4
- package/dist/services/terminal-persistence.d.ts +10 -53
- package/dist/services/tool-installer.d.ts +6 -18
- package/dist/services/tunnel-client.d.ts +3 -18
- package/dist/services/windows-service-manager.d.ts +1 -13
- package/dist/services/workspace-files.d.ts +17 -57
- package/dist/services/workspace-watch.d.ts +2 -6
- package/dist/services/workspaceTaskChangeWatcher.d.ts +13 -51
- package/dist/types.d.ts +2 -8
- package/dist/utils/instance-ai-config-debug-logger.d.ts +5 -20
- package/dist/utils/logger.d.ts +7 -20
- package/dist/utils/mcp-utils.d.ts +8 -44
- package/dist/utils/path-utils.d.ts +3 -15
- package/dist/utils/sdk-package-loader.d.ts +2 -8
- package/dist/utils/validation.d.ts +3 -20
- package/dist/utils/yaml-utils.d.ts +8 -56
- package/node_modules/@cc-switch/sdk/dist/index.d.ts +1 -6
- package/node_modules/@cc-switch/sdk/dist/sdk.d.ts +11 -42
- package/package/acode/dist/ask-user-question-tool.d.ts +7 -20
- package/package/acode/dist/built-in-file-tools.d.ts +3 -6
- package/package/acode/dist/built-in-symbols-tool.d.ts +1 -4
- package/package/acode/dist/builtins/commandArtifacts.d.ts +1 -4
- package/package/acode/dist/builtins/shellOutputDecoder.d.ts +3 -18
- package/package/acode/dist/commands/commandLoader.d.ts +1 -4
- package/package/acode/dist/commands/commandParser.d.ts +1 -4
- package/package/acode/dist/compaction.d.ts +38 -175
- package/package/acode/dist/config.d.ts +1 -4
- package/package/acode/dist/fs-utils.d.ts +1 -19
- package/package/acode/dist/hooks/hookBus.d.ts +1 -4
- package/package/acode/dist/mcpToolNames.d.ts +2 -8
- package/package/acode/dist/parsers/ast-cache.d.ts +7 -20
- package/package/acode/dist/parsers/language-detector.d.ts +1 -5
- package/package/acode/dist/parsers/language-queries.d.ts +1 -1
- package/package/acode/dist/parsers/tree-sitter-loader.d.ts +4 -12
- package/package/acode/dist/parsers/types.d.ts +19 -30
- package/package/acode/dist/runtime.d.ts +47 -269
- package/package/acode/dist/skill-tool.d.ts +3 -23
- package/package/acode/dist/sub-agent-manager.d.ts +41 -206
- package/package/acode/dist/sub-agent-store.d.ts +12 -61
- package/package/acode/dist/sub-agent-tools.d.ts +9 -18
- package/package/acode/dist/sub-agent-types.d.ts +32 -38
- package/package/acode/dist/todo-store.d.ts +8 -23
- package/package/acode/dist/todo-tool.d.ts +2 -2
- package/package/acode/dist/types.d.ts +17 -38
- package/package/aws-client-agent-mcp/dist/agent-client.d.ts +44 -161
- package/package/aws-client-agent-mcp/dist/config.d.ts +4 -18
- package/package/aws-client-agent-mcp/dist/constants.d.ts +1 -3
- package/package/aws-client-agent-mcp/dist/context-manager.d.ts +25 -95
- package/package/aws-client-agent-mcp/dist/context-manager.test.d.ts +1 -4
- package/package/aws-client-agent-mcp/dist/http-client.d.ts +15 -56
- package/package/aws-client-agent-mcp/dist/index.d.ts +1 -11
- package/package/aws-client-agent-mcp/dist/logger.d.ts +5 -22
- package/package/aws-client-agent-mcp/dist/mcp-server.d.ts +76 -365
- package/package/aws-client-agent-mcp/dist/mcp-tools.d.ts +21 -83
- package/package/aws-client-agent-mcp/dist/memory-store.d.ts +15 -70
- package/package/aws-client-agent-mcp/dist/memory-tools.d.ts +4 -17
- package/package/aws-client-agent-mcp/dist/message-buffer.d.ts +23 -92
- package/package/aws-client-agent-mcp/dist/messageContent.d.ts +5 -29
- package/package/aws-client-agent-mcp/dist/server-memory-store.d.ts +2 -9
- package/package/aws-client-agent-mcp/dist/status-reporter.d.ts +17 -55
- package/package/aws-client-agent-mcp/dist/types.d.ts +66 -125
- package/package/aws-client-agent-mcp/dist/websocket-client.d.ts +30 -125
- package/package/cc-switch-sdk/dist/index.d.ts +1 -6
- package/package/cc-switch-sdk/dist/sdk.d.ts +11 -42
- package/package.json +1 -1
|
@@ -1,12 +1,5 @@
|
|
|
1
1
|
export type MemoryType = 'recently_memory' | 'agent_memory' | 'project_memory' | 'session_context';
|
|
2
|
-
|
|
3
|
-
* 规范化绑定的文件路径。
|
|
4
|
-
* 项目约定以下前缀都表示工作区根路径:
|
|
5
|
-
* ./xxx → ./xxx (已是相对路径)
|
|
6
|
-
* /xxx → ./xxx (/ 视为工作区根路径)
|
|
7
|
-
* @/xxx → ./xxx (@/ 视为工作区根路径别名)
|
|
8
|
-
* xxx → ./xxx (裸路径视为当前工作区相对)
|
|
9
|
-
*/
|
|
2
|
+
|
|
10
3
|
export declare function normalizeBoundFilePath(filePath: string): string;
|
|
11
4
|
export interface MemoryRecord {
|
|
12
5
|
id: string;
|
|
@@ -156,96 +149,48 @@ export declare class MemoryStore implements MemoryStorePort {
|
|
|
156
149
|
private normalizeUri;
|
|
157
150
|
private normalizeMemoryType;
|
|
158
151
|
private ensureTypeMatch;
|
|
159
|
-
|
|
160
|
-
* 确保存储目标目录存在。
|
|
161
|
-
* 主流程:永久记忆始终按 domain 分文件,创建存储根目录。
|
|
162
|
-
*/
|
|
152
|
+
|
|
163
153
|
private ensureStoreDir;
|
|
164
|
-
|
|
165
|
-
* 读取单个记忆 JSON 文件。
|
|
166
|
-
* 主流程:读取 by_uri -> 规范化 uri/type/domain/path -> 返回可合并数据。
|
|
167
|
-
*/
|
|
154
|
+
|
|
168
155
|
private loadMemoryFile;
|
|
169
|
-
|
|
170
|
-
* 读取记忆数据。
|
|
171
|
-
* 主流程:读取根目录下所有 domain JSON 并合并。
|
|
172
|
-
*/
|
|
156
|
+
|
|
173
157
|
private loadData;
|
|
174
158
|
private writeJsonAtomically;
|
|
175
|
-
|
|
176
|
-
* 保存记忆数据。
|
|
177
|
-
* 主流程:按 domain 分组写入 <domain>.json 并移除空域旧文件。
|
|
178
|
-
*/
|
|
159
|
+
|
|
179
160
|
private saveData;
|
|
180
161
|
private createEmptyStats;
|
|
181
|
-
|
|
182
|
-
* 统计本地记忆容量。
|
|
183
|
-
* 主流程:遍历所有记录 -> 按类型计数 -> 单独汇总可 list 类型容量。
|
|
184
|
-
*/
|
|
162
|
+
|
|
185
163
|
private calculateStats;
|
|
186
164
|
private generateId;
|
|
187
|
-
|
|
188
|
-
* 校验可列出记忆容量。
|
|
189
|
-
* 主流程:仅限制 recently_memory/agent_memory/project_memory 新建 -> 先校验该类型数量 -> 再校验可 list 总量。
|
|
190
|
-
*/
|
|
165
|
+
|
|
191
166
|
private ensureListableMemoryCapacity;
|
|
192
|
-
|
|
193
|
-
* 校验 session_context 记忆容量。
|
|
194
|
-
* 主流程:按 domain 限制最多 SESSION_CONTEXT_HARD_LIMIT 条记录,拒绝超限创建。
|
|
195
|
-
*/
|
|
167
|
+
|
|
196
168
|
private ensureSessionContextCapacity;
|
|
197
169
|
getStats(): Promise<MemoryStats>;
|
|
198
|
-
|
|
199
|
-
* 计算 agent_memory / recently_memory 过期时间(当前时间 + 12 小时,初始 TTL)。
|
|
200
|
-
*/
|
|
170
|
+
|
|
201
171
|
private static calcAgentMemoryExpiresAt;
|
|
202
|
-
|
|
203
|
-
* 判断 memory_type 是否支持过期回忆机制。
|
|
204
|
-
* v1.19.0: recently_memory 与 agent_memory 都支持过期、续期、recalling 状态流转。
|
|
205
|
-
* project_memory 为永久记忆,不支持过期。
|
|
206
|
-
*/
|
|
172
|
+
|
|
207
173
|
static isExpirableType(memoryType: string | undefined): boolean;
|
|
208
174
|
createMemory(input: CreateMemoryInput): Promise<MemoryRecord>;
|
|
209
175
|
readMemory(input: ReadMemoryInput): Promise<MemoryRecord | null>;
|
|
210
176
|
updateMemory(input: UpdateMemoryInput): Promise<MemoryRecord>;
|
|
211
177
|
deleteMemory(input: DeleteMemoryInput): Promise<boolean>;
|
|
212
|
-
|
|
213
|
-
* 列出已过期的 agent_memory / recently_memory 记录(memory_status 为 normal 或 recalling)。
|
|
214
|
-
* 主流程:读取所有数据 -> 筛选 agent_memory / recently_memory 类型 -> 检查 expiresAt 是否已过期。
|
|
215
|
-
* v1.19.0: recently_memory 纳入过期回忆流程,行为对齐 agent_memory。
|
|
216
|
-
*/
|
|
178
|
+
|
|
217
179
|
listExpiredRecentlyMemories(): Promise<MemoryRecord[]>;
|
|
218
|
-
|
|
219
|
-
* 搜索本地记忆。
|
|
220
|
-
* 主流程:支持 OR 分隔符(|)和空格 AND 词组搜索,支持 keyword_mode(any/all) 关键词过滤。
|
|
221
|
-
* 搜索效率:使用 5 秒内存缓存避免多次 searchMemory 重复读盘。
|
|
222
|
-
*/
|
|
180
|
+
|
|
223
181
|
searchMemory(input: SearchMemoryInput): Promise<{
|
|
224
182
|
query: string;
|
|
225
183
|
results: MemoryRecord[];
|
|
226
184
|
}>;
|
|
227
185
|
listByType(memory_type: string): Promise<MemoryRecord[]>;
|
|
228
|
-
|
|
229
|
-
* 按文件查询绑定了该文件的所有 Memory
|
|
230
|
-
* Memory 增强功能 (v1.6.0)
|
|
231
|
-
*/
|
|
186
|
+
|
|
232
187
|
listByFile(filePath: string, memory_type?: MemoryType | ListByFileOptions): Promise<MemoryRecord[]>;
|
|
233
|
-
|
|
234
|
-
* 标记已过期的 agent_memory 记录为 recalling 状态 (v1.13.0)。
|
|
235
|
-
* 主流程:复用 listExpiredRecentlyMemories 找出过期记录 ->
|
|
236
|
-
* 若传入 uris 则只标记指定 URI 的过期记录(分批处理用) ->
|
|
237
|
-
* 逐条更新 memory_status='recalling'。
|
|
238
|
-
* @param uris 可选,指定要标记的 URI 列表;不传时标记所有过期记忆
|
|
239
|
-
*/
|
|
188
|
+
|
|
240
189
|
markExpiredMemoriesRecalling(uris?: string[]): Promise<{
|
|
241
190
|
marked: number;
|
|
242
191
|
uris: string[];
|
|
243
192
|
}>;
|
|
244
|
-
|
|
245
|
-
* 清理所有「memory_status='recalling' + 已过期」的 agent_memory / recently_memory 记录 (v1.13.0, v1.19.0 扩展)。
|
|
246
|
-
* 主流程:遍历所有数据 -> 筛选可过期类型 + memory_status='recalling' + expiresAt 已过期 -> 删除。
|
|
247
|
-
* v1.19.0: recently_memory 纳入清理范围。
|
|
248
|
-
*/
|
|
193
|
+
|
|
249
194
|
clearRecallingExpiredMemories(): Promise<{
|
|
250
195
|
deleted: number;
|
|
251
196
|
uris: string[];
|
|
@@ -6,24 +6,11 @@ export declare const DELETE_MEMORY_TOOL: Tool;
|
|
|
6
6
|
export declare const SEARCH_MEMORY_TOOL: Tool;
|
|
7
7
|
export declare const LIST_MEMORIES_TOOL: Tool;
|
|
8
8
|
export declare const GET_MEMORY_STATS_TOOL: Tool;
|
|
9
|
-
|
|
10
|
-
* 按文件查询绑定了该文件的 Memory
|
|
11
|
-
*/
|
|
9
|
+
|
|
12
10
|
export declare const LIST_MEMORIES_BY_FILE_TOOL: Tool;
|
|
13
|
-
|
|
14
|
-
* 放弃 Memory 更新状态
|
|
15
|
-
*/
|
|
11
|
+
|
|
16
12
|
export declare const ABANDON_MEMORY_UPDATE_TOOL: Tool;
|
|
17
|
-
|
|
18
|
-
* 获取已过期的 agent_memory,供 Agent 回忆整理。
|
|
19
|
-
* Agent 调用此工具获取已过期的 agent_memory,这些记忆将被标记为[回忆中]状态。
|
|
20
|
-
* 支持分批处理:通过 limit 参数控制每次返回的数量(按过期时间最早优先),
|
|
21
|
-
* 返回结果包含 remaining 字段表示剩余待处理的过期记忆数量。
|
|
22
|
-
*/
|
|
13
|
+
|
|
23
14
|
export declare const MEMORY_RECURRENCE_TOOL: Tool;
|
|
24
|
-
|
|
25
|
-
* 完成记忆回忆疏理。
|
|
26
|
-
* Agent 在审查完 memory_recurrence 返回的过期记忆后调用此工具。
|
|
27
|
-
* 系统将删除所有标记为[回忆中](recalling)状态的已过期 agent_memory。
|
|
28
|
-
*/
|
|
15
|
+
|
|
29
16
|
export declare const MEMORY_RECURRENCE_COMPLETE_TOOL: Tool;
|
|
@@ -1,124 +1,55 @@
|
|
|
1
|
-
|
|
2
|
-
* 消息缓冲与派发模块
|
|
3
|
-
* 负责消息的缓冲、分类、去重和派发
|
|
4
|
-
*/
|
|
1
|
+
|
|
5
2
|
import type { DirectMessage, GroupMessage, ProfileInfo } from './types.js';
|
|
6
|
-
|
|
3
|
+
|
|
7
4
|
export interface ClassifiedMessages {
|
|
8
5
|
directMessages: DirectMessage[];
|
|
9
6
|
groupMessages: GroupMessage[];
|
|
10
7
|
}
|
|
11
|
-
|
|
8
|
+
|
|
12
9
|
export type OnMessageArrivedCallback = () => void;
|
|
13
|
-
|
|
14
|
-
* 消息缓冲区
|
|
15
|
-
* 管理消息的存储、去重、分类和派发
|
|
16
|
-
*/
|
|
10
|
+
|
|
17
11
|
export declare class MessageBuffer {
|
|
18
12
|
private buffer;
|
|
19
13
|
private resolvers;
|
|
20
14
|
private onMessageArrived;
|
|
21
15
|
private isPolling;
|
|
22
16
|
private seenMsgIds;
|
|
23
|
-
|
|
24
|
-
* 设置消息到达回调
|
|
25
|
-
* 当有新消息到达且正在 poll 等待时,会立即调用此回调
|
|
26
|
-
*/
|
|
17
|
+
|
|
27
18
|
setOnMessageArrived(callback: OnMessageArrivedCallback | null): void;
|
|
28
|
-
|
|
29
|
-
* 设置是否正在 poll 等待
|
|
30
|
-
*/
|
|
19
|
+
|
|
31
20
|
setIsPolling(polling: boolean): void;
|
|
32
|
-
|
|
33
|
-
* 标记消息为已见(用于去重)
|
|
34
|
-
*/
|
|
21
|
+
|
|
35
22
|
private markSeen;
|
|
36
|
-
|
|
37
|
-
* 检查消息是否已存在(去重)
|
|
38
|
-
*
|
|
39
|
-
* ⚠️ 去重记录永不过期:由于服务端 poll_message 返回的私信不会在 WebSocket 消费时标记已读,
|
|
40
|
-
* 导致下次 hydrate 拉取仍能拉到同一条 is_read=false 的消息。
|
|
41
|
-
* 如果去重记录有 TTL,超过 TTL 后同一条消息会被二次投递给 Agent 导致重复回复。
|
|
42
|
-
* 因此 seenMsgIds 仅受 MAX_SIZE 上限约束,不做时间老化——消息一旦被消费过就永久去重。
|
|
43
|
-
*
|
|
44
|
-
* 如果是新消息,标记为已见并返回 false
|
|
45
|
-
*/
|
|
23
|
+
|
|
46
24
|
private isDuplicate;
|
|
47
|
-
|
|
48
|
-
* 清理去重记录:只在超出 MAX_SIZE 上限时淘汰最旧的记录。
|
|
49
|
-
* 不按时间老化,避免 TTL 到期后同一条消息被服务端二次拉取时漏掉去重。
|
|
50
|
-
*/
|
|
25
|
+
|
|
51
26
|
private cleanupSeenMsgIds;
|
|
52
|
-
|
|
53
|
-
* 添加消息到缓冲区
|
|
54
|
-
*/
|
|
27
|
+
|
|
55
28
|
push(message: DirectMessage | GroupMessage): void;
|
|
56
|
-
|
|
57
|
-
* 接收 Profile 推送。
|
|
58
|
-
* 主流程:记录日志 -> 不进入未读缓冲区 -> 引导调用方通过 get_profile 获取身份详情。
|
|
59
|
-
*/
|
|
29
|
+
|
|
60
30
|
setProfileMessage(profile: ProfileInfo): void;
|
|
61
|
-
|
|
62
|
-
* 移除 Profile 系统消息。
|
|
63
|
-
* 当前未再向未读消息注入 profile 信息,保留该方法仅为兼容既有调用链。
|
|
64
|
-
*/
|
|
31
|
+
|
|
65
32
|
removeProfileMessage(): void;
|
|
66
|
-
|
|
67
|
-
* 检查是否有 Profile 消息。
|
|
68
|
-
* 当前身份信息不会进入未读消息,因此固定返回 false。
|
|
69
|
-
*/
|
|
33
|
+
|
|
70
34
|
hasProfileMessage(): boolean;
|
|
71
|
-
|
|
72
|
-
* 唤醒正在 poll 等待的 resolver。
|
|
73
|
-
*
|
|
74
|
-
* 用于不进入缓冲区的"唤醒信号"消息(如 pipeline_task_assigned):
|
|
75
|
-
* 这类消息不应被 Agent 直接消费,但需要让 poll_message 立即返回空结果,
|
|
76
|
-
* 由调用方走 hydrate 路径重新查询任务状态,避免最长 30s 的检测延迟。
|
|
77
|
-
*
|
|
78
|
-
* 主流程:
|
|
79
|
-
* 1. 若 buffer 有消息,先走正常 tryDispatch 派发
|
|
80
|
-
* 2. 若 buffer 空,给第一个等待中的 resolver 推空结果,
|
|
81
|
-
* 让 doPollMessage 的 while 循环立即进入 hydrate 路径
|
|
82
|
-
*/
|
|
35
|
+
|
|
83
36
|
wakeUpWaiters(): void;
|
|
84
|
-
|
|
85
|
-
* 获取 Profile 消息。
|
|
86
|
-
* 当前身份信息不会进入未读消息,因此固定返回 null。
|
|
87
|
-
*/
|
|
37
|
+
|
|
88
38
|
getProfileMessage(): null;
|
|
89
|
-
|
|
90
|
-
* 更新 isPolling 状态:resolvers 从 0 变为 1 时设为 true,变为 0 时设为 false
|
|
91
|
-
*/
|
|
39
|
+
|
|
92
40
|
private updatePollingState;
|
|
93
|
-
|
|
94
|
-
* 阻塞等待新消息
|
|
95
|
-
* 如果缓冲区有消息则立即返回,否则阻塞等待
|
|
96
|
-
* @param timeoutMs 可选超时时间(毫秒),超时后返回空消息而不继续阻塞
|
|
97
|
-
*/
|
|
41
|
+
|
|
98
42
|
poll(timeoutMs?: number): Promise<ClassifiedMessages>;
|
|
99
|
-
|
|
100
|
-
* 非阻塞获取消息
|
|
101
|
-
*/
|
|
43
|
+
|
|
102
44
|
get(): ClassifiedMessages;
|
|
103
|
-
|
|
104
|
-
* 获取缓冲区大小
|
|
105
|
-
*/
|
|
45
|
+
|
|
106
46
|
size(): number;
|
|
107
|
-
|
|
108
|
-
* 清空缓冲区
|
|
109
|
-
*/
|
|
47
|
+
|
|
110
48
|
clear(): void;
|
|
111
|
-
|
|
112
|
-
* 尝试派发缓冲区消息给等待的 resolver
|
|
113
|
-
*/
|
|
49
|
+
|
|
114
50
|
private tryDispatch;
|
|
115
|
-
|
|
116
|
-
* 消费缓冲区所有消息并分类,同时标记为已见
|
|
117
|
-
*/
|
|
51
|
+
|
|
118
52
|
private consumeAll;
|
|
119
|
-
|
|
120
|
-
* 判断消息类型
|
|
121
|
-
* DirectMessage 的 msgId 是 string,GroupMessage 的 msgId 是 number
|
|
122
|
-
*/
|
|
53
|
+
|
|
123
54
|
private isDirectMessage;
|
|
124
55
|
}
|
|
@@ -1,13 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
*
|
|
4
|
-
* 负责解析消息中的图片标记,支持两种格式:
|
|
5
|
-
* 1. [图片: url] 标记格式(推荐,与前端兼容)
|
|
6
|
-
* 2. JSON 格式 { text, attachments }(兼容旧消息)
|
|
7
|
-
*/
|
|
8
|
-
/**
|
|
9
|
-
* 图片附件信息
|
|
10
|
-
*/
|
|
1
|
+
|
|
2
|
+
|
|
11
3
|
export interface ImageAttachment {
|
|
12
4
|
type: "image";
|
|
13
5
|
url: string;
|
|
@@ -15,31 +7,15 @@ export interface ImageAttachment {
|
|
|
15
7
|
mediaType: string;
|
|
16
8
|
size: number;
|
|
17
9
|
}
|
|
18
|
-
|
|
19
|
-
* 解析后的消息内容
|
|
20
|
-
*/
|
|
10
|
+
|
|
21
11
|
export interface ParsedMessageContent {
|
|
22
12
|
text: string;
|
|
23
13
|
attachments: ImageAttachment[];
|
|
24
14
|
hasImages: boolean;
|
|
25
15
|
}
|
|
26
|
-
|
|
27
|
-
* 解析消息内容
|
|
28
|
-
*
|
|
29
|
-
* @param content 消息内容(可能是纯文本、[图片: url] 格式或 JSON 格式)
|
|
30
|
-
* @returns 解析后的内容
|
|
31
|
-
*/
|
|
16
|
+
|
|
32
17
|
export declare function parseMessageContent(content: string): ParsedMessageContent;
|
|
33
|
-
|
|
34
|
-
* 构造多模态消息内容块
|
|
35
|
-
*
|
|
36
|
-
* 用于 Claude Agent SDK 的流式输入模式。
|
|
37
|
-
* SDK 直接支持 URL 引用图片,无需下载转 Base64。
|
|
38
|
-
*
|
|
39
|
-
* @param parsedContent 解析后的消息内容
|
|
40
|
-
* @param _baseUrl 服务器基础 URL(未使用,SDK 直接处理 URL)
|
|
41
|
-
* @returns 内容块数组
|
|
42
|
-
*/
|
|
18
|
+
|
|
43
19
|
export declare function buildMultimodalContentBlocks(parsedContent: ParsedMessageContent, _baseUrl: string): Array<{
|
|
44
20
|
type: string;
|
|
45
21
|
text?: string;
|
|
@@ -1,9 +1,6 @@
|
|
|
1
1
|
import type { AgentClient } from "./agent-client.js";
|
|
2
2
|
import type { CreateMemoryInput, DeleteMemoryInput, ListByFileOptions, MemoryRecord, MemoryStats, MemoryStorePort, ReadMemoryInput, SearchMemoryInput, UpdateMemoryInput } from "./memory-store.js";
|
|
3
|
-
|
|
4
|
-
* 调度中心 SQLite 记忆存储适配器。
|
|
5
|
-
* 主流程:所有 recently_memory/agent_memory 操作透传到 server,并由 server 按当前 agentId 做实例隔离。
|
|
6
|
-
*/
|
|
3
|
+
|
|
7
4
|
export declare class ServerMemoryStore implements MemoryStorePort {
|
|
8
5
|
private readonly agentClient;
|
|
9
6
|
constructor(agentClient: AgentClient);
|
|
@@ -40,10 +37,6 @@ export declare class ServerMemoryStore implements MemoryStorePort {
|
|
|
40
37
|
released: number;
|
|
41
38
|
}>;
|
|
42
39
|
getMyClaimedUris(): Promise<string[]>;
|
|
43
|
-
|
|
44
|
-
* 按文件查询绑定了该文件的 Memory(支持 scope 跨 Agent 搜索)。
|
|
45
|
-
* Memory 增强功能 (v1.6.0),范围扩展 (v1.7.0)
|
|
46
|
-
* 兼容:第二个参数可以是 memory_type 字符串或 ListByFileOptions 对象。
|
|
47
|
-
*/
|
|
40
|
+
|
|
48
41
|
listByFile(filePath: string, options?: string | ListByFileOptions): Promise<MemoryRecord[]>;
|
|
49
42
|
}
|
|
@@ -1,85 +1,47 @@
|
|
|
1
|
-
|
|
2
|
-
* Agent 状态报告器
|
|
3
|
-
* 负责监听 Agent 动作并通过 WebSocket 报告状态
|
|
4
|
-
*/
|
|
1
|
+
|
|
5
2
|
import { EventEmitter } from 'node:events';
|
|
6
3
|
import type { AgentStatusUpdate } from './types.js';
|
|
7
|
-
|
|
8
|
-
* 脱敏终端剪贴板生成的临时 paste 文件路径。
|
|
9
|
-
* 主流程:覆盖 Windows/POSIX/裸目录形式 -> 保留工具类型,隐藏瞬时本地路径。
|
|
10
|
-
*/
|
|
4
|
+
|
|
11
5
|
export declare function redactTransientClipboardPastePaths(text: string): string;
|
|
12
6
|
export interface StatusReporterConfig {
|
|
13
7
|
agentId: string;
|
|
14
8
|
sendStatusUpdate: (update: AgentStatusUpdate) => void;
|
|
15
9
|
}
|
|
16
|
-
|
|
17
|
-
* Agent 状态报告器
|
|
18
|
-
* 监听 MCP 工具调用、文件操作等事件,生成细粒度状态更新
|
|
19
|
-
*/
|
|
10
|
+
|
|
20
11
|
export declare class StatusReporter extends EventEmitter {
|
|
21
12
|
private config;
|
|
22
13
|
private currentStatus;
|
|
23
14
|
private currentAction;
|
|
24
15
|
constructor(config: StatusReporterConfig);
|
|
25
|
-
|
|
26
|
-
* 报告 Agent 启动
|
|
27
|
-
*/
|
|
16
|
+
|
|
28
17
|
reportStarting(): void;
|
|
29
|
-
|
|
30
|
-
* 报告 Agent 运行中
|
|
31
|
-
*/
|
|
18
|
+
|
|
32
19
|
reportRunning(): void;
|
|
33
|
-
|
|
34
|
-
* 报告 Agent 等待输入
|
|
35
|
-
*/
|
|
20
|
+
|
|
36
21
|
reportWaitingInput(): void;
|
|
37
|
-
|
|
38
|
-
* 报告 Agent 思考中
|
|
39
|
-
*/
|
|
22
|
+
|
|
40
23
|
reportThinking(): void;
|
|
41
|
-
|
|
42
|
-
* 报告 Agent 停止
|
|
43
|
-
*/
|
|
24
|
+
|
|
44
25
|
reportStopped(): void;
|
|
45
|
-
|
|
46
|
-
* 报告 Agent 错误
|
|
47
|
-
*/
|
|
26
|
+
|
|
48
27
|
reportError(): void;
|
|
49
|
-
|
|
50
|
-
* 报告工具调用
|
|
51
|
-
*/
|
|
28
|
+
|
|
52
29
|
reportToolUse(toolName: string, args?: Record<string, unknown>): void;
|
|
53
|
-
|
|
54
|
-
* 报告工具调用返回结果。
|
|
55
|
-
* 主流程:沿用当前动作上下文 -> 截断返回内容 -> 通过 actionResult 写入时间线日志。
|
|
56
|
-
*/
|
|
30
|
+
|
|
57
31
|
reportToolResult(result: unknown): void;
|
|
58
|
-
|
|
59
|
-
* 报告工具调用错误。
|
|
60
|
-
*/
|
|
32
|
+
|
|
61
33
|
reportToolError(error: unknown): void;
|
|
62
|
-
|
|
63
|
-
* 解析工具名称和参数,生成动作信息
|
|
64
|
-
*/
|
|
34
|
+
|
|
65
35
|
private static readonly KNOWN_MCP_TOOLS;
|
|
66
36
|
private static canonicalizeMcpServer;
|
|
67
37
|
private static formatMcpDetail;
|
|
68
38
|
private parseToolAction;
|
|
69
|
-
|
|
70
|
-
* 更新状态
|
|
71
|
-
*/
|
|
39
|
+
|
|
72
40
|
private updateStatus;
|
|
73
|
-
|
|
74
|
-
* 清除当前动作
|
|
75
|
-
*/
|
|
41
|
+
|
|
76
42
|
private clearAction;
|
|
77
|
-
|
|
78
|
-
* 将工具返回值序列化为面板可读日志,避免超长内容影响传输。
|
|
79
|
-
*/
|
|
43
|
+
|
|
80
44
|
private formatToolResult;
|
|
81
|
-
|
|
82
|
-
* 获取当前状态
|
|
83
|
-
*/
|
|
45
|
+
|
|
84
46
|
getCurrentStatus(): AgentStatusUpdate;
|
|
85
47
|
}
|