dsh-bundle-antigravity-host 0.1.25 → 0.1.26

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 (42) hide show
  1. package/README.md +17 -4
  2. package/dist/adapter/antigravity-adapter.d.ts +34 -9
  3. package/dist/adapter/antigravity-adapter.js +505 -44
  4. package/dist/adapter/antigravity-adapter.js.map +1 -1
  5. package/dist/adapter/continuation-state.d.ts +5 -1
  6. package/dist/adapter/continuation-state.js +3 -2
  7. package/dist/adapter/continuation-state.js.map +1 -1
  8. package/dist/adapter/image-content.d.ts +7 -0
  9. package/dist/adapter/image-content.js +23 -2
  10. package/dist/adapter/image-content.js.map +1 -1
  11. package/dist/adapter/prompt-transcript.d.ts +36 -3
  12. package/dist/adapter/prompt-transcript.js +86 -3
  13. package/dist/adapter/prompt-transcript.js.map +1 -1
  14. package/dist/adapter/prompt-turn.d.ts +8 -3
  15. package/dist/adapter/prompt-turn.js +15 -5
  16. package/dist/adapter/prompt-turn.js.map +1 -1
  17. package/dist/adapter/session-reuse.d.ts +19 -0
  18. package/dist/adapter/session-reuse.js +102 -0
  19. package/dist/adapter/session-reuse.js.map +1 -0
  20. package/dist/bridge/mcp-bridge.d.ts +9 -2
  21. package/dist/bridge/mcp-bridge.js +15 -2
  22. package/dist/bridge/mcp-bridge.js.map +1 -1
  23. package/dist/client.js +16 -3
  24. package/dist/index.js +32 -8
  25. package/dist/index.js.map +1 -1
  26. package/dist/pool/pooled-adapter.d.ts +7 -0
  27. package/dist/pool/pooled-adapter.js +53 -3
  28. package/dist/pool/pooled-adapter.js.map +1 -1
  29. package/dist/protocol/agent-link.d.ts +11 -1
  30. package/dist/protocol/agent-link.js +25 -0
  31. package/dist/protocol/agent-link.js.map +1 -1
  32. package/dist/runtime/session-map.d.ts +53 -0
  33. package/dist/runtime/session-map.js +213 -0
  34. package/dist/runtime/session-map.js.map +1 -0
  35. package/dist/settings.d.ts +31 -0
  36. package/dist/settings.js +5 -0
  37. package/dist/settings.js.map +1 -1
  38. package/docs/changelog.md +11 -0
  39. package/docs/configuration.md +34 -2
  40. package/docs/development.md +3 -3
  41. package/docs/reference.md +21 -5
  42. package/package.json +16 -1
