From 3f3d24dcdfd3edfeb8bd63864c6a2e819b99eee9 Mon Sep 17 00:00:00 2001 From: Rafael Reis Date: Wed, 28 Jan 2026 09:56:16 -0300 Subject: [PATCH] fix(hooks): use pathToFileURL for Windows ESM compatibility in session-memory --- src/hooks/bundled/session-memory/handler.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/hooks/bundled/session-memory/handler.ts b/src/hooks/bundled/session-memory/handler.ts index 5b5a69c9c..4f9156cff 100644 --- a/src/hooks/bundled/session-memory/handler.ts +++ b/src/hooks/bundled/session-memory/handler.ts @@ -8,7 +8,7 @@ import fs from "node:fs/promises"; import path from "node:path"; import os from "node:os"; -import { fileURLToPath } from "node:url"; +import { fileURLToPath, pathToFileURL } from "node:url"; import type { MoltbotConfig } from "../../../config/config.js"; import { resolveAgentWorkspaceDir } from "../../../agents/agent-scope.js"; import { resolveAgentIdFromSessionKey } from "../../../routing/session-key.js"; @@ -119,7 +119,7 @@ const saveSessionToMemory: HookHandler = async (event) => { // Going up ../.. puts us at dist/hooks/, so just add llm-slug-generator.js const moltbotRoot = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "../.."); const slugGenPath = path.join(moltbotRoot, "llm-slug-generator.js"); - const { generateSlugViaLLM } = await import(slugGenPath); + const { generateSlugViaLLM } = await import(pathToFileURL(slugGenPath).href); // Use LLM to generate a descriptive slug slug = await generateSlugViaLLM({ sessionContent, cfg });