@scotthuang/agent-knock-knock 0.2.47 → 0.2.48

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 (34) hide show
  1. package/CHANGELOG.md +27 -0
  2. package/README.md +73 -50
  3. package/dist/src/approval-policy.d.ts +2 -1
  4. package/dist/src/approval-policy.js +12 -4
  5. package/dist/src/approval-policy.js.map +1 -1
  6. package/dist/src/claude-hook-store.js +17 -6
  7. package/dist/src/claude-hook-store.js.map +1 -1
  8. package/dist/src/claude-terminal-agent-adapter.js +16 -1
  9. package/dist/src/claude-terminal-agent-adapter.js.map +1 -1
  10. package/dist/src/cli.js +1037 -172
  11. package/dist/src/cli.js.map +1 -1
  12. package/dist/src/openclaw-plugin-helpers.d.ts +49 -0
  13. package/dist/src/openclaw-plugin-helpers.js +246 -0
  14. package/dist/src/openclaw-plugin-helpers.js.map +1 -0
  15. package/dist/src/openclaw-plugin.js +92 -269
  16. package/dist/src/openclaw-plugin.js.map +1 -1
  17. package/dist/src/runtime-log.js +54 -2
  18. package/dist/src/runtime-log.js.map +1 -1
  19. package/dist/src/store.js +432 -12
  20. package/dist/src/store.js.map +1 -1
  21. package/dist/src/terminal-agent-adapter.d.ts +3 -0
  22. package/dist/src/terminal-agent-adapter.js.map +1 -1
  23. package/dist/src/terminal-agent-bridge.d.ts +32 -2
  24. package/dist/src/terminal-agent-bridge.js +192 -34
  25. package/dist/src/terminal-agent-bridge.js.map +1 -1
  26. package/dist/src/terminal-control-provider.d.ts +3 -1
  27. package/dist/src/terminal-control-provider.js +41 -37
  28. package/dist/src/terminal-control-provider.js.map +1 -1
  29. package/dist/src/terminal-process-source.d.ts +12 -3
  30. package/dist/src/terminal-process-source.js +37 -6
  31. package/dist/src/terminal-process-source.js.map +1 -1
  32. package/openclaw.plugin.json +2 -2
  33. package/package.json +10 -5
  34. package/templates/openclaw-skills/agent-knock-knock/SKILL.md +4 -18
