From 68ec7c0f306d8994f8ecbf7acc0ae19937e2db00 Mon Sep 17 00:00:00 2001 From: Emre K <110906681+kocaemre@users.noreply.github.com> Date: Sat, 12 Sep 2026 00:15:31 +0200 Subject: [PATCH] fix: use bundled Codex for login by default Signed-off-by: Emre K <110906681+kocaemre@users.noreply.github.com> --- src/__tests__/login.test.ts | 13 +++++++++++++ src/login.ts | 6 +++++- 2 files changed, 18 insertions(+), 1 deletion(-) create mode 100644 src/__tests__/login.test.ts diff --git a/src/__tests__/login.test.ts b/src/__tests__/login.test.ts new file mode 100644 index 00000000..d69d1836 --- /dev/null +++ b/src/__tests__/login.test.ts @@ -0,0 +1,13 @@ +import {describe, expect, it} from "vitest"; + +import {resolveLoginCodexPath} from "../login"; + +describe("resolveLoginCodexPath", () => { + it("uses the bundled Codex app-server when CODEX_PATH is absent", () => { + expect(resolveLoginCodexPath({})).toBeUndefined(); + }); + + it("preserves an explicit CODEX_PATH override", () => { + expect(resolveLoginCodexPath({CODEX_PATH: "/opt/codex/bin/codex"})).toBe("/opt/codex/bin/codex"); + }); +}); diff --git a/src/login.ts b/src/login.ts index a46bdf89..a0e8583d 100644 --- a/src/login.ts +++ b/src/login.ts @@ -11,6 +11,10 @@ interface LoginOptions { clientVersion?: string; } +export function resolveLoginCodexPath(env: NodeJS.ProcessEnv = process.env): string | undefined { + return env["CODEX_PATH"]; +} + function parseArgs(args: string[]): LoginOptions | null { const options: LoginOptions = {}; @@ -63,7 +67,7 @@ Example: } async function login(options: LoginOptions): Promise { - const codexPath = process.env["CODEX_PATH"] ?? "codex"; + const codexPath = resolveLoginCodexPath(); logger.log("Starting Codex connection..."); const codexConnection = startCodexConnection(codexPath);