@@ -62,6 +62,7 @@ export class PromptTurn {
62
62
  #producerDone = false;
63
63
  #roundEnded = false;
64
64
  #promptSettled = false;
65
+ #promptStarted = false;
65
66
  #failure;
66
67
  #aborted = false;
67
68
  #truncated = false;
@@ -73,6 +74,7 @@ export class PromptTurn {
73
74
  #onBridgePermission;
74
75
  #onArgumentIssues;
75
76
  #onTerminate;
77
+ #onPromptSettled;
76
78
  /** 本轮封口不等于 ACP prompt 结束;封口后的事件留给下一次 stream 消费。 */
77
79
  #deferred = [];
78
80
  constructor(sessionId, options) {
@@ -85,6 +87,7 @@ export class PromptTurn {
85
87
  this.#onNativeRefusal = options.onNativeRefusal;
86
88
  this.#onPermissionDiagnostic = options.onPermissionDiagnostic;
87
89
  this.#onTerminate = options.onTerminate;
90
+ this.#onPromptSettled = options.onPromptSettled;
88
91
  this.#onBridgePermission = options.onBridgePermission;
89
92
  this.#onArgumentIssues = options.onArgumentIssues;
90
93
  }
@@ -92,6 +95,7 @@ export class PromptTurn {
92
95
  get promptSettled() {
93
96
  return this.#promptSettled;
94
97
  }
98
+ get promptStarted() { return this.#promptStarted; }
95
99
  /** 本地已终止,不再允许续接;对端回收由 adapter 的屏障保证。 */
96
100
  get terminated() {
97
101
  return this.#terminated;
@@ -212,6 +216,7 @@ export class PromptTurn {
212
216
  this.#fail({ code: AGY_TURN_ERROR.ABORTED, message: `Antigravity ACP 回合在发起前即被调用方中止:${String(signal.reason ?? 'aborted')}` });
213
217
  return;
214
218
  }
219
+ this.#promptStarted = true;
215
220
  const prompt = this.#link.prompt({ sessionId: this.sessionId, prompt: content }, { timeoutMs: this.#promptTimeoutMs });
216
221
  void this.#drive(prompt);
217
222
  if (signal)
@@ -311,7 +316,7 @@ export class PromptTurn {
311
316
  async #drive(prompt) {
312
317
  try {
313
318
  const response = await prompt;
314
- this.#markPromptSettled();
319
+ this.#markPromptSettled(response);
315
320
  this.#finishWith(response);
316
321
  }
317
322
  catch (error) {
@@ -322,13 +327,14 @@ export class PromptTurn {
322
327
  });
323
328
  }
324
329
  }
325
- #markPromptSettled() {
330
+ #markPromptSettled(response) {
326
331
  this.#promptSettled = true;
327
332
  this.dispose();
328
333
  const waiters = this.#settledWaiters;
329
334
  this.#settledWaiters = [];
330
335
  for (const resolve of waiters)
331
336
  resolve();
337
+ this.#onPromptSettled?.(this, response);
332
338
  }
333
339
  #finishWith(response) {
334
340
  const reason = this.#mapStopReason(response.stopReason);
@@ -384,7 +390,10 @@ export class PromptTurn {
384
390
  this.#terminated = true;
385
391
  if (!this.#promptSettled)
386
392
  void this.#link.cancel(this.sessionId).catch(() => undefined);
387
- this.#onTerminate(failure.message, clean ? { clean: true } : undefined);
393
+ this.#onTerminate(failure.message, {
394
+ ...(clean ? { clean: true } : {}),
395
+ ...(this.#aborted ? { aborted: true } : {}),
396
+ });
388
397
  }
389
398
  /**
390
399
  * 结束本回合并向队列封口:先 usage 后 finish;finish 入队后生产者停止,
@@ -529,8 +538,9 @@ function renderContentText(content) {
529
538
  /**
530
539
  * ACP Usage → DSH TokenUsage。
531
540
  *
532
- * ACP 的 usage 是**会话累计**值;由于本 adapter 把整段 DSH 历史重放进单个
533
- * ACP prompt 回合(一回合一次 session/prompt),该累计值恰好等于本回合用量。
541
+ * 协议把 `PromptResponse.usage` 标为「本轮用量」(UNSTABLE),但官方
542
+ * agy_acp_server 1.4.0 实测不返回该字段,因此本 adapter 通常不上报 usage;
543
+ * 返回时按原值上报,不做任何估算或累计换算。
534
544
  */
535
545
  export function mapUsage(usage) {
536
546
  if (!usage)
@@ -1 +1 @@
1
- {"version":3,"file":"prompt-turn.js","sourceRoot":"","sources":["../../src/adapter/prompt-turn.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompt-turn.js","sourceRoot":"","sources":["../../src/adapter/prompt-turn.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import type { ContentBlock, GenerateOptions, RequestMessage } from '@deepseek-ai/dsh-llm';
2
+ export declare function reusableSessionKey(options: Pick<GenerateOptions, 'sessionId' | 'purpose'>): string | undefined;
3
+ export declare function messageSourceKind(message: RequestMessage): string | undefined;
4
+ export declare function messageSourceForm(message: RequestMessage): string | undefined;
5
+ /** assistant 只有通过 outputMatches 验证后才可跳过;context form 本身不是丢弃依据。 */
6
+ export declare function shouldSendIncrement(message: RequestMessage): boolean;
7
+ /**
8
+ * 只省略确实已经发送的相同上下文。快照/目录跟踪最近版本,A→B→A 仍须发送 A;
9
+ * 指令也可能撤回/恢复旧版本,未知文件身份时保守按最近版本判断;仅召回材料按完整内容去重。
10
+ */
11
+ export declare function incrementalMessages(messages: readonly RequestMessage[], sentCount: number): RequestMessage[];
12
+ export declare function messageFingerprint(message: RequestMessage): string;
13
+ export declare function prefixHash(messages: readonly RequestMessage[], count?: number): string;
14
+ export declare function prefixMatches(messages: readonly RequestMessage[], sentCount: number, sentHash: string): boolean;
15
+ /** 存储实际交付的 blocks 指纹,不落盘输出正文。 */
16
+ export declare function outputHash(blocks: readonly ContentBlock[]): string;
17
+ /** 新历史中的 assistant 必须正好是上一步交付的输出,且位于所有新输入之前。 */
18
+ export declare function outputMatches(fresh: readonly RequestMessage[], expected: string | undefined): boolean;
19
+ export declare function routeFingerprint(options: Pick<GenerateOptions, 'provider' | 'model' | 'reasoningEffort' | 'system' | 'tools'>): string;
@@ -0,0 +1,102 @@
1
+ /** ACP 会话的输入前缀、已交付输出与上下文去重。DSH 始终是历史权威。 */
2
+ import { createHash } from 'node:crypto';
3
+ import { messageValue, stable } from './continuation-state.js';
4
+ export function reusableSessionKey(options) {
5
+ if (options.purpose !== undefined || !options.sessionId)
6
+ return undefined;
7
+ return `${options.sessionId}::chat`;
8
+ }
9
+ export function messageSourceKind(message) {
10
+ const source = message.source;
11
+ return source && typeof source.kind === 'string' ? source.kind : undefined;
12
+ }
13
+ export function messageSourceForm(message) {
14
+ const source = message.source;
15
+ return source && typeof source.form === 'string' ? source.form : undefined;
16
+ }
17
+ /** assistant 只有通过 outputMatches 验证后才可跳过;context form 本身不是丢弃依据。 */
18
+ export function shouldSendIncrement(message) {
19
+ return message.role !== 'assistant';
20
+ }
21
+ /** 只对上下文载体去重;真实用户输入、notice、relay 与未知类别每次都保留。 */
22
+ function contextKey(message) {
23
+ if (message.role !== 'user')
24
+ return undefined;
25
+ const kind = messageSourceKind(message);
26
+ if (!kind || kind === 'user' || kind === 'compact-checkpoint' || kind === 'model-selection')
27
+ return undefined;
28
+ const form = messageSourceForm(message);
29
+ if (!['snapshot', 'catalog', 'instructions', 'recall'].includes(form ?? ''))
30
+ return undefined;
31
+ return stable([kind, form]);
32
+ }
33
+ /**
34
+ * 只省略确实已经发送的相同上下文。快照/目录跟踪最近版本,A→B→A 仍须发送 A;
35
+ * 指令也可能撤回/恢复旧版本,未知文件身份时保守按最近版本判断;仅召回材料按完整内容去重。
36
+ */
37
+ export function incrementalMessages(messages, sentCount) {
38
+ const latest = new Map();
39
+ const seen = new Set();
40
+ const result = [];
41
+ for (const [index, message] of messages.entries()) {
42
+ const key = contextKey(message);
43
+ let duplicate = false;
44
+ if (key !== undefined) {
45
+ const fingerprint = messageFingerprint(message);
46
+ const stateful = messageSourceForm(message) !== 'recall';
47
+ duplicate = stateful ? latest.get(key) === fingerprint : seen.has(`${key}\0${fingerprint}`);
48
+ latest.set(key, fingerprint);
49
+ seen.add(`${key}\0${fingerprint}`);
50
+ }
51
+ if (index >= sentCount && shouldSendIncrement(message) && !duplicate)
52
+ result.push(message);
53
+ }
54
+ // 当前用户请求最后强调;其余新增消息的相对顺序保持不变。
55
+ const latestUser = result.findLastIndex(message => message.role === 'user'
56
+ && (messageSourceKind(message) === undefined || messageSourceKind(message) === 'user'));
57
+ if (latestUser >= 0 && latestUser < result.length - 1)
58
+ result.push(...result.splice(latestUser, 1));
59
+ return result;
60
+ }
61
+ export function messageFingerprint(message) {
62
+ return stable(messageValue(message));
63
+ }
64
+ export function prefixHash(messages, count = messages.length) {
65
+ const hash = createHash('sha256');
66
+ for (const message of messages.slice(0, count))
67
+ hash.update(messageFingerprint(message)).update('\0');
68
+ return hash.digest('hex');
69
+ }
70
+ export function prefixMatches(messages, sentCount, sentHash) {
71
+ return Number.isSafeInteger(sentCount) && sentCount >= 0 && sentCount <= messages.length
72
+ && prefixHash(messages, sentCount) === sentHash;
73
+ }
74
+ /** 存储实际交付的 blocks 指纹,不落盘输出正文。 */
75
+ export function outputHash(blocks) {
76
+ return createHash('sha256').update(stable(blocks)).digest('hex');
77
+ }
78
+ /** 新历史中的 assistant 必须正好是上一步交付的输出,且位于所有新输入之前。 */
79
+ export function outputMatches(fresh, expected) {
80
+ if (expected === undefined)
81
+ return false;
82
+ const blocks = [];
83
+ let inputSeen = false;
84
+ for (const message of fresh) {
85
+ if (message.role === 'assistant') {
86
+ if (inputSeen)
87
+ return false;
88
+ blocks.push(...message.content);
89
+ }
90
+ else
91
+ inputSeen = true;
92
+ }
93
+ return outputHash(blocks) === expected;
94
+ }
95
+ export function routeFingerprint(options) {
96
+ return createHash('sha256').update(stable({
97
+ provider: options.provider, model: options.model, effort: options.reasoningEffort?.toString(),
98
+ system: options.system ?? '',
99
+ tools: [...(options.tools ?? [])].sort((a, b) => a.name.localeCompare(b.name)),
100
+ })).digest('hex');
101
+ }
102
+ //# sourceMappingURL=session-reuse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-reuse.js","sourceRoot":"","sources":["../../src/adapter/session-reuse.ts"],"names":[],"mappings":"AAAA,2CAA2C;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAExC,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAE9D,MAAM,UAAU,kBAAkB,CAAC,OAAuD;IACxF,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,IAAI,CAAC,OAAO,CAAC,SAAS;QAAE,OAAO,SAAS,CAAA;IACzE,OAAO,GAAG,OAAO,CAAC,SAAS,QAAQ,CAAA;AACrC,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,OAAuB;IACvD,MAAM,MAAM,GAAI,OAA6D,CAAC,MAAM,CAAA;IACpF,OAAO,MAAM,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAA;AAC5E,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,OAAuB;IACvD,MAAM,MAAM,GAAI,OAA6D,CAAC,MAAM,CAAA;IACpF,OAAO,MAAM,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAA;AAC5E,CAAC;AAED,kEAAkE;AAClE,MAAM,UAAU,mBAAmB,CAAC,OAAuB;IACzD,OAAO,OAAO,CAAC,IAAI,KAAK,WAAW,CAAA;AACrC,CAAC;AAED,gDAAgD;AAChD,SAAS,UAAU,CAAC,OAAuB;IACzC,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM;QAAE,OAAO,SAAS,CAAA;IAC7C,MAAM,IAAI,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAA;IACvC,IAAI,CAAC,IAAI,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,oBAAoB,IAAI,IAAI,KAAK,iBAAiB;QAAE,OAAO,SAAS,CAAA;IAC7G,MAAM,IAAI,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAA;IACvC,IAAI,CAAC,CAAC,UAAU,EAAE,SAAS,EAAE,cAAc,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC;QAAE,OAAO,SAAS,CAAA;IAC7F,OAAO,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;AAC7B,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,QAAmC,EAAE,SAAiB;IACxF,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAA;IACxC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAA;IAC9B,MAAM,MAAM,GAAqB,EAAE,CAAA;IACnC,KAAK,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC;QAClD,MAAM,GAAG,GAAG,UAAU,CAAC,OAAO,CAAC,CAAA;QAC/B,IAAI,SAAS,GAAG,KAAK,CAAA;QACrB,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACtB,MAAM,WAAW,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAA;YAC/C,MAAM,QAAQ,GAAG,iBAAiB,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAA;YACxD,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,KAAK,WAAW,EAAE,CAAC,CAAA;YAC3F,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,WAAW,CAAC,CAAA;YAC5B,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,KAAK,WAAW,EAAE,CAAC,CAAA;QACpC,CAAC;QACD,IAAI,KAAK,IAAI,SAAS,IAAI,mBAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS;YAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IAC5F,CAAC;IACD,8BAA8B;IAC9B,MAAM,UAAU,GAAG,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM;WACrE,CAAC,iBAAiB,CAAC,OAAO,CAAC,KAAK,SAAS,IAAI,iBAAiB,CAAC,OAAO,CAAC,KAAK,MAAM,CAAC,CAAC,CAAA;IACzF,IAAI,UAAU,IAAI,CAAC,IAAI,UAAU,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC;QAAE,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,CAAA;IACnG,OAAO,MAAM,CAAA;AACf,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,OAAuB;IACxD,OAAO,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAA;AACtC,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,QAAmC,EAAE,QAAgB,QAAQ,CAAC,MAAM;IAC7F,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAA;IACjC,KAAK,MAAM,OAAO,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;IACrG,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;AAC3B,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,QAAmC,EAAE,SAAiB,EAAE,QAAgB;IACpG,OAAO,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,SAAS,IAAI,CAAC,IAAI,SAAS,IAAI,QAAQ,CAAC,MAAM;WACnF,UAAU,CAAC,QAAQ,EAAE,SAAS,CAAC,KAAK,QAAQ,CAAA;AACnD,CAAC;AAED,iCAAiC;AACjC,MAAM,UAAU,UAAU,CAAC,MAA+B;IACxD,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;AAClE,CAAC;AAED,gDAAgD;AAChD,MAAM,UAAU,aAAa,CAAC,KAAgC,EAAE,QAA4B;IAC1F,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,KAAK,CAAA;IACxC,MAAM,MAAM,GAAmB,EAAE,CAAA;IACjC,IAAI,SAAS,GAAG,KAAK,CAAA;IACrB,KAAK,MAAM,OAAO,IAAI,KAAK,EAAE,CAAC;QAC5B,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YACjC,IAAI,SAAS;gBAAE,OAAO,KAAK,CAAA;YAC3B,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;QACjC,CAAC;;YAAM,SAAS,GAAG,IAAI,CAAA;IACzB,CAAC;IACD,OAAO,UAAU,CAAC,MAAM,CAAC,KAAK,QAAQ,CAAA;AACxC,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,OAA6F;IAC5H,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;QACxC,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,eAAe,EAAE,QAAQ,EAAE;QAC7F,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,EAAE;QAC5B,KAAK,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;KAC/E,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;AACnB,CAAC"}
@@ -76,8 +76,15 @@ export declare class McpToolBridge {
76
76
  onParked(listener: (call: BridgeParkedCall) => void): () => void;
77
77
  /** 发布本回合 DSH 交给 agent 的工具(tools/list 的数据源)。 */
78
78
  publishTools(tools: readonly ToolSchema[]): void;
79
- /** 新 ACP 回合取得独立授权代次,旧连接不能把调用投递到新回合。 */
80
- beginRound(tools: readonly ToolSchema[]): void;
79
+ /** 当前桥授权代次归属的会话 key(未接管时为 undefined)。 */
80
+ get owner(): string | undefined;
81
+ /**
82
+ * 新 ACP 回合取得独立授权代次,旧连接不能把调用投递到新回合。
83
+ *
84
+ * `owner` 记录这次代次属于哪个 DSH 对话:桥被另一个对话接管后,前一个
85
+ * 对话的 ACP 会话不能再复用(它的 MCP 连接持有旧 token)。
86
+ */
87
+ beginRound(tools: readonly ToolSchema[], owner?: string): void;
81
88
  /** 撤销本回合目录、凭证和所有未完成调用;server 本身仍可用于下个回合。 */
82
89
  invalidateRound(reason: string): void;
83
90
  /** 当前发布的工具名集合。 */
@@ -58,6 +58,8 @@ export const BRIDGE_SESSION_HEADER = 'mcp-session-id';
58
58
  export class McpToolBridge {
59
59
  #token;
60
60
  #generation = 0;
61
+ /** 当前授权代次归属的 ACP 会话 key;桥被另一个对话接管后,旧会话不能复用。 */
62
+ #owner;
61
63
  #requestedPort;
62
64
  #pending = new Map();
63
65
  #listeners = new Set();
@@ -106,10 +108,20 @@ export class McpToolBridge {
106
108
  publishTools(tools) {
107
109
  this.#tools = [...tools];
108
110
  }
109
- /** 新 ACP 回合取得独立授权代次,旧连接不能把调用投递到新回合。 */
110
- beginRound(tools) {
111
+ /** 当前桥授权代次归属的会话 key(未接管时为 undefined)。 */
112
+ get owner() {
113
+ return this.#owner;
114
+ }
115
+ /**
116
+ * 新 ACP 回合取得独立授权代次,旧连接不能把调用投递到新回合。
117
+ *
118
+ * `owner` 记录这次代次属于哪个 DSH 对话:桥被另一个对话接管后,前一个
119
+ * 对话的 ACP 会话不能再复用(它的 MCP 连接持有旧 token)。
120
+ */
121
+ beginRound(tools, owner) {
111
122
  this.invalidateRound('已切换 ACP 回合');
112
123
  this.publishTools(tools);
124
+ this.#owner = owner;
113
125
  // 上一回合的 MCP 会话通道已无用(新回合会新建 ACP 会话与连接),在这里
114
126
  // 收掉以免按回合累积。**不能**放进 invalidateRound:回合失败/取消时
115
127
  // resetPending 刚把错误结果结算给 agent,立即关闭 transport 会截断那个响应,
@@ -121,6 +133,7 @@ export class McpToolBridge {
121
133
  this.#generation += 1;
122
134
  this.#token = randomBytes(32).toString('hex');
123
135
  this.#tools = [];
136
+ this.#owner = undefined;
124
137
  this.resetPending(reason);
125
138
  }
126
139
  /** 关闭已握手完成(已登记 mcp-session-id)的全部 MCP 会话通道。 */
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-bridge.js","sourceRoot":"","sources":["../../src/bridge/mcp-bridge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp-bridge.js","sourceRoot":"","sources":["../../src/bridge/mcp-bridge.ts"],"names":[],"mappings":"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"}
package/dist/client.js CHANGED
@@ -28,6 +28,11 @@ window.__ModuleLoader__.load({
28
28
  /** Editable fields surfaced in this card; everything else stays in the host form. */
29
29
  const FIELDS = [
30
30
  { key: 'autoWarmup', checkbox: true, defaultChecked: true, label: '启动时自动预热 ACP', hint: '提前启动并保留连接,不发送模型消息。保存后下次启用插件生效;本次可点击“立即预热”。' },
31
+ { key: 'reuseSessions', checkbox: true, defaultChecked: true, label: '复用 ACP 会话(增量发送)', hint: '校验历史与实际输出后只发新增消息;变化的上下文仍发送,不一致时自动重建。' },
32
+ { key: 'resumeSessions', checkbox: true, label: '重启后恢复 ACP 会话', hint: '尝试加载本地映射,失败则重建;仅保存 ID 与指纹。需要开启会话复用。' },
33
+ { key: 'keepProcessAfterCancel', checkbox: true, label: '取消后保留已停止的进程', hint: '仅在 agent 确认停止后保留;等待期间新轮排队,超时或通信失败回收。' },
34
+ { key: 'cancelGraceMs', numeric: true, defaultValue: 30000, min: 0, max: 60000, label: '取消确认宽限(毫秒)', hint: '默认 30000;0 表示不等待并立即回收,不会复用未确认连接。' },
35
+ { key: 'idleRecycleMs', numeric: true, defaultValue: 300000, min: 0, max: 3600000, label: '进程空闲回收(毫秒)', hint: '默认 300000(5 分钟),0 禁用。聊天、预热、目录发现结束后统一计时;等待工具不算空闲。' },
31
36
  { key: 'preferredModel', label: '默认 / 自定义模型 ID', placeholder: '选择目录中的模型,或输入自定义 ID', hint: '保存后优先列出此模型;目录之外的 ID 标为自定义、未验证。不会替换当前会话已选模型。留空不指定默认项。' },
32
37
  { key: 'proxyUrl', label: '出网代理', placeholder: 'http://127.0.0.1:7890', hint: '此处配置优先;留空则继承宿主代理环境变量,宿主也未配置时才直连。' },
33
38
  { key: 'proxyBypass', label: '代理排除列表', placeholder: '10.0.0.0/8,*.internal', hint: 'localhost/127.0.0.1/::1 始终自动排除(私有 MCP 桥在 loopback)。' },
@@ -189,7 +194,7 @@ window.__ModuleLoader__.load({
189
194
  const found = namespaces.find((item) => item?.ns === ENTRY_ID)
190
195
  setView(found ?? null)
191
196
  const current = found?.value && typeof found.value === 'object' ? found.value : {}
192
- const server = Object.fromEntries(FIELDS.map((field) => [field.key, field.checkbox ? (field.defaultChecked ? current[field.key] !== false : current[field.key] === true) : current[field.key] ?? '']))
197
+ const server = Object.fromEntries(FIELDS.map((field) => [field.key, field.checkbox ? (field.defaultChecked ? current[field.key] !== false : current[field.key] === true) : current[field.key] ?? field.defaultValue ?? '']))
193
198
  const changed = []
194
199
  const next = { ...server }
195
200
  for (const key of dirty.current) {
@@ -216,6 +221,12 @@ window.__ModuleLoader__.load({
216
221
 
217
222
  const save = React.useCallback(async () => {
218
223
  if (!view || !writable || loading || savingRef.current || dirty.current.size === 0) return
224
+ const invalid = FIELDS.find((field) => field.numeric && dirty.current.has(field.key)
225
+ && (!Number.isSafeInteger(draftRef.current[field.key]) || draftRef.current[field.key] < field.min || draftRef.current[field.key] > field.max))
226
+ if (invalid) {
227
+ setStatus({ kind: 'error', text: invalid.label + '必须是 ' + invalid.min + '–' + invalid.max + ' 的整数。' })
228
+ return
229
+ }
219
230
  savingRef.current = true
220
231
  setSaving(true)
221
232
  setStatus({ kind: 'busy', text: '保存中…' })
@@ -316,12 +327,14 @@ window.__ModuleLoader__.load({
316
327
  h('span', null, field.label),
317
328
  h('input', {
318
329
  name: field.key,
319
- type: field.checkbox ? 'checkbox' : 'text',
330
+ type: field.checkbox ? 'checkbox' : field.numeric ? 'number' : 'text',
331
+ ...(field.numeric ? { min: field.min, max: field.max, step: 1 } : {}),
320
332
  disabled: editingDisabled,
321
333
  ...(field.checkbox ? { checked: draft[field.key] === true } : { value: draft[field.key] ?? '' }),
322
334
  placeholder: field.placeholder,
323
335
  style: field.checkbox ? { alignSelf: 'flex-start' } : { ...ACTION, cursor: 'text', width: '100%', boxSizing: 'border-box' },
324
- onChange: (event) => editField(field.key, field.checkbox ? event.target.checked : event.target.value),
336
+ onChange: (event) => editField(field.key, field.checkbox ? event.target.checked
337
+ : field.numeric && event.target.value !== '' ? Number(event.target.value) : event.target.value),
325
338
  }),
326
339
  h('small', { style: { opacity: 0.7 } }, field.hint),
327
340
  )),
package/dist/index.js CHANGED
@@ -20,6 +20,7 @@ import { ensureAcpCredentials } from './runtime/credentials.js';
20
20
  import { describeLowIntegrity, isLowIntegrityTarget } from './runtime/integrity.js';
21
21
  import { describeAuthWait, redactSensitiveText } from './runtime/redact.js';
22
22
  import { readCachedCatalog, writeCachedCatalog } from './runtime/catalog-cache.js';
23
+ import { createFileSessionMapStore } from './runtime/session-map.js';
23
24
  import { agyCliCandidates, createSubprocessCliRun, fetchAgyModels } from './runtime/agy-cli.js';
24
25
  import { AgYQuotaService, registerAgYQuotaRemote } from './quota/quota-remote.js';
25
26
  import { SettingsControl } from './quota/control.js';
@@ -56,6 +57,9 @@ export const AGY_CLIENT_CAPABILITIES = {
56
57
  */
57
58
  export async function disposeAcpRuntime(active) {
58
59
  active.disposed = true;
60
+ // 同步封住 adapter 的生产者与定时器,再切断链接;不等待桥清理才终止子进程。
61
+ const bridgeCleanup = active.bridgeTeardown?.();
62
+ void bridgeCleanup?.catch(() => undefined);
59
63
  active.abort?.abort(new Error('插件已卸载'));
60
64
  active.handle?.terminate();
61
65
  await active.link?.close().catch(() => undefined);
@@ -66,7 +70,7 @@ export async function disposeAcpRuntime(active) {
66
70
  await releaseRuntimeDirectory(active.directory).catch(() => undefined);
67
71
  active.directory = undefined;
68
72
  }
69
- await active.bridgeTeardown?.();
73
+ await bridgeCleanup;
70
74
  active.lifecycle?.stopped('disposed');
71
75
  }
72
76
  /** 回收失败/取消的连接与其受管进程,不卸载插件;旧连接不能终止后来者。 */
@@ -438,6 +442,7 @@ export function apply(ctx, config) {
438
442
  await cliRefresh;
439
443
  return cliModelRows ?? [];
440
444
  };
445
+ const sessionStore = config.resumeSessions === true ? createFileSessionMapStore(cacheDir, () => ctx.logger?.warn?.('antigravity-acp: 会话映射不可用或由另一 Host 占用,跨进程恢复已降级;不影响本地聊天')) : undefined;
441
446
  const workers = [];
442
447
  let metadata;
443
448
  // Serialize startup/credential preparation, not inference. This avoids competing OAuth imports.
@@ -465,6 +470,13 @@ export function apply(ctx, config) {
465
470
  promptTimeoutMs: config.promptTimeoutMs,
466
471
  parkSettleMs: config.bridgeParkSettleMs,
467
472
  preferredModel: config.preferredModel,
473
+ // ACP 会话复用:同一条 DSH 对话的后续回合只发增量;重启恢复默认关闭。
474
+ reuseSessions: config.reuseSessions,
475
+ resumeSessions: config.resumeSessions,
476
+ keepProcessAfterCancel: config.keepProcessAfterCancel,
477
+ cancelGraceMs: config.cancelGraceMs,
478
+ idleRecycleMs: config.idleRecycleMs,
479
+ sessionStore,
468
480
  canReadImages: () => attachmentStore !== undefined,
469
481
  readImage: (ref, signal) => {
470
482
  if (!attachmentStore)
@@ -494,7 +506,12 @@ export function apply(ctx, config) {
494
506
  worker.importMetadata(metadata);
495
507
  workers.push(worker);
496
508
  return { adapter: worker, read: () => lifecycle.read(), dispose: () => disposeAcpRuntime(active) };
497
- }, { capacity: config.maxConcurrentSessions, queueTimeoutMs: config.queueTimeoutMs });
509
+ }, {
510
+ capacity: config.maxConcurrentSessions,
511
+ queueTimeoutMs: config.queueTimeoutMs,
512
+ // 复用会话时同一对话必须粘在同一个 worker;关闭复用时回到纯负载调度。
513
+ sessionAffinity: config.reuseSessions !== false,
514
+ });
498
515
  ctx.inject(['attachments'], (scope) => {
499
516
  const store = scope.attachments;
500
517
  attachmentStore = store;
@@ -550,12 +567,19 @@ export function apply(ctx, config) {
550
567
  ctx.effect(function* () {
551
568
  yield () => registration();
552
569
  yield async () => control.dispose();
553
- yield async () => { try {
554
- await adapter.dispose();
555
- }
556
- finally {
557
- await pluginFetch.close();
558
- } };
570
+ yield async () => {
571
+ try {
572
+ await adapter.dispose();
573
+ }
574
+ finally {
575
+ try {
576
+ await sessionStore?.close();
577
+ }
578
+ finally {
579
+ await pluginFetch.close();
580
+ }
581
+ }
582
+ };
559
583
  }, 'antigravity-acp 生命周期清理');
560
584
  if (config.autoWarmup === true)
561
585
  control.account('warmup');