diff --git a/scripts/write-cli-compat.ts b/scripts/write-cli-compat.ts index ac025fd822..e9d5b44f58 100644 --- a/scripts/write-cli-compat.ts +++ b/scripts/write-cli-compat.ts @@ -12,7 +12,9 @@ const cliDir = path.join(distDir, "cli"); const findCandidates = () => fs.readdirSync(distDir).filter((entry) => { - if (!entry.startsWith("daemon-cli-")) { + const isDaemonCliBundle = + entry === "daemon-cli.js" || entry === "daemon-cli.mjs" || entry.startsWith("daemon-cli-"); + if (!isDaemonCliBundle) { return false; } // tsdown can emit either .js or .mjs depending on bundler settings/runtime. diff --git a/tsdown.config.ts b/tsdown.config.ts index c299492965..b4c9d97b48 100644 --- a/tsdown.config.ts +++ b/tsdown.config.ts @@ -17,6 +17,13 @@ export default defineConfig([ fixedExtension: false, platform: "node", }, + { + // Ensure this module is bundled as an entry so legacy CLI shims can resolve its exports. + entry: "src/cli/daemon-cli.ts", + env, + fixedExtension: false, + platform: "node", + }, { entry: "src/infra/warning-filter.ts", env,