ycodium-acp-executor 0.2.3208 → 0.2.3212

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
@@ -120,6 +120,20 @@ re-exports the SDK's method tables and request and response types (`CLIENT_METHO
120
120
  `AGENT_METHODS`, `PromptRequest`, `SessionNotification`, and so on). Reach for it only if
121
121
  `createAcpExecutor` does not fit; everything above is built on it.
122
122
 
123
+ ## Diagnosing dropped output
124
+
125
+ Some agents answer `session/prompt` before they have actually run the turn, then never send
126
+ that turn's `session/update` frames. When the UI shows nothing but the CLI's own transcript has
127
+ a reply, the canonical event log cannot tell you whether frames ever crossed the process
128
+ boundary: it is written after parsing and filters transient events.
129
+
130
+ Set `YCODIUM_ACP_PROTOCOL_LOG=1` to make `createAcpExecutor` write every frame the connection
131
+ sees (`direction`, `stage`, `payload`) to a per-session NDJSON file under the system temp
132
+ directory, or under `YCODIUM_ACP_PROTOCOL_LOG_DIR` when set. The path is logged once at
133
+ session start. Files stop at 8 MiB. Payloads contain user content, so keep this off outside an
134
+ investigation. Embedders that already own a sink can pass `protocolLog` instead; the executor
135
+ does not create a file then.
136
+
123
137
  ## Stability
124
138
 
125
139
  Ycodium's own agent plugins (ACP, DSH, Grok, Kimi Code) depend on this package, so its exports
@@ -1,7 +1,7 @@
1
1
  import type * as NodeStream from "node:stream";
2
2
  import { AcpExecutorError } from "./errors.ts";
3
3
  import { type AcpOpenToolCall } from "./openCommands.ts";
4
- import { type InitializeResponse } from "./protocol.ts";
4
+ import { type AcpProtocolLogEvent, type InitializeResponse } from "./protocol.ts";
5
5
  import { type AcpAvailableCommand, type AcpPermissionRequest } from "./runtime-model.ts";
6
6
  import type { AcpApprovalDecision, AcpPromptInput, AcpSessionStartResult, AcpSessionStatus, AcpTurnResult, ExecutorEvent } from "./types.ts";
7
7
  import { type AcpVendorHooks } from "./vendor-hooks.ts";
@@ -66,6 +66,11 @@ export type AcpExecutorOptions = {
66
66
  readonly info: (message: string, fields?: Readonly<Record<string, unknown>>) => void;
67
67
  readonly warn?: (message: string, fields?: Readonly<Record<string, unknown>>) => void;
68
68
  };
69
+ /**
70
+ * 调试缝:连接层看到的每一帧原始/解码 ACP 消息。设了就不再看环境变量。
71
+ * 载荷是协议原文(可能含用户内容),只在排查时接。
72
+ */
73
+ readonly protocolLog?: (event: AcpProtocolLogEvent) => void;
69
74
  readonly cancelGraceMs?: number;
70
75
  /** 已收到结果的收尾等待上限;不罩进程或连接清理。 */
71
76
  readonly resultDrainTimeoutMs?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../src/executor.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,UAAU,MAAM,aAAa,CAAC;AAE/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAc/C,OAAO,EAAqB,KAAK,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC5E,OAAO,EAML,KAAK,kBAAkB,EAGxB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,KAAK,mBAAmB,EAAE,KAAK,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AACzF,OAAO,KAAK,EACV,mBAAmB,EACnB,cAAc,EACd,qBAAqB,EACrB,gBAAgB,EAChB,aAAa,EACb,aAAa,EACd,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAsB,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAI5E,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC,QAAQ,CAAC;IACvC,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC,QAAQ,CAAC;IACvC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,UAAU,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IACzE,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,YAAY,CAAC,EAAE,cAAc,GAAG,gBAAgB,CAAC;IAC1D,QAAQ,CAAC,UAAU,CAAC,EAAE,aAAa,CAAC;QAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC,CAAC;IACjG;;;OAGG;IACH,QAAQ,CAAC,qBAAqB,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACvD,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,gBAAgB,EAAE,kBAAkB,KAAK,MAAM,GAAG,SAAS,CAAC,CAAC;IAChG,QAAQ,CAAC,kBAAkB,CAAC,EAAE;QAC5B,QAAQ,CAAC,EAAE,CAAC,EAAE;YAAE,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC;YAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAA;SAAE,CAAC;QACpF,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;QAC5B,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KACjC,CAAC;IACF,QAAQ,CAAC,KAAK,CAAC,EAAE,cAAc,CAAC;IAChC;;;;OAIG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACrD;;;;OAIG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,oBAAoB,KAAK,OAAO,CAAC;IAClE,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC;;;OAGG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC;;;;OAIG;IACH,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,mBAAmB,CAAC,KAAK,IAAI,CAAC;IACtF,+BAA+B;IAC/B,QAAQ,CAAC,GAAG,CAAC,EAAE;QACb,QAAQ,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,KAAK,IAAI,CAAC;QACrF,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,KAAK,IAAI,CAAC;KACvF,CAAC;IACF,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,8BAA8B;IAC9B,QAAQ,CAAC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IACvC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,MAAM,CAAC;IAC9B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,MAAM,CAAC;IAC/B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,MAAM,CAAC;IACjC,QAAQ,CAAC,uBAAuB,CAAC,EAAE,MAAM,CAAC;IAC1C;;;OAGG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAClD,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IACvC,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAClC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC;IAC9C,KAAK,IAAI,OAAO,CAAC,qBAAqB,CAAC,CAAC;IACxC,MAAM,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IACtD,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACvC,gBAAgB,CACd,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,mBAAmB,EAC7B,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACvE;;;;;OAKG;IACH,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7C;;;;;;;OAOG;IACH,OAAO,CAAC,KAAK,EAAE;QAAE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChE,kDAAkD;IAClD,aAAa,IAAI,aAAa,CAAC,eAAe,CAAC,CAAC;IAChD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1B,CAAC;AAUF,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,kBAAkB,GAAG,WAAW,CA0R1E;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,gBAAgB,CAE5E"}
