@yu_robotics/remote-cli 1.6.53 → 1.6.68

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 (64) hide show
  1. package/README.md +18 -8
  2. package/dist/client/MessageHandler.d.ts +7 -0
  3. package/dist/client/MessageHandler.d.ts.map +1 -1
  4. package/dist/client/MessageHandler.js +96 -3
  5. package/dist/client/MessageHandler.js.map +1 -1
  6. package/dist/client/TaskRecovery.d.ts +7 -3
  7. package/dist/client/TaskRecovery.d.ts.map +1 -1
  8. package/dist/client/TaskRecovery.js +80 -27
  9. package/dist/client/TaskRecovery.js.map +1 -1
  10. package/dist/client/WebSocketClient.d.ts.map +1 -1
  11. package/dist/client/WebSocketClient.js +2 -10
  12. package/dist/client/WebSocketClient.js.map +1 -1
  13. package/dist/commands/start.d.ts +3 -11
  14. package/dist/commands/start.d.ts.map +1 -1
  15. package/dist/commands/start.js +22 -99
  16. package/dist/commands/start.js.map +1 -1
  17. package/dist/executor/ClaudePersistentExecutor.d.ts +40 -2
  18. package/dist/executor/ClaudePersistentExecutor.d.ts.map +1 -1
  19. package/dist/executor/ClaudePersistentExecutor.js +358 -9
  20. package/dist/executor/ClaudePersistentExecutor.js.map +1 -1
  21. package/dist/executor/CodexAppServerExecutor.d.ts +13 -0
  22. package/dist/executor/CodexAppServerExecutor.d.ts.map +1 -1
  23. package/dist/executor/CodexAppServerExecutor.js +208 -5
  24. package/dist/executor/CodexAppServerExecutor.js.map +1 -1
  25. package/dist/executor/CodexSandbox.d.ts +23 -0
  26. package/dist/executor/CodexSandbox.d.ts.map +1 -0
  27. package/dist/executor/CodexSandbox.js +211 -0
  28. package/dist/executor/CodexSandbox.js.map +1 -0
  29. package/dist/executor/IExecutor.d.ts +5 -1
  30. package/dist/executor/IExecutor.d.ts.map +1 -1
  31. package/dist/executor/claude/ClaudeFilePolicy.d.ts +7 -0
  32. package/dist/executor/claude/ClaudeFilePolicy.d.ts.map +1 -0
  33. package/dist/executor/claude/ClaudeFilePolicy.js +88 -0
  34. package/dist/executor/claude/ClaudeFilePolicy.js.map +1 -0
  35. package/dist/executor/claude/ClaudeSandbox.d.ts +32 -0
  36. package/dist/executor/claude/ClaudeSandbox.d.ts.map +1 -0
  37. package/dist/executor/claude/ClaudeSandbox.js +245 -0
  38. package/dist/executor/claude/ClaudeSandbox.js.map +1 -0
  39. package/dist/executor/claude/approvalMcpServer.d.ts +2 -0
  40. package/dist/executor/claude/approvalMcpServer.d.ts.map +1 -0
  41. package/dist/executor/claude/approvalMcpServer.js +160 -0
  42. package/dist/executor/claude/approvalMcpServer.js.map +1 -0
  43. package/dist/executor/claude/filePolicyHook.d.ts +2 -0
  44. package/dist/executor/claude/filePolicyHook.d.ts.map +1 -0
  45. package/dist/executor/claude/filePolicyHook.js +63 -0
  46. package/dist/executor/claude/filePolicyHook.js.map +1 -0
  47. package/dist/executor/index.d.ts.map +1 -1
  48. package/dist/executor/index.js +4 -3
  49. package/dist/executor/index.js.map +1 -1
  50. package/dist/index.js +1 -1
  51. package/dist/index.js.map +1 -1
  52. package/dist/thread/ThreadManager.d.ts.map +1 -1
  53. package/dist/thread/ThreadManager.js +2 -0
  54. package/dist/thread/ThreadManager.js.map +1 -1
  55. package/dist/types/config.d.ts +32 -2
  56. package/dist/types/config.d.ts.map +1 -1
  57. package/dist/types/config.js.map +1 -1
  58. package/dist/types/index.d.ts +39 -0
  59. package/dist/types/index.d.ts.map +1 -1
  60. package/dist/update/AutomaticUpdater.d.ts +7 -1
  61. package/dist/update/AutomaticUpdater.d.ts.map +1 -1
  62. package/dist/update/AutomaticUpdater.js +25 -2
  63. package/dist/update/AutomaticUpdater.js.map +1 -1
  64. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ClaudePersistentExecutor.js","sourceRoot":"","sources":["../../src/executor/ClaudePersistentExecutor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ClaudePersistentExecutor.js","sourceRoot":"","sources":["../../src/executor/ClaudePersistentExecutor.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,8 @@
