@cicctencent/agent-server 0.1.1 → 0.1.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 (49) hide show
  1. package/dist/cjs/index.d.ts +2 -0
  2. package/dist/cjs/index.d.ts.map +1 -1
  3. package/dist/cjs/index.js +23 -1
  4. package/dist/cjs/index.js.map +1 -1
  5. package/dist/cjs/spi/adapters.d.ts +111 -0
  6. package/dist/cjs/spi/adapters.d.ts.map +1 -0
  7. package/dist/cjs/spi/adapters.js +285 -0
  8. package/dist/cjs/spi/adapters.js.map +1 -0
  9. package/dist/cjs/spi/examples/typeorm-example.d.ts +208 -0
  10. package/dist/cjs/spi/examples/typeorm-example.d.ts.map +1 -0
  11. package/dist/cjs/spi/examples/typeorm-example.js +274 -0
  12. package/dist/cjs/spi/examples/typeorm-example.js.map +1 -0
  13. package/dist/cjs/spi/index.d.ts +110 -0
  14. package/dist/cjs/spi/index.d.ts.map +1 -0
  15. package/dist/cjs/spi/index.js +143 -0
  16. package/dist/cjs/spi/index.js.map +1 -0
  17. package/dist/cjs/spi/storage.d.ts +109 -0
  18. package/dist/cjs/spi/storage.d.ts.map +1 -0
  19. package/dist/cjs/spi/storage.js +344 -0
  20. package/dist/cjs/spi/storage.js.map +1 -0
  21. package/dist/cjs/spi/types.d.ts +317 -0
  22. package/dist/cjs/spi/types.d.ts.map +1 -0
  23. package/dist/cjs/spi/types.js +6 -0
  24. package/dist/cjs/spi/types.js.map +1 -0
  25. package/dist/esm/index.d.ts +2 -0
  26. package/dist/esm/index.d.ts.map +1 -1
  27. package/dist/esm/index.js +8 -0
  28. package/dist/esm/index.js.map +1 -1
  29. package/dist/esm/spi/adapters.d.ts +111 -0
  30. package/dist/esm/spi/adapters.d.ts.map +1 -0
  31. package/dist/esm/spi/adapters.js +273 -0
  32. package/dist/esm/spi/adapters.js.map +1 -0
  33. package/dist/esm/spi/examples/typeorm-example.d.ts +208 -0
  34. package/dist/esm/spi/examples/typeorm-example.d.ts.map +1 -0
  35. package/dist/esm/spi/examples/typeorm-example.js +315 -0
  36. package/dist/esm/spi/examples/typeorm-example.js.map +1 -0
  37. package/dist/esm/spi/index.d.ts +110 -0
  38. package/dist/esm/spi/index.d.ts.map +1 -0
  39. package/dist/esm/spi/index.js +131 -0
  40. package/dist/esm/spi/index.js.map +1 -0
  41. package/dist/esm/spi/storage.d.ts +109 -0
  42. package/dist/esm/spi/storage.d.ts.map +1 -0
  43. package/dist/esm/spi/storage.js +301 -0
  44. package/dist/esm/spi/storage.js.map +1 -0
  45. package/dist/esm/spi/types.d.ts +317 -0
  46. package/dist/esm/spi/types.d.ts.map +1 -0
  47. package/dist/esm/spi/types.js +5 -0
  48. package/dist/esm/spi/types.js.map +1 -0
  49. package/package.json +1 -1