1
+ {"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../src/executor.ts"],"names":[],"mappings":"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"}
package/dist/executor.js CHANGED
@@ -17,6 +17,7 @@ import { createExecutorUpdates } from "./executor/updates.js";
17
17
  import { acpTransportIfEstablished } from "./failureCategory.js";
18
18
  import { Mutex } from "./mutex.js";
19
19
  import { readOpenToolCalls } from "./openCommands.js";
20
+ import { createAcpProtocolLogFromEnv } from "./protocol-log.js";
20
21
  import { CLIENT_METHODS, RequestError, createAcpConnection, } from "./protocol.js";
21
22
  import {} from "./runtime-model.js";
22
23
  import {} from "./user-input-pending.js";
@@ -113,9 +114,20 @@ export function createAcpExecutor(options) {
113
114
  });
114
115
  const { rememberSettledPromptKey, abortPendingSettlement, settleFromNotification } = createExecutorSettlement({ hooks, shared });
115
116
  const promptResults = createPromptResults({ options, shared });
117
+ // 默认关闭的原始帧记录:环境变量开启时每会话写一个 NDJSON 文件;嵌入方可以用
118
+ // `protocolLog` 直接接走。关闭交给 dispose,别把句柄留到进程结束。
119
+ const protocolLogSink = options.protocolLog === undefined
120
+ ? createAcpProtocolLogFromEnv({
121
+ provider: options.provider,
122
+ threadId: options.threadId,
123
+ ...(options.log === undefined ? {} : { log: options.log }),
124
+ })
125
+ : undefined;
126
+ const protocolLog = options.protocolLog ?? protocolLogSink?.write;
116
127
  const connection = createAcpConnection({
117
128
  readable: options.readable,
118
129
  writable: options.writable,
130
+ ...(protocolLog === undefined ? {} : { logger: protocolLog }),
119
131
  onInboundFailure: (error) => {
120
132
  options.log?.warn?.("acp connection closed: an inbound request could not be answered", {
121
133
  threadId: options.threadId,
@@ -218,7 +230,7 @@ export function createAcpExecutor(options) {
218
230
  notifyPromptSettled,
219
231
  shared,
220
232
  });
221
- const { cancel, compact, dispose } = createExecutorLifecycle({
233
+ const { cancel, compact, dispose: disposeLifecycle, } = createExecutorLifecycle({
222
234
  promptResults,
223
235
  failIfDisposed,
224
236
  requireStarted,
@@ -245,6 +257,7 @@ export function createAcpExecutor(options) {
245
257
  onInputDead,
246
258
  shared,
247
259
  });
260
+ let disposeOnce;
248
261
  return {
249
262
  get generation() {
250
263
  return shared.generation;
@@ -267,7 +280,19 @@ export function createAcpExecutor(options) {
267
280
  setNativeMode,
268
281
  compact,
269
282
  openToolCalls: () => readOpenToolCalls(toolCalls, shared.activeTurnId),
270
- dispose,
283
+ dispose: () => {
284
+ // 同一轮清理只跑一次,调用方拿到的永远是同一个 Promise(与 disposeLifecycle 的
285
+ // 契约一致;调试用的文件句柄也算在这次清理里)。
286
+ disposeOnce ??= (async () => {
287
+ try {
288
+ await disposeLifecycle();
289
+ }
290
+ finally {
291
+ await protocolLogSink?.close();
292
+ }
293
+ })();
294
+ return disposeOnce;
295
+ },
271
296
  };
272
297
  }
273
298
  export function isAcpExecutorError(error) {
@@ -1 +1 @@
1
- {"version":3,"file":"executor.js","sourceRoot":"","sources":["../src/executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"executor.js","sourceRoot":"","sources":["../src/executor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ import * as NodeStream from "node:stream";
2
+ import type { AcpProtocolLogEvent } from "./connection.ts";
3
+ export type AcpProtocolLogSink = {
4
+ readonly path: string;
5
+ readonly write: (event: AcpProtocolLogEvent) => void;
6
+ readonly close: () => Promise<void>;
7
+ };
8
+ /**
9
+ * 每个进程每次会话一个文件,写到上限后停机(不再写,保留已写的部分)。
10
+ * 用流写入是热路径:ACP 每个 token 都会经过这里,同步写会把每帧都变成一次系统调用。
11
+ */
12
+ export declare function createAcpProtocolLogFile(input: {
13
+ readonly directory: string;
14
+ readonly provider: string;
15
+ readonly threadId: string;
16
+ readonly maxBytes?: number;
17
+ /** 测试用:换掉文件流,验证 close() 等的是 close 事件而不是 end()。 */
18
+ readonly openStream?: (path: string) => NodeStream.Writable;
19
+ }): AcpProtocolLogSink;
20
+ /**
21
+ * 按环境变量决定开不开。返回 undefined 表示这次会话不记录原始帧。
22
+ * 路径只在开启时打一条 info:排查的人要能从日志里找到文件。
23
+ */
24
+ export declare function createAcpProtocolLogFromEnv(input: {
25
+ readonly provider: string;
26
+ readonly threadId: string;
27
+ readonly log?: {
28
+ readonly info: (message: string, fields?: Readonly<Record<string, unknown>>) => void;
29
+ readonly warn?: (message: string, fields?: Readonly<Record<string, unknown>>) => void;
30
+ };
31
+ }): AcpProtocolLogSink | undefined;
32
+ //# sourceMappingURL=protocol-log.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"protocol-log.d.ts","sourceRoot":"","sources":["../src/protocol-log.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,UAAU,MAAM,aAAa,CAAC;AAE1C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAK3D,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACrD,QAAQ,CAAC,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CACrC,CAAC;AAMF;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE;IAC9C,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,kDAAkD;IAClD,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,UAAU,CAAC,QAAQ,CAAC;CAC7D,GAAG,kBAAkB,CA2DrB;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE;IACjD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,GAAG,CAAC,EAAE;QACb,QAAQ,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,KAAK,IAAI,CAAC;QACrF,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,KAAK,IAAI,CAAC;KACvF,CAAC;CACH,GAAG,kBAAkB,GAAG,SAAS,CAyBjC"}
@@ -0,0 +1,113 @@
1
+ // @effect-diagnostics nodeBuiltinImport:off
2
+ // @effect-diagnostics globalDate:off
3
+ /**
4
+ * ACP 原始帧的可选落盘。
5
+ *
6
+ * 线上排查「界面没有回复、但 provider 说成功了」这类问题时,canonical 事件日志不够:
7
+ * 它写在解析与过滤之后,证明不了 stdio 上到底有没有帧。这个 sink 把连接层看到的原始
8
+ * 方向、阶段与载荷逐行写成 NDJSON,用来跨进程边界定位。
9
+ *
10
+ * 默认关闭:设 `YCODIUM_ACP_PROTOCOL_LOG=1` 才写,目录默认在系统临时目录下(可用
11
+ * `YCODIUM_ACP_PROTOCOL_LOG_DIR` 改)。载荷可能包含用户内容,只在排查时开。
12
+ *
13
+ * @module protocol-log
14
+ */
15
+ import * as NodeFS from "node:fs";
16
+ import * as NodeOS from "node:os";
17
+ import * as NodePath from "node:path";
18
+ import * as NodeStream from "node:stream";
19
+ const DEFAULT_MAX_BYTES = 8 * 1024 * 1024;
20
+ const UNSAFE_FILE_CHARS = /[^A-Za-z0-9._-]+/gu;
21
+ function safeFileName(value) {
22
+ return value.replaceAll(UNSAFE_FILE_CHARS, "_");
23
+ }
24
+ /**
25
+ * 每个进程每次会话一个文件,写到上限后停机(不再写,保留已写的部分)。
26
+ * 用流写入是热路径:ACP 每个 token 都会经过这里,同步写会把每帧都变成一次系统调用。
27
+ */
28
+ export function createAcpProtocolLogFile(input) {
29
+ const maxBytes = input.maxBytes ?? DEFAULT_MAX_BYTES;
30
+ NodeFS.mkdirSync(input.directory, { recursive: true });
31
+ const filePath = NodePath.join(input.directory, `${safeFileName(input.provider)}-${safeFileName(input.threadId)}-${Date.now().toString(36)}.ndjson`);
32
+ const stream = (input.openStream ?? ((path) => NodeFS.createWriteStream(path, { flags: "a" })))(filePath);
33
+ let bytes = 0;
34
+ let stopped = false;
35
+ const closed = Promise.withResolvers();
36
+ let closing = false;
37
+ stream.once("close", () => closed.resolve());
38
+ // 磁盘满、目录被删:调试记录不能把宿主带崩,停写并释放句柄。close() 等的是真正的
39
+ // close 事件,不是 error:解析上的错误不等于句柄已经交还给操作系统。
40
+ stream.on("error", () => {
41
+ stopped = true;
42
+ stream.destroy();
43
+ });
44
+ const writeTruncated = () => {
45
+ stopped = true;
46
+ const marker = `${JSON.stringify({ at: new Date().toISOString(), stage: "truncated" })}\n`;
47
+ // 上限覆盖最终文件:截断标记自己也算字节,放不下就不写。
48
+ if (bytes + Buffer.byteLength(marker) <= maxBytes)
49
+ stream.write(marker);
50
+ stream.end();
51
+ };
52
+ const writeLine = (value) => {
53
+ if (stopped)
54
+ return;
55
+ const line = `${JSON.stringify(value)}\n`;
56
+ const lineBytes = Buffer.byteLength(line);
57
+ if (bytes + lineBytes > maxBytes) {
58
+ writeTruncated();
59
+ return;
60
+ }
61
+ bytes += lineBytes;
62
+ stream.write(line);
63
+ };
64
+ return {
65
+ path: filePath,
66
+ write: (event) => writeLine({
67
+ at: new Date().toISOString(),
68
+ direction: event.direction,
69
+ stage: event.stage,
70
+ payload: event.payload,
71
+ }),
72
+ close: async () => {
73
+ if (closing)
74
+ return closed.promise;
75
+ closing = true;
76
+ stopped = true;
77
+ stream.end();
78
+ await closed.promise;
79
+ },
80
+ };
81
+ }
82
+ /**
83
+ * 按环境变量决定开不开。返回 undefined 表示这次会话不记录原始帧。
84
+ * 路径只在开启时打一条 info:排查的人要能从日志里找到文件。
85
+ */
86
+ export function createAcpProtocolLogFromEnv(input) {
87
+ const flag = process.env.YCODIUM_ACP_PROTOCOL_LOG;
88
+ if (flag !== "1" && flag?.toLowerCase() !== "true")
89
+ return undefined;
90
+ const configured = process.env.YCODIUM_ACP_PROTOCOL_LOG_DIR?.trim();
91
+ const directory = configured && configured.length > 0
92
+ ? configured
93
+ : NodePath.join(NodeOS.tmpdir(), "ycodium-acp-protocol");
94
+ try {
95
+ const sink = createAcpProtocolLogFile({
96
+ directory,
97
+ provider: input.provider,
98
+ threadId: input.threadId,
99
+ });
100
+ input.log?.info("acp protocol frames are being recorded", { path: sink.path });
101
+ return sink;
102
+ }
103
+ catch (error) {
104
+ // 目录不可建、权限不足:这是可选诊断,不能把会话启动带下去。调用方这时可能已经
105
+ // 起好了子进程,异常穿出去就没人回收它。
106
+ input.log?.warn?.("acp protocol frame log could not be opened", {
107
+ directory,
108
+ error: error instanceof Error ? error.message : String(error),
109
+ });
110
+ return undefined;
111
+ }
112
+ }
113
+ //# sourceMappingURL=protocol-log.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"protocol-log.js","sourceRoot":"","sources":["../src/protocol-log.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ycodium-acp-executor",
3
- "version": "0.2.3208",
3
+ "version": "0.2.3212",
4
4
  "description": "Agent Client Protocol client and executor state machine for Ycodium agent plugins. Speaks ACP over stdio and emits Ycodium executor events.",
5
5
  "keywords": [
6
6
  "acp",