codex-computer-use-mcp 0.3.4 → 0.5.0

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 (51) hide show
  1. package/README.md +39 -117
  2. package/SECURITY.md +5 -63
  3. package/dist/audit.d.ts +1 -7
  4. package/dist/audit.js +4 -12
  5. package/dist/audit.js.map +1 -1
  6. package/dist/code-executor.d.ts +23 -0
  7. package/dist/code-executor.js +216 -0
  8. package/dist/code-executor.js.map +1 -0
  9. package/dist/code-worker.d.ts +1 -0
  10. package/dist/code-worker.js +120 -0
  11. package/dist/code-worker.js.map +1 -0
  12. package/dist/direct-broker.d.ts +18 -30
  13. package/dist/direct-broker.js +87 -161
  14. package/dist/direct-broker.js.map +1 -1
  15. package/dist/direct-service.d.ts +13 -21
  16. package/dist/direct-service.js +82 -299
  17. package/dist/direct-service.js.map +1 -1
  18. package/dist/mcp-elicitation.d.ts +1 -2
  19. package/dist/mcp-elicitation.js +18 -23
  20. package/dist/mcp-elicitation.js.map +1 -1
  21. package/dist/mcp-server.js +34 -38
  22. package/dist/mcp-server.js.map +1 -1
  23. package/dist/session-executor.d.ts +22 -0
  24. package/dist/session-executor.js +89 -0
  25. package/dist/session-executor.js.map +1 -0
  26. package/dist/tools.d.ts +743 -81
  27. package/dist/tools.js +55 -178
  28. package/dist/tools.js.map +1 -1
  29. package/dist/version.d.ts +1 -0
  30. package/dist/version.js +3 -0
  31. package/dist/version.js.map +1 -0
  32. package/integrations/pi/index.ts +146 -261
  33. package/package.json +13 -26
  34. package/ARCHITECTURE.md +0 -162
  35. package/CHANGELOG.md +0 -19
  36. package/CONTRIBUTING.md +0 -33
  37. package/MIGRATION.md +0 -134
  38. package/PROOF.md +0 -166
  39. package/dist/config.d.ts +0 -12
  40. package/dist/config.js +0 -10
  41. package/dist/config.js.map +0 -1
  42. package/dist/lock.d.ts +0 -17
  43. package/dist/lock.js +0 -137
  44. package/dist/lock.js.map +0 -1
  45. package/dist/system.d.ts +0 -25
  46. package/dist/system.js +0 -213
  47. package/dist/system.js.map +0 -1
  48. package/docs/adr/0001-standalone-code-mode-mcp.md +0 -45
  49. package/integrations/pi/README.md +0 -73
  50. package/integrations/pi/mcp.json.example +0 -15
  51. package/npm-shrinkwrap.json +0 -4827
