Skip to content

[Bug]: Desktop app does not discover agent CLIs installed through Nix #6121

Description

@Pape45

Before you submit

  • I searched existing issues and confirmed this is not a duplicate.
  • I replaced the example text with the real behavior, reproduction steps, expected result, and version from the app's About menu or od --version.

What happened?

The packaged macOS desktop app does not discover agent CLIs installed through nix-darwin environment.systemPackages.

In a terminal, Codex, Claude Code, and Gemini resolve normally:

$ command -v codex
/run/current-system/sw/bin/codex

$ codex --version
codex-cli 0.145.0

$ command -v claude
/run/current-system/sw/bin/claude

After launching Open Design normally from Finder/Applications and rescanning Local CLI agents, Codex and Claude Code are reported as not found on PATH.

The current well-known toolchain directory list covers Homebrew, npm, mise, nvm, fnm, and other common locations, but not standard Nix profile paths such as /run/current-system/sw/bin or ~/.nix-profile/bin. A GUI-launched daemon therefore cannot see Nix-installed CLIs when launchd provides a minimal PATH.

Steps to reproduce

  1. On macOS with nix-darwin, add pkgs.codex and/or pkgs.claude-code to environment.systemPackages.
  2. Rebuild the Nix system.
  3. Confirm command -v codex returns /run/current-system/sw/bin/codex and codex --version succeeds.
  4. Install and launch the packaged Open Design desktop app normally.
  5. Open Settings → Execution mode → Local CLI.
  6. Click Rescan.
  7. Observe that Codex CLI and Claude Code remain under “Available to install” and are reported as not found on PATH.

Expected behavior

The packaged desktop daemon should search standard Nix profile bin directories in addition to the existing well-known toolchain directories, so agent CLIs installed through nix-darwin/NixOS are detected after Rescan.

Open Design version

0.16.1

Platform

macOS (Apple Silicon)

Logs (optional)

codex -> /run/current-system/sw/bin/codex
       -> /nix/store/si9asrm0x6vi9zrqq6357p7pmpl4r8sr-codex-0.145.0/bin/codex

claude -> /run/current-system/sw/bin/claude
        -> /nix/store/w2lfla41hlhyrk9k64dk12f6gjnm7yyj-claude-code-2.1.218/bin/claude

Additional context

The detection logic is shared by the daemon executable resolver and packaged sidecar PATH builder through packages/platform/src/toolchain.ts, so fixing the shared well-known directory list should cover all Nix-installed agent CLIs rather than adding a Codex-specific exception.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workinggood first issueGood for newcomershelp wantedExtra attention is needed

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions