Skip to content

[Bug]: macOS add-project flow forces folder picker and prevents manual path entry / viewing hidden folders #1312

Closed

Description

@hanakin

Before submitting

  • I searched existing issues and did not find a duplicate.
  • I included enough detail to reproduce or investigate the problem.

Area

apps/desktop

Steps to reproduce

  1. Open T3 Code on macOS.
  2. In the desktop app, go to the Projects section.
  3. Click Add project.
  4. Notice the app immediately opens the native folder picker instead of showing a path input.
  5. Try to add a project by:
    • pasting a full path directly
    • navigating to a hidden folder such as .codex
    • entering a custom path manually
  6. Observe that these workflows are blocked or much harder than they should be.

Expected behavior

Adding a project on macOS should support both of these flows:

  • browse for a folder using the native picker
  • type or paste a full path directly into a path input

The native picker should also allow access to hidden folders such as .codex, or the UI should provide a manual-path fallback so hidden directories can still be added easily.

Actual behavior

On macOS desktop, clicking Add project immediately opens the native folder picker and does not expose the manual path input fallback.

As a result:

  • users cannot directly paste a path into the add-project flow
  • hidden folders like .codex are not visible in the picker
  • custom paths are impossible to enter from the UI

From the code, the behavior appears to come from two places:

  • apps/web/src/components/Sidebar.tsx forces browse-first behavior for Electron on non-Linux platforms
  • apps/desktop/src/main.ts opens Electron’s showOpenDialog with only openDirectory and createDirectory, without showHiddenFiles

Impact

Minor bug or occasional failure

Version or commit

0.0.13

Environment

macOS 15.7.4

Logs or stack traces

Screenshots, recordings, or supporting files

No response

Workaround

There does not appear to be a good in-app workaround on macOS right now.

Partial workarounds:

  • move or symlink the target folder to a visible location before adding it
  • avoid hidden directories when possible
  • modify the app locally to re-enable manual path entry or enable showHiddenFiles

For normal users, there is effectively no straightforward workaround inside the current macOS UI.

Relevant code:

  • apps/web/src/components/Sidebar.tsx
  • apps/desktop/src/main.ts
const isLinuxDesktop = isElectron && isLinuxPlatform(navigator.platform);
const shouldBrowseForProjectImmediately = isElectron && !isLinuxDesktop;
const shouldShowProjectPathEntry = addingProject && !shouldBrowseForProjectImmediately;

ipcMain.handle(PICK_FOLDER_CHANNEL, async () => {
  const owner = BrowserWindow.getFocusedWindow() ?? mainWindow;
  const result = owner
    ? await dialog.showOpenDialog(owner, {
        properties: ["openDirectory", "createDirectory"],
      })
    : await dialog.showOpenDialog({
        properties: ["openDirectory", "createDirectory"],
      });
  if (result.canceled) return null;
  return result.filePaths[0] ?? null;
});

Activity

  1. added
    bugSomething is broken or behaving incorrectly.
    needs-triageIssue needs maintainer review and initial categorization.
    on Mar 22, 2026
  2. nmggithub commented on Mar 22, 2026

    @nmggithub
    Contributor

    It is possible to to show hidden directories in a macOS native file picker window with the keyboard shortcut: Command+Shift+{Period}

    That being said... Theo is on the side of allowing for the manual adding of a path.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething is broken or behaving incorrectly.needs-triageIssue needs maintainer review and initial categorization.

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions