{"record":{"id":"91a38d958e43f6ee","repo":"Yeachan-Heo/oh-my-codex","slug":"omx-warning-detached-tmux-transport-is-unavaila","errorCode":null,"errorMessage":"[omx] warning: detached tmux transport is unavailable. Falling back to direct Codex launch.","messagePattern":"\\[omx\\] warning: detached tmux transport is unavailable\\. Falling back to direct Codex launch\\.","errorType":"console","errorClass":"DetachedTransportUnavailable","httpStatus":null,"severity":"warning","filePath":"src/cli/index.ts","lineNumber":3954,"sourceCode":"  const { omxArgs, suffix } = splitOmxArgsAtEndOfOptions(args);\n  const parsedWorktree = parseWorktreeMode(omxArgs);\n  const notifyTempResult = resolveNotifyTempContract(\n    parsedWorktree.remainingArgs,\n    process.env,\n  );\n  const passthroughArgs = [...notifyTempResult.passthroughArgs, ...suffix];\n  const explicitLaunchPolicy = resolveEffectiveLeaderLaunchPolicyOverride(\n    passthroughArgs,\n    process.env,\n  );\n  let { launchPolicy } = resolveTmuxAwareLaunchPolicy(explicitLaunchPolicy, isNativeWindows());\n  let detachedPreflight: DetachedPreflightAvailable | undefined;\n  if (launchPolicy === \"detached-tmux\") {\n    try {\n      detachedPreflight = preflightDetachedLaunch();\n    } catch (error) {\n      if (!(error instanceof DetachedTransportUnavailable)) throw error;\n      console.warn(\"[omx] warning: detached tmux transport is unavailable. Falling back to direct Codex launch.\");\n      launchPolicy = \"direct\";\n    }\n  }\n  const enableNotifyFallbackAuthority = launchPolicy === \"direct\";\n  activateMadmaxIsolationIfNeeded(\"launch\", args, launchCwd, process.env);\n  const verifiedMadmaxLaunchContext = resolveVerifiedMadmaxDetachedContext(launchCwd, args, process.env);\n  const persistentCodexHomeForLaunch = resolveCodexHomeForLaunch(launchCwd, process.env);\n  const workerSparkModel = resolveWorkerSparkModel(\n    passthroughArgs,\n    persistentCodexHomeForLaunch,\n  );\n  let normalizedArgs = normalizeCodexLaunchArgs(passthroughArgs);\n  let cwd = launchCwd;\n  let worktreeDirty = false;\n  let ensuredLaunchWorktree: ReturnType<typeof ensureWorktree> | undefined;\n  if (parsedWorktree.mode.enabled) {\n    const planned = planWorktreeTarget({\n      cwd: launchCwd,","sourceCodeStart":3936,"sourceCodeEnd":3972,"githubUrl":"https://github.com/Yeachan-Heo/oh-my-codex/blob/3ad79a8a6fe6e95fdbb8c00e40716fffe4011ce2/src/cli/index.ts#L3936-L3972","documentation":"The CLI was asked to launch Codex in a detached tmux session, but the preflight check preflightDetachedLaunch() threw DetachedTransportUnavailable, meaning tmux is not installed, not in PATH, or otherwise unusable. The launcher downgrades the launch policy to 'direct' and continues. It is informational: the launch still proceeds, just without tmux detachment.","triggerScenarios":"Running the omx CLI with launchPolicy 'detached-tmux' (e.g. via config or flags like --detach) on a machine where `tmux` is missing from PATH, tmux binary is broken, or the socket directory is unwritable.","commonSituations":"CI containers or minimal Docker images without tmux installed; macOS/Linux servers where tmux is installed via a non-standard PATH not visible to the CLI; SSH sessions with restricted environments.","solutions":["Install tmux (e.g. `apt-get install tmux` or `brew install tmux`) and verify `tmux -V` works in the same shell","Ensure the tmux binary directory is on PATH for the process launching omx","If tmux is unavailable, accept direct launch or explicitly set the launch policy to 'direct' to silence the warning"],"exampleFix":"// before\nomx launch --detach   // warns: detached tmux transport unavailable\n\n// after\nsudo apt-get install -y tmux && tmux -V\nomx launch --detach","handlingStrategy":"validation","validationCode":"import { execSync } from 'node:child_process';\nfunction tmuxAvailable(): boolean {\n  try { execSync('tmux -V', { stdio: 'ignore' }); return true; } catch { return false; }\n}","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Pre-check tmux availability before choosing detached-tmux policy","Install tmux in CI/Docker images that use detached mode","Set launch policy to 'direct' explicitly on machines without tmux"],"tags":["tmux","detached-session","cli-launch","fallback"],"backgroundTag":"missing-dependency","analyzedSha":"3ad79a8a6fe6e95fdbb8c00e40716fffe4011ce2","analyzedAt":"2026-08-27T22:18:39.783Z","schemaVersion":2},"datasetVersion":"2026-08-28T00:17:15.603Z"}