persona-core-opencode 1.0.2 → 1.1.0

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/README.md CHANGED
@@ -11,6 +11,7 @@ PersonaCore 是一个 AI 人格/角色框架,允许你定义具有特定能力
11
11
  - **多种执行类型**:支持 API 调用、文件读写、HTTP 请求、LLM 调用等
12
12
  - **会话管理**:自动管理会话状态,支持多轮对话
13
13
  - **工具调用追踪**:记录所有工具调用历史
14
+ - **流式输出**:支持实时回调获取 AI 响应和工具调用过程
14
15
 
15
16
  ## 安装
16
17
 
@@ -245,6 +246,57 @@ interface ToolCallRecord {
245
246
  }
246
247
  ```
247
248
 
249
+ ##### `sendMessageStreaming(personaId: string, message: string, options: SendMessageStreamingOptions): Promise<SessionExecutionResult>`
250
+
251
+ 向 Persona 发送消息并通过回调实时获取输出(流式版本)。
252
+
253
+ ```typescript
254
+ const result = await client.sendMessageStreaming(personaId, 'Hello!', {
255
+ sessionId: 'existing-session-id', // 可选:继续已有会话
256
+ timeoutMs: 60000, // 可选:超时时间
257
+ callbacks: {
258
+ // 每行 JSON 输出的回调(line: 原始行,parsed: 解析后的对象或 null)
259
+ onLine: (line, parsed) => {
260
+ if (parsed?.type === 'text') {
261
+ process.stdout.write(parsed.part?.text || '');
262
+ } else if (parsed?.type === 'tool_use') {
263
+ console.log('Tool called:', parsed.part?.tool);
264
+ }
265
+ },
266
+ // 可选:标准错误输出回调
267
+ onStderr: (data) => console.error('stderr:', data),
268
+ // 可选:进程退出回调
269
+ onExit: (code) => console.log('Exit code:', code),
270
+ },
271
+ });
272
+ ```
273
+
274
+ **回调类型定义:**
275
+
276
+ ```typescript
277
+ // 流式输出回调函数类型
278
+ type StreamLineCallback = (
279
+ line: string, // 原始 JSON 行内容
280
+ parsed: Record<string, unknown> | null // 解析后的对象,失败时为 null
281
+ ) => void;
282
+
283
+ interface StreamCallbacks {
284
+ onLine?: StreamLineCallback; // 每行输出回调
285
+ onStderr?: (data: string) => void; // stderr 回调
286
+ onExit?: (code: number | null) => void; // 进程退出回调
287
+ }
288
+ ```
289
+
290
+ **opencode 输出的事件类型:**
291
+
292
+ | 事件类型 | 说明 | 包含内容 |
293
+ |---------|------|---------|
294
+ | `step_start` | 步骤开始 | sessionID, timestamp |
295
+ | `tool_use` | 工具调用完成 | tool, input, output, status |
296
+ | `text` | 文本输出 | text content |
297
+ | `step_finish` | 步骤结束 | cost, tokens (input/output/reasoning) |
298
+ | `error` | 错误 | error name, message |
299
+
248
300
  ##### `cleanup(): Promise<void>`
249
301
 
250
302
  清理所有资源(关闭 session、删除工作空间)。
@@ -4,7 +4,7 @@
4
4
  */
5
5
  import { PersonaRegistry, RegisteredPersona } from '../persona/personaRegistry.js';
6
6
  import { SessionManager } from '../session/sessionManager.js';
7
- import { SessionExecutionResult } from '../session/sessionHandle.js';
7
+ import { SessionExecutionResult, StreamCallbacks } from '../session/sessionHandle.js';
8
8
  import { Persona, CreatePersonaInput } from '../types/persona.js';
9
9
  /**
10
10
  * PersonaCoreClient 配置
@@ -26,6 +26,13 @@ export interface SendMessageOptions {
26
26
  /** 超时时间(毫秒) */
27
27
  timeoutMs?: number;
28
28
  }
29
+ /**
30
+ * 流式发送消息的选项
31
+ */
32
+ export interface SendMessageStreamingOptions extends SendMessageOptions {
33
+ /** 流式回调配置 */
34
+ callbacks: StreamCallbacks;
35
+ }
29
36
  /**
30
37
  * PersonaCoreClient
31
38
  * 主要的客户端 API,提供 Persona 管理和消息发送功能
@@ -74,6 +81,35 @@ export declare class PersonaCoreClient {
74
81
  * @returns 执行结果,包含 sessionId、response、toolCalls 等
75
82
  */
76
83
  sendMessage(personaId: string, message: string, options?: SendMessageOptions): Promise<SessionExecutionResult>;
84
+ /**
85
+ * 给 Persona 发送消息(流式版本)
86
+ * 实时通过回调传递 opencode CLI 的每行输出,外部可自行决定如何解析
87
+ *
88
+ * @param personaId Persona ID
89
+ * @param message 消息内容
90
+ * @param options 选项:callbacks(必需)、sessionId(可选)、timeoutMs(超时时间)
91
+ * @returns 执行结果,包含 sessionId、response、toolCalls 等
92
+ *
93
+ * @example
94
+ * ```typescript
95
+ * const result = await client.sendMessageStreaming(personaId, 'Hello', {
96
+ * callbacks: {
97
+ * onLine: (line, parsed) => {
98
+ * // line: 原始 JSON 行
99
+ * // parsed: 解析后的对象,解析失败时为 null
100
+ * if (parsed?.type === 'text') {
101
+ * console.log('Text:', parsed.part?.text);
102
+ * } else if (parsed?.type === 'tool_use') {
103
+ * console.log('Tool:', parsed.part?.tool);
104
+ * }
105
+ * },
106
+ * onStderr: (data) => console.error('stderr:', data),
107
+ * onExit: (code) => console.log('Process exited with code:', code),
108
+ * },
109
+ * });
110
+ * ```
111
+ */
112
+ sendMessageStreaming(personaId: string, message: string, options: SendMessageStreamingOptions): Promise<SessionExecutionResult>;
77
113
  /**
78
114
  * @deprecated 使用 createPersona 代替
79
115
  */
@@ -1 +1 @@
1
- {"version":3,"file":"personaCoreClient.d.ts","sourceRoot":"","sources":["../../src/client/personaCoreClient.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AACnF,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAiB,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACpF,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAElE;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,cAAc;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,2CAA2C;IAC3C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB;IACjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,mCAAmC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,cAAc,CAAiB;IACvC,+BAA+B;IAC/B,OAAO,CAAC,cAAc,CAAyC;gBAEnD,MAAM,GAAE,uBAA4B;IAWhD;;OAEG;WACU,MAAM,CAAC,MAAM,GAAE,uBAA4B,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAQrF;;;;OAIG;IACG,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC;IAI/D;;;OAGG;IACG,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAWrD;;;OAGG;IACH,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS;IAI5D;;;OAGG;IACH,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAQtC;;;;;;;OAOG;IACG,WAAW,CACf,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,kBAAuB,GAC/B,OAAO,CAAC,sBAAsB,CAAC;IA+ClC;;OAEG;IACG,eAAe,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC;IAIjE;;OAEG;IACG,uBAAuB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IAIhE;;OAEG;IACH,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS;IAQtE;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAM9B;;OAEG;IACH,kBAAkB,IAAI,eAAe;IAIrC;;OAEG;IACH,iBAAiB,IAAI,cAAc;CAGpC"}
1
+ {"version":3,"file":"personaCoreClient.d.ts","sourceRoot":"","sources":["../../src/client/personaCoreClient.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AACnF,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAiB,sBAAsB,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AACrG,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAElE;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,cAAc;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,2CAA2C;IAC3C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB;IACjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,mCAAmC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,2BAA4B,SAAQ,kBAAkB;IACrE,aAAa;IACb,SAAS,EAAE,eAAe,CAAC;CAC5B;AAED;;;;;;;GAOG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,cAAc,CAAiB;IACvC,+BAA+B;IAC/B,OAAO,CAAC,cAAc,CAAyC;gBAEnD,MAAM,GAAE,uBAA4B;IAWhD;;OAEG;WACU,MAAM,CAAC,MAAM,GAAE,uBAA4B,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAQrF;;;;OAIG;IACG,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC;IAI/D;;;OAGG;IACG,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAWrD;;;OAGG;IACH,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS;IAI5D;;;OAGG;IACH,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAQtC;;;;;;;OAOG;IACG,WAAW,CACf,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,kBAAuB,GAC/B,OAAO,CAAC,sBAAsB,CAAC;IA2ClC;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACG,oBAAoB,CACxB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,2BAA2B,GACnC,OAAO,CAAC,sBAAsB,CAAC;IAgDlC;;OAEG;IACG,eAAe,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC;IAIjE;;OAEG;IACG,uBAAuB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IAIhE;;OAEG;IACH,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS;IAQtE;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAM9B;;OAEG;IACH,kBAAkB,IAAI,eAAe;IAIrC;;OAEG;IACH,iBAAiB,IAAI,cAAc;CAGpC"}
@@ -118,6 +118,69 @@ export class PersonaCoreClient {
118
118
  }
119
119
  return result;
120
120
  }
121
+ /**
122
+ * 给 Persona 发送消息(流式版本)
123
+ * 实时通过回调传递 opencode CLI 的每行输出,外部可自行决定如何解析
124
+ *
125
+ * @param personaId Persona ID
126
+ * @param message 消息内容
127
+ * @param options 选项:callbacks(必需)、sessionId(可选)、timeoutMs(超时时间)
128
+ * @returns 执行结果,包含 sessionId、response、toolCalls 等
129
+ *
130
+ * @example
131
+ * ```typescript
132
+ * const result = await client.sendMessageStreaming(personaId, 'Hello', {
133
+ * callbacks: {
134
+ * onLine: (line, parsed) => {
135
+ * // line: 原始 JSON 行
136
+ * // parsed: 解析后的对象,解析失败时为 null
137
+ * if (parsed?.type === 'text') {
138
+ * console.log('Text:', parsed.part?.text);
139
+ * } else if (parsed?.type === 'tool_use') {
140
+ * console.log('Tool:', parsed.part?.tool);
141
+ * }
142
+ * },
143
+ * onStderr: (data) => console.error('stderr:', data),
144
+ * onExit: (code) => console.log('Process exited with code:', code),
145
+ * },
146
+ * });
147
+ * ```
148
+ */
149
+ async sendMessageStreaming(personaId, message, options) {
150
+ const { sessionId, timeoutMs, callbacks } = options;
151
+ // 验证 Persona 已存在
152
+ if (!this.personaRegistry.hasPersona(personaId)) {
153
+ throw new Error(`Persona not found: ${personaId}. Please create the persona first.`);
154
+ }
155
+ // 获取或创建 session
156
+ let sessionHandle;
157
+ if (sessionId) {
158
+ // 尝试从缓存获取 session
159
+ const sessionKey = `${personaId}:${sessionId}`;
160
+ const cached = this.activeSessions.get(sessionKey);
161
+ if (cached) {
162
+ sessionHandle = cached;
163
+ }
164
+ else {
165
+ // session 不在缓存中,创建新的 handle 并设置已有的 sessionId
166
+ sessionHandle = await this.sessionManager.createSession(personaId);
167
+ sessionHandle.setSessionId(sessionId);
168
+ this.activeSessions.set(sessionKey, sessionHandle);
169
+ }
170
+ }
171
+ else {
172
+ // 创建新 session
173
+ sessionHandle = await this.sessionManager.createSession(personaId);
174
+ }
175
+ // 执行消息(流式)
176
+ const result = await this.sessionManager.executeThinkingStreaming(sessionHandle, message, callbacks, { timeoutMs });
177
+ // 如果是新创建的 session,保存到缓存
178
+ if (!sessionId && result.sessionId) {
179
+ const sessionKey = `${personaId}:${result.sessionId}`;
180
+ this.activeSessions.set(sessionKey, sessionHandle);
181
+ }
182
+ return result;
183
+ }
121
184
  // ============================================================
122
185
  // 兼容旧 API(标记为 deprecated,后续版本移除)
123
186
  // ============================================================
@@ -1 +1 @@
1
- {"version":3,"file":"personaCoreClient.js","sourceRoot":"","sources":["../../src/client/personaCoreClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"personaCoreClient.js","sourceRoot":"","sources":["../../src/client/personaCoreClient.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -8,11 +8,11 @@
8
8
  * - Persona: 人格/角色定义,包含 SystemPrompt 和可用的 ActionTypes
9
9
  * - ActionNodeType: 动作节点类型定义,如 API 调用、文件读写等
10
10
  */
11
- export { PersonaCoreClient, PersonaCoreClientConfig, SendMessageOptions, } from './client/personaCoreClient.js';
11
+ export { PersonaCoreClient, PersonaCoreClientConfig, SendMessageOptions, SendMessageStreamingOptions, } from './client/personaCoreClient.js';
12
12
  export { Persona, CreatePersonaInput, findActionType, validatePersonaActionTypes, } from './types/persona.js';
13
13
  export { ActionNodeType, ThinkingNodeType, BranchNodeType, NodeType, } from './types/nodes.js';
14
14
  export { PersonaId, NodeId, } from './types/common.js';
15
- export { SessionExecutionResult, ToolCallRecord, } from './session/sessionHandle.js';
15
+ export { SessionExecutionResult, ToolCallRecord, StreamCallbacks, StreamLineCallback, } from './session/sessionHandle.js';
16
16
  export { PersonaRegistry, RegisteredPersona } from './persona/personaRegistry.js';
17
17
  export { SessionManager } from './session/sessionManager.js';
18
18
  export { generateToolFile, getToolFileName } from './generators/toolFileGenerator.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAKH,OAAO,EACL,iBAAiB,EACjB,uBAAuB,EACvB,kBAAkB,GACnB,MAAM,+BAA+B,CAAC;AAOvC,OAAO,EACL,OAAO,EACP,kBAAkB,EAClB,cAAc,EACd,0BAA0B,GAC3B,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,cAAc,EACd,QAAQ,GACT,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EACL,SAAS,EACT,MAAM,GACP,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EACL,sBAAsB,EACtB,cAAc,GACf,MAAM,4BAA4B,CAAC;AAKpC,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAClF,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAKH,OAAO,EACL,iBAAiB,EACjB,uBAAuB,EACvB,kBAAkB,EAClB,2BAA2B,GAC5B,MAAM,+BAA+B,CAAC;AAOvC,OAAO,EACL,OAAO,EACP,kBAAkB,EAClB,cAAc,EACd,0BAA0B,GAC3B,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,cAAc,EACd,QAAQ,GACT,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EACL,SAAS,EACT,MAAM,GACP,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EACL,sBAAsB,EACtB,cAAc,EACd,eAAe,EACf,kBAAkB,GACnB,MAAM,4BAA4B,CAAC;AAKpC,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAClF,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,+DAA+D;AAC/D,yBAAyB;AACzB,+DAA+D;AAC/D,OAAO,EACL,iBAAiB,GAGlB,MAAM,+BAA+B,CAAC;AAEvC,+DAA+D;AAC/D,OAAO;AACP,+DAA+D;AAE/D,eAAe;AACf,OAAO,EAGL,cAAc,EACd,0BAA0B,GAC3B,MAAM,oBAAoB,CAAC;AAsB5B,+DAA+D;AAC/D,6BAA6B;AAC7B,+DAA+D;AAC/D,OAAO,EAAE,eAAe,EAAqB,MAAM,8BAA8B,CAAC;AAClF,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,+DAA+D;AAC/D,yBAAyB;AACzB,+DAA+D;AAC/D,OAAO,EACL,iBAAiB,GAIlB,MAAM,+BAA+B,CAAC;AAEvC,+DAA+D;AAC/D,OAAO;AACP,+DAA+D;AAE/D,eAAe;AACf,OAAO,EAGL,cAAc,EACd,0BAA0B,GAC3B,MAAM,oBAAoB,CAAC;AAwB5B,+DAA+D;AAC/D,6BAA6B;AAC7B,+DAA+D;AAC/D,OAAO,EAAE,eAAe,EAAqB,MAAM,8BAA8B,CAAC;AAClF,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"personaRegistry.d.ts","sourceRoot":"","sources":["../../src/persona/personaRegistry.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAGlE;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,YAAY;IACZ,EAAE,EAAE,MAAM,CAAC;IACX,oBAAoB;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,0BAA0B;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW;IACX,SAAS,EAAE,IAAI,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,cAAc;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,kBAAkB,CAA6C;gBAE3D,MAAM,GAAE,qBAA0B;IAI9C;;;;;OAKG;IACG,eAAe,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC;IAgEjE;;OAEG;IACG,uBAAuB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IAUhE;;OAEG;IACH,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS;IAI5D;;OAEG;IACH,cAAc,IAAI,iBAAiB,EAAE;IAIrC;;OAEG;IACH,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAItC;;OAEG;IACG,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAiB5D;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAM9B;;OAEG;IACH,gBAAgB,IAAI,MAAM;IAI1B;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;CAK1B"}
1
+ {"version":3,"file":"personaRegistry.d.ts","sourceRoot":"","sources":["../../src/persona/personaRegistry.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAGlE;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,YAAY;IACZ,EAAE,EAAE,MAAM,CAAC;IACX,oBAAoB;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,0BAA0B;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW;IACX,SAAS,EAAE,IAAI,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,cAAc;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAkBD;;GAEG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,kBAAkB,CAA6C;gBAE3D,MAAM,GAAE,qBAA0B;IAI9C;;;;;OAKG;IACG,eAAe,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC;IAmEjE;;OAEG;IACG,uBAAuB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IAUhE;;OAEG;IACH,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS;IAI5D;;OAEG;IACH,cAAc,IAAI,iBAAiB,EAAE;IAIrC;;OAEG;IACH,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAItC;;OAEG;IACG,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAiB5D;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAM9B;;OAEG;IACH,gBAAgB,IAAI,MAAM;IAI1B;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;CAK1B"}
@@ -6,6 +6,21 @@ import * as fs from 'fs/promises';
6
6
  import * as path from 'path';
7
7
  import { v4 as uuidv4 } from 'uuid';
8
8
  import { generateToolFile, getToolFileName } from '../generators/toolFileGenerator.js';
9
+ /**
10
+ * 将字符串转换为文件系统安全的路径名
11
+ * 替换所有不安全的字符为 '-'
12
+ *
13
+ * 不安全字符包括:
14
+ * - Windows: \ / : * ? " < > |
15
+ * - 通用:空格、控制字符等
16
+ */
17
+ function sanitizeForPath(str) {
18
+ return str
19
+ .replace(/[\\/:*?"<>|]/g, '-') // Windows 不允许的字符
20
+ .replace(/\s+/g, '-') // 空格替换为 -
21
+ .replace(/-+/g, '-') // 多个连续 - 合并为一个
22
+ .replace(/^-|-$/g, ''); // 去掉首尾的 -
23
+ }
9
24
  /**
10
25
  * Persona 注册器
11
26
  */
@@ -37,7 +52,9 @@ export class PersonaRegistry {
37
52
  createdAt: now,
38
53
  updatedAt: now,
39
54
  };
40
- const workspacePath = path.resolve(this.workspaceRoot, personaId);
55
+ // 使用安全的路径名创建工作目录(id 可能包含 : 等文件系统不允许的字符)
56
+ const safePathName = sanitizeForPath(personaId);
57
+ const workspacePath = path.resolve(this.workspaceRoot, safePathName);
41
58
  const toolsPath = path.join(workspacePath, '.opencode', 'tools');
42
59
  // 创建目录结构
43
60
  await fs.mkdir(toolsPath, { recursive: true });
@@ -1 +1 @@
1
- {"version":3,"file":"personaRegistry.js","sourceRoot":"","sources":["../../src/persona/personaRegistry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"personaRegistry.js","sourceRoot":"","sources":["../../src/persona/personaRegistry.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,32 @@ export interface ToolCallRecord {
11
11
  result?: string;
12
12
  error?: string;
13
13
  }
14
+ /**
15
+ * 流式输出回调函数类型
16
+ * 每次从 opencode CLI 接收到一行 JSON 输出时调用
17
+ *
18
+ * @param line 原始 JSON 行内容(未解析)
19
+ * @param parsed 解析后的 JSON 对象(如果解析失败则为 null)
20
+ */
21
+ export type StreamLineCallback = (line: string, parsed: Record<string, unknown> | null) => void;
22
+ /**
23
+ * 流式输出回调配置
24
+ */
25
+ export interface StreamCallbacks {
26
+ /**
27
+ * 每行 JSON 输出的回调
28
+ * 外部可以自行决定如何解析和处理每行内容
29
+ */
30
+ onLine?: StreamLineCallback;
31
+ /**
32
+ * 标准错误输出回调(可选)
33
+ */
34
+ onStderr?: (data: string) => void;
35
+ /**
36
+ * 进程退出回调(可选)
37
+ */
38
+ onExit?: (code: number | null) => void;
39
+ }
14
40
  /**
15
41
  * Session 执行结果
16
42
  */
@@ -1 +1 @@
1
- {"version":3,"file":"sessionHandle.d.ts","sourceRoot":"","sources":["../../src/session/sessionHandle.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,iBAAiB;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW;IACX,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa;IACb,SAAS,EAAE,cAAc,EAAE,CAAC;IAC5B,WAAW;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qDAAqD;IACrD,MAAM,CAAC,EAAE;QACP,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;CACH;AAED;;;GAGG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,UAAU,CAAgB;IAClC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,SAAS,CAAwB;IACzC,OAAO,CAAC,YAAY,CAAC,CAAS;gBAG5B,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,MAAM;IAQtB;;OAEG;IACH,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED;;OAEG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAIrC;;OAEG;IACH,YAAY,IAAI,OAAO;IAIvB;;OAEG;IACH,eAAe,IAAI,MAAM;IAIzB;;OAEG;IACH,YAAY,IAAI,cAAc,EAAE;IAIhC;;OAEG;IACH,WAAW,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI;IAIzC;;OAEG;IACH,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAIvC;;OAEG;IACH,eAAe,IAAI,MAAM,GAAG,SAAS;IAIrC;;OAEG;IACH,SAAS,IAAI,sBAAsB;CAQpC"}
1
+ {"version":3,"file":"sessionHandle.d.ts","sourceRoot":"","sources":["../../src/session/sessionHandle.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;GAMG;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,KAAK,IAAI,CAAC;AAEhG;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;;OAGG;IACH,MAAM,CAAC,EAAE,kBAAkB,CAAC;IAE5B;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAElC;;OAEG;IACH,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;CACxC;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,iBAAiB;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW;IACX,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa;IACb,SAAS,EAAE,cAAc,EAAE,CAAC;IAC5B,WAAW;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qDAAqD;IACrD,MAAM,CAAC,EAAE;QACP,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;CACH;AAED;;;GAGG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,UAAU,CAAgB;IAClC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,SAAS,CAAwB;IACzC,OAAO,CAAC,YAAY,CAAC,CAAS;gBAG5B,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,MAAM;IAQtB;;OAEG;IACH,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED;;OAEG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAIrC;;OAEG;IACH,YAAY,IAAI,OAAO;IAIvB;;OAEG;IACH,eAAe,IAAI,MAAM;IAIzB;;OAEG;IACH,YAAY,IAAI,cAAc,EAAE;IAIhC;;OAEG;IACH,WAAW,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI;IAIzC;;OAEG;IACH,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAIvC;;OAEG;IACH,eAAe,IAAI,MAAM,GAAG,SAAS;IAIrC;;OAEG;IACH,SAAS,IAAI,sBAAsB;CAQpC"}
@@ -1 +1 @@
1
- {"version":3,"file":"sessionHandle.js","sourceRoot":"","sources":["../../src/session/sessionHandle.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAgCH;;;GAGG;AACH,MAAM,OAAO,aAAa;IAChB,UAAU,CAAgB;IACzB,SAAS,CAAS;IAClB,aAAa,CAAS;IACvB,YAAY,CAAS;IACrB,SAAS,GAAqB,EAAE,CAAC;IACjC,YAAY,CAAU;IAE9B,YACE,SAAwB,EACxB,SAAiB,EACjB,aAAqB,EACrB,YAAoB;QAEpB,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,SAAiB;QAC5B,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,YAAY;QACV,OAAO,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,eAAe;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,YAAY;QACV,OAAO,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,MAAsB;QAChC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,eAAe,CAAC,QAAgB;QAC9B,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,eAAe;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,SAAS;QACP,OAAO;YACL,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE,IAAI,CAAC,YAAY;YAC3B,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"sessionHandle.js","sourceRoot":"","sources":["../../src/session/sessionHandle.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA8DH;;;GAGG;AACH,MAAM,OAAO,aAAa;IAChB,UAAU,CAAgB;IACzB,SAAS,CAAS;IAClB,aAAa,CAAS;IACvB,YAAY,CAAS;IACrB,SAAS,GAAqB,EAAE,CAAC;IACjC,YAAY,CAAU;IAE9B,YACE,SAAwB,EACxB,SAAiB,EACjB,aAAqB,EACrB,YAAoB;QAEpB,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,SAAiB;QAC5B,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,YAAY;QACV,OAAO,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,eAAe;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,YAAY;QACV,OAAO,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,MAAsB;QAChC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,eAAe,CAAC,QAAgB;QAC9B,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,eAAe;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,SAAS;QACP,OAAO;YACL,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE,IAAI,CAAC,YAAY;YAC3B,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC;IACJ,CAAC;CACF"}
@@ -3,7 +3,7 @@
3
3
  * 使用 opencode CLI (run 模式) 执行任务
4
4
  */
5
5
  import { PersonaRegistry } from '../persona/personaRegistry.js';
6
- import { SessionHandle, SessionExecutionResult } from './sessionHandle.js';
6
+ import { SessionHandle, SessionExecutionResult, StreamCallbacks } from './sessionHandle.js';
7
7
  /**
8
8
  * SessionManager 配置
9
9
  */
@@ -41,6 +41,22 @@ export declare class SessionManager {
41
41
  * 使用 opencode run CLI 模式执行
42
42
  */
43
43
  executeThinking(sessionHandle: SessionHandle, thinkingPrompt: string, options?: ExecuteOptions): Promise<SessionExecutionResult>;
44
+ /**
45
+ * 发送思考提示并执行(流式版本)
46
+ * 使用 opencode run CLI 模式执行,实时通过回调传递每行输出
47
+ *
48
+ * @param sessionHandle Session 句柄
49
+ * @param thinkingPrompt 思考提示
50
+ * @param callbacks 流式回调配置
51
+ * @param options 执行选项
52
+ * @returns 执行结果
53
+ */
54
+ executeThinkingStreaming(sessionHandle: SessionHandle, thinkingPrompt: string, callbacks: StreamCallbacks, options?: ExecuteOptions): Promise<SessionExecutionResult>;
55
+ /**
56
+ * 使用 spawn 执行 opencode run 命令(流式版本)
57
+ * 使用 readline 逐行解析输出,并通过回调传递给外部
58
+ */
59
+ private runOpencodeStreaming;
44
60
  /**
45
61
  * 使用 spawn 执行 opencode run 命令
46
62
  */
@@ -1 +1 @@
1
- {"version":3,"file":"sessionManager.d.ts","sourceRoot":"","sources":["../../src/session/sessionManager.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,sBAAsB,EAAkB,MAAM,oBAAoB,CAAC;AAE3F;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,yBAAyB;IACzB,eAAe,EAAE,eAAe,CAAC;IACjC,2CAA2C;IAC3C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yBAAyB;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,eAAe;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,cAAc,CAAyC;gBAEnD,MAAM,EAAE,oBAAoB;IAMxC;;;OAGG;IACG,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAiB9D;;;OAGG;IACG,eAAe,CACnB,aAAa,EAAE,aAAa,EAC5B,cAAc,EAAE,MAAM,EACtB,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,sBAAsB,CAAC;IA6BlC;;OAEG;IACH,OAAO,CAAC,WAAW;IA0EnB;;;;;;;;;OASG;IACH,OAAO,CAAC,cAAc;IAuJtB;;OAEG;IACH,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS;IAIxD;;OAEG;IACG,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIpD;;OAEG;IACG,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;CAGxC"}
1
+ {"version":3,"file":"sessionManager.d.ts","sourceRoot":"","sources":["../../src/session/sessionManager.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,sBAAsB,EAAkB,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAG5G;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,yBAAyB;IACzB,eAAe,EAAE,eAAe,CAAC;IACjC,2CAA2C;IAC3C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yBAAyB;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,eAAe;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,cAAc,CAAyC;gBAEnD,MAAM,EAAE,oBAAoB;IAMxC;;;OAGG;IACG,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAiB9D;;;OAGG;IACG,eAAe,CACnB,aAAa,EAAE,aAAa,EAC5B,cAAc,EAAE,MAAM,EACtB,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,sBAAsB,CAAC;IA6BlC;;;;;;;;;OASG;IACG,wBAAwB,CAC5B,aAAa,EAAE,aAAa,EAC5B,cAAc,EAAE,MAAM,EACtB,SAAS,EAAE,eAAe,EAC1B,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,sBAAsB,CAAC;IA8BlC;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAgM5B;;OAEG;IACH,OAAO,CAAC,WAAW;IA0EnB;;;;;;;;;OASG;IACH,OAAO,CAAC,cAAc;IAuJtB;;OAEG;IACH,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS;IAIxD;;OAEG;IACG,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIpD;;OAEG;IACG,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;CAGxC"}
@@ -4,6 +4,7 @@
4
4
  */
5
5
  import { spawn } from 'child_process';
6
6
  import { SessionHandle } from './sessionHandle.js';
7
+ import * as readline from 'readline';
7
8
  /**
8
9
  * Session 管理器
9
10
  */
@@ -55,6 +56,217 @@ export class SessionManager {
55
56
  };
56
57
  }
57
58
  }
59
+ /**
60
+ * 发送思考提示并执行(流式版本)
61
+ * 使用 opencode run CLI 模式执行,实时通过回调传递每行输出
62
+ *
63
+ * @param sessionHandle Session 句柄
64
+ * @param thinkingPrompt 思考提示
65
+ * @param callbacks 流式回调配置
66
+ * @param options 执行选项
67
+ * @returns 执行结果
68
+ */
69
+ async executeThinkingStreaming(sessionHandle, thinkingPrompt, callbacks, options = {}) {
70
+ const timeoutMs = options.timeoutMs ?? this.defaultTimeoutMs;
71
+ try {
72
+ const result = await this.runOpencodeStreaming(sessionHandle, thinkingPrompt, callbacks, timeoutMs);
73
+ // 从响应中提取 sessionId(如果有且首次执行)
74
+ if (!sessionHandle.hasSessionId() && result.sessionId) {
75
+ sessionHandle.setSessionId(result.sessionId);
76
+ this.activeSessions.set(result.sessionId, sessionHandle);
77
+ }
78
+ return result;
79
+ }
80
+ catch (error) {
81
+ const errorMessage = error instanceof Error ? error.message : String(error);
82
+ return {
83
+ sessionId: sessionHandle.sessionId,
84
+ success: false,
85
+ toolCalls: sessionHandle.getToolCalls(),
86
+ error: errorMessage,
87
+ };
88
+ }
89
+ }
90
+ /**
91
+ * 使用 spawn 执行 opencode run 命令(流式版本)
92
+ * 使用 readline 逐行解析输出,并通过回调传递给外部
93
+ */
94
+ runOpencodeStreaming(sessionHandle, message, callbacks, timeoutMs) {
95
+ return new Promise((resolve, reject) => {
96
+ // 构建命令参数
97
+ const args = ['run', '--format', 'json'];
98
+ // 如果已有 sessionId,使用 -s 参数继续
99
+ if (sessionHandle.hasSessionId()) {
100
+ args.push('-s', sessionHandle.sessionId);
101
+ }
102
+ else {
103
+ // 首次执行,设置标题
104
+ args.push('--title', `persona-${sessionHandle.personaId}`);
105
+ }
106
+ const proc = spawn(this.opencodePath, args, {
107
+ cwd: sessionHandle.workspacePath,
108
+ stdio: ['pipe', 'pipe', 'pipe'],
109
+ env: {
110
+ ...process.env,
111
+ XDG_DATA_HOME: sessionHandle.workspacePath,
112
+ },
113
+ });
114
+ const toolCalls = [];
115
+ let textResponse = '';
116
+ let sessionId = sessionHandle.sessionId;
117
+ let stderr = '';
118
+ let killed = false;
119
+ // 用于跟踪工具调用(按 toolCallID 匹配 invocation 和 result)
120
+ const pendingToolCalls = new Map();
121
+ // 设置超时
122
+ const timer = setTimeout(() => {
123
+ killed = true;
124
+ proc.kill('SIGTERM');
125
+ reject(new Error(`opencode run timed out after ${timeoutMs}ms`));
126
+ }, timeoutMs);
127
+ // 使用 readline 逐行解析 stdout
128
+ const rl = readline.createInterface({
129
+ input: proc.stdout,
130
+ crlfDelay: Infinity,
131
+ });
132
+ rl.on('line', (line) => {
133
+ // 尝试解析 JSON
134
+ let parsed = null;
135
+ try {
136
+ parsed = JSON.parse(line);
137
+ }
138
+ catch {
139
+ // 解析失败,parsed 保持 null
140
+ }
141
+ // 调用外部回调,让外部决定如何处理
142
+ if (callbacks.onLine) {
143
+ callbacks.onLine(line, parsed);
144
+ }
145
+ // 内部也需要解析以构建最终结果
146
+ if (parsed) {
147
+ // 提取 sessionID
148
+ if (parsed.sessionID && !sessionId) {
149
+ sessionId = parsed.sessionID;
150
+ }
151
+ // 处理不同类型的事件(内部解析用于构建最终结果)
152
+ const eventType = parsed.type;
153
+ const part = parsed.part;
154
+ if (eventType === 'text' && part) {
155
+ const partType = part.type;
156
+ const text = part.text;
157
+ if (partType === 'text' && text) {
158
+ textResponse += text;
159
+ }
160
+ }
161
+ else if (eventType === 'tool_use' && part) {
162
+ const partType = part.type;
163
+ const tool = part.tool;
164
+ const state = part.state;
165
+ if (partType === 'tool' && tool && state) {
166
+ const toolCall = {
167
+ tool,
168
+ args: state.input || {},
169
+ };
170
+ if (state.output) {
171
+ toolCall.result = typeof state.output === 'string'
172
+ ? state.output
173
+ : JSON.stringify(state.output);
174
+ }
175
+ if (state.status === 'error' && state.error) {
176
+ toolCall.error = typeof state.error === 'string'
177
+ ? state.error
178
+ : JSON.stringify(state.error);
179
+ }
180
+ toolCalls.push(toolCall);
181
+ sessionHandle.addToolCall(toolCall);
182
+ }
183
+ }
184
+ else if (eventType === 'tool_call' && part) {
185
+ // 兼容旧格式
186
+ const partType = part.type;
187
+ if (partType === 'tool-invocation') {
188
+ const toolCall = {
189
+ tool: part.toolName || 'unknown',
190
+ args: part.input || {},
191
+ };
192
+ if (part.toolCallID) {
193
+ pendingToolCalls.set(part.toolCallID, toolCall);
194
+ }
195
+ toolCalls.push(toolCall);
196
+ }
197
+ }
198
+ else if (eventType === 'tool_result' && part) {
199
+ // 兼容旧格式
200
+ const partType = part.type;
201
+ if (partType === 'tool-result') {
202
+ const pending = part.toolCallID ? pendingToolCalls.get(part.toolCallID) : null;
203
+ if (pending) {
204
+ pending.result = typeof part.result === 'string'
205
+ ? part.result
206
+ : JSON.stringify(part.result);
207
+ sessionHandle.addToolCall(pending);
208
+ }
209
+ else {
210
+ const toolCall = {
211
+ tool: part.toolName || 'unknown',
212
+ args: {},
213
+ result: typeof part.result === 'string'
214
+ ? part.result
215
+ : JSON.stringify(part.result),
216
+ };
217
+ toolCalls.push(toolCall);
218
+ sessionHandle.addToolCall(toolCall);
219
+ }
220
+ }
221
+ }
222
+ else if (eventType === 'session.created' || eventType === 'session') {
223
+ const properties = parsed.properties;
224
+ if (properties?.id) {
225
+ sessionId = properties.id;
226
+ }
227
+ else if (parsed.id) {
228
+ sessionId = parsed.id;
229
+ }
230
+ }
231
+ }
232
+ });
233
+ proc.stderr.on('data', (data) => {
234
+ const str = data.toString();
235
+ stderr += str;
236
+ if (callbacks.onStderr) {
237
+ callbacks.onStderr(str);
238
+ }
239
+ });
240
+ proc.on('close', (code) => {
241
+ clearTimeout(timer);
242
+ if (callbacks.onExit) {
243
+ callbacks.onExit(code);
244
+ }
245
+ if (killed)
246
+ return; // 已经 reject 了
247
+ if (code === 0) {
248
+ sessionHandle.setLastResponse(textResponse);
249
+ const result = {
250
+ sessionId: sessionId || sessionHandle.sessionId,
251
+ success: true,
252
+ response: textResponse,
253
+ toolCalls,
254
+ };
255
+ resolve(result);
256
+ }
257
+ else {
258
+ reject(new Error(`opencode run failed (exit ${code}): ${stderr}`));
259
+ }
260
+ });
261
+ proc.on('error', (err) => {
262
+ clearTimeout(timer);
263
+ reject(new Error(`Failed to spawn opencode: ${err.message}`));
264
+ });
265
+ // 通过 stdin 传递消息
266
+ proc.stdin.write(message);
267
+ proc.stdin.end();
268
+ });
269
+ }
58
270
  /**
59
271
  * 使用 spawn 执行 opencode run 命令
60
272
  */
@@ -1 +1 @@
1
- {"version":3,"file":"sessionManager.js","sourceRoot":"","sources":["../../src/session/sessionManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sessionManager.js","sourceRoot":"","sources":["../../src/session/sessionManager.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "persona-core-opencode",
3
- "version": "1.0.2",
3
+ "version": "1.1.0",
4
4
  "description": "PersonaCore implementation using opencode as the execution engine",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",