From a2127a11ac9a2b43e9c658139f60f8252226fb77 Mon Sep 17 00:00:00 2001 From: Shantur Rathore Date: Tue, 3 Feb 2026 15:22:49 +0000 Subject: [PATCH] fix(server): include symlink directories in listings Fixes https://github.com/NeuralNomadsAI/CodeNomad/issues/106 --- packages/server/src/filesystem/browser.ts | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/packages/server/src/filesystem/browser.ts b/packages/server/src/filesystem/browser.ts index e5820f3d..d2a8065d 100644 --- a/packages/server/src/filesystem/browser.ts +++ b/packages/server/src/filesystem/browser.ts @@ -222,20 +222,18 @@ export class FileSystemBrowser { const results: FileSystemEntry[] = [] for (const entry of dirents) { - if (!options.includeFiles && !entry.isDirectory()) { - continue - } - const absoluteEntryPath = path.join(directory, entry.name) let stats: fs.Stats try { + // Use fs.statSync (not Dirent.isDirectory) so symlinks to directories + // are treated as directories in directory-only listings. stats = fs.statSync(absoluteEntryPath) } catch { // Skip entries we cannot stat (insufficient permissions, etc.) continue } - const isDirectory = entry.isDirectory() + const isDirectory = stats.isDirectory() if (!options.includeFiles && !isDirectory) { continue }