@yu_robotics/remote-cli 1.6.49 → 1.6.66
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 +18 -8
- package/dist/client/MessageHandler.d.ts +8 -0
- package/dist/client/MessageHandler.d.ts.map +1 -1
- package/dist/client/MessageHandler.js +108 -3
- package/dist/client/MessageHandler.js.map +1 -1
- package/dist/client/TaskRecovery.d.ts +35 -0
- package/dist/client/TaskRecovery.d.ts.map +1 -0
- package/dist/client/TaskRecovery.js +237 -0
- package/dist/client/TaskRecovery.js.map +1 -0
- package/dist/client/WebSocketClient.d.ts +6 -0
- package/dist/client/WebSocketClient.d.ts.map +1 -1
- package/dist/client/WebSocketClient.js +39 -11
- package/dist/client/WebSocketClient.js.map +1 -1
- package/dist/commands/start.d.ts +3 -11
- package/dist/commands/start.d.ts.map +1 -1
- package/dist/commands/start.js +22 -99
- package/dist/commands/start.js.map +1 -1
- package/dist/executor/ClaudePersistentExecutor.d.ts +38 -2
- package/dist/executor/ClaudePersistentExecutor.d.ts.map +1 -1
- package/dist/executor/ClaudePersistentExecutor.js +369 -21
- package/dist/executor/ClaudePersistentExecutor.js.map +1 -1
- package/dist/executor/CodexAppServerExecutor.d.ts +13 -0
- package/dist/executor/CodexAppServerExecutor.d.ts.map +1 -1
- package/dist/executor/CodexAppServerExecutor.js +208 -5
- package/dist/executor/CodexAppServerExecutor.js.map +1 -1
- package/dist/executor/CodexSandbox.d.ts +23 -0
- package/dist/executor/CodexSandbox.d.ts.map +1 -0
- package/dist/executor/CodexSandbox.js +211 -0
- package/dist/executor/CodexSandbox.js.map +1 -0
- package/dist/executor/IExecutor.d.ts +5 -1
- package/dist/executor/IExecutor.d.ts.map +1 -1
- package/dist/executor/claude/ClaudeFilePolicy.d.ts +7 -0
- package/dist/executor/claude/ClaudeFilePolicy.d.ts.map +1 -0
- package/dist/executor/claude/ClaudeFilePolicy.js +88 -0
- package/dist/executor/claude/ClaudeFilePolicy.js.map +1 -0
- package/dist/executor/claude/ClaudeSandbox.d.ts +32 -0
- package/dist/executor/claude/ClaudeSandbox.d.ts.map +1 -0
- package/dist/executor/claude/ClaudeSandbox.js +245 -0
- package/dist/executor/claude/ClaudeSandbox.js.map +1 -0
- package/dist/executor/claude/approvalMcpServer.d.ts +2 -0
- package/dist/executor/claude/approvalMcpServer.d.ts.map +1 -0
- package/dist/executor/claude/approvalMcpServer.js +159 -0
- package/dist/executor/claude/approvalMcpServer.js.map +1 -0
- package/dist/executor/claude/filePolicyHook.d.ts +2 -0
- package/dist/executor/claude/filePolicyHook.d.ts.map +1 -0
- package/dist/executor/claude/filePolicyHook.js +63 -0
- package/dist/executor/claude/filePolicyHook.js.map +1 -0
- package/dist/executor/index.d.ts.map +1 -1
- package/dist/executor/index.js +4 -3
- package/dist/executor/index.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/thread/ThreadManager.d.ts.map +1 -1
- package/dist/thread/ThreadManager.js +2 -0
- package/dist/thread/ThreadManager.js.map +1 -1
- package/dist/types/config.d.ts +32 -2
- package/dist/types/config.d.ts.map +1 -1
- package/dist/types/config.js.map +1 -1
- package/dist/types/index.d.ts +53 -4
- package/dist/types/index.d.ts.map +1 -1
- package/dist/update/AutomaticUpdater.d.ts +7 -1
- package/dist/update/AutomaticUpdater.d.ts.map +1 -1
- package/dist/update/AutomaticUpdater.js +25 -2
- package/dist/update/AutomaticUpdater.js.map +1 -1
- 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":"
|
|
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
|
-
:
|
|
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.
|
|
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);
|