diegosouzapw/OmniRoute · error · Error
Tunnel Runtime-Key is missing or too large
Error message
Tunnel Runtime-Key is missing or too large
What it means
Error "Tunnel Runtime-Key is missing or too large" thrown in diegosouzapw/OmniRoute.
Source
Thrown at open-sse/executors/chatgpt-web-codex/tunnelClient.ts:255
};
atomicWriteFile(paths.manifest, `${JSON.stringify(manifest, null, 2)}\n`);
const version = spawnSync(paths.binary, ["--version"], { encoding: "utf8" });
if (
version.status !== 0 ||
!`${version.stdout}\n${version.stderr}`.includes(CHATGPT_WEB_CODEX_TUNNEL_VERSION)
) {
throw new Error("Installed tunnel-client did not report the pinned version");
}
return paths.binary;
}
function validateRuntimeConfig(config: TunnelRuntimeConfig) {
if (!/^tunnel_[a-f0-9]{32}$/.test(config.tunnelId)) {
throw new Error("Tunnel ID must be tunnel_ followed by 32 lowercase hexadecimal characters");
}
if (!config.runtimeKey.trim() || config.runtimeKey.length > 64 * 1024) {
throw new Error("Tunnel Runtime-Key is missing or too large");
}
for (const value of [
config.alias ?? "omniroute-chatgpt-web-codex",
config.profile ?? "omniroute",
]) {
if (!/^[A-Za-z0-9._-]+$/.test(value)) throw new Error("Tunnel alias/profile is invalid");
}
}
export async function startTunnelRuntime(config: TunnelRuntimeConfig): Promise<ChildProcess> {
validateRuntimeConfig(config);
acquireTunnelSupervisorLease();
const binary = await ensureTunnelClientInstalled();
const paths = tunnelClientPaths();
const runtimeKeyFile = join(
paths.root,
`runtime-key-${createHash("sha256").update(config.tunnelId).digest("hex").slice(0, 16)}`
);View on GitHub (pinned to a179ffed5b)
When it happens
Trigger: Thrown at open-sse/executors/chatgpt-web-codex/tunnelClient.ts:255 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of diegosouzapw/OmniRoute@a179ffed5b (2026-08-25).
Data as JSON: /api/errors/c708e61ade1bc53e.
Report an issue: GitHub.