@@ -18,6 +18,7 @@ export interface TerminalBridgeStatus {
18
18
  label?: string;
19
19
  prompt_kind?: string;
20
20
  command?: string;
21
+ cwd?: string;
21
22
  tool_name?: string;
22
23
  request_detail?: string;
23
24
  reason?: string;
@@ -49,6 +50,7 @@ export interface TerminalApprovalExecution {
49
50
  label?: string;
50
51
  promptKind?: string;
51
52
  command?: string;
53
+ cwd?: string;
52
54
  toolName?: string;
53
55
  requestDetail?: string;
54
56
  fingerprint?: string;
@@ -56,6 +58,26 @@ export interface TerminalApprovalExecution {
56
58
  decisionMode?: "keys" | "structured";
57
59
  requestId?: string;
58
60
  }
61
+ export interface TerminalIdentityVerificationRequest {
62
+ agent: ExecutorKind;
63
+ pid: number;
64
+ terminalControl: TerminalControlRef;
65
+ }
66
+ export interface TerminalIdentityVerificationResult {
67
+ terminalControl?: TerminalControlRef;
68
+ }
69
+ export type TerminalIdentityVerifier = (request: TerminalIdentityVerificationRequest) => Promise<TerminalIdentityVerificationResult | void>;
70
+ export interface TerminalApprovalAuthorizationContext {
71
+ agent: ExecutorKind;
72
+ terminalControl: TerminalControlRef;
73
+ inspection: TerminalScreenInspection;
74
+ fingerprint?: string;
75
+ runtime?: TerminalRuntimeIdentity;
76
+ }
77
+ export interface TerminalApprovalAuthorizationDecision {
78
+ approved: boolean;
79
+ reason?: string;
80
+ }
59
81
  export interface TerminalMonitorPoll {
60
82
  status: TerminalBridgeStatus;
61
83
  inspection?: TerminalScreenInspection;
@@ -65,21 +87,27 @@ export interface TerminalMonitorPoll {
65
87
  export declare class TerminalAgentBridge {
66
88
  readonly registry: TerminalAgentAdapterRegistry;
67
89
  readonly terminalProvider: TerminalControlProvider;
90
+ private readonly verifyIdentity?;
68
91
  constructor(options: {
69
92
  registry: TerminalAgentAdapterRegistry;
70
93
  terminalProvider: TerminalControlProvider;
94
+ verifyIdentity?: TerminalIdentityVerifier;
71
95
  });
72
96
  adapterFor(agent: ExecutorKind | string): TerminalAgentAdapter;
73
97
  listProcesses(snapshots: readonly TerminalProcessSnapshot[], agents?: readonly ExecutorKind[]): Promise<ActiveTerminalProcess[]>;
74
98
  discoverProcesses(snapshots: readonly TerminalProcessSnapshot[], agents?: readonly ExecutorKind[]): Promise<ActiveTerminalProcess[]>;
75
- attachProcesses<T extends ActiveTerminalProcess>(agent: ExecutorKind, processes: T[]): Promise<T[]>;
99
+ attachProcesses<T extends ActiveTerminalProcess>(agent: ExecutorKind, processes: T[], options?: {
100
+ processTree?: readonly TerminalProcessSnapshot[];
101
+ }): Promise<T[]>;
76
102
  terminalConversationId(process: Pick<ActiveTerminalProcess, "agent" | "pid" | "terminalControl">): string;
77
103
  resolveConversationId(conversationId: string | undefined): Promise<ResolvedTerminalConversation | undefined>;
78
104
  status(agent: ExecutorKind, terminalControl: TerminalControlRef, options?: {
79
105
  scrollbackLines?: number;
80
106
  runtime?: TerminalRuntimeIdentity;
81
107
  }): Promise<TerminalBridgeStatus>;
82
- send(agent: ExecutorKind, terminalControl: TerminalControlRef, text: string): Promise<void>;
108
+ send(agent: ExecutorKind, terminalControl: TerminalControlRef, text: string, options?: {
109
+ runtime?: TerminalRuntimeIdentity;
110
+ }): Promise<void>;
83
111
  cancel(agent: ExecutorKind, terminalControl: TerminalControlRef, options?: {
84
112
  runtime?: TerminalRuntimeIdentity;
85
113
  scrollbackLines?: number;
@@ -96,6 +124,7 @@ export declare class TerminalAgentBridge {
96
124
  scrollbackLines?: number;
97
125
  runtime?: TerminalRuntimeIdentity;
98
126
  requiredDecisionMode?: "keys" | "structured";
127
+ authorize?: (context: TerminalApprovalAuthorizationContext) => TerminalApprovalAuthorizationDecision | Promise<TerminalApprovalAuthorizationDecision>;
99
128
  }): Promise<TerminalApprovalExecution>;
100
129
  monitorPoll(options: {
101
130
  agent: ExecutorKind;
@@ -110,5 +139,6 @@ export declare class TerminalAgentBridge {
110
139
  durableRequest?: TerminalDurableCompletionRequest;
111
140
  }): Promise<TerminalMonitorPoll>;
112
141
  private captureInspection;
142
+ private verifyTerminalIdentity;
113
143
  }
114
144
  export declare function terminalApprovalFingerprint(agent: ExecutorKind, terminalControl: Pick<TerminalControlRef, "target">, inspection: TerminalScreenInspection): string | undefined;
@@ -4,9 +4,11 @@ import { enrichActiveProcessesWithTerminalControl, terminalRefFromPane } from ".
4
4
  export class TerminalAgentBridge {
5
5
  registry;
6
6
  terminalProvider;
7
+ verifyIdentity;
7
8
  constructor(options) {
8
9
  this.registry = options.registry;
9
10
  this.terminalProvider = options.terminalProvider;
11
+ this.verifyIdentity = options.verifyIdentity;
10
12
  }
11
13
  adapterFor(agent) {
12
14
  return this.registry.require(agent);
@@ -24,17 +26,21 @@ export class TerminalAgentBridge {
24
26
  .map((snapshot) => adapter.classifyProcess(snapshot))
25
27
  .filter((process) => process !== undefined)
26
28
  .map((process) => ({ ...process, agent: adapter.agent }));
27
- discovered.push(...await this.attachProcesses(adapter.agent, classified));
29
+ discovered.push(...await enrichActiveProcessesWithTerminalControl(classified, this.terminalProvider, {
30
+ capabilities: terminalControlCapabilitiesForAdapter(adapter),
31
+ processTree: snapshots
32
+ }));
28
33
  }
29
34
  return discovered;
30
35
  }
31
36
  async discoverProcesses(snapshots, agents) {
32
37
  return this.listProcesses(snapshots, agents);
33
38
  }
34
- async attachProcesses(agent, processes) {
39
+ async attachProcesses(agent, processes, options = {}) {
35
40
  const adapter = this.registry.require(agent);
36
41
  return enrichActiveProcessesWithTerminalControl(processes, this.terminalProvider, {
37
- capabilities: terminalControlCapabilitiesForAdapter(adapter)
42
+ capabilities: terminalControlCapabilitiesForAdapter(adapter),
43
+ processTree: options.processTree
38
44
  });
39
45
  }
40
46
  terminalConversationId(process) {
@@ -55,17 +61,35 @@ export class TerminalAgentBridge {
55
61
  }
56
62
  const adapter = this.registry.require(parsed.agent);
57
63
  const panes = await this.terminalProvider.listPanes();
58
- const pane = panes.find((candidate) => candidate.kind === parsed.kind && candidate.target === parsed.target);
59
- if (!pane) {
64
+ const candidates = panes.filter((candidate) => candidate.kind === parsed.kind && candidate.target === parsed.target);
65
+ const verified = this.verifyIdentity
66
+ ? (await Promise.all(candidates.map(async (pane) => {
67
+ const terminalControl = terminalRefFromPane(pane, terminalControlCapabilitiesForAdapter(adapter));
68
+ try {
69
+ const verifiedTerminalControl = await this.verifyTerminalIdentity(adapter.agent, terminalControl, { pid: parsed.pid });
70
+ return { pane, terminalControl: verifiedTerminalControl };
71
+ }
72
+ catch {
73
+ return undefined;
74
+ }
75
+ }))).filter((candidate) => candidate !== undefined)
76
+ : candidates.slice(0, 1).map((pane) => ({
77
+ pane,
78
+ terminalControl: terminalRefFromPane(pane, terminalControlCapabilitiesForAdapter(adapter))
79
+ }));
80
+ if (verified.length === 0) {
60
81
  throw new Error(`terminal-controlled session ${parsed.conversationId} is no longer available`);
61
82
  }
83
+ if (verified.length > 1) {
84
+ throw new Error(`terminal-controlled session ${parsed.conversationId} matches multiple active panes`);
85
+ }
62
86
  return {
63
87
  conversationId: parsed.conversationId,
64
88
  agent: parsed.agent,
65
89
  pid: parsed.pid,
66
90
  legacy: parsed.legacy,
67
91
  adapter,
68
- terminalControl: terminalRefFromPane(pane, terminalControlCapabilitiesForAdapter(adapter))
92
+ terminalControl: verified[0].terminalControl
69
93
  };
70
94
  }
71
95
  async status(agent, terminalControl, options = {}) {
@@ -75,8 +99,8 @@ export class TerminalAgentBridge {
75
99
  return unsupportedScreenStatus(adapter, terminalControl);
76
100
  }
77
101
  try {
78
- const { inspection } = await this.captureInspection(adapter, terminalControl, options);
79
- return statusFromInspection(adapter, terminalControl, inspection);
102
+ const captured = await this.captureInspection(adapter, terminalControl, options);
103
+ return statusFromInspection(adapter, captured.terminalControl, captured.inspection);
80
104
  }
81
105
  catch (error) {
82
106
  const message = error instanceof Error ? error.message : String(error);
@@ -98,7 +122,7 @@ export class TerminalAgentBridge {
98
122
  };
99
123
  }
100
124
  }
101
- async send(agent, terminalControl, text) {
125
+ async send(agent, terminalControl, text, options = {}) {
102
126
  const adapter = this.registry.require(agent);
103
127
  if (!terminalControl.capabilities.includes("send_keys")) {
104
128
  throw new Error(`${adapter.displayName} terminal input is not supported`);
@@ -107,11 +131,29 @@ export class TerminalAgentBridge {
107
131
  if (!normalized) {
108
132
  throw new Error("terminal message is empty");
109
133
  }
110
- await this.terminalProvider.sendText(terminalControl.target, normalized, {
111
- socketPath: terminalControl.socketPath
134
+ const verifiedForText = await this.verifyTerminalIdentity(adapter.agent, terminalControl, options.runtime);
135
+ await this.terminalProvider.sendText(verifiedForText.target, normalized, {
136
+ socketPath: verifiedForText.socketPath
112
137
  });
113
- await this.terminalProvider.sendKeys(terminalControl.target, ["C-m"], {
114
- socketPath: terminalControl.socketPath
138
+ // Text and Enter are separate tmux operations. Revalidate between them; if the
139
+ // identity changed, clear the line best-effort and never submit it.
140
+ let verifiedForEnter;
141
+ try {
142
+ verifiedForEnter = await this.verifyTerminalIdentity(adapter.agent, terminalControl, options.runtime);
143
+ }
144
+ catch (error) {
145
+ try {
146
+ await this.terminalProvider.sendKeys(verifiedForText.target, ["C-u"], {
147
+ socketPath: verifiedForText.socketPath
148
+ });
149
+ }
150
+ catch {
151
+ // Best effort only: preserving the identity failure is more important than cleanup.
152
+ }
153
+ throw error;
154
+ }
155
+ await this.terminalProvider.sendKeys(verifiedForEnter.target, ["C-m"], {
156
+ socketPath: verifiedForEnter.socketPath
115
157
  });
116
158
  }
117
159
  async cancel(agent, terminalControl, options = {}) {
@@ -121,15 +163,17 @@ export class TerminalAgentBridge {
121
163
  terminalControl.capabilities.includes("terminal_approval") &&
122
164
  adapter.capabilities.screenStatus &&
123
165
  terminalControl.capabilities.includes("screen_status")) {
124
- const { inspection } = await this.captureInspection(adapter, terminalControl, options);
166
+ const captured = await this.captureInspection(adapter, terminalControl, options);
167
+ const { inspection } = captured;
125
168
  if (inspection.approval.approvable && inspection.approval.action.mode === "structured") {
126
- const fingerprint = terminalApprovalFingerprint(adapter.agent, terminalControl, inspection);
169
+ const fingerprint = terminalApprovalFingerprint(adapter.agent, captured.terminalControl, inspection);
127
170
  if (!fingerprint) {
128
171
  return {
129
172
  cancelRequested: false,
130
173
  reason: `${adapter.displayName} structured approval has no fingerprint`
131
174
  };
132
175
  }
176
+ await this.verifyTerminalIdentity(adapter.agent, captured.terminalControl, options.runtime);
133
177
  const decision = await adapter.resolveApproval({
134
178
  decision: "deny",
135
179
  expectedFingerprint: fingerprint,
@@ -160,8 +204,9 @@ export class TerminalAgentBridge {
160
204
  reason: `${adapter.displayName} terminal cancellation is not supported`
161
205
  };
162
206
  }
163
- await this.terminalProvider.sendKeys(terminalControl.target, adapter.cancelKeys, {
164
- socketPath: terminalControl.socketPath
207
+ const verifiedForCancel = await this.verifyTerminalIdentity(adapter.agent, terminalControl, options.runtime);
208
+ await this.terminalProvider.sendKeys(verifiedForCancel.target, adapter.cancelKeys, {
209
+ socketPath: verifiedForCancel.socketPath
165
210
  });
166
211
  return {
167
212
  cancelRequested: true,
@@ -179,7 +224,9 @@ export class TerminalAgentBridge {
179
224
  reason: `${adapter.displayName} terminal approval is not supported`
180
225
  };
181
226
  }
182
- const { inspection } = await this.captureInspection(adapter, terminalControl, options);
227
+ const captured = await this.captureInspection(adapter, terminalControl, options);
228
+ const { inspection } = captured;
229
+ const activeTerminalControl = captured.terminalControl;
183
230
  if (!inspection.approval.approvable) {
184
231
  return {
185
232
  approved: false,
@@ -199,7 +246,7 @@ export class TerminalAgentBridge {
199
246
  label: inspection.approval.action.label,
200
247
  promptKind: inspection.approval.promptKind,
201
248
  command: inspection.approval.command,
202
- fingerprint: terminalApprovalFingerprint(adapter.agent, terminalControl, inspection),
249
+ fingerprint: terminalApprovalFingerprint(adapter.agent, activeTerminalControl, inspection),
203
250
  screenExcerpt: inspection.screenExcerpt,
204
251
  decisionMode,
205
252
  requestId: inspection.approval.action.requestId
@@ -216,7 +263,7 @@ export class TerminalAgentBridge {
216
263
  screenExcerpt: inspection.screenExcerpt
217
264
  };
218
265
  }
219
- const fingerprint = terminalApprovalFingerprint(adapter.agent, terminalControl, inspection);
266
+ const fingerprint = terminalApprovalFingerprint(adapter.agent, activeTerminalControl, inspection);
220
267
  if (options.expectedFingerprint && options.expectedFingerprint !== fingerprint) {
221
268
  return {
222
269
  approved: false,
@@ -235,6 +282,35 @@ export class TerminalAgentBridge {
235
282
  requestId: inspection.approval.action.requestId
236
283
  };
237
284
  }
285
+ if (options.authorize) {
286
+ const authorization = await options.authorize({
287
+ agent: adapter.agent,
288
+ terminalControl: activeTerminalControl,
289
+ inspection,
290
+ fingerprint,
291
+ runtime: options.runtime
292
+ });
293
+ if (!authorization.approved) {
294
+ return {
295
+ approved: false,
296
+ blocked: true,
297
+ reason: authorization.reason ?? "approval was not authorized",
298
+ key: inspection.approval.action.keys.length === 1
299
+ ? inspection.approval.action.keys[0]
300
+ : undefined,
301
+ keys: inspection.approval.action.keys,
302
+ label: inspection.approval.action.label,
303
+ promptKind: inspection.approval.promptKind,
304
+ command: inspection.approval.command,
305
+ toolName: inspection.approval.toolName,
306
+ requestDetail: inspection.approval.requestDetail,
307
+ fingerprint,
308
+ screenExcerpt: inspection.screenExcerpt,
309
+ decisionMode,
310
+ requestId: inspection.approval.action.requestId
311
+ };
312
+ }
313
+ }
238
314
  if (decisionMode === "structured") {
239
315
  if (!options.expectedFingerprint) {
240
316
  return {
@@ -261,6 +337,7 @@ export class TerminalAgentBridge {
261
337
  requestId: inspection.approval.action.requestId
262
338
  };
263
339
  }
340
+ await this.verifyTerminalIdentity(adapter.agent, activeTerminalControl, options.runtime);
264
341
  const resolved = await adapter.resolveApproval({
265
342
  decision: "allow",
266
343
  expectedFingerprint: options.expectedFingerprint,
@@ -281,21 +358,82 @@ export class TerminalAgentBridge {
281
358
  requestId: resolved.requestId ?? inspection.approval.action.requestId
282
359
  };
283
360
  }
284
- await this.terminalProvider.sendKeys(terminalControl.target, inspection.approval.action.keys, { socketPath: terminalControl.socketPath });
361
+ const recaptured = await this.captureInspection(adapter, activeTerminalControl, options);
362
+ const recapturedInspection = recaptured.inspection;
363
+ if (!recapturedInspection.approval.approvable) {
364
+ return {
365
+ approved: false,
366
+ blocked: true,
367
+ reason: "approval prompt is no longer approvable after authorization",
368
+ promptKind: recapturedInspection.approval.promptKind,
369
+ command: recapturedInspection.approval.command,
370
+ cwd: recapturedInspection.approval.cwd,
371
+ toolName: recapturedInspection.approval.toolName,
372
+ requestDetail: recapturedInspection.approval.requestDetail,
373
+ screenExcerpt: recapturedInspection.screenExcerpt
374
+ };
375
+ }
376
+ const recapturedDecisionMode = recapturedInspection.approval.action.mode ?? "keys";
377
+ const recapturedFingerprint = terminalApprovalFingerprint(adapter.agent, recaptured.terminalControl, recapturedInspection);
378
+ if (recapturedDecisionMode !== decisionMode) {
379
+ return {
380
+ approved: false,
381
+ blocked: true,
382
+ reason: "approval decision mode changed after authorization",
383
+ key: recapturedInspection.approval.action.keys.length === 1
384
+ ? recapturedInspection.approval.action.keys[0]
385
+ : undefined,
386
+ keys: recapturedInspection.approval.action.keys,
387
+ label: recapturedInspection.approval.action.label,
388
+ promptKind: recapturedInspection.approval.promptKind,
389
+ command: recapturedInspection.approval.command,
390
+ cwd: recapturedInspection.approval.cwd,
391
+ toolName: recapturedInspection.approval.toolName,
392
+ requestDetail: recapturedInspection.approval.requestDetail,
393
+ fingerprint: recapturedFingerprint,
394
+ screenExcerpt: recapturedInspection.screenExcerpt,
395
+ decisionMode: recapturedDecisionMode,
396
+ requestId: recapturedInspection.approval.action.requestId
397
+ };
398
+ }
399
+ if (recapturedFingerprint !== fingerprint) {
400
+ return {
401
+ approved: false,
402
+ blocked: true,
403
+ reason: "approval fingerprint changed after authorization",
404
+ key: recapturedInspection.approval.action.keys.length === 1
405
+ ? recapturedInspection.approval.action.keys[0]
406
+ : undefined,
407
+ keys: recapturedInspection.approval.action.keys,
408
+ label: recapturedInspection.approval.action.label,
409
+ promptKind: recapturedInspection.approval.promptKind,
410
+ command: recapturedInspection.approval.command,
411
+ cwd: recapturedInspection.approval.cwd,
412
+ toolName: recapturedInspection.approval.toolName,
413
+ requestDetail: recapturedInspection.approval.requestDetail,
414
+ fingerprint: recapturedFingerprint,
415
+ screenExcerpt: recapturedInspection.screenExcerpt,
416
+ decisionMode: recapturedDecisionMode,
417
+ requestId: recapturedInspection.approval.action.requestId
418
+ };
419
+ }
420
+ const verifiedForApproval = await this.verifyTerminalIdentity(adapter.agent, recaptured.terminalControl, options.runtime);
421
+ await this.terminalProvider.sendKeys(verifiedForApproval.target, recapturedInspection.approval.action.keys, { socketPath: verifiedForApproval.socketPath });
285
422
  return {
286
423
  approved: true,
287
424
  blocked: false,
288
- key: inspection.approval.action.keys.length === 1
289
- ? inspection.approval.action.keys[0]
425
+ key: recapturedInspection.approval.action.keys.length === 1
426
+ ? recapturedInspection.approval.action.keys[0]
290
427
  : undefined,
291
- keys: inspection.approval.action.keys,
292
- label: inspection.approval.action.label,
293
- promptKind: inspection.approval.promptKind,
294
- command: inspection.approval.command,
295
- fingerprint,
296
- screenExcerpt: inspection.screenExcerpt,
297
- decisionMode,
298
- requestId: inspection.approval.action.requestId
428
+ keys: recapturedInspection.approval.action.keys,
429
+ label: recapturedInspection.approval.action.label,
430
+ promptKind: recapturedInspection.approval.promptKind,
431
+ command: recapturedInspection.approval.command,
432
+ cwd: recapturedInspection.approval.cwd,
433
+ fingerprint: recapturedFingerprint,
434
+ screenExcerpt: recapturedInspection.screenExcerpt,
435
+ decisionMode: recapturedDecisionMode,
436
+ requestId: recapturedInspection.approval.action.requestId
299
437
  };
300
438
  }
301
439
  async monitorPoll(options) {
@@ -307,7 +445,7 @@ export class TerminalAgentBridge {
307
445
  try {
308
446
  const captured = await this.captureInspection(adapter, options.terminalControl, options.screenOptions);
309
447
  inspection = captured.inspection;
310
- status = statusFromInspection(adapter, options.terminalControl, inspection);
448
+ status = statusFromInspection(adapter, captured.terminalControl, inspection);
311
449
  }
312
450
  catch (error) {
313
451
  status = failedScreenStatus(adapter, options.terminalControl, error);
@@ -346,11 +484,13 @@ export class TerminalAgentBridge {
346
484
  };
347
485
  }
348
486
  async captureInspection(adapter, terminalControl, options = {}) {
349
- const screen = await this.terminalProvider.capture(terminalControl.target, {
487
+ const verifiedTerminalControl = await this.verifyTerminalIdentity(adapter.agent, terminalControl, options.runtime);
488
+ const screen = await this.terminalProvider.capture(verifiedTerminalControl.target, {
350
489
  scrollbackLines: options.scrollbackLines ?? 120,
351
- socketPath: terminalControl.socketPath
490
+ socketPath: verifiedTerminalControl.socketPath
352
491
  });
353
492
  return {
493
+ terminalControl: verifiedTerminalControl,
354
494
  screen,
355
495
  inspection: adapter.inspectScreen({
356
496
  screen,
@@ -361,6 +501,20 @@ export class TerminalAgentBridge {
361
501
  })
362
502
  };
363
503
  }
504
+ async verifyTerminalIdentity(agent, terminalControl, runtime) {
505
+ if (!this.verifyIdentity) {
506
+ return terminalControl;
507
+ }
508
+ if (!Number.isInteger(runtime?.pid) || Number(runtime?.pid) <= 0) {
509
+ throw new Error(`refusing terminal access for ${agent}:${terminalControl.target} without an exact agent pid; reattach this legacy tmux session before controlling it`);
510
+ }
511
+ const result = await this.verifyIdentity({
512
+ agent,
513
+ pid: Number(runtime?.pid),
514
+ terminalControl
515
+ });
516
+ return result?.terminalControl ?? terminalControl;
517
+ }
364
518
  }
365
519
  export function terminalApprovalFingerprint(agent, terminalControl, inspection) {
366
520
  if (!inspection.approval.approvable) {
@@ -376,6 +530,7 @@ export function terminalApprovalFingerprint(agent, terminalControl, inspection)
376
530
  label: inspection.approval.action.label,
377
531
  prompt_kind: inspection.approval.promptKind,
378
532
  command: inspection.approval.command,
533
+ cwd: inspection.approval.cwd,
379
534
  tool_name: inspection.approval.toolName,
380
535
  request_detail: inspection.approval.requestDetail,
381
536
  screen_excerpt: decisionMode === "structured" ? undefined : inspection.screenExcerpt,
@@ -406,6 +561,7 @@ function statusFromInspection(adapter, terminalControl, inspection) {
406
561
  label: approval.approvable ? approval.action.label : undefined,
407
562
  prompt_kind: approval.promptKind,
408
563
  command: approval.command,
564
+ cwd: approval.cwd,
409
565
  tool_name: approval.toolName,
410
566
  request_detail: approval.requestDetail,
411
567
  reason: approval.approvable ? undefined : approval.reason,
@@ -446,6 +602,7 @@ function approvalOutput(approval) {
446
602
  reason: approval.reason,
447
603
  promptKind: approval.promptKind,
448
604
  command: approval.command,
605
+ cwd: approval.cwd,
449
606
  toolName: approval.toolName,
450
607
  requestDetail: approval.requestDetail
451
608
  };
@@ -458,6 +615,7 @@ function approvalOutput(approval) {
458
615
  label: approval.action.label,
459
616
  promptKind: approval.promptKind,
460
617
  command: approval.command,
618
+ cwd: approval.cwd,
461
619
  toolName: approval.toolName,
462
620
  requestDetail: approval.requestDetail,
463
621
  decisionMode: approval.action.mode ?? "keys",
@@ -1 +1 @@
1
- {"version":3,"file":"terminal-agent-bridge.js","sourceRoot":"","sources":["../../src/terminal-agent-bridge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"terminal-agent-bridge.js","sourceRoot":"","sources":["../../src/terminal-agent-bridge.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { ActiveTerminalProcess, TerminalControlCapability, TerminalControlRef } from "./terminal-agent-adapter.js";
1
+ import type { ActiveTerminalProcess, TerminalControlCapability, TerminalControlRef, TerminalProcessSnapshot } from "./terminal-agent-adapter.js";
2
2
  export interface TerminalPane {
3
3
  kind: "tmux";
4
4
  target: string;
@@ -86,6 +86,8 @@ export declare class StaticTerminalControlProvider implements TerminalControlPro
86
86
  export declare function parseTmuxListPanes(output: string, socketPath?: string): TerminalPane[];
87
87
  export declare function enrichActiveProcessesWithTerminalControl<T extends ActiveTerminalProcess>(processes: T[], provider: TerminalControlProvider, options?: {
88
88
  capabilities?: readonly TerminalControlCapability[];
89
+ processTree?: readonly TerminalProcessSnapshot[];
89
90
  }): Promise<T[]>;
90
91
  export declare function terminalRefFromPane(pane: TerminalPane, capabilities?: readonly TerminalControlCapability[]): TerminalControlRef;
92
+ export declare function terminalPaneContainsProcess(process: Pick<TerminalProcessSnapshot, "pid" | "ppid">, pane: TerminalPane, processes: readonly Pick<TerminalProcessSnapshot, "pid" | "ppid">[]): boolean;
91
93
  export declare function discoverTmuxSocketPaths(root: string): string[];