@0xmaxma/claude-gateway 2.0.18 → 2.0.20
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/dist/agent/runner.d.ts +4 -0
- package/dist/agent/runner.d.ts.map +1 -1
- package/dist/agent/session-status.d.ts +4 -1
- package/dist/agent/session-status.d.ts.map +1 -1
- package/dist/agent/session-status.js +4 -1
- package/dist/agent/session-status.js.map +1 -1
- package/dist/automation/computer-use.d.ts +7 -0
- package/dist/automation/computer-use.d.ts.map +1 -1
- package/dist/automation/computer-use.js +21 -6
- package/dist/automation/computer-use.js.map +1 -1
- package/dist/automation/model-choice-evaluator.d.ts +62 -3
- package/dist/automation/model-choice-evaluator.d.ts.map +1 -1
- package/dist/automation/model-choice-evaluator.js +24 -4
- package/dist/automation/model-choice-evaluator.js.map +1 -1
- package/dist/automation/vision-decider.d.ts +215 -0
- package/dist/automation/vision-decider.d.ts.map +1 -0
- package/dist/automation/vision-decider.js +673 -0
- package/dist/automation/vision-decider.js.map +1 -0
- package/dist/build-provenance.json +4 -4
- package/dist/orchestration/computer-decisions.d.ts +7 -0
- package/dist/orchestration/computer-decisions.d.ts.map +1 -1
- package/dist/orchestration/computer-decisions.js +39 -0
- package/dist/orchestration/computer-decisions.js.map +1 -1
- package/dist/orchestration/gateway-tasks/computer.d.ts +8 -0
- package/dist/orchestration/gateway-tasks/computer.d.ts.map +1 -1
- package/dist/orchestration/gateway-tasks/computer.js +78 -6
- package/dist/orchestration/gateway-tasks/computer.js.map +1 -1
- package/dist/orchestration/gateway-tasks/controller.js +2 -2
- package/dist/orchestration/gateway-tasks/controller.js.map +1 -1
- package/dist/orchestration/notification-mailbox.d.ts.map +1 -1
- package/dist/orchestration/notification-mailbox.js +14 -2
- package/dist/orchestration/notification-mailbox.js.map +1 -1
- package/dist/orchestration/runtime.d.ts.map +1 -1
- package/dist/orchestration/runtime.js +15 -6
- package/dist/orchestration/runtime.js.map +1 -1
- package/dist/orchestration/store.d.ts +2 -0
- package/dist/orchestration/store.d.ts.map +1 -1
- package/dist/orchestration/store.js +14 -7
- package/dist/orchestration/store.js.map +1 -1
- package/dist/orchestration/task-controls.d.ts.map +1 -1
- package/dist/orchestration/task-controls.js +4 -2
- package/dist/orchestration/task-controls.js.map +1 -1
- package/dist/orchestration/tasks/automation-session.d.ts +5 -0
- package/dist/orchestration/tasks/automation-session.d.ts.map +1 -1
- package/dist/orchestration/tasks/automation-session.js +11 -1
- package/dist/orchestration/tasks/automation-session.js.map +1 -1
- package/dist/orchestration/tasks/service.d.ts.map +1 -1
- package/dist/orchestration/tasks/service.js +20 -5
- package/dist/orchestration/tasks/service.js.map +1 -1
- package/dist/orchestration/types.d.ts +5 -0
- package/dist/orchestration/types.d.ts.map +1 -1
- package/dist/orchestration/types.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vision-decider.js","sourceRoot":"","sources":["../../src/automation/vision-decider.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": 1,
|
|
3
|
-
"packageVersion": "2.0.
|
|
4
|
-
"builtAt": "2026-10-
|
|
5
|
-
"commit": "
|
|
6
|
-
"tag": "v2.0.
|
|
3
|
+
"packageVersion": "2.0.20",
|
|
4
|
+
"builtAt": "2026-10-12T07:53:56.396Z",
|
|
5
|
+
"commit": "b90be74e0520c4874a2035ef896731608dd45768",
|
|
6
|
+
"tag": "v2.0.20",
|
|
7
7
|
"dirty": false
|
|
8
8
|
}
|
|
@@ -2,6 +2,7 @@ import type { AgentConfig, GatewayConfig } from '../types';
|
|
|
2
2
|
import type { ComputerUseDependencies } from '../automation/computer-use';
|
|
3
3
|
import type { ThinkingConfig } from '../../lib/automation/thinking.cjs';
|
|
4
4
|
import type { BrowserTextHelperConfig } from '../jev/browser-contract';
|
|
5
|
+
import { type VisionDecide } from '../automation/vision-decider';
|
|
5
6
|
import type { JevService } from '../jev/service';
|
|
6
7
|
import type { TaskSnapshot } from './types';
|
|
7
8
|
type Evaluate = (task: TaskSnapshot, request: Parameters<ComputerUseDependencies['evaluate']>[0], signal: AbortSignal) => ReturnType<ComputerUseDependencies['evaluate']>;
|
|
@@ -13,5 +14,11 @@ export declare function computerEvaluator(gateway: GatewayConfig, agent: AgentCo
|
|
|
13
14
|
export declare function computerThinking(gateway: GatewayConfig, agent: AgentConfig): BrowserTextHelperConfig | {
|
|
14
15
|
resolve: () => Promise<ThinkingConfig>;
|
|
15
16
|
} | undefined;
|
|
17
|
+
/** Vision Computer Use (gateway.computerUse.mode vision|hybrid): the agent's own identity and route, a toolset-capable model.
|
|
18
|
+
* Undefined keeps the Accessibility path: mode ax (the default), no decision backend, or a model without the computer toolset. */
|
|
19
|
+
export declare function computerVision(gateway: GatewayConfig, agent: AgentConfig, member: (task: TaskSnapshot) => boolean, fetchImpl?: typeof fetch): () => {
|
|
20
|
+
mode: 'vision' | 'hybrid';
|
|
21
|
+
decide: (task: TaskSnapshot, authorized: () => boolean) => VisionDecide;
|
|
22
|
+
} | undefined;
|
|
16
23
|
export {};
|
|
17
24
|
//# sourceMappingURL=computer-decisions.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"computer-decisions.d.ts","sourceRoot":"","sources":["../../src/orchestration/computer-decisions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAC3D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAC1E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAGvE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAIjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C,KAAK,QAAQ,GAAG,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,UAAU,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,WAAW,KAAK,UAAU,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAC,CAAC;AAG1K;;uEAEuE;AACvE,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,OAAO,EACnH,GAAG,GAAE,MAAM,IAAI,CAAC,UAAU,EAAE,UAAU,CAAqC,EAAE,SAAS,CAAC,EAAE,OAAO,KAAK,GAAG,QAAQ,CA4BjH;AAED,gHAAgH;AAChH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,WAAW,GAAG,uBAAuB,GAAG;IAAE,OAAO,EAAE,MAAM,OAAO,CAAC,cAAc,CAAC,CAAA;CAAE,GAAG,SAAS,CAS7J"}
|
|
1
|
+
{"version":3,"file":"computer-decisions.d.ts","sourceRoot":"","sources":["../../src/orchestration/computer-decisions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAC3D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAC1E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAGvE,OAAO,EAAkH,KAAK,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACjL,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAIjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C,KAAK,QAAQ,GAAG,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,UAAU,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,WAAW,KAAK,UAAU,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAC,CAAC;AAG1K;;uEAEuE;AACvE,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,OAAO,EACnH,GAAG,GAAE,MAAM,IAAI,CAAC,UAAU,EAAE,UAAU,CAAqC,EAAE,SAAS,CAAC,EAAE,OAAO,KAAK,GAAG,QAAQ,CA4BjH;AAED,gHAAgH;AAChH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,WAAW,GAAG,uBAAuB,GAAG;IAAE,OAAO,EAAE,MAAM,OAAO,CAAC,cAAc,CAAC,CAAA;CAAE,GAAG,SAAS,CAS7J;AAED;kIACkI;AAClI,wBAAgB,cAAc,CAAC,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,OAAO,EAAE,SAAS,CAAC,EAAE,OAAO,KAAK,GAC1I,MAAM;IAAE,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAAC,MAAM,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,OAAO,KAAK,YAAY,CAAA;CAAE,GAAG,SAAS,CAyBzH"}
|
|
@@ -2,8 +2,10 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.computerEvaluator = computerEvaluator;
|
|
4
4
|
exports.computerThinking = computerThinking;
|
|
5
|
+
exports.computerVision = computerVision;
|
|
5
6
|
const computer_choice_ids_1 = require("../automation/computer-choice-ids");
|
|
6
7
|
const model_choice_evaluator_1 = require("../automation/model-choice-evaluator");
|
|
8
|
+
const vision_decider_1 = require("../automation/vision-decider");
|
|
7
9
|
const logger_1 = require("../logger");
|
|
8
10
|
const jev_gateway_1 = require("./jev-gateway");
|
|
9
11
|
const computerModel = (gateway) => gateway.gateway.computerUse?.model ?? model_choice_evaluator_1.DEFAULT_COMPUTER_MODEL;
|
|
@@ -61,4 +63,41 @@ function computerThinking(gateway, agent) {
|
|
|
61
63
|
return { api: 'anthropic-messages', baseUrl: (0, model_choice_evaluator_1.messagesBaseUrl)(url), model: computerModel(gateway), apiKey: identity.apiKey, authScheme: (0, model_choice_evaluator_1.wireAuthScheme)(identity) };
|
|
62
64
|
} };
|
|
63
65
|
}
|
|
66
|
+
/** Vision Computer Use (gateway.computerUse.mode vision|hybrid): the agent's own identity and route, a toolset-capable model.
|
|
67
|
+
* Undefined keeps the Accessibility path: mode ax (the default), no decision backend, or a model without the computer toolset. */
|
|
68
|
+
function computerVision(gateway, agent, member, fetchImpl) {
|
|
69
|
+
let warned = false;
|
|
70
|
+
let log;
|
|
71
|
+
const logger = () => log ?? (log = (0, logger_1.createLogger)(agent.id, gateway.gateway.logDir));
|
|
72
|
+
return () => {
|
|
73
|
+
const mode = gateway.gateway.computerUse?.mode ?? 'ax';
|
|
74
|
+
if (mode === 'ax' || (0, jev_gateway_1.computerDecisions)(gateway, agent) === undefined)
|
|
75
|
+
return undefined;
|
|
76
|
+
const model = gateway.gateway.computerUse?.visionModel ?? vision_decider_1.DEFAULT_COMPUTER_VISION_MODEL;
|
|
77
|
+
if (!(0, vision_decider_1.supportsComputerToolset)(model)) {
|
|
78
|
+
if (!warned) {
|
|
79
|
+
warned = true;
|
|
80
|
+
console.warn(JSON.stringify({ event: 'computer_vision_model_unsupported', agentId: agent.id, mode }));
|
|
81
|
+
}
|
|
82
|
+
return undefined;
|
|
83
|
+
}
|
|
84
|
+
return { mode, decide: (task, authorized) => (0, vision_decider_1.visionModelDecider)({
|
|
85
|
+
model, timeoutMs: vision_decider_1.DEFAULT_COMPUTER_VISION_TIMEOUT_MS, fetch: fetchImpl,
|
|
86
|
+
connection: async () => (0, jev_gateway_1.agentIdentity)('Computer Use'),
|
|
87
|
+
// A live switch back to ax (or Computer Use off) revokes an in-flight decision.
|
|
88
|
+
authorize: () => authorized() && member(task) && (gateway.gateway.computerUse?.mode ?? 'ax') === mode && (0, jev_gateway_1.computerDecisions)(gateway, agent) !== undefined,
|
|
89
|
+
// Codes, sizes and token counts only; never screenshots, screen text or credentials.
|
|
90
|
+
onDecision: event => {
|
|
91
|
+
const entry = { agentId: agent.id, taskId: task.taskId, ...event };
|
|
92
|
+
if (event.outcome === 'failed')
|
|
93
|
+
console.warn(JSON.stringify({ event: 'computer_vision_decision', ...entry }));
|
|
94
|
+
else
|
|
95
|
+
try {
|
|
96
|
+
logger().debug('computer_vision_decision', entry);
|
|
97
|
+
}
|
|
98
|
+
catch { /* computer_model_log_unavailable is reported by the evaluator path. */ }
|
|
99
|
+
},
|
|
100
|
+
}) };
|
|
101
|
+
};
|
|
102
|
+
}
|
|
64
103
|
//# sourceMappingURL=computer-decisions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"computer-decisions.js","sourceRoot":"","sources":["../../src/orchestration/computer-decisions.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"computer-decisions.js","sourceRoot":"","sources":["../../src/orchestration/computer-decisions.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { ComputerProgress, ComputerUseDependencies } from '../../automation/computer-use';
|
|
2
|
+
import { type VisionDecide } from '../../automation/vision-decider';
|
|
2
3
|
import { ComputerConnectors } from '../../jev/computer-connector';
|
|
3
4
|
import type { CommandContext, TaskSnapshot, TaskAttempt, TaskRevision, WorkerOutcome, GatewayTaskTarget } from '../types';
|
|
4
5
|
import { type GatewayTaskAdapter } from './controller';
|
|
@@ -31,6 +32,11 @@ export declare class ComputerTaskAdapter implements GatewayTaskAdapter {
|
|
|
31
32
|
needsInput: (task: TaskSnapshot, question: string) => boolean;
|
|
32
33
|
progress?: (task: TaskSnapshot, report: import('../types').ComputerTaskReport) => void;
|
|
33
34
|
decisionMode?: () => 'jev' | 'model';
|
|
35
|
+
/** gateway.computerUse.mode vision|hybrid with a toolset-capable model: agent goals decided from the screenshot. */
|
|
36
|
+
vision?: () => {
|
|
37
|
+
mode: 'vision' | 'hybrid';
|
|
38
|
+
decide: (task: TaskSnapshot, authorized: () => boolean) => VisionDecide;
|
|
39
|
+
} | undefined;
|
|
34
40
|
});
|
|
35
41
|
private permitted;
|
|
36
42
|
discover(query?: string, offset?: number, context?: CommandContext): Promise<{
|
|
@@ -65,6 +71,8 @@ export declare class ComputerTaskAdapter implements GatewayTaskAdapter {
|
|
|
65
71
|
capturedAt: number;
|
|
66
72
|
};
|
|
67
73
|
} | undefined;
|
|
74
|
+
/** The capture's pixel size, the coordinate space raw input is bound to. */
|
|
75
|
+
private screenshotSize;
|
|
68
76
|
private parseScreenshot;
|
|
69
77
|
computerEvidence(t: TaskSnapshot, mode: 'recorded' | 'fresh' | 'screenshot', signal?: AbortSignal): Promise<{
|
|
70
78
|
screenshot?: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"computer.d.ts","sourceRoot":"","sources":["../../../src/orchestration/gateway-tasks/computer.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAC,gBAAgB,EAAC,uBAAuB,EAAmB,MAAM,+BAA+B,CAAC;AAE9G,OAAO,EAAC,kBAAkB,EAAwB,MAAM,8BAA8B,CAAC;AACvF,OAAO,KAAK,EAAC,cAAc,EAAC,YAAY,EAAC,WAAW,EAAC,YAAY,EAAC,aAAa,EAAC,iBAAiB,EAAC,MAAM,UAAU,CAAC;AACnH,OAAO,EAA4B,KAAK,kBAAkB,EAAC,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"computer.d.ts","sourceRoot":"","sources":["../../../src/orchestration/gateway-tasks/computer.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,12 +9,14 @@ const crypto_1 = require("crypto");
|
|
|
9
9
|
const fs_1 = require("fs");
|
|
10
10
|
const path_1 = require("path");
|
|
11
11
|
const computer_steps_1 = require("../../automation/computer-steps");
|
|
12
|
+
const vision_decider_1 = require("../../automation/vision-decider");
|
|
12
13
|
const computer_connector_1 = require("../../jev/computer-connector");
|
|
13
14
|
const controller_1 = require("./controller");
|
|
14
15
|
const types_1 = require("../types");
|
|
16
|
+
const automation_session_1 = require("../tasks/automation-session");
|
|
15
17
|
/** How long an unanswered owner approval prompt may hold the session. */
|
|
16
18
|
exports.COMPUTER_ACCESS_WAIT_MS = 5 * 60 * 1000;
|
|
17
|
-
const { runComputerUse } = require('../../automation/computer-use');
|
|
19
|
+
const { runComputerUse, confirmationReply } = require('../../automation/computer-use');
|
|
18
20
|
/** Actions an agent-spawned computer goal may take before it stops as failed (COMPUTER_STEP_LIMIT); the device session stays open. */
|
|
19
21
|
exports.COMPUTER_GOAL_MAX_STEPS = 8;
|
|
20
22
|
/** Gateway owns credentials and lifecycle; the remote device retains local consent. */
|
|
@@ -148,7 +150,6 @@ class ComputerTaskAdapter {
|
|
|
148
150
|
throw Error(access === 'denied' ? 'COMPUTER_ACCESS_DENIED' : access === 'stopped' ? 'COMPUTER_ACCESS_STOPPED' : 'COMPUTER_ACCESS_UNAVAILABLE');
|
|
149
151
|
}
|
|
150
152
|
consentSignal.throwIfAborted();
|
|
151
|
-
const workSignal = AbortSignal.any([signal, AbortSignal.timeout(125000)]);
|
|
152
153
|
// The helper bounds app_query (4000 characters) inside a 32KB request line; never split a character.
|
|
153
154
|
const appQuery = [...goal].slice(0, 4000).join('');
|
|
154
155
|
let continuationReady = false;
|
|
@@ -161,7 +162,7 @@ class ComputerTaskAdapter {
|
|
|
161
162
|
// The agent's command for a handed-off utterance: one command, no step list, no hand-off again; a high-impact action waits for the user's confirmation.
|
|
162
163
|
const agentHandoff = t.automationController === 'user' && t.executionControl?.agentHandoff === true && t.executionControl.revision === t.revision;
|
|
163
164
|
// The agent's spawn text opens a session the user drives; it is no user command.
|
|
164
|
-
const sessionStart =
|
|
165
|
+
const sessionStart = (0, automation_session_1.agentGoalRun)(t);
|
|
165
166
|
// The user's next command answers that question (Jev reads yes or no).
|
|
166
167
|
const asked = t.automationController === 'user' && !agentHandoff && previousContext && previousContext.revision < t.revision && previousContext.lastAction?.confirm && previousContext.command ? { command: previousContext.command, label: previousContext.lastAction.label ?? '', ...(previousContext.lastAction.target ? { target: previousContext.lastAction.target } : {}) } : undefined;
|
|
167
168
|
// Asked once: the question stays open until this answer's round ends. A round
|
|
@@ -175,7 +176,7 @@ class ComputerTaskAdapter {
|
|
|
175
176
|
const userText = stepMode ? this.options.userSteps?.(t) : undefined;
|
|
176
177
|
const steps = stepMode ? (userText ? (0, computer_steps_1.parseComputerSteps)(userText) : undefined) ?? (0, computer_steps_1.parseComputerSteps)(goal) : undefined;
|
|
177
178
|
const input = steps ? { steps, revision: t.revision, ...(contextNote ? { interactionContext: contextNote } : {}) } : { yieldAfterAction: t.automationController === 'agent', yieldAfterInteraction: t.automationController === 'user', readRequest: t.automationController === 'user' && !agentHandoff, ...(agentHandoff ? { agentCommand: true } : {}), ...(asked ? { confirmation: asked, ...(previousContext.goalRun ? { resumeGoal: exports.COMPUTER_GOAL_MAX_STEPS } : {}) } : {}), ...(sessionStart ? { sessionStart: true, runToGoal: true, maxSteps: exports.COMPUTER_GOAL_MAX_STEPS } : {}), revision: t.revision, preparedInputs, interactionContext: contextNote, goal: goal + recoveryNote + (answers?.length ? '\nKnown answers: ' + JSON.stringify(answers.map(a => a.text)) : '') };
|
|
178
|
-
const
|
|
179
|
+
const deps = { authorized, interruptSignal: interrupt.signal,
|
|
179
180
|
confirmed: reply => { if (asked && reply === 'YES') {
|
|
180
181
|
command = asked.command;
|
|
181
182
|
goalRun = previousContext.goalRun === true;
|
|
@@ -199,7 +200,7 @@ class ComputerTaskAdapter {
|
|
|
199
200
|
this.write(t, r, receipt);
|
|
200
201
|
} if (response.isError) {
|
|
201
202
|
const code = body?.error;
|
|
202
|
-
const known = ['CONTROL_DENIED', 'OBSERVATION_DENIED', 'ACCESSIBILITY_PERMISSION_REQUIRED', 'SCREEN_RECORDING_PERMISSION_REQUIRED', 'APPLICATION_NOT_ALLOWED', 'COMPUTER_BUSY', 'COMPUTER_RECONCILIATION_REQUIRED', 'CONSENT_REQUIRED', 'ACCESS_REVOKED', 'DEVICE_OFFLINE', 'NATIVE_FAILURE', 'NATIVE_PROCESS_EXITED', 'NATIVE_REQUEST_TIMEOUT', 'NATIVE_START_FAILED', 'NATIVE_IO_ERROR', 'INVALID_NATIVE_RESPONSE', 'SCREENSHOT_UNSUPPORTED', 'SCREENSHOT_SENSITIVE_CONTENT', 'SCREENSHOT_CAPTURE_FAILED', 'SCREENSHOT_WINDOW_UNAVAILABLE', 'SCREENSHOT_TOO_LARGE', 'STALE_OBSERVATION', 'NATIVE_BUSY', 'OBSERVATION_FAILED', 'COMPUTER_CLOSED', 'COMPUTER_NOT_OWNED'];
|
|
203
|
+
const known = ['CONTROL_DENIED', 'OBSERVATION_DENIED', 'ACCESSIBILITY_PERMISSION_REQUIRED', 'SCREEN_RECORDING_PERMISSION_REQUIRED', 'APPLICATION_NOT_ALLOWED', 'COMPUTER_BUSY', 'COMPUTER_RECONCILIATION_REQUIRED', 'CONSENT_REQUIRED', 'ACCESS_REVOKED', 'DEVICE_OFFLINE', 'NATIVE_FAILURE', 'NATIVE_PROCESS_EXITED', 'NATIVE_REQUEST_TIMEOUT', 'NATIVE_START_FAILED', 'NATIVE_IO_ERROR', 'INVALID_NATIVE_RESPONSE', 'SCREENSHOT_UNSUPPORTED', 'SCREENSHOT_SENSITIVE_CONTENT', 'SCREENSHOT_CAPTURE_FAILED', 'SCREENSHOT_WINDOW_UNAVAILABLE', 'SCREENSHOT_TOO_LARGE', 'STALE_OBSERVATION', 'RAW_INPUT_DISABLED', 'UNSUPPORTED_ACTION', 'NATIVE_BUSY', 'OBSERVATION_FAILED', 'COMPUTER_CLOSED', 'COMPUTER_NOT_OWNED'];
|
|
203
204
|
throw Error(known.includes(code) ? code : 'COMPUTER_TOOL_FAILED');
|
|
204
205
|
} if (name === 'computer_acquire')
|
|
205
206
|
leaseToken = body.lease_token; if ((name === 'computer_action' || name === 'computer_operation_status') && body.continuation_ready === true && body.state === 'unknown') {
|
|
@@ -274,7 +275,67 @@ class ComputerTaskAdapter {
|
|
|
274
275
|
receipt.trace = [...(receipt.trace ?? []), e].slice(-2000);
|
|
275
276
|
this.write(t, r, receipt);
|
|
276
277
|
this.options.progress?.(t, { status: 'running', reason: e.reason ?? e.phase, steps: e.steps, evaluations: e.evaluations, phase: e.phase, trace: receipt.trace.slice(-12) });
|
|
277
|
-
} }
|
|
278
|
+
} };
|
|
279
|
+
// Vision decides agent goals from the screenshot; the user's own commands and step lists stay on Accessibility.
|
|
280
|
+
// A question the vision loop asked is answered here: yes resumes it there, no declines it as Accessibility does
|
|
281
|
+
// (nothing runs), anything else is the user's own command. Accessibility gets the reply as read, never reads it again.
|
|
282
|
+
const visionAsked = asked && previousContext.lastAction?.vision === true;
|
|
283
|
+
const vision = !steps && (!asked || visionAsked) && (t.automationController === 'agent' || sessionStart || agentHandoff || visionAsked) ? this.options.vision?.() : undefined;
|
|
284
|
+
let result, axInput = input;
|
|
285
|
+
const reply = vision && visionAsked ? await confirmationReply(asked.label, goal, deps, AbortSignal.any([signal, AbortSignal.timeout(125000)])) : undefined;
|
|
286
|
+
if (reply) {
|
|
287
|
+
deps.confirmed(reply);
|
|
288
|
+
if (reply === 'OTHER') {
|
|
289
|
+
const { confirmation: _c, resumeGoal: _r, ...rest } = input;
|
|
290
|
+
axInput = rest;
|
|
291
|
+
}
|
|
292
|
+
else
|
|
293
|
+
axInput = { ...input, confirmation: { ...asked, reply } };
|
|
294
|
+
}
|
|
295
|
+
if (vision && 'goal' in input && (!reply || reply === 'YES')) {
|
|
296
|
+
const resumed = reply === 'YES' && previousContext.goalRun === true;
|
|
297
|
+
const outcome = await (0, vision_decider_1.runVisionComputerUse)({ goal: reply === 'YES' ? asked.command : input.goal, revision: t.revision, maxSteps: 'maxSteps' in input && input.maxSteps ? input.maxSteps : exports.COMPUTER_GOAL_MAX_STEPS, ...(contextNote ? { interactionContext: contextNote } : {}),
|
|
298
|
+
// The Accessibility semantics: the agent's own command is its authorization and control returns after each action;
|
|
299
|
+
// a goal run or a handed-off command judges each action's impact, and only a goal run keeps going.
|
|
300
|
+
impact: t.automationController !== 'agent', yieldAfterAction: !(sessionStart || resumed), ...(reply === 'YES' && asked.target ? { confirmedTarget: asked.target } : {}) }, {
|
|
301
|
+
mode: vision.mode, decide: vision.decide(t, authorized), authorized, interruptSignal: interrupt.signal, call: deps.call, evaluate: deps.evaluate, decisionMode: deps.decisionMode, observation: deps.observation, beforeMutation: deps.beforeMutation, progress: deps.progress,
|
|
302
|
+
screenshot: async (state, s) => {
|
|
303
|
+
if (!authorized())
|
|
304
|
+
throw Error('ACCESS_DENIED');
|
|
305
|
+
let text, image;
|
|
306
|
+
try {
|
|
307
|
+
const response = await client.callTool({ name: 'computer_screenshot', arguments: { ...b.scope, lease_token: leaseToken, generation: state.generation } }, undefined, { signal: s, timeout: 20000 });
|
|
308
|
+
text = response.content?.find(x => x.type === 'text')?.text;
|
|
309
|
+
image = response.isError ? undefined : this.parseScreenshot(text, state.generation);
|
|
310
|
+
}
|
|
311
|
+
catch {
|
|
312
|
+
if (!authorized())
|
|
313
|
+
throw Error('ACCESS_DENIED');
|
|
314
|
+
s.throwIfAborted();
|
|
315
|
+
}
|
|
316
|
+
if (!authorized())
|
|
317
|
+
throw Error('ACCESS_DENIED');
|
|
318
|
+
s.throwIfAborted();
|
|
319
|
+
const size = image ? this.screenshotSize(text) : undefined;
|
|
320
|
+
const error = image ? undefined : (() => { try {
|
|
321
|
+
const c = JSON.parse(String(text ?? '{}')).error;
|
|
322
|
+
return typeof c === 'string' && /^[A-Z_]{1,80}$/.test(c) ? c : 'COMPUTER_SCREENSHOT_UNAVAILABLE';
|
|
323
|
+
}
|
|
324
|
+
catch {
|
|
325
|
+
return 'COMPUTER_SCREENSHOT_UNAVAILABLE';
|
|
326
|
+
} })();
|
|
327
|
+
receipt.snapshot = { observedAt: Date.now(), state, ...(image ? { screenshot: image } : { screenshotError: error }) };
|
|
328
|
+
this.write(t, r, receipt);
|
|
329
|
+
if (image)
|
|
330
|
+
this.write(t, 'last-screenshot', { ...receipt, requestId: 'last-screenshot' });
|
|
331
|
+
return image && size ? { generation: image.generation, data: image.data, ...size } : { error: error ?? 'SCREENSHOT_SIZE_MISSING' };
|
|
332
|
+
},
|
|
333
|
+
}, AbortSignal.any([signal, AbortSignal.timeout(vision_decider_1.COMPUTER_VISION_RUN_TIMEOUT_MS + 5000)]));
|
|
334
|
+
// No raw input on this Mac (helper or app switch): the same goal runs on Accessibility, nothing has run yet.
|
|
335
|
+
if (!('fallback' in outcome))
|
|
336
|
+
result = outcome;
|
|
337
|
+
}
|
|
338
|
+
result ?? (result = await (steps ? computer_steps_1.runComputerSteps : runComputerUse)(axInput, deps, AbortSignal.any([signal, AbortSignal.timeout(125000)])));
|
|
278
339
|
// A reached goal ends the device session too: the Mac stops showing it as
|
|
279
340
|
// controlled and the owner's next request asks for access again.
|
|
280
341
|
const accessReleased = result.status === 'succeeded' && result.reason === 'GOAL_REACHED' && !receipt.operationId && authorized() ? await this.endSession(client, b.scope) : undefined;
|
|
@@ -395,6 +456,17 @@ class ComputerTaskAdapter {
|
|
|
395
456
|
return;
|
|
396
457
|
return receipt.snapshot;
|
|
397
458
|
}
|
|
459
|
+
/** The capture's pixel size, the coordinate space raw input is bound to. */
|
|
460
|
+
screenshotSize(text) {
|
|
461
|
+
try {
|
|
462
|
+
const x = JSON.parse(String(text));
|
|
463
|
+
const ok = (n) => Number.isSafeInteger(n) && n > 0 && n <= 4096;
|
|
464
|
+
return ok(x.width) && ok(x.height) ? { width: x.width, height: x.height } : undefined;
|
|
465
|
+
}
|
|
466
|
+
catch {
|
|
467
|
+
return;
|
|
468
|
+
}
|
|
469
|
+
}
|
|
398
470
|
parseScreenshot(text, generation) {
|
|
399
471
|
if (typeof text !== 'string' || text.length > 180000)
|
|
400
472
|
return;
|