@@ -0,0 +1 @@
1
+ {"version":3,"file":"code-executor.js","sourceRoot":"","sources":["../src/code-executor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,120 @@
1
+ import vm from "node:vm";
2
+ import { parentPort, workerData } from "node:worker_threads";
3
+ import { z } from "zod";
4
+ const MAX_BRIDGE_BYTES = 1_000_000;
5
+ const MAX_EMITS = 100;
6
+ const bridgeStringSchema = z.string();
7
+ // SAFETY: ComputerUseCodeExecutor is the sole worker creator and supplies this exact cloneable shape.
8
+ const input = workerData;
9
+ const port = parentPort;
10
+ if (!port)
11
+ throw new Error("Computer Use code worker requires a parent port");
12
+ let nextCallId = 1;
13
+ const pending = new Map();
14
+ port.on("message", (message) => {
15
+ const waiter = pending.get(message.id);
16
+ if (!waiter)
17
+ return;
18
+ pending.delete(message.id);
19
+ if ("error" in message)
20
+ waiter.reject(new Error(message.error));
21
+ else
22
+ waiter.resolve(message.value);
23
+ });
24
+ let emitCount = 0;
25
+ let emittedBytes = 0;
26
+ const checkBridgeValue = (value, label) => {
27
+ const bytes = Buffer.byteLength(value, "utf8");
28
+ if (bytes > MAX_BRIDGE_BYTES)
29
+ throw new Error(`${label} exceeds ${MAX_BRIDGE_BYTES} bytes`);
30
+ return bytes;
31
+ };
32
+ const callBridge = (method, args) => {
33
+ checkBridgeValue(args, "Computer Use arguments");
34
+ const id = nextCallId++;
35
+ return new Promise((resolve, reject) => {
36
+ pending.set(id, { resolve, reject });
37
+ port.postMessage({ type: "call", id, method, args });
38
+ });
39
+ };
40
+ const emitValue = (type, value) => {
41
+ if (emitCount >= MAX_EMITS)
42
+ throw new Error(`Computer Use code exceeded ${MAX_EMITS} emits`);
43
+ const bytes = checkBridgeValue(value, "Computer Use emitted value");
44
+ if (emittedBytes + bytes > MAX_BRIDGE_BYTES) {
45
+ throw new Error(`Computer Use emitted output exceeds ${MAX_BRIDGE_BYTES} bytes`);
46
+ }
47
+ emitCount += 1;
48
+ emittedBytes += bytes;
49
+ port.postMessage({ type, value });
50
+ };
51
+ const emitBridge = (value) => emitValue("emit", value);
52
+ const emitImageBridge = (value) => emitValue("emit_image", value);
53
+ Object.setPrototypeOf(callBridge, null);
54
+ Object.setPrototypeOf(emitBridge, null);
55
+ Object.setPrototypeOf(emitImageBridge, null);
56
+ const context = vm.createContext({
57
+ __callBridge: callBridge,
58
+ __emitBridge: emitBridge,
59
+ __emitImageBridge: emitImageBridge,
60
+ __storeJson: JSON.stringify(input.store),
61
+ }, {
62
+ codeGeneration: { strings: false, wasm: false },
63
+ name: "computer-use",
64
+ });
65
+ const bootstrap = new vm.Script(`(() => {
66
+ const callBridge = globalThis.__callBridge;
67
+ const emitBridge = globalThis.__emitBridge;
68
+ const emitImageBridge = globalThis.__emitImageBridge;
69
+ const storeJson = globalThis.__storeJson;
70
+ delete globalThis.__callBridge;
71
+ delete globalThis.__emitBridge;
72
+ delete globalThis.__emitImageBridge;
73
+ delete globalThis.__storeJson;
74
+ const call = async (method, args = {}) => JSON.parse(await callBridge(method, JSON.stringify(args)));
75
+ globalThis.sky = Object.freeze({
76
+ list_apps: (args) => call("list_apps", args),
77
+ get_app_state: (args) => call("get_app_state", args),
78
+ click: (args) => call("click", args),
79
+ perform_secondary_action: (args) => call("perform_secondary_action", args),
80
+ set_value: (args) => call("set_value", args),
81
+ select_text: (args) => call("select_text", args),
82
+ scroll: (args) => call("scroll", args),
83
+ drag: (args) => call("drag", args),
84
+ press_key: (args) => call("press_key", args),
85
+ type_text: (args) => call("type_text", args),
86
+ });
87
+ globalThis.emit = (value) => emitBridge(JSON.stringify(value));
88
+ globalThis.emitImage = (value) => {
89
+ if (value === null) throw new Error("get_app_state returned no screenshot");
90
+ emitImageBridge(JSON.stringify(value));
91
+ };
92
+ globalThis.store = JSON.parse(storeJson);
93
+ })()`);
94
+ const serializedStore = () => {
95
+ const parsed = bridgeStringSchema.safeParse(new vm.Script("JSON.stringify(store)").runInContext(context));
96
+ if (!parsed.success)
97
+ throw new Error("Computer Use store must remain a JSON object");
98
+ checkBridgeValue(parsed.data, "Computer Use store");
99
+ return parsed.data;
100
+ };
101
+ try {
102
+ bootstrap.runInContext(context);
103
+ port.postMessage({ type: "ready" });
104
+ const script = new vm.Script(`(async () => {\n${input.code}\n})()`, { filename: "computer-use.js" });
105
+ await script.runInContext(context);
106
+ port.postMessage({ type: "done", store: serializedStore() });
107
+ }
108
+ catch (cause) {
109
+ let error = cause instanceof Error ? cause.message : String(cause);
110
+ let store;
111
+ try {
112
+ store = serializedStore();
113
+ }
114
+ catch (storeError) {
115
+ store = JSON.stringify(input.store);
116
+ error = storeError instanceof Error ? storeError.message : String(storeError);
117
+ }
118
+ port.postMessage({ type: "done", store, error });
119
+ }
120
+ //# sourceMappingURL=code-worker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"code-worker.js","sourceRoot":"","sources":["../src/code-worker.ts"],"names":[],"mappings":"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"}
@@ -1,27 +1,25 @@
1
- import { type DirectMethod, type DirectToolArguments } from "./tools.ts";
2
- export declare const CODEX_PATH = "/Applications/ChatGPT.app/Contents/Resources/codex";
3
- export declare const COMPUTER_USE_PLUGIN_ROOT = "/Applications/ChatGPT.app/Contents/Resources/plugins/openai-bundled/plugins/computer-use";
4
- export declare const COMPUTER_USE_CLIENT_PATH: string;
5
- export declare const LEGACY_COMPUTER_USE_CLIENT_PATH: string;
6
- export interface DirectBrokerElicitationRequest extends Record<string, unknown> {
7
- mode?: string;
8
- message?: string;
9
- requestedSchema?: unknown;
10
- url?: string;
11
- elicitationId?: string;
12
- }
1
+ import { z } from "zod";
2
+ import type { DirectMethod, DirectToolArguments, JsonObject, JsonValue } from "./tools.ts";
3
+ declare const elicitationRequestSchema: z.ZodObject<{
4
+ mode: z.ZodOptional<z.ZodString>;
5
+ message: z.ZodOptional<z.ZodString>;
6
+ requestedSchema: z.ZodOptional<z.ZodJSONSchema>;
7
+ url: z.ZodOptional<z.ZodString>;
8
+ elicitationId: z.ZodOptional<z.ZodString>;
9
+ _meta: z.ZodOptional<z.ZodJSONSchema>;
10
+ }, z.core.$catchall<z.ZodJSONSchema>>;
11
+ export type DirectBrokerElicitationRequest = z.infer<typeof elicitationRequestSchema>;
13
12
  export interface DirectBrokerElicitationResponse {
14
13
  action: "accept" | "decline" | "cancel";
15
- content?: unknown;
16
- _meta?: unknown;
14
+ content?: JsonValue;
15
+ _meta?: JsonValue;
17
16
  }
18
17
  export interface DirectBrokerResult {
19
- content: Array<Record<string, unknown>>;
20
- structuredContent?: unknown;
18
+ content: JsonObject[];
19
+ structuredContent?: JsonValue;
21
20
  isError: boolean;
22
21
  brokerVersion: string;
23
22
  clientBuild: string;
24
- durationMs: number;
25
23
  elicitationRequests: number;
26
24
  modelTurnsStarted: 0;
27
25
  ephemeralThread: true;
@@ -40,13 +38,8 @@ export interface DirectBrokerOptions {
40
38
  skipSignatureVerification?: boolean;
41
39
  /** Test-only process-enumerator override. */
42
40
  processEnumeratorCommand?: string;
43
- /** Test-only working-directory process-enumerator override. */
44
- cwdEnumeratorCommand?: string;
45
41
  onSpawn?: (pid: number) => void;
46
42
  }
47
- export declare class BrokerVerificationError extends Error {
48
- constructor(message: string);
49
- }
50
43
  export declare class DirectBrokerCallError extends Error {
51
44
  readonly cleanupVerified: boolean;
52
45
  readonly directCalls: number;
@@ -66,8 +59,8 @@ export declare class DirectBrokerCallError extends Error {
66
59
  }
67
60
  interface CommandResult {
68
61
  status: number | null;
69
- stdout?: string | Buffer;
70
- stderr?: string | Buffer;
62
+ stdout?: string;
63
+ stderr?: string;
71
64
  }
72
65
  type RunSync = (command: string, args: string[]) => CommandResult;
73
66
  export interface OfficialComputerUseClient {
@@ -91,14 +84,9 @@ export declare function verifyOfficialDirectBroker(options?: ResolveOfficialComp
91
84
  };
92
85
  export declare function buildDirectAppServerArgs(mcpCwd?: string, clientPath?: string): string[];
93
86
  export interface OfficialDirectToolSession {
94
- call(method: DirectMethod, args: DirectToolArguments, options?: Pick<DirectBrokerOptions, "timeoutMs" | "signal" | "onElicitation" | "supportsOpenAiFormElicitation">): Promise<DirectBrokerResult>;
87
+ call(method: DirectMethod, args: DirectToolArguments, options?: Pick<DirectBrokerOptions, "timeoutMs" | "signal" | "onElicitation">): Promise<DirectBrokerResult>;
95
88
  close(): Promise<void>;
96
89
  }
97
- /**
98
- * Start one verified app-server runtime and retain its signed Computer Use MCP
99
- * client across calls. Pi uses this for the required get_app_state -> action
100
- * sequence; one-shot callers continue to use callOfficialDirectTool below.
101
- */
102
90
  export declare function createOfficialDirectToolSession(options?: DirectBrokerOptions): Promise<OfficialDirectToolSession>;
103
91
  export declare function callOfficialDirectTool(method: DirectMethod, args: DirectToolArguments, options?: DirectBrokerOptions): Promise<DirectBrokerResult>;
104
92
  export {};