@@ -0,0 +1,317 @@
1
+ import type { Message, ToolRegistry, SkillManager } from '@cicctencent/agent-core';
2
+ /** 线程实体基础接口 */
3
+ export interface BaseThreadEntity {
4
+ id: number | string;
5
+ title?: string;
6
+ status?: 'active' | 'archived' | 'deleted';
7
+ createdAt?: Date | string | number;
8
+ updatedAt?: Date | string | number;
9
+ }
10
+ /** 消息实体基础接口 */
11
+ export interface BaseMessageEntity {
12
+ id: number | string;
13
+ threadId: number | string;
14
+ role: 'user' | 'assistant' | 'system';
15
+ content: string;
16
+ createdAt?: Date | string | number;
17
+ }
18
+ /** 工作空间实体基础接口 */
19
+ export interface BaseWorkspaceEntity {
20
+ id: number | string;
21
+ name: string;
22
+ createdAt?: Date | string | number;
23
+ }
24
+ /** Agent Profile 实体基础接口 */
25
+ export interface BaseAgentProfileEntity {
26
+ id: number | string;
27
+ name: string;
28
+ isDefault?: boolean;
29
+ }
30
+ /** Settings 实体基础接口 */
31
+ export interface BaseSettingsEntity {
32
+ [key: string]: unknown;
33
+ }
34
+ /**
35
+ * 键值存储抽象接口
36
+ * 应用层可实现:JsonFileStorage, TypeORMStorage, MongoDBStorage 等
37
+ */
38
+ export interface KVStorageAdapter {
39
+ /** 获取值 */
40
+ get<T>(key: string): Promise<T | null>;
41
+ /** 设置值 */
42
+ set<T>(key: string, value: T): Promise<void>;
43
+ /** 删除 */
44
+ delete(key: string): Promise<void>;
45
+ /** 检查存在 */
46
+ exists(key: string): Promise<boolean>;
47
+ /** 列出所有键 */
48
+ keys?(prefix?: string): Promise<string[]>;
49
+ }
50
+ /**
51
+ * 列表存储抽象接口
52
+ * 支持 CRUD 操作的实体列表
53
+ */
54
+ export interface ListStorageAdapter<T> {
55
+ /** 获取所有 */
56
+ list(): Promise<T[]>;
57
+ /** 根据 ID 获取 */
58
+ findById(id: number | string): Promise<T | null>;
59
+ /** 添加 */
60
+ add(entity: T): Promise<T>;
61
+ /** 更新 */
62
+ update(id: number | string, data: Partial<T>): Promise<T | null>;
63
+ /** 删除 */
64
+ remove(id: number | string): Promise<boolean>;
65
+ /** 批量操作 */
66
+ batch?(operations: Array<{
67
+ type: 'add' | 'update' | 'delete';
68
+ data: T | Partial<T>;
69
+ id?: number | string;
70
+ }>): Promise<void>;
71
+ }
72
+ /**
73
+ * 查询条件接口
74
+ */
75
+ export interface QueryOptions {
76
+ limit?: number;
77
+ offset?: number;
78
+ orderBy?: string;
79
+ orderDirection?: 'asc' | 'desc';
80
+ filter?: Record<string, unknown>;
81
+ }
82
+ /**
83
+ * Settings 存储提供者
84
+ * 应用层可替换底层存储(JSON 文件 / 数据库)
85
+ */
86
+ export interface SettingsProvider<TSettings extends BaseSettingsEntity = BaseSettingsEntity> {
87
+ /** 获取设置 */
88
+ getSettings(): TSettings;
89
+ /** 更新设置 */
90
+ updateSettings(updates: Partial<TSettings>): TSettings;
91
+ /** 重置设置 */
92
+ resetSettings?(): TSettings;
93
+ /** 获取底层存储(可选,用于高级场景) */
94
+ getStorage?(): KVStorageAdapter;
95
+ }
96
+ /**
97
+ * 对话存储提供者
98
+ * 应用层可替换底层存储,自定义实体结构
99
+ *
100
+ * 支持同步和异步两种模式:
101
+ * - JSON 文件存储:同步方法
102
+ * - 数据库存储(TypeORM):异步方法
103
+ */
104
+ export interface ChatStoreProvider<TThread extends BaseThreadEntity = BaseThreadEntity, TMessage extends BaseMessageEntity = BaseMessageEntity> {
105
+ /** 获取线程列表(支持异步) */
106
+ getThreads(workspaceId?: number | string): TThread[] | Promise<TThread[]>;
107
+ /** 获取单个线程(支持异步) */
108
+ getThread(id: number | string): TThread | undefined | Promise<TThread | undefined>;
109
+ /** 创建线程(支持异步) */
110
+ createThread(data: Partial<TThread>): TThread | Promise<TThread>;
111
+ /** 更新线程(支持异步) */
112
+ updateThread(id: number | string, data: Partial<TThread>): TThread | undefined | Promise<TThread | undefined>;
113
+ /** 删除线程(支持异步) */
114
+ deleteThread(id: number | string): boolean | Promise<boolean>;
115
+ /** 获取消息列表(支持异步) */
116
+ getMessages(threadId: number | string, options?: QueryOptions): {
117
+ items: TMessage[];
118
+ total: number;
119
+ hasMore: boolean;
120
+ } | Promise<{
121
+ items: TMessage[];
122
+ total: number;
123
+ hasMore: boolean;
124
+ }>;
125
+ /** 添加消息(支持异步) */
126
+ addMessage(data: Partial<TMessage> & {
127
+ threadId: number | string;
128
+ role: string;
129
+ content: string;
130
+ }): TMessage | Promise<TMessage>;
131
+ /** 更新消息(支持异步) */
132
+ updateMessage(threadId: number | string, id: number | string, data: Partial<TMessage>): TMessage | undefined | Promise<TMessage | undefined>;
133
+ /** 删除消息(支持异步) */
134
+ deleteMessage(threadId: number | string, id: number | string): boolean | Promise<boolean>;
135
+ /** 清空消息(支持异步) */
136
+ clearThreadMessages(threadId: number | string): void | Promise<void>;
137
+ /** 构建线程历史(用于 AgentEngine) */
138
+ buildThreadHistory(threadId: number | string, limit?: number): Message[] | Promise<Message[]>;
139
+ /** 搜索消息 */
140
+ searchMessages?(query: string, options?: {
141
+ workspaceId?: number | string;
142
+ limit?: number;
143
+ }): Array<TMessage & {
144
+ snippet: string;
145
+ }> | Promise<Array<TMessage & {
146
+ snippet: string;
147
+ }>>;
148
+ /** 导出线程 */
149
+ exportThread?(threadId: number | string, format: 'markdown' | 'json' | 'text'): string | Promise<string>;
150
+ /** 获取底层存储(可选) */
151
+ getStorage?(): {
152
+ threads: ListStorageAdapter<TThread>;
153
+ messages: (threadId: number | string) => ListStorageAdapter<TMessage>;
154
+ };
155
+ }
156
+ /**
157
+ * Agent Profile 存储提供者
158
+ */
159
+ export interface AgentProfileProvider<TProfile extends BaseAgentProfileEntity = BaseAgentProfileEntity> {
160
+ listProfiles(): TProfile[];
161
+ getProfile(id: number | string): TProfile | undefined;
162
+ getDefaultProfile(): TProfile | undefined;
163
+ createProfile(data: Partial<TProfile>): TProfile;
164
+ updateProfile(id: number | string, data: Partial<TProfile>): TProfile | undefined;
165
+ deleteProfile(id: number | string): boolean;
166
+ /** 扩展:设置默认 Profile */
167
+ setDefaultProfile?(id: number | string): void;
168
+ /** 获取底层存储 */
169
+ getStorage?(): ListStorageAdapter<TProfile>;
170
+ }
171
+ /**
172
+ * Prompt 构建者
173
+ * 应用层可自定义 Prompt 构建逻辑
174
+ */
175
+ export interface PromptBuilderProvider {
176
+ buildDefaultPrompt(profile: BaseAgentProfileEntity, tools: ToolRegistry, memory?: string, specialists?: BaseAgentProfileEntity[], specialistResourceMap?: Record<string, {
177
+ connectorNames: string[];
178
+ mcpServerNames: string[];
179
+ }>): string;
180
+ buildSpecialistPrompt(profile: BaseAgentProfileEntity, tools: ToolRegistry, skills: SkillManager, memory?: string): string;
181
+ resolveToolDisplayName(toolName: string, registry: ToolRegistry): string;
182
+ }
183
+ /**
184
+ * 模型配置解析者
185
+ * 应用层可自定义模型选择逻辑
186
+ */
187
+ export interface ModelConfigResolver {
188
+ resolve(modelConfigId?: string): {
189
+ id: string;
190
+ provider: string;
191
+ model: string;
192
+ apiKey?: string;
193
+ baseUrl?: string;
194
+ };
195
+ createProvider(modelConfigId?: string, modelOverride?: string): unknown;
196
+ }
197
+ /**
198
+ * SSE 响应适配器接口
199
+ * 框架无关,支持 Express / Koa / Fastify 等
200
+ */
201
+ export interface SSEResponseAdapter {
202
+ /** 写入数据 */
203
+ write(data: string): void;
204
+ /** 结束响应 */
205
+ end(): void;
206
+ /** 响应是否已结束 */
207
+ readonly writableEnded: boolean;
208
+ /** 设置响应头 */
209
+ setHeader(name: string, value: string | number): void;
210
+ /** 刷新响应头 */
211
+ flushHeaders?(): void;
212
+ /** 设置状态码(错误时使用) */
213
+ status?(code: number): void;
214
+ /** 返回 JSON(错误时使用) */
215
+ json?(data: unknown): void;
216
+ }
217
+ /**
218
+ * 请求上下文适配器
219
+ * 用于提取用户信息、权限等
220
+ */
221
+ export interface RequestContextAdapter {
222
+ /** 获取用户 ID */
223
+ getUserId?(): string | number | undefined;
224
+ /** 获取工作空间 ID */
225
+ getWorkspaceId?(): number | string | undefined;
226
+ /** 获取请求头 */
227
+ getHeader(name: string): string | undefined;
228
+ /** 检查权限 */
229
+ hasPermission?(permission: string): boolean;
230
+ /** 获取原始请求对象 */
231
+ getRawRequest?(): unknown;
232
+ /** 获取原始响应对象 */
233
+ getRawResponse?(): unknown;
234
+ }
235
+ /**
236
+ * AgentServer 工厂配置
237
+ * 所有 SPI 组件都可替换
238
+ */
239
+ export interface AgentServerSPIOptions<TSettings extends BaseSettingsEntity = BaseSettingsEntity, TThread extends BaseThreadEntity = BaseThreadEntity, TMessage extends BaseMessageEntity = BaseMessageEntity, TProfile extends BaseAgentProfileEntity = BaseAgentProfileEntity> {
240
+ settingsProvider?: SettingsProvider<TSettings>;
241
+ chatStoreProvider?: ChatStoreProvider<TThread, TMessage>;
242
+ agentProfileProvider?: AgentProfileProvider<TProfile>;
243
+ promptBuilder?: PromptBuilderProvider;
244
+ modelConfigResolver?: ModelConfigResolver;
245
+ /** SSE 响应适配器工厂 */
246
+ createSSEResponseAdapter?: (res: unknown) => SSEResponseAdapter;
247
+ /** 请求上下文适配器工厂 */
248
+ createRequestContextAdapter?: (req: unknown) => RequestContextAdapter;
249
+ /** 权限检查 */
250
+ permissionChecker?: (userId: string | number, action: string, resource: string) => Promise<boolean>;
251
+ /** 审计日志 */
252
+ auditLogger?: (event: string, data: Record<string, unknown>) => void | Promise<void>;
253
+ /** 自定义中间件 */
254
+ customMiddlewares?: Array<{
255
+ name: string;
256
+ priority?: number;
257
+ handler: (context: unknown) => Promise<void>;
258
+ }>;
259
+ }
260
+ export interface ThreadEntity extends BaseThreadEntity {
261
+ workspaceId?: number | string;
262
+ summary?: string;
263
+ messageCount: number;
264
+ agentProfileId?: number | string;
265
+ source?: 'local' | 'a2a';
266
+ automationRunId?: number | string;
267
+ }
268
+ export interface MessageEntity extends BaseMessageEntity {
269
+ type: 'text' | 'code' | 'tool_call' | 'reasoning' | 'image';
270
+ meta?: Record<string, unknown>;
271
+ updatedAt?: Date | string | number;
272
+ }
273
+ export interface WorkspaceEntity extends BaseWorkspaceEntity {
274
+ description?: string;
275
+ color?: string;
276
+ icon?: string;
277
+ status: 'active' | 'archived';
278
+ threadCount: number;
279
+ automationCount: number;
280
+ }
281
+ export interface AgentProfileEntity extends BaseAgentProfileEntity {
282
+ description?: string;
283
+ icon?: string;
284
+ color?: string;
285
+ basePrompt: string;
286
+ model?: string;
287
+ modelConfigId?: string;
288
+ maxIterations?: number;
289
+ maxMessages?: number;
290
+ toolTimeout?: number;
291
+ disabledTools?: string[];
292
+ mcpServers?: Array<number | string>;
293
+ selectedSkills?: string[];
294
+ alwaysInjectSkills?: string[];
295
+ connectorIds?: string[];
296
+ agentType?: 'default' | 'specialist' | 'remote';
297
+ remoteUrl?: string;
298
+ domain?: string;
299
+ }
300
+ export interface SettingsEntity extends BaseSettingsEntity {
301
+ theme?: 'dark' | 'light' | 'system';
302
+ language?: string;
303
+ apiKeys?: Record<string, string>;
304
+ notifications?: {
305
+ taskComplete?: boolean;
306
+ };
307
+ agentConfig?: Record<string, unknown>;
308
+ modelProviders?: Array<{
309
+ id: string;
310
+ provider: string;
311
+ model: string;
312
+ apiKey?: string;
313
+ baseUrl?: string;
314
+ }>;
315
+ defaultModelId?: string;
316
+ }
317
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/spi/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ // ============================================================
3
+ // SPI 类型定义 — 支持应用层自定制
4
+ // ============================================================
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/spi/types.ts"],"names":[],"mappings":";AAAA,+DAA+D;AAC/D,sBAAsB;AACtB,+DAA+D"}
@@ -53,4 +53,6 @@ export { getDataPath, getProjectDataPath, ensureDataDir, ensureProjectDataDir, e
53
53
  export { getSettings, updateSettings, resetSettings, getSettingsProvider } from './service/settings.service.js';
54
54
  export { getThreads, getThread, createThread, getMessages, addMessage, updateMessage, buildThreadHistory, getChatStoreProvider, } from './service/chat.service.js';
55
55
  export { listProfiles, getProfile, getDefaultProfile, createProfile, updateProfile, deleteProfile, getAgentProfileProvider, nextId, setIdCounter, getIdCounter, } from './service/agent-profile.service.js';
56
+ export { JsonFileKVStorage, JsonFileListStorage, InMemoryKVStorage, InMemoryListStorage, DatabaseListStorage, createJsonFileStorage, createInMemoryStorage, ExpressSSEAdapter, KoaSSEAdapter, FastifySSEAdapter, NativeHttpSSEAdapter, adaptSSE, ExpressRequestAdapter, KoaRequestAdapter, adaptRequest, CustomSSEAdapter, } from './spi/index.js';
57
+ export type { BaseThreadEntity, BaseMessageEntity, BaseWorkspaceEntity, BaseAgentProfileEntity, BaseSettingsEntity, KVStorageAdapter, ListStorageAdapter, QueryOptions, SettingsProvider as GenericSettingsProvider, ChatStoreProvider as GenericChatStoreProvider, AgentProfileProvider as GenericAgentProfileProvider, PromptBuilderProvider as GenericPromptBuilderProvider, ModelConfigResolver as GenericModelConfigResolver, SSEResponseAdapter, RequestContextAdapter, AgentServerSPIOptions, } from './spi/index.js';
56
58
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAG5D,YAAY,EACV,WAAW,EACX,kBAAkB,EAClB,WAAW,EACX,cAAc,EACd,WAAW,EACX,yBAAyB,EAEzB,gBAAgB,EAChB,iBAAiB,EACjB,qBAAqB,EACrB,mBAAmB,EACnB,kBAAkB,EAClB,oBAAoB,EACpB,wBAAwB,EACxB,oBAAoB,EAEpB,YAAY,EACZ,aAAa,EACb,eAAe,EACf,mBAAmB,EACnB,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EACf,mBAAmB,EACnB,kBAAkB,EAClB,SAAS,EAET,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,oBAAoB,GACrB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AACxE,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,2BAA2B,EAAE,MAAM,oCAAoC,CAAC;AACjF,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAG3F,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAClG,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC5E,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7E,YAAY,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAG7D,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACpF,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,YAAY,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAG5D,OAAO,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACxF,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAGvD,OAAO,EAAE,2BAA2B,EAAE,MAAM,sCAAsC,CAAC;AACnF,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAC/F,YAAY,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAC3E,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAC/F,YAAY,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACxF,OAAO,EACL,uBAAuB,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,uBAAuB,EAChG,qBAAqB,GACtB,MAAM,iCAAiC,CAAC;AACzC,YAAY,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAC7F,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC7F,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAG5E,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAC/E,YAAY,EAAE,QAAQ,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAGrG,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,gBAAgB,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAGnH,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC5D,YAAY,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EACL,kBAAkB,EAAE,aAAa,EACjC,cAAc,EAAE,iBAAiB,EACjC,eAAe,EAAE,kBAAkB,EACnC,kBAAkB,EAAE,qBAAqB,GAC1C,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAAE,YAAY,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAC3G,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACtF,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAGvE,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,YAAY,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE,YAAY,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AACxI,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,YAAY,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,YAAY,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAG3F,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,YAAY,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAC5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAGhE,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAC5G,OAAO,EACL,aAAa,EAAE,YAAY,EAAE,sBAAsB,EAAE,eAAe,EAAE,eAAe,EACrF,eAAe,EAAE,kBAAkB,EAAE,sBAAsB,GAC5D,MAAM,gCAAgC,CAAC;AAGxC,YAAY,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAGrG,OAAO,EACL,WAAW,EACX,kBAAkB,EAClB,aAAa,EACb,oBAAoB,EACpB,aAAa,EACb,UAAU,EACV,UAAU,EACV,iBAAiB,GAClB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAChH,OAAO,EACL,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,aAAa,EAAE,kBAAkB,EAC/F,oBAAoB,GACrB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,YAAY,EAAE,UAAU,EAAE,iBAAiB,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EACxF,uBAAuB,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,GAC5D,MAAM,oCAAoC,CAAC;AAK5C,OAAO,EAEL,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,qBAAqB,EAErB,iBAAiB,EACjB,aAAa,EACb,iBAAiB,EACjB,oBAAoB,EACpB,QAAQ,EACR,qBAAqB,EACrB,iBAAiB,EACjB,YAAY,EACZ,gBAAgB,GACjB,MAAM,gBAAgB,CAAC;AAExB,YAAY,EAEV,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,EACnB,sBAAsB,EACtB,kBAAkB,EAElB,gBAAgB,EAChB,kBAAkB,EAClB,YAAY,EAEZ,gBAAgB,IAAI,uBAAuB,EAC3C,iBAAiB,IAAI,wBAAwB,EAC7C,oBAAoB,IAAI,2BAA2B,EACnD,qBAAqB,IAAI,4BAA4B,EACrD,mBAAmB,IAAI,0BAA0B,EAEjD,kBAAkB,EAClB,qBAAqB,EACrB,qBAAqB,GACtB,MAAM,gBAAgB,CAAC"}
package/dist/esm/index.js CHANGED
@@ -54,4 +54,12 @@ export { getDataPath, getProjectDataPath, ensureDataDir, ensureProjectDataDir, e
54
54
  export { getSettings, updateSettings, resetSettings, getSettingsProvider } from "./service/settings.service.js";
55
55
  export { getThreads, getThread, createThread, getMessages, addMessage, updateMessage, buildThreadHistory, getChatStoreProvider, } from "./service/chat.service.js";
56
56
  export { listProfiles, getProfile, getDefaultProfile, createProfile, updateProfile, deleteProfile, getAgentProfileProvider, nextId, setIdCounter, getIdCounter, } from "./service/agent-profile.service.js";
57
+ // ============================================================
58
+ // SPI 模块 — 应用层可定制存储、框架适配等
59
+ // ============================================================
60
+ export {
61
+ // ---- 存储适配器 ----
62
+ JsonFileKVStorage, JsonFileListStorage, InMemoryKVStorage, InMemoryListStorage, DatabaseListStorage, createJsonFileStorage, createInMemoryStorage,
63
+ // ---- 框架适配器 ----
64
+ ExpressSSEAdapter, KoaSSEAdapter, FastifySSEAdapter, NativeHttpSSEAdapter, adaptSSE, ExpressRequestAdapter, KoaRequestAdapter, adaptRequest, CustomSSEAdapter, } from "./spi/index.js";
57
65
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,111 @@
1
+ import type { SSEResponseAdapter, RequestContextAdapter } from './types.js';
2
+ /**
3
+ * Express SSE 适配器
4
+ */
5
+ export declare class ExpressSSEAdapter implements SSEResponseAdapter {
6
+ private res;
7
+ constructor(res: any);
8
+ write(data: string): void;
9
+ end(): void;
10
+ get writableEnded(): boolean;
11
+ setHeader(name: string, value: string | number): void;
12
+ flushHeaders(): void;
13
+ status(code: number): void;
14
+ json(data: unknown): void;
15
+ }
16
+ /**
17
+ * Koa/MidwayJS SSE 适配器
18
+ */
19
+ export declare class KoaSSEAdapter implements SSEResponseAdapter {
20
+ private ctx;
21
+ constructor(ctx: any);
22
+ write(data: string): void;
23
+ end(): void;
24
+ get writableEnded(): boolean;
25
+ setHeader(name: string, value: string | number): void;
26
+ flushHeaders(): void;
27
+ status(code: number): void;
28
+ json(data: unknown): void;
29
+ }
30
+ /**
31
+ * Fastify SSE 适配器
32
+ */
33
+ export declare class FastifySSEAdapter implements SSEResponseAdapter {
34
+ private reply;
35
+ constructor(reply: any);
36
+ write(data: string): void;
37
+ end(): void;
38
+ get writableEnded(): boolean;
39
+ setHeader(name: string, value: string | number): void;
40
+ flushHeaders(): void;
41
+ status(code: number): void;
42
+ json(data: unknown): void;
43
+ }
44
+ /**
45
+ * 原生 HTTP SSE 适配器
46
+ */
47
+ export declare class NativeHttpSSEAdapter implements SSEResponseAdapter {
48
+ private res;
49
+ constructor(res: any);
50
+ write(data: string): void;
51
+ end(): void;
52
+ get writableEnded(): boolean;
53
+ setHeader(name: string, value: string | number): void;
54
+ flushHeaders(): void;
55
+ status(code: number): void;
56
+ json(data: unknown): void;
57
+ }
58
+ /**
59
+ * 自动检测框架类型并创建适配器
60
+ */
61
+ export declare function adaptSSE(res: unknown): SSEResponseAdapter;
62
+ /**
63
+ * Express 请求上下文适配器
64
+ */
65
+ export declare class ExpressRequestAdapter implements RequestContextAdapter {
66
+ private req;
67
+ constructor(req: any);
68
+ getUserId(): string | number | undefined;
69
+ getWorkspaceId(): number | string | undefined;
70
+ getHeader(name: string): string | undefined;
71
+ hasPermission(permission: string): boolean;
72
+ getRawRequest(): unknown;
73
+ getRawResponse(): unknown;
74
+ }
75
+ /**
76
+ * Koa/MidwayJS 请求上下文适配器
77
+ */
78
+ export declare class KoaRequestAdapter implements RequestContextAdapter {
79
+ private ctx;
80
+ constructor(ctx: any);
81
+ getUserId(): string | number | undefined;
82
+ getWorkspaceId(): number | string | undefined;
83
+ getHeader(name: string): string | undefined;
84
+ hasPermission(permission: string): boolean;
85
+ getRawRequest(): unknown;
86
+ getRawResponse(): unknown;
87
+ }
88
+ /**
89
+ * 自动检测框架类型并创建请求适配器
90
+ */
91
+ export declare function adaptRequest(req: unknown): RequestContextAdapter;
92
+ /**
93
+ * 自定义 SSE 适配器示例
94
+ * 应用层可参考此实现创建自己的适配器
95
+ */
96
+ export declare class CustomSSEAdapter implements SSEResponseAdapter {
97
+ private onWrite;
98
+ private onEnd;
99
+ private onFlush?;
100
+ private _writableEnded;
101
+ private headers;
102
+ constructor(onWrite: (data: string) => void, onEnd: () => void, onFlush?: () => void);
103
+ write(data: string): void;
104
+ end(): void;
105
+ get writableEnded(): boolean;
106
+ setHeader(name: string, value: string | number): void;
107
+ flushHeaders(): void;
108
+ /** 获取已设置的响应头 */
109
+ getHeaders(): Record<string, string>;
110
+ }
111
+ //# sourceMappingURL=adapters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapters.d.ts","sourceRoot":"","sources":["../../../src/spi/adapters.ts"],"names":[],"mappings":"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"}