1
1
  import { DirectoryGuard } from '../security/DirectoryGuard';
2
+ import type { ApprovalAction } from '../types';
2
3
  import type { ExecuteOptions, ExecuteResult, ExecutorModelInfo, IExecutor } from './IExecutor';
3
4
  import { AppServerMessage } from './CodexAppServerClient';
5
+ import type { CodexSandboxConfig } from '../types/config';
4
6
  export interface CodexAppServerTransport {
5
7
  start(): Promise<void>;
6
8
  request(method: string, params?: any, timeoutMs?: number): Promise<any>;
@@ -15,6 +17,7 @@ export interface CodexAppServerExecutorOptions {
15
17
  model?: string;
16
18
  effort?: string;
17
19
  autoApprove?: boolean;
20
+ sandbox?: CodexSandboxConfig;
18
21
  initialWorkingDirectory?: string;
19
22
  codexCommand?: string;
20
23
  threadId?: string;
@@ -33,6 +36,7 @@ export declare class CodexAppServerExecutor implements IExecutor {
33
36
  private model?;
34
37
  private effort?;
35
38
  private readonly autoApprove;
39
+ private readonly sandbox;
36
40
  private readonly remoteThreadId?;
37
41
  private readonly sessionFilePath;
38
42
  private readonly inactivityTimeoutMs;
@@ -51,6 +55,8 @@ export declare class CodexAppServerExecutor implements IExecutor {
51
55
  execute(prompt: string, options?: ExecuteOptions): Promise<ExecuteResult>;
52
56
  getCurrentWorkingDirectory(): string;
53
57
  setWorkingDirectory(targetPath: string): Promise<void>;
58
+ getSandboxStatus(): string;
59
+ configureSandbox(command: string): Promise<ExecuteResult>;
54
60
  resetContext(): void;
55
61
  abort(): Promise<boolean>;
56
62
  destroy(): Promise<void>;
@@ -58,6 +64,9 @@ export declare class CodexAppServerExecutor implements IExecutor {
58
64
  getSessionId(): string | null;
59
65
  isWaitingInput(): boolean;
60
66
  sendInput(input: string): boolean;
67
+ respondToApproval(requestId: string, action: ApprovalAction): boolean;
68
+ private resolveUserInput;
69
+ private applyUserInput;
61
70
  listModels(): Promise<ExecutorModelInfo[]>;
62
71
  setModel(model: string): Promise<ExecuteResult>;
63
72
  clearModel(): void;
@@ -66,6 +75,10 @@ export declare class CodexAppServerExecutor implements IExecutor {
66
75
  deleteThreadData(_threadId: string): Promise<void>;
67
76
  private ensureThread;
68
77
  private handleMessage;
78
+ private approvalRoots;
79
+ private rememberApproval;
80
+ private queueApproval;
81
+ private finishApproval;
69
82
  private handleServerRequest;
70
83
  private handleItemStarted;
71
84
  private handleItemCompleted;
@@ -1 +1 @@
1
- {"version":3,"file":"CodexAppServerExecutor.d.ts","sourceRoot":"","sources":["../../src/executor/CodexAppServerExecutor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CodexAppServerExecutor.d.ts","sourceRoot":"","sources":["../../src/executor/CodexAppServerExecutor.ts"],"names":[],"mappings":"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"}
@@ -37,8 +37,10 @@ exports.CodexAppServerExecutor = void 0;
37
37
  const fs = __importStar(require("fs"));
38
38
  const os = __importStar(require("os"));
39
39
  const path = __importStar(require("path"));
40
+ const crypto_1 = require("crypto");
40
41
  const CodexAppServerClient_1 = require("./CodexAppServerClient");
41
42
  const CodexTaskNotifications_1 = require("./CodexTaskNotifications");
43
+ const CodexSandbox_1 = require("./CodexSandbox");
42
44
  const DEFAULT_INACTIVITY_TIMEOUT_MS = 10 * 60 * 1000;
43
45
  const DEFAULT_COMPACT_TIMEOUT_MS = 10 * 60 * 1000;
44
46
  /**
@@ -52,6 +54,7 @@ class CodexAppServerExecutor {
52
54
  model;
53
55
  effort;
54
56
  autoApprove;
57
+ sandbox;
55
58
  remoteThreadId;
56
59
  sessionFilePath;
57
60
  inactivityTimeoutMs;
@@ -72,6 +75,7 @@ class CodexAppServerExecutor {
72
75
  this.effort = options.effort;
73
76
  this.autoApprove = options.autoApprove ?? true;
74
77
  this.remoteThreadId = options.threadId;
78
+ this.sandbox = new CodexSandbox_1.CodexSandbox(directoryGuard, options.sandbox, options.threadId);
75
79
  this.inactivityTimeoutMs = options.inactivityTimeoutMs ?? DEFAULT_INACTIVITY_TIMEOUT_MS;
76
80
  this.compactTimeoutMs = options.compactTimeoutMs ?? DEFAULT_COMPACT_TIMEOUT_MS;
77
81
  if (options.initialWorkingDirectory) {
@@ -118,6 +122,9 @@ class CodexAppServerExecutor {
118
122
  }
119
123
  const temporaryFiles = [];
120
124
  try {
125
+ // Resolve paths before marking a turn active so a rejected policy cannot
126
+ // leave the executor busy without an actual app-server turn.
127
+ const sandboxOptions = this.sandbox.turnOptions(this.currentWorkingDirectory);
121
128
  const input = await this.buildInput(prompt, options.attachments, temporaryFiles);
122
129
  return await new Promise((resolve) => {
123
130
  const active = {
@@ -146,6 +153,7 @@ class CodexAppServerExecutor {
146
153
  approvalPolicy: 'never',
147
154
  sandboxPolicy: { type: 'dangerFullAccess' },
148
155
  } : {}),
156
+ ...sandboxOptions,
149
157
  };
150
158
  void this.client.request('turn/start', params).then((response) => {
151
159
  if (this.activeTurn !== active)
@@ -174,6 +182,50 @@ class CodexAppServerExecutor {
174
182
  async setWorkingDirectory(targetPath) {
175
183
  this.currentWorkingDirectory = this.directoryGuard.resolveWorkingDirectory(targetPath, this.currentWorkingDirectory);
176
184
  this.client.setWorkingDirectory(this.currentWorkingDirectory);
185
+ if (this.sandbox.isRestricted()) {
186
+ // Reapply both thread defaults and the turn policy to the new workspace.
187
+ await this.client.stop();
188
+ this.threadReady = false;
189
+ }
190
+ }
191
+ getSandboxStatus() {
192
+ return this.sandbox.describe(this.currentWorkingDirectory);
193
+ }
194
+ async configureSandbox(command) {
195
+ if (this.activeTurn || this.compactWaiter)
196
+ return { success: false, error: 'Wait for the running task before changing sandbox settings.' };
197
+ try {
198
+ const match = /^(\S+)(?:\s+([\s\S]*))?$/.exec(command.trim());
199
+ const action = match?.[1] ?? '';
200
+ const value = match?.[2] ?? '';
201
+ const config = this.sandbox.getConfig() ?? { mode: 'workspace-write' };
202
+ let next = { ...config };
203
+ if (action === 'default' && !value)
204
+ next = undefined;
205
+ else if (['on', 'off', 'read-only'].includes(action) && !value) {
206
+ next.mode = action === 'on' ? 'workspace-write' : action === 'off' ? 'danger-full-access' : 'read-only';
207
+ }
208
+ else if (action === 'network' && ['on', 'off'].includes(value))
209
+ next.networkAccess = value === 'on';
210
+ else if (['allow', 'remove'].includes(action) && value) {
211
+ const directory = this.sandbox.normalize(value, this.currentWorkingDirectory);
212
+ next.writableRoots = action === 'allow'
213
+ ? [...new Set([...(config.writableRoots ?? []), directory])]
214
+ : (config.writableRoots ?? []).filter(root => root !== directory);
215
+ if (action === 'remove' && next.writableRoots.length === (config.writableRoots ?? []).length) {
216
+ return { success: false, error: 'That directory is not an extra grant. Default development directories are controlled by developmentDirectories in the configuration.' };
217
+ }
218
+ }
219
+ else
220
+ return { success: false, error: 'Usage: /sandbox on|off|read-only|default; /sandbox network on|off; /sandbox allow|remove <directory>' };
221
+ await this.client.stop();
222
+ this.threadReady = false;
223
+ this.sandbox.configure(next);
224
+ return { success: true, output: this.getSandboxStatus() };
225
+ }
226
+ catch (error) {
227
+ return { success: false, error: this.errorMessage(error) };
228
+ }
177
229
  }
178
230
  resetContext() {
179
231
  this.taskNotifications.clear();
@@ -196,9 +248,12 @@ class CodexAppServerExecutor {
196
248
  if (!active || !this.codexThreadId)
197
249
  return false;
198
250
  for (const pending of this.pendingUserInputs.splice(0)) {
251
+ this.finishApproval(pending, 'expired');
199
252
  this.client.respond(pending.id, pending.method === 'item/tool/requestUserInput'
200
253
  ? { answers: {} }
201
- : { decision: 'cancel' });
254
+ : pending.method === 'item/permissions/requestApproval'
255
+ ? { permissions: {}, scope: 'turn' }
256
+ : { decision: 'cancel' });
202
257
  }
203
258
  if (!active.turnId) {
204
259
  await this.failAndRestart('Aborted by user');
@@ -240,6 +295,32 @@ class CodexAppServerExecutor {
240
295
  const pending = this.pendingUserInputs.shift();
241
296
  if (!pending)
242
297
  return false;
298
+ return this.resolveUserInput(pending, input);
299
+ }
300
+ respondToApproval(requestId, action) {
301
+ const index = this.pendingUserInputs.findIndex(input => input.approval?.requestId === requestId);
302
+ if (index < 0 || !['approve', 'deny', 'remember'].includes(action))
303
+ return false;
304
+ if (action === 'remember' && !this.pendingUserInputs[index].approval?.canRemember)
305
+ return false;
306
+ const [pending] = this.pendingUserInputs.splice(index, 1);
307
+ return this.resolveUserInput(pending, action === 'approve' ? 'yes' : action === 'deny' ? 'no' : 'remember');
308
+ }
309
+ resolveUserInput(pending, input) {
310
+ try {
311
+ return this.applyUserInput(pending, input);
312
+ }
313
+ catch {
314
+ // A transport write failure must not orphan a pending card or answer a
315
+ // different request on retry. Process termination expires it normally.
316
+ if (this.activeTurn)
317
+ this.pendingUserInputs.unshift(pending);
318
+ else
319
+ this.finishApproval(pending, 'expired');
320
+ return false;
321
+ }
322
+ }
323
+ applyUserInput(pending, input) {
243
324
  const normalized = input.trim().toLowerCase();
244
325
  if (pending.method === 'item/tool/requestUserInput') {
245
326
  const questions = Array.isArray(pending.params?.questions) ? pending.params.questions : [];
@@ -251,6 +332,40 @@ class CodexAppServerExecutor {
251
332
  this.client.respond(pending.id, { answers });
252
333
  return true;
253
334
  }
335
+ if (pending.method === 'item/permissions/requestApproval') {
336
+ if (!['yes', 'y', 'accept', 'always', 'remember', 'no', 'n', 'decline', 'cancel'].includes(normalized)) {
337
+ this.pendingUserInputs.unshift(pending);
338
+ return false;
339
+ }
340
+ const approved = ['yes', 'y', 'accept', 'always', 'remember'].includes(normalized);
341
+ const permissions = approved ? pending.params.permissions ?? {} : {};
342
+ if (normalized === 'remember') {
343
+ try {
344
+ this.rememberApproval(pending);
345
+ }
346
+ catch (error) {
347
+ this.pendingUserInputs.unshift(pending);
348
+ this.activeTurn?.options.onStream?.(`\n${this.errorMessage(error)}\n`);
349
+ return false;
350
+ }
351
+ }
352
+ this.client.respond(pending.id, { permissions, scope: ['always', 'remember'].includes(normalized) ? 'session' : 'turn' });
353
+ this.finishApproval(pending, normalized === 'remember' ? 'remembered' : approved ? 'approved' : 'denied');
354
+ return true;
355
+ }
356
+ if (normalized === 'remember' && pending.method === 'item/fileChange/requestApproval' && pending.params.grantRoot) {
357
+ try {
358
+ this.rememberApproval(pending);
359
+ this.client.respond(pending.id, { decision: 'acceptForSession' });
360
+ this.finishApproval(pending, 'remembered');
361
+ return true;
362
+ }
363
+ catch (error) {
364
+ this.pendingUserInputs.unshift(pending);
365
+ this.activeTurn?.options.onStream?.(`\n${this.errorMessage(error)}\n`);
366
+ return false;
367
+ }
368
+ }
254
369
  const decision = normalized === 'always' ? 'acceptForSession'
255
370
  : normalized === 'yes' || normalized === 'y' || normalized === 'accept' ? 'accept'
256
371
  : normalized === 'cancel' ? 'cancel'
@@ -261,6 +376,7 @@ class CodexAppServerExecutor {
261
376
  return false;
262
377
  }
263
378
  this.client.respond(pending.id, { decision });
379
+ this.finishApproval(pending, decision === 'accept' || decision === 'acceptForSession' ? 'approved' : 'denied');
264
380
  return true;
265
381
  }
266
382
  async listModels() {
@@ -385,6 +501,7 @@ class CodexAppServerExecutor {
385
501
  this.clearThreadId();
386
502
  this.codexThreadId = null;
387
503
  this.threadReady = false;
504
+ this.sandbox.deleteData();
388
505
  }
389
506
  async ensureThread() {
390
507
  if (this.threadReady && this.client.isRunning())
@@ -397,6 +514,7 @@ class CodexAppServerExecutor {
397
514
  approvalPolicy: 'never',
398
515
  sandbox: 'danger-full-access',
399
516
  } : {}),
517
+ ...this.sandbox.threadOptions(this.currentWorkingDirectory),
400
518
  };
401
519
  if (this.codexThreadId) {
402
520
  try {
@@ -445,6 +563,15 @@ class CodexAppServerExecutor {
445
563
  }
446
564
  if (params.threadId && params.threadId !== this.codexThreadId)
447
565
  return;
566
+ if (method === 'serverRequest/resolved') {
567
+ this.pendingUserInputs = this.pendingUserInputs.filter(pending => {
568
+ if (pending.id !== params.requestId)
569
+ return true;
570
+ this.finishApproval(pending, 'expired');
571
+ return false;
572
+ });
573
+ return;
574
+ }
448
575
  const eventTurnId = params.turnId ?? params.turn?.id;
449
576
  const matchesActiveTurn = !eventTurnId || eventTurnId === this.activeTurn?.turnId;
450
577
  const notified = this.taskNotifications.handle(method, params, matchesActiveTurn ? this.activeTurn?.options.onTaskNotification : undefined);
@@ -504,22 +631,97 @@ class CodexAppServerExecutor {
504
631
  break;
505
632
  }
506
633
  }
634
+ approvalRoots(pending) {
635
+ if (this.sandbox.getConfig()?.mode !== 'workspace-write') {
636
+ throw new Error('Remember requires workspace-write mode and explicit writable directories.');
637
+ }
638
+ let writes;
639
+ if (pending.method === 'item/fileChange/requestApproval')
640
+ writes = [pending.params.grantRoot];
641
+ else {
642
+ const permissions = pending.params.permissions ?? {};
643
+ const entries = permissions.fileSystem?.entries ?? [];
644
+ const legacyWrites = permissions.fileSystem?.write ?? [];
645
+ if (permissions.network?.enabled || !Array.isArray(entries) || !Array.isArray(legacyWrites)
646
+ || entries.some((entry) => entry.access !== 'write' || entry.path?.type !== 'path')) {
647
+ throw new Error('Only explicit writable-directory grants can be remembered.');
648
+ }
649
+ writes = [...legacyWrites, ...entries.map((entry) => entry.path.path)];
650
+ }
651
+ if (!writes.length)
652
+ throw new Error('No explicit writable directories were requested.');
653
+ return writes.map(root => {
654
+ if (typeof root !== 'string' || !path.isAbsolute(root))
655
+ throw new Error('Permission grants must use absolute directory paths.');
656
+ return this.sandbox.normalize(root);
657
+ });
658
+ }
659
+ rememberApproval(pending) {
660
+ const roots = this.approvalRoots(pending);
661
+ if (pending.approval?.writableRoots && JSON.stringify(roots) !== JSON.stringify(pending.approval.writableRoots)) {
662
+ throw new Error('The requested directory changed after the approval was displayed. Request a fresh authorization.');
663
+ }
664
+ const config = this.sandbox.getConfig();
665
+ this.sandbox.configure({ ...config, writableRoots: [...new Set([...(config.writableRoots ?? []), ...roots])] });
666
+ }
667
+ queueApproval(id, method, params, fallback) {
668
+ let writableRoots;
669
+ if (method !== 'item/commandExecution/requestApproval') {
670
+ try {
671
+ writableRoots = this.approvalRoots({ method, params });
672
+ }
673
+ catch { /* Not a persistent directory grant. */ }
674
+ }
675
+ const kind = method.includes('commandExecution') ? 'command' : method.includes('fileChange') ? 'file' : 'permissions';
676
+ const description = [params.reason, kind === 'command' ? params.command : undefined,
677
+ kind === 'file' && params.grantRoot ? `Requested directory: ${params.grantRoot}` : undefined,
678
+ kind === 'permissions' ? JSON.stringify(params.permissions ?? {}, null, 2) : undefined,
679
+ params.cwd ? `Command directory: ${params.cwd}` : undefined,
680
+ ].filter(Boolean).join('\n') || 'Codex requested permission for file changes.';
681
+ const approval = { requestId: (0, crypto_1.randomUUID)(), kind, description,
682
+ canRemember: !!writableRoots?.length, ...(writableRoots ? { writableRoots } : {}) };
683
+ this.pendingUserInputs.push({ id, method, params, approval, resolved: this.activeTurn?.options.onApprovalResolved });
684
+ let cardHandled = false;
685
+ try {
686
+ cardHandled = this.activeTurn?.options.onApprovalRequest?.(approval) === true;
687
+ }
688
+ catch { /* Keep text approvals available. */ }
689
+ if (!cardHandled)
690
+ this.activeTurn?.options.onStream?.(fallback);
691
+ }
692
+ finishApproval(pending, status) {
693
+ try {
694
+ if (pending.approval)
695
+ pending.resolved?.(pending.approval.requestId, status);
696
+ }
697
+ catch { /* Rendering failures must not make an accepted request executable again. */ }
698
+ }
507
699
  handleServerRequest(id, method, params) {
508
700
  if (params.threadId && params.threadId !== this.codexThreadId) {
509
701
  this.client.respondError(id, 'Request does not belong to this remote-cli thread');
510
702
  return;
511
703
  }
704
+ if (!this.activeTurn || (params.turnId && this.activeTurn.turnId && params.turnId !== this.activeTurn.turnId)) {
705
+ this.client.respondError(id, 'Request does not belong to the active turn');
706
+ return;
707
+ }
512
708
  this.armInactivityTimer();
513
709
  if (method === 'item/commandExecution/requestApproval' || method === 'item/fileChange/requestApproval') {
514
- if (this.autoApprove) {
710
+ if (this.autoApprove && !this.sandbox.isRestricted()) {
515
711
  this.client.respond(id, { decision: 'accept' });
516
712
  return;
517
713
  }
518
- this.pendingUserInputs.push({ id, method, params });
519
714
  const subject = method.includes('commandExecution')
520
715
  ? params.command ?? params.reason ?? 'command execution'
521
716
  : params.reason ?? params.grantRoot ?? 'file changes';
522
- this.activeTurn?.options.onStream?.(`\nApproval required for ${subject}. Reply yes, always, no, or cancel.\n`);
717
+ const boundary = this.sandbox.isRestricted() ? ' This may run outside the sandbox. Use /sandbox allow <directory> between tasks to save a directory grant.' : '';
718
+ const remember = method === 'item/fileChange/requestApproval' && params.grantRoot && this.sandbox.getConfig()?.mode === 'workspace-write'
719
+ ? `, remember (save write access to ${params.grantRoot})` : '';
720
+ this.queueApproval(id, method, params, `\nApproval required for ${subject}.${boundary} Reply yes, always${remember}, no, or cancel.\n`);
721
+ return;
722
+ }
723
+ if (method === 'item/permissions/requestApproval') {
724
+ this.queueApproval(id, method, params, `\nAdditional permissions requested: ${JSON.stringify(params.permissions ?? {})}\n${params.reason ?? ''}\nReply yes (this turn), always (this Codex session), remember (save writable directories for this thread), or no.\n`);
523
725
  return;
524
726
  }
525
727
  if (method === 'item/tool/requestUserInput') {
@@ -679,7 +881,8 @@ class CodexAppServerExecutor {
679
881
  if (!active)
680
882
  return;
681
883
  this.activeTurn = null;
682
- this.pendingUserInputs = [];
884
+ for (const pending of this.pendingUserInputs.splice(0))
885
+ this.finishApproval(pending, 'expired');
683
886
  this.clearInactivityTimer();
684
887
  if (active.timeoutTimer)
685
888
  clearTimeout(active.timeoutTimer);