genaicode 2.11.0 → 2.13.2
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/CHANGELOG.md +52 -1
- package/README.md +18 -16
- package/dist/agents/cli-agent.d.ts +6 -3
- package/dist/agents/cli-agent.js +57 -35
- package/dist/agents/cli-agent.js.map +1 -1
- package/dist/agents/drivers/antigravity.d.ts +7 -1
- package/dist/agents/drivers/antigravity.js +27 -2
- package/dist/agents/drivers/antigravity.js.map +1 -1
- package/dist/agents/drivers/claude-approvals.d.ts +86 -0
- package/dist/agents/drivers/claude-approvals.js +278 -0
- package/dist/agents/drivers/claude-approvals.js.map +1 -0
- package/dist/agents/drivers/claude.d.ts +12 -2
- package/dist/agents/drivers/claude.js +74 -11
- package/dist/agents/drivers/claude.js.map +1 -1
- package/dist/agents/drivers/codex-approvals.d.ts +11 -0
- package/dist/agents/drivers/codex-approvals.js +118 -0
- package/dist/agents/drivers/codex-approvals.js.map +1 -0
- package/dist/agents/drivers/codex-live.d.ts +12 -1
- package/dist/agents/drivers/codex-live.js +46 -32
- package/dist/agents/drivers/codex-live.js.map +1 -1
- package/dist/agents/drivers/codex.d.ts +10 -1
- package/dist/agents/drivers/codex.js +48 -2
- package/dist/agents/drivers/codex.js.map +1 -1
- package/dist/agents/drivers/copilot.d.ts +9 -1
- package/dist/agents/drivers/copilot.js +31 -1
- package/dist/agents/drivers/copilot.js.map +1 -1
- package/dist/agents/drivers/cursor.d.ts +10 -1
- package/dist/agents/drivers/cursor.js +48 -5
- package/dist/agents/drivers/cursor.js.map +1 -1
- package/dist/agents/drivers/gemini.d.ts +11 -1
- package/dist/agents/drivers/gemini.js +46 -2
- package/dist/agents/drivers/gemini.js.map +1 -1
- package/dist/agents/drivers/muse-approvals.d.ts +19 -0
- package/dist/agents/drivers/muse-approvals.js +157 -0
- package/dist/agents/drivers/muse-approvals.js.map +1 -0
- package/dist/agents/drivers/muse-live.d.ts +5 -1
- package/dist/agents/drivers/muse-live.js +21 -109
- package/dist/agents/drivers/muse-live.js.map +1 -1
- package/dist/agents/drivers/opencode.d.ts +7 -1
- package/dist/agents/drivers/opencode.js +28 -2
- package/dist/agents/drivers/opencode.js.map +1 -1
- package/dist/agents/drivers/permission-args.d.ts +14 -0
- package/dist/agents/drivers/permission-args.js +40 -0
- package/dist/agents/drivers/permission-args.js.map +1 -0
- package/dist/agents/drivers/vibe.d.ts +9 -1
- package/dist/agents/drivers/vibe.js +40 -2
- package/dist/agents/drivers/vibe.js.map +1 -1
- package/dist/agents/hosted.js +9 -0
- package/dist/agents/hosted.js.map +1 -1
- package/dist/agents/live-agent.d.ts +49 -4
- package/dist/agents/live-agent.js +84 -15
- package/dist/agents/live-agent.js.map +1 -1
- package/dist/agents/permissions.d.ts +27 -0
- package/dist/agents/permissions.js +79 -0
- package/dist/agents/permissions.js.map +1 -0
- package/dist/agents/prepare.d.ts +12 -1
- package/dist/agents/prepare.js +18 -3
- package/dist/agents/prepare.js.map +1 -1
- package/dist/agents/rpc.d.ts +13 -2
- package/dist/agents/rpc.js +20 -2
- package/dist/agents/rpc.js.map +1 -1
- package/dist/agents/runtime.d.ts +4 -0
- package/dist/agents/runtime.js +20 -0
- package/dist/agents/runtime.js.map +1 -1
- package/dist/agents/session.d.ts +4 -1
- package/dist/agents/session.js +31 -6
- package/dist/agents/session.js.map +1 -1
- package/dist/agents/types.d.ts +56 -7
- package/dist/agents.d.ts +21 -13
- package/dist/agents.js +14 -9
- package/dist/agents.js.map +1 -1
- package/dist/react/agent-chat.js +10 -2
- package/dist/react/agent-chat.js.map +1 -1
- package/dist/ui/index.js +69 -69
- package/dist/ui/web-client.js +9 -9
- package/docs/agents.md +129 -19
- package/package.json +5 -5
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { AgentEvent, CodingAgent } from '../types.js';
|
|
2
|
+
import type { AgentTask } from '../types.js';
|
|
2
3
|
import { type CodexSandbox } from './codex.js';
|
|
3
4
|
export interface CodexLiveOptions {
|
|
4
5
|
/** Executable name or path. Default `codex`. */
|
|
@@ -10,8 +11,18 @@ export interface CodexLiveOptions {
|
|
|
10
11
|
}
|
|
11
12
|
/**
|
|
12
13
|
* Codex over its app server (`codex app-server`, JSON-RPC on stdio).
|
|
13
|
-
* Supports `steer()` and routes command
|
|
14
|
+
* Supports `steer()` and routes command, file-change and permission-profile approvals to
|
|
15
|
+
* `task.onApproval` (see `codexApprovals`).
|
|
16
|
+
*
|
|
17
|
+
* `task.permissions`: `ask` is approval policy `on-request`; `auto-approve` and `deny` are
|
|
18
|
+
* `never`, since what Codex would ask about is a step outside its sandbox. The sandbox maps to
|
|
19
|
+
* Codex's own (`unrestricted` is `danger-full-access`).
|
|
14
20
|
*/
|
|
15
21
|
export declare function codexLive(options?: CodexLiveOptions): CodingAgent;
|
|
22
|
+
/** `thread/start` sandbox and approval policy for a task. */
|
|
23
|
+
export declare function codexThreadPolicy(task: Pick<AgentTask, 'permissions' | 'onApproval'>, options?: Pick<CodexLiveOptions, 'sandbox'>): {
|
|
24
|
+
sandbox: CodexSandbox;
|
|
25
|
+
approvalPolicy: 'on-request' | 'never';
|
|
26
|
+
};
|
|
16
27
|
/** Map one app-server notification to agent events. */
|
|
17
28
|
export declare function codexNotification(method: string, params: unknown): AgentEvent[];
|
|
@@ -1,20 +1,52 @@
|
|
|
1
1
|
import { liveAgent } from '../live-agent.js';
|
|
2
|
-
import {
|
|
2
|
+
import { codexApprovals } from './codex-approvals.js';
|
|
3
|
+
import { exclusiveOption, resolvePermissions } from '../permissions.js';
|
|
4
|
+
import { CODEX_SANDBOX, withCodexMcp } from './codex.js';
|
|
3
5
|
import { isObject, numberField, stringField } from './json.js';
|
|
4
6
|
/**
|
|
5
7
|
* Codex over its app server (`codex app-server`, JSON-RPC on stdio).
|
|
6
|
-
* Supports `steer()` and routes command
|
|
8
|
+
* Supports `steer()` and routes command, file-change and permission-profile approvals to
|
|
9
|
+
* `task.onApproval` (see `codexApprovals`).
|
|
10
|
+
*
|
|
11
|
+
* `task.permissions`: `ask` is approval policy `on-request`; `auto-approve` and `deny` are
|
|
12
|
+
* `never`, since what Codex would ask about is a step outside its sandbox. The sandbox maps to
|
|
13
|
+
* Codex's own (`unrestricted` is `danger-full-access`).
|
|
7
14
|
*/
|
|
8
15
|
export function codexLive(options = {}) {
|
|
9
16
|
return liveAgent({
|
|
10
17
|
name: 'codex',
|
|
11
18
|
command: options.command ?? 'codex',
|
|
12
|
-
capabilities: {
|
|
13
|
-
|
|
14
|
-
|
|
19
|
+
capabilities: {
|
|
20
|
+
effort: ['minimal', 'low', 'medium', 'high', 'xhigh'],
|
|
21
|
+
usage: true,
|
|
22
|
+
approvals: true,
|
|
23
|
+
mcp: true,
|
|
24
|
+
permissions: {
|
|
25
|
+
approval: ['ask', 'auto-approve', 'deny'],
|
|
26
|
+
sandbox: ['workspace-write', 'read-only', 'unrestricted'],
|
|
27
|
+
},
|
|
28
|
+
},
|
|
29
|
+
args: (task) => {
|
|
30
|
+
codexThreadPolicy(task, options);
|
|
31
|
+
return [...(task.extraArgs ?? []), 'app-server'];
|
|
32
|
+
},
|
|
33
|
+
prepare: (task) => {
|
|
34
|
+
codexThreadPolicy(task, options);
|
|
35
|
+
return withCodexMcp(task, [...(task.extraArgs ?? []), 'app-server']);
|
|
36
|
+
},
|
|
15
37
|
drive: (session) => driveCodex(session, options),
|
|
16
38
|
});
|
|
17
39
|
}
|
|
40
|
+
/** `thread/start` sandbox and approval policy for a task. */
|
|
41
|
+
export function codexThreadPolicy(task, options = {}) {
|
|
42
|
+
const { approval, sandbox } = resolvePermissions(task.permissions);
|
|
43
|
+
exclusiveOption('codex', 'sandbox', options.sandbox !== undefined, 'sandbox', sandbox !== undefined);
|
|
44
|
+
const asks = approval ? approval === 'ask' : !!task.onApproval;
|
|
45
|
+
return {
|
|
46
|
+
sandbox: sandbox ? CODEX_SANDBOX[sandbox] : (options.sandbox ?? 'workspace-write'),
|
|
47
|
+
approvalPolicy: asks ? 'on-request' : 'never',
|
|
48
|
+
};
|
|
49
|
+
}
|
|
18
50
|
async function driveCodex(session, options) {
|
|
19
51
|
const { task, rpc } = session;
|
|
20
52
|
const timeout = options.requestTimeoutMs ?? 60_000;
|
|
@@ -28,6 +60,8 @@ async function driveCodex(session, options) {
|
|
|
28
60
|
session.onNotification((method, params) => {
|
|
29
61
|
if (!ours(params))
|
|
30
62
|
return;
|
|
63
|
+
if (approvals.notification(method, params))
|
|
64
|
+
return;
|
|
31
65
|
if (method === 'turn/completed') {
|
|
32
66
|
const turn = isObject(params) && isObject(params.turn) ? params.turn : undefined;
|
|
33
67
|
if (ids.turn && stringField(turn, 'id') && stringField(turn, 'id') !== ids.turn)
|
|
@@ -36,40 +70,26 @@ async function driveCodex(session, options) {
|
|
|
36
70
|
const error = stringField(turn?.error, 'message');
|
|
37
71
|
if (error)
|
|
38
72
|
session.emit({ type: 'error', message: error });
|
|
73
|
+
approvals.close();
|
|
39
74
|
finish(status === 'completed' ? { ok: true } : { ok: false, error: error ?? `Codex turn ${status ?? 'ended'}.` });
|
|
40
75
|
return;
|
|
41
76
|
}
|
|
42
77
|
for (const event of codexNotification(method, params))
|
|
43
78
|
session.emit(event);
|
|
44
79
|
});
|
|
45
|
-
|
|
46
|
-
session.onRequest(
|
|
47
|
-
const
|
|
48
|
-
|
|
49
|
-
if (!legacy && !method.endsWith('/requestApproval'))
|
|
80
|
+
const approvals = codexApprovals(session, () => ({ session: ids.thread, turn: ids.turn }));
|
|
81
|
+
session.onRequest((method, params, context) => {
|
|
82
|
+
const answer = approvals.request(method, params, context);
|
|
83
|
+
if (!answer)
|
|
50
84
|
throw new Error(`${method} is not supported.`);
|
|
51
|
-
|
|
52
|
-
// One item can raise several approvals (e.g. per shell subcommand); `approvalId` tells them apart.
|
|
53
|
-
id: stringField(params, 'approvalId') ??
|
|
54
|
-
stringField(params, 'itemId') ??
|
|
55
|
-
stringField(params, 'callId') ??
|
|
56
|
-
`approval-${++approvals}`,
|
|
57
|
-
kind,
|
|
58
|
-
...summaryOf(params),
|
|
59
|
-
detail: params,
|
|
60
|
-
};
|
|
61
|
-
const decision = await session.approve(request);
|
|
62
|
-
if (legacy)
|
|
63
|
-
return { decision: decision === 'approve' ? 'approved' : 'denied' };
|
|
64
|
-
return { decision: decision === 'approve' ? 'accept' : 'decline' };
|
|
85
|
+
return answer;
|
|
65
86
|
});
|
|
66
87
|
await rpc.request('initialize', { clientInfo: { name: 'genaicode', version: '2' } }, timeout);
|
|
67
88
|
rpc.notify('initialized');
|
|
68
89
|
const thread = await rpc.request('thread/start', {
|
|
69
90
|
cwd: task.cwd,
|
|
70
91
|
...(task.model ? { model: task.model } : {}),
|
|
71
|
-
|
|
72
|
-
approvalPolicy: task.onApproval ? 'on-request' : 'never',
|
|
92
|
+
...codexThreadPolicy(task, options),
|
|
73
93
|
}, timeout);
|
|
74
94
|
const threadId = stringField(isObject(thread) ? thread.thread : undefined, 'id');
|
|
75
95
|
ids.thread = threadId;
|
|
@@ -170,12 +190,6 @@ export function codexNotification(method, params) {
|
|
|
170
190
|
return [];
|
|
171
191
|
}
|
|
172
192
|
}
|
|
173
|
-
function summaryOf(params) {
|
|
174
|
-
const command = isObject(params) ? params.command : undefined;
|
|
175
|
-
const text = Array.isArray(command) ? command.join(' ') : typeof command === 'string' ? command : undefined;
|
|
176
|
-
const summary = text ?? stringField(params, 'reason');
|
|
177
|
-
return summary ? { summary } : {};
|
|
178
|
-
}
|
|
179
193
|
function mcpName(item) {
|
|
180
194
|
return [stringField(item, 'server'), stringField(item, 'tool')].filter(Boolean).join('/') || 'mcp';
|
|
181
195
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codex-live.js","sourceRoot":"","sources":["../../../src/agents/drivers/codex-live.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAoB,MAAM,kBAAkB,CAAC;AAG/D,OAAO,EAAE,YAAY,EAAqB,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"codex-live.js","sourceRoot":"","sources":["../../../src/agents/drivers/codex-live.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { type AgentOutputParser } from '../cli-agent.js';
|
|
2
|
+
import { type PermissionFlags } from '../permissions.js';
|
|
2
3
|
import { type PreparedRun } from '../prepare.js';
|
|
3
|
-
import type { AgentTask, CodingAgent, McpServer } from '../types.js';
|
|
4
|
+
import type { AgentPermissions, AgentTask, CodingAgent, McpServer, SandboxPolicy } from '../types.js';
|
|
4
5
|
export type CodexSandbox = 'read-only' | 'workspace-write' | 'danger-full-access';
|
|
5
6
|
export interface CodexAgentOptions {
|
|
6
7
|
/** Executable name or path. Default `codex`. */
|
|
@@ -10,6 +11,14 @@ export interface CodexAgentOptions {
|
|
|
10
11
|
/** Allow running outside a git repository. Default true. */
|
|
11
12
|
skipGitRepoCheck?: boolean;
|
|
12
13
|
}
|
|
14
|
+
/** Codex's sandbox mode for a `permissions.sandbox`. */
|
|
15
|
+
export declare const CODEX_SANDBOX: Readonly<Record<SandboxPolicy, CodexSandbox>>;
|
|
16
|
+
/**
|
|
17
|
+
* `codex exec` flags for `permissions`. Exec never asks, so `deny` and `auto-approve` are both
|
|
18
|
+
* approval policy `never`: what the sandbox allows runs, anything beyond it fails. `ask` is not
|
|
19
|
+
* possible headless (use `codexLive`).
|
|
20
|
+
*/
|
|
21
|
+
export declare function codexPermissionFlags(permissions: AgentPermissions): PermissionFlags;
|
|
13
22
|
/** OpenAI Codex CLI in exec mode (`codex exec --json`). */
|
|
14
23
|
export declare function codex(options?: CodexAgentOptions): CodingAgent;
|
|
15
24
|
export declare function codexArgs(task: AgentTask, options?: CodexAgentOptions): string[];
|
|
@@ -1,19 +1,65 @@
|
|
|
1
1
|
import { cliAgent } from '../cli-agent.js';
|
|
2
|
+
import { exclusiveOption, resolvePermissions } from '../permissions.js';
|
|
2
3
|
import { isHttpServer } from '../prepare.js';
|
|
3
4
|
import { isObject, numberField, positionalPrompt, stringField } from './json.js';
|
|
5
|
+
/** Codex's sandbox mode for a `permissions.sandbox`. */
|
|
6
|
+
export const CODEX_SANDBOX = {
|
|
7
|
+
'workspace-write': 'workspace-write',
|
|
8
|
+
'read-only': 'read-only',
|
|
9
|
+
unrestricted: 'danger-full-access',
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* `codex exec` flags for `permissions`. Exec never asks, so `deny` and `auto-approve` are both
|
|
13
|
+
* approval policy `never`: what the sandbox allows runs, anything beyond it fails. `ask` is not
|
|
14
|
+
* possible headless (use `codexLive`).
|
|
15
|
+
*/
|
|
16
|
+
export function codexPermissionFlags(permissions) {
|
|
17
|
+
const { approval, sandbox } = permissions;
|
|
18
|
+
if (approval === 'ask')
|
|
19
|
+
throw new Error("codex exec cannot ask for approval; use codexLive() for permissions.approval 'ask'.");
|
|
20
|
+
const args = [];
|
|
21
|
+
const replaces = {};
|
|
22
|
+
if (approval || sandbox)
|
|
23
|
+
Object.assign(replaces, {
|
|
24
|
+
'--dangerously-bypass-approvals-and-sandbox': 'flag',
|
|
25
|
+
'--yolo': 'flag',
|
|
26
|
+
'--full-auto': 'flag',
|
|
27
|
+
'--ask-for-approval': 'value',
|
|
28
|
+
'-a': 'value',
|
|
29
|
+
});
|
|
30
|
+
if (approval)
|
|
31
|
+
args.push('-c', 'approval_policy="never"');
|
|
32
|
+
if (sandbox) {
|
|
33
|
+
Object.assign(replaces, { '--sandbox': 'value', '-s': 'value' });
|
|
34
|
+
args.push('--sandbox', CODEX_SANDBOX[sandbox]);
|
|
35
|
+
}
|
|
36
|
+
return { args, replaces };
|
|
37
|
+
}
|
|
4
38
|
/** OpenAI Codex CLI in exec mode (`codex exec --json`). */
|
|
5
39
|
export function codex(options = {}) {
|
|
6
40
|
return cliAgent({
|
|
7
41
|
name: 'codex',
|
|
8
42
|
command: options.command ?? 'codex',
|
|
9
|
-
capabilities: {
|
|
43
|
+
capabilities: {
|
|
44
|
+
effort: ['minimal', 'low', 'medium', 'high', 'xhigh'],
|
|
45
|
+
usage: true,
|
|
46
|
+
mcp: true,
|
|
47
|
+
resume: true,
|
|
48
|
+
permissions: { approval: ['auto-approve', 'deny'], sandbox: ['workspace-write', 'read-only', 'unrestricted'] },
|
|
49
|
+
},
|
|
10
50
|
args: (task) => codexArgs(task, options),
|
|
11
51
|
prepare: (task) => withCodexMcp(task, codexArgs(task, options)),
|
|
12
52
|
createParser: createCodexParser,
|
|
13
53
|
});
|
|
14
54
|
}
|
|
15
55
|
export function codexArgs(task, options = {}) {
|
|
16
|
-
const
|
|
56
|
+
const permissions = resolvePermissions(task.permissions);
|
|
57
|
+
exclusiveOption('codex', 'sandbox', options.sandbox !== undefined, 'sandbox', permissions.sandbox !== undefined);
|
|
58
|
+
const flags = codexPermissionFlags(permissions);
|
|
59
|
+
const args = ['exec', '--json'];
|
|
60
|
+
if (!permissions.sandbox)
|
|
61
|
+
args.push('--sandbox', options.sandbox ?? 'workspace-write');
|
|
62
|
+
args.push(...flags.args);
|
|
17
63
|
if (options.skipGitRepoCheck ?? true)
|
|
18
64
|
args.push('--skip-git-repo-check');
|
|
19
65
|
if (task.model)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codex.js","sourceRoot":"","sources":["../../../src/agents/drivers/codex.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAA6C,MAAM,iBAAiB,CAAC;AACtF,OAAO,EAAE,YAAY,EAAoB,MAAM,eAAe,CAAC;AAE/D,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAajF,2DAA2D;AAC3D,MAAM,UAAU,KAAK,CAAC,UAA6B,EAAE;IACnD,OAAO,QAAQ,CAAC;QACd,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,OAAO;QACnC,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"codex.js","sourceRoot":"","sources":["../../../src/agents/drivers/codex.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { type AgentOutputParser } from '../cli-agent.js';
|
|
2
|
-
import
|
|
2
|
+
import { type PermissionFlags } from '../permissions.js';
|
|
3
|
+
import type { AgentPermissions, AgentTask, CodingAgent, McpServer } from '../types.js';
|
|
3
4
|
export interface CopilotAgentOptions {
|
|
4
5
|
/** Executable name or path. Default `copilot`. */
|
|
5
6
|
command?: string;
|
|
@@ -23,5 +24,12 @@ export declare function copilot(options?: CopilotAgentOptions): CodingAgent;
|
|
|
23
24
|
export declare function copilotMcpConfig(servers: readonly McpServer[]): {
|
|
24
25
|
mcpServers: Record<string, unknown>;
|
|
25
26
|
};
|
|
27
|
+
/**
|
|
28
|
+
* Copilot CLI flags for `permissions`. A prompt-mode run must allow its tools up front
|
|
29
|
+
* (`--allow-all-tools`), so the only approval policy is `auto-approve`. `unrestricted` adds
|
|
30
|
+
* `--allow-all-paths --allow-all-urls`. Copilot's `--sandbox` lets a command opt out of it per
|
|
31
|
+
* call, which cannot be locked from the command line, so `workspace-write` is not offered.
|
|
32
|
+
*/
|
|
33
|
+
export declare function copilotPermissionFlags(permissions: AgentPermissions): PermissionFlags;
|
|
26
34
|
export declare function copilotArgs(task: AgentTask, options?: CopilotAgentOptions, mcpConfigPath?: string): string[];
|
|
27
35
|
export declare function createCopilotParser(): AgentOutputParser;
|
|
@@ -2,6 +2,7 @@ import { mkdtempSync, rmSync, writeFileSync } from 'node:fs';
|
|
|
2
2
|
import { tmpdir } from 'node:os';
|
|
3
3
|
import { join } from 'node:path';
|
|
4
4
|
import { cliAgent } from '../cli-agent.js';
|
|
5
|
+
import { exclusiveOption, resolvePermissions } from '../permissions.js';
|
|
5
6
|
import { isHttpServer } from '../prepare.js';
|
|
6
7
|
import { isObject, numberField, stringField } from './json.js';
|
|
7
8
|
const EDIT_TOOLS = new Set(['edit', 'create', 'str_replace_editor']);
|
|
@@ -15,6 +16,7 @@ export function copilot(options = {}) {
|
|
|
15
16
|
usage: true,
|
|
16
17
|
mcp: true,
|
|
17
18
|
resume: true,
|
|
19
|
+
permissions: { approval: ['auto-approve'], sandbox: ['unrestricted'] },
|
|
18
20
|
},
|
|
19
21
|
args: (task) => copilotArgs(task, options),
|
|
20
22
|
prepare: (task) => prepareCopilot(task, options),
|
|
@@ -49,10 +51,38 @@ export function copilotMcpConfig(servers) {
|
|
|
49
51
|
}
|
|
50
52
|
return { mcpServers };
|
|
51
53
|
}
|
|
54
|
+
/**
|
|
55
|
+
* Copilot CLI flags for `permissions`. A prompt-mode run must allow its tools up front
|
|
56
|
+
* (`--allow-all-tools`), so the only approval policy is `auto-approve`. `unrestricted` adds
|
|
57
|
+
* `--allow-all-paths --allow-all-urls`. Copilot's `--sandbox` lets a command opt out of it per
|
|
58
|
+
* call, which cannot be locked from the command line, so `workspace-write` is not offered.
|
|
59
|
+
*/
|
|
60
|
+
export function copilotPermissionFlags(permissions) {
|
|
61
|
+
const { approval, sandbox } = permissions;
|
|
62
|
+
if (approval && approval !== 'auto-approve')
|
|
63
|
+
throw new Error(`copilot cannot run with permissions.approval '${approval}' in prompt mode.`);
|
|
64
|
+
if (sandbox && sandbox !== 'unrestricted')
|
|
65
|
+
throw new Error(`copilot cannot run with permissions.sandbox '${sandbox}'.`);
|
|
66
|
+
const args = [];
|
|
67
|
+
const replaces = {};
|
|
68
|
+
if (approval) {
|
|
69
|
+
Object.assign(replaces, { '--allow-all-tools': 'flag', '--allow-all': 'flag', '--yolo': 'flag' });
|
|
70
|
+
args.push('--allow-all-tools');
|
|
71
|
+
}
|
|
72
|
+
if (sandbox) {
|
|
73
|
+
Object.assign(replaces, { '--allow-all-paths': 'flag', '--allow-all-urls': 'flag', '--sandbox': 'flag' });
|
|
74
|
+
args.push('--allow-all-paths', '--allow-all-urls');
|
|
75
|
+
}
|
|
76
|
+
return { args, replaces };
|
|
77
|
+
}
|
|
52
78
|
export function copilotArgs(task, options = {}, mcpConfigPath) {
|
|
79
|
+
const permissions = resolvePermissions(task.permissions);
|
|
80
|
+
exclusiveOption('copilot', 'allowAllTools', options.allowAllTools !== undefined, 'approval', !!permissions.approval);
|
|
81
|
+
const flags = copilotPermissionFlags(permissions);
|
|
53
82
|
const args = ['--output-format', 'json'];
|
|
54
|
-
if (options.allowAllTools ?? true)
|
|
83
|
+
if (!permissions.approval && (options.allowAllTools ?? true))
|
|
55
84
|
args.push('--allow-all-tools');
|
|
85
|
+
args.push(...flags.args);
|
|
56
86
|
// `--allow-tool` and `--deny-tool` take several values; the `=` form keeps each one to a single value.
|
|
57
87
|
const allowed = [
|
|
58
88
|
...(options.allowTools ?? []),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"copilot.js","sourceRoot":"","sources":["../../../src/agents/drivers/copilot.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"copilot.js","sourceRoot":"","sources":["../../../src/agents/drivers/copilot.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { type AgentOutputParser } from '../cli-agent.js';
|
|
2
|
-
import
|
|
2
|
+
import { type PermissionFlags } from '../permissions.js';
|
|
3
|
+
import type { AgentPermissions, AgentTask, CodingAgent } from '../types.js';
|
|
3
4
|
export interface CursorAgentOptions {
|
|
4
5
|
/** Executable name or path. Default `cursor-agent`. */
|
|
5
6
|
command?: string;
|
|
@@ -15,6 +16,14 @@ export interface CursorAgentOptions {
|
|
|
15
16
|
/** Pass `--stream-partial-output` and report assistant text as `text-delta` events. Default false. */
|
|
16
17
|
partialOutput?: boolean;
|
|
17
18
|
}
|
|
19
|
+
/**
|
|
20
|
+
* Cursor agent flags for `permissions`. `auto-approve` is `--force`, which Cursor describes as
|
|
21
|
+
* "Run Everything": commands run unsandboxed, so it combines only with `unrestricted`.
|
|
22
|
+
* `deny` drops `--force` (and trusts the workspace), so what Cursor would ask about is refused.
|
|
23
|
+
* `workspace-write` is `--sandbox enabled`, `unrestricted` is `--sandbox disabled`, and
|
|
24
|
+
* `read-only` is ask mode (`--mode ask`). `ask` is not possible headless.
|
|
25
|
+
*/
|
|
26
|
+
export declare function cursorPermissionFlags(permissions: AgentPermissions): PermissionFlags;
|
|
18
27
|
/** Cursor's agent CLI in print mode (`cursor-agent -p --output-format stream-json`). */
|
|
19
28
|
export declare function cursor(options?: CursorAgentOptions): CodingAgent;
|
|
20
29
|
export declare function cursorArgs(task: AgentTask, options?: CursorAgentOptions): string[];
|
|
@@ -1,21 +1,64 @@
|
|
|
1
1
|
import { cliAgent } from '../cli-agent.js';
|
|
2
|
+
import { exclusiveOption, resolvePermissions } from '../permissions.js';
|
|
2
3
|
import { isObject, numberField, positionalPrompt, stringField } from './json.js';
|
|
4
|
+
/**
|
|
5
|
+
* Cursor agent flags for `permissions`. `auto-approve` is `--force`, which Cursor describes as
|
|
6
|
+
* "Run Everything": commands run unsandboxed, so it combines only with `unrestricted`.
|
|
7
|
+
* `deny` drops `--force` (and trusts the workspace), so what Cursor would ask about is refused.
|
|
8
|
+
* `workspace-write` is `--sandbox enabled`, `unrestricted` is `--sandbox disabled`, and
|
|
9
|
+
* `read-only` is ask mode (`--mode ask`). `ask` is not possible headless.
|
|
10
|
+
*/
|
|
11
|
+
export function cursorPermissionFlags(permissions) {
|
|
12
|
+
const { approval, sandbox } = permissions;
|
|
13
|
+
if (approval === 'ask')
|
|
14
|
+
throw new Error("cursor cannot ask for approval headless (permissions.approval 'ask').");
|
|
15
|
+
if (approval === 'auto-approve' && sandbox && sandbox !== 'unrestricted')
|
|
16
|
+
throw new Error(`cursor's --force runs commands outside its sandbox; permissions.approval 'auto-approve' needs sandbox 'unrestricted', not '${sandbox}'.`);
|
|
17
|
+
const args = [];
|
|
18
|
+
const replaces = {};
|
|
19
|
+
if (approval) {
|
|
20
|
+
Object.assign(replaces, { '--force': 'flag', '-f': 'flag', '--yolo': 'flag', '--trust': 'flag' });
|
|
21
|
+
args.push(approval === 'auto-approve' ? '--force' : '--trust');
|
|
22
|
+
}
|
|
23
|
+
if (sandbox) {
|
|
24
|
+
Object.assign(replaces, { '--sandbox': 'value', '--mode': 'value', '--plan': 'flag' });
|
|
25
|
+
if (sandbox === 'read-only')
|
|
26
|
+
args.push('--mode', 'ask');
|
|
27
|
+
else
|
|
28
|
+
args.push('--sandbox', sandbox === 'workspace-write' ? 'enabled' : 'disabled');
|
|
29
|
+
}
|
|
30
|
+
return { args, replaces };
|
|
31
|
+
}
|
|
3
32
|
/** Cursor's agent CLI in print mode (`cursor-agent -p --output-format stream-json`). */
|
|
4
33
|
export function cursor(options = {}) {
|
|
5
34
|
return cliAgent({
|
|
6
35
|
name: 'cursor',
|
|
7
36
|
command: options.command ?? 'cursor-agent',
|
|
8
|
-
capabilities: {
|
|
37
|
+
capabilities: {
|
|
38
|
+
usage: true,
|
|
39
|
+
resume: true,
|
|
40
|
+
permissions: { approval: ['auto-approve', 'deny'], sandbox: ['workspace-write', 'read-only', 'unrestricted'] },
|
|
41
|
+
},
|
|
9
42
|
args: (task) => cursorArgs(task, options),
|
|
10
43
|
createParser: () => createCursorParser({ partialOutput: options.partialOutput }),
|
|
11
44
|
});
|
|
12
45
|
}
|
|
13
46
|
export function cursorArgs(task, options = {}) {
|
|
47
|
+
const permissions = resolvePermissions(task.permissions);
|
|
48
|
+
exclusiveOption('cursor', 'force', options.force !== undefined, 'approval', permissions.approval !== undefined);
|
|
14
49
|
const args = ['-p', '--output-format', 'stream-json'];
|
|
15
|
-
if (
|
|
16
|
-
args.push(
|
|
17
|
-
else
|
|
18
|
-
|
|
50
|
+
if (permissions.approval)
|
|
51
|
+
args.push(...cursorPermissionFlags(permissions).args);
|
|
52
|
+
else {
|
|
53
|
+
// The default `--force` runs unsandboxed, so a sandbox without an approval policy drops it.
|
|
54
|
+
const force = options.force ?? (!permissions.sandbox || permissions.sandbox === 'unrestricted');
|
|
55
|
+
cursorPermissionFlags({ ...permissions, approval: force ? 'auto-approve' : 'deny' });
|
|
56
|
+
if (force)
|
|
57
|
+
args.push('--force');
|
|
58
|
+
else if (options.trustWorkspace ?? true)
|
|
59
|
+
args.push('--trust');
|
|
60
|
+
args.push(...cursorPermissionFlags({ sandbox: permissions.sandbox }).args);
|
|
61
|
+
}
|
|
19
62
|
if (options.approveMcps ?? true)
|
|
20
63
|
args.push('--approve-mcps');
|
|
21
64
|
if (options.partialOutput)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cursor.js","sourceRoot":"","sources":["../../../src/agents/drivers/cursor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAA6C,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"cursor.js","sourceRoot":"","sources":["../../../src/agents/drivers/cursor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAA6C,MAAM,iBAAiB,CAAC;AACtF,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAwB,MAAM,mBAAmB,CAAC;AAE9F,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAkBjF;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB,CAAC,WAA6B;IACjE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,WAAW,CAAC;IAC1C,IAAI,QAAQ,KAAK,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAC;IACjH,IAAI,QAAQ,KAAK,cAAc,IAAI,OAAO,IAAI,OAAO,KAAK,cAAc;QACtE,MAAM,IAAI,KAAK,CACb,8HAA8H,OAAO,IAAI,CAC1I,CAAC;IACJ,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,MAAM,QAAQ,GAAqC,EAAE,CAAC;IACtD,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC;QAClG,IAAI,CAAC,IAAI,CAAC,QAAQ,KAAK,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACjE,CAAC;IACD,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;QACvF,IAAI,OAAO,KAAK,WAAW;YAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;;YACnD,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,KAAK,iBAAiB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IACtF,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AAC5B,CAAC;AAED,wFAAwF;AACxF,MAAM,UAAU,MAAM,CAAC,UAA8B,EAAE;IACrD,OAAO,QAAQ,CAAC;QACd,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,cAAc;QAC1C,YAAY,EAAE;YACZ,KAAK,EAAE,IAAI;YACX,MAAM,EAAE,IAAI;YACZ,WAAW,EAAE,EAAE,QAAQ,EAAE,CAAC,cAAc,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,iBAAiB,EAAE,WAAW,EAAE,cAAc,CAAC,EAAE;SAC/G;QACD,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC;QACzC,YAAY,EAAE,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,aAAa,EAAE,OAAO,CAAC,aAAa,EAAE,CAAC;KACjF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAAe,EAAE,UAA8B,EAAE;IAC1E,MAAM,WAAW,GAAG,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACzD,eAAe,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,UAAU,EAAE,WAAW,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC;IAChH,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,iBAAiB,EAAE,aAAa,CAAC,CAAC;IACtD,IAAI,WAAW,CAAC,QAAQ;QAAE,IAAI,CAAC,IAAI,CAAC,GAAG,qBAAqB,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC;SAC3E,CAAC;QACJ,4FAA4F;QAC5F,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,CAAC,CAAC,WAAW,CAAC,OAAO,IAAI,WAAW,CAAC,OAAO,KAAK,cAAc,CAAC,CAAC;QAChG,qBAAqB,CAAC,EAAE,GAAG,WAAW,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;QACrF,IAAI,KAAK;YAAE,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;aAC3B,IAAI,OAAO,CAAC,cAAc,IAAI,IAAI;YAAE,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC9D,IAAI,CAAC,IAAI,CAAC,GAAG,qBAAqB,CAAC,EAAE,OAAO,EAAE,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IAC7E,CAAC;IACD,IAAI,OAAO,CAAC,WAAW,IAAI,IAAI;QAAE,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC7D,IAAI,OAAO,CAAC,aAAa;QAAE,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;IAChE,IAAI,IAAI,CAAC,KAAK;QAAE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACjD,+FAA+F;IAC/F,IAAI,IAAI,CAAC,MAAM;QAAE,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACtD,IAAI,IAAI,CAAC,SAAS;QAAE,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;IACjD,OAAO,CAAC,GAAG,IAAI,EAAE,GAAG,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,UAAuC,EAAE;IAC1E,IAAI,OAAiC,CAAC;IACtC,IAAI,WAAW,GAAG,KAAK,CAAC;IACxB,IAAI,WAAW,GAAG,KAAK,CAAC;IACxB,IAAI,OAAO,GAAG,EAAE,CAAC;IAEjB,oGAAoG;IACpG,MAAM,KAAK,GAAG,CAAC,MAAoB,EAAE,EAAE;QACrC,IAAI,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;YACnB,WAAW,GAAG,IAAI,CAAC;YACnB,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;QAClD,CAAC;QACD,OAAO,GAAG,EAAE,CAAC;IACf,CAAC,CAAC;IAEF,OAAO;QACL,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO;QACtB,KAAK,CAAC,KAAK;YACT,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;gBAAE,OAAO,EAAE,CAAC;YAChC,MAAM,MAAM,GAAiB,EAAE,CAAC;YAChC,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;YACnD,IAAI,SAAS,IAAI,CAAC,WAAW,EAAE,CAAC;gBAC9B,WAAW,GAAG,IAAI,CAAC;gBACnB,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;gBAC1C,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YAC3E,CAAC;YACD,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;gBACnB,KAAK,WAAW,CAAC,CAAC,CAAC;oBACjB,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;oBAC5E,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;wBACjC,CAAC,CAAC,OAAO;6BACJ,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;6BAChG,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;6BACxC,IAAI,CAAC,EAAE,CAAC;wBACb,CAAC,CAAC,EAAE,CAAC;oBACP,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;wBAC1B,8FAA8F;wBAC9F,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS,IAAI,KAAK,CAAC,aAAa,KAAK,SAAS,IAAI,CAAC,IAAI;4BAAE,MAAM;wBAC1F,OAAO,IAAI,IAAI,CAAC;wBAChB,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;oBAC5C,CAAC;yBAAM,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;wBACvB,WAAW,GAAG,IAAI,CAAC;wBACnB,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;oBACzC,CAAC;oBACD,MAAM;gBACR,CAAC;gBACD,KAAK,WAAW,CAAC,CAAC,CAAC;oBACjB,KAAK,CAAC,MAAM,CAAC,CAAC;oBACd,MAAM,EAAE,GAAG,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;oBACzC,MAAM,IAAI,GAAG,cAAc,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;oBAC7C,IAAI,CAAC,IAAI;wBAAE,MAAM;oBACjB,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;wBAChC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;oBAChG,CAAC;yBAAM,IAAI,KAAK,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;wBACzC,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;wBACzG,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;wBAClD,MAAM,MAAM,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,CAAC,CAAC,CAAC;wBACjG,MAAM,MAAM,GACV,WAAW,CAAC,OAAO,EAAE,mBAAmB,CAAC;4BACzC,WAAW,CAAC,OAAO,EAAE,QAAQ,CAAC;4BAC9B,WAAW,CAAC,OAAO,EAAE,SAAS,CAAC;4BAC/B,WAAW,CAAC,OAAO,EAAE,SAAS,CAAC;4BAC/B,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;wBACzB,MAAM,CAAC,IAAI,CAAC;4BACV,IAAI,EAAE,UAAU;4BAChB,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;4BACrB,IAAI,EAAE,IAAI,CAAC,IAAI;4BACf,OAAO,EAAE,MAAM;4BACf,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;yBAC5C,CAAC,CAAC;wBACH,MAAM,IAAI,GAAG,WAAW,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;wBAC5E,IAAI,CAAC,MAAM,IAAI,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;4BAC5D,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;wBACtD,CAAC;oBACH,CAAC;oBACD,MAAM;gBACR,CAAC;gBACD,KAAK,QAAQ,CAAC,CAAC,CAAC;oBACd,KAAK,CAAC,MAAM,CAAC,CAAC;oBACd,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,KAAK,SAAS,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC;oBACvG,4FAA4F;oBAC5F,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;oBAC1C,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,IAAI,sBAAsB,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;oBACvF,IAAI,MAAM;wBAAE,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,KAAM,EAAE,CAAC,CAAC;yBAC/D,IAAI,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW;wBAAE,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;oBAC9E,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;oBAC1B,MAAM,WAAW,GAAG,WAAW,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;oBACtD,MAAM,YAAY,GAAG,WAAW,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;oBACxD,MAAM,iBAAiB,GAAG,WAAW,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC;oBAChE,IAAI,WAAW,KAAK,SAAS,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;wBAC5D,MAAM,CAAC,IAAI,CAAC;4BACV,IAAI,EAAE,OAAO;4BACb,KAAK,EAAE;gCACL,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gCACrD,GAAG,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gCACvD,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gCACnD,GAAG,CAAC,WAAW,KAAK,SAAS,IAAI,YAAY,KAAK,SAAS;oCACzD,CAAC,CAAC,EAAE,WAAW,EAAE,WAAW,GAAG,YAAY,EAAE;oCAC7C,CAAC,CAAC,EAAE,CAAC;6BACR;yBACF,CAAC,CAAC;oBACL,CAAC;oBACD,MAAM;gBACR,CAAC;YACH,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;KACF,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,MAAe;IAChC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;QAAE,OAAO,SAAS,CAAC;IACxC,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACvC,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;AAC5G,CAAC;AAED;;;GAGG;AACH,SAAS,cAAc,CAAC,KAAc;IACpC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACvC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACnD,IAAI,CAAC,GAAG;QAAE,OAAO,SAAS,CAAC;IAC3B,IAAI,GAAG,KAAK,UAAU,IAAI,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACzC,OAAO,EAAE,IAAI,EAAE,WAAW,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,UAAU,EAAE,IAAI,EAAE,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;IACtH,CAAC;IACD,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC;IACjD,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;AACpF,CAAC;AAED,SAAS,cAAc,CAAC,KAAc;IACpC,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5C,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { type AgentOutputParser } from '../cli-agent.js';
|
|
2
|
-
import
|
|
2
|
+
import { type PermissionFlags } from '../permissions.js';
|
|
3
|
+
import type { AgentPermissions, AgentTask, CodingAgent } from '../types.js';
|
|
3
4
|
export type GeminiApprovalMode = 'default' | 'auto_edit' | 'yolo' | 'plan';
|
|
4
5
|
export interface GeminiAgentOptions {
|
|
5
6
|
/** Executable name or path. Default `gemini`. */
|
|
@@ -12,6 +13,15 @@ export interface GeminiAgentOptions {
|
|
|
12
13
|
*/
|
|
13
14
|
trustWorkspace?: boolean;
|
|
14
15
|
}
|
|
16
|
+
/**
|
|
17
|
+
* Gemini CLI flags for `permissions`. `deny` is approval mode `auto_edit` (edits run, other
|
|
18
|
+
* tools are refused headless), `auto-approve` is `yolo`, and `read-only` is `plan`, which
|
|
19
|
+
* cannot be combined with `auto-approve`. `workspace-write` runs Gemini in its sandbox
|
|
20
|
+
* (`--sandbox`: Seatbelt on macOS, Docker or Podman elsewhere; Gemini fails to start when
|
|
21
|
+
* none is available) and `unrestricted` turns it off. `GEMINI_SANDBOX` overrides the flag in
|
|
22
|
+
* Gemini, so it is set too. `ask` is not possible headless.
|
|
23
|
+
*/
|
|
24
|
+
export declare function geminiPermissionFlags(permissions: AgentPermissions): PermissionFlags;
|
|
15
25
|
/** Gemini CLI in headless mode (`gemini --prompt ... --output-format stream-json`). */
|
|
16
26
|
export declare function gemini(options?: GeminiAgentOptions): CodingAgent;
|
|
17
27
|
export declare function geminiArgs(task: AgentTask, options?: GeminiAgentOptions): string[];
|