{"record":{"id":"b7fa7682faad65f3","repo":"diegosouzapw/OmniRoute","slug":"chatgpt-web-codex-tools-require-a-ready-tunnel-a","errorCode":null,"errorMessage":"ChatGPT Web (Codex) tools require a ready tunnel and Custom Connector","messagePattern":"ChatGPT Web \\(Codex\\) tools require a ready tunnel and Custom Connector","errorType":"validation","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"open-sse/executors/chatgpt-web-codex.ts","lineNumber":175,"sourceCode":"  }\n\n  const proAvailable = data.proAvailable === true;\n  if (route.pro && !proAvailable) {\n    throw new Error(\"ChatGPT Pro is not available for this connection\");\n  }\n\n  const hasTools = toolModeRequired(parsed);\n  const requiredChoice =\n    parsed.options.toolChoice === \"required\" || typeof parsed.options.toolChoice === \"object\";\n  if (route.pro && requiredChoice) {\n    throw new Error(\"ChatGPT Web Pro is read-only and cannot satisfy a required tool choice\");\n  }\n\n  const connector =\n    configuredString(data, \"connectorName\", \"appName\") ??\n    process.env.CHATGPT_WEB_CODEX_CONNECTOR_NAME?.trim();\n  if (!route.pro && hasTools && !connector) {\n    throw new Error(\"ChatGPT Web (Codex) tools require a ready tunnel and Custom Connector\");\n  }\n\n  parsed.modelId = \"gpt-5.6-sol\";\n  parsed.options.reasoning = route.effort;\n\n  return {\n    adapter: \"chatgpt-web\",\n    baseUrl: \"https://chatgpt.com\",\n    defaultModel: \"gpt-5.6-sol\",\n    models: [\"gpt-5.6-sol\"],\n    chatgptWeb: {\n      ...(connector ? { appName: connector } : {}),\n      storageStatePath,\n      ...(chromeExecutablePath ? { chromeExecutablePath } : {}),\n      ...(cdpEndpoint ? { cdpEndpoint } : {}),\n      brokerSocketPath: paths.brokerSocketPath,\n      threadEnvironmentStatePath: paths.threadEnvironmentStatePath,\n      headed: false,","sourceCodeStart":157,"sourceCodeEnd":193,"githubUrl":"https://github.com/diegosouzapw/OmniRoute/blob/a179ffed5bb2e0b883b9ae7214ce8717b2a94c4d/open-sse/executors/chatgpt-web-codex.ts#L157-L193","documentation":"Error \"ChatGPT Web (Codex) tools require a ready tunnel and Custom Connector\" thrown in diegosouzapw/OmniRoute.","triggerScenarios":"Thrown at open-sse/executors/chatgpt-web-codex.ts:175 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"a179ffed5bb2e0b883b9ae7214ce8717b2a94c4d","analyzedAt":"2026-08-25T18:35:09.898Z","schemaVersion":2},"datasetVersion":"2026-08-25T21:54:21.419Z"}