Silly installation of CLI on MacOS. "fix" included

Where does the bug appear (feature/product)?

Cursor CLI

Describe the Bug

You should just ask the Homebrew guys for help (and send them help…) This is just sad. So I’m using a competing CLI right now and got a message. “curl Cursor CLI · Cursor -fsS | bash”, which is cringey in itself, but here we are.
… Download URL: https://downloads.cursor.com/lab/2025.09.18-7ae6800/darwin/arm64/agent-cli-package.tar.gz

    1. Add ~/.local/bin to your PATH:

Gross. I already have a perfectly lovely PATH. It can go in /usr/local/bin, ~/bin, eventually, it’s surely going to be in homebrew/bin. Heck put it in Cursor.app/Contents/MacOS/ so you can update it and just add that to our PATH or soemthing. NOBODY likes you littering their system with yet more directories to install one command.

  1. Start using Cursor Agent:
    cursor-agent
    cursor-agent
    ~/.local/bin/cursor-agent: line 10: ~/.local/bin/node: No such file or directory

Really? One command and you can’t stick the landing? Node is over here:
which node
/opt/homebrew/bin/node

Why would you think it’s in this directory that you just created? Clearly node isn’t there.

Get the directory of the actual script (handles symlinks)

if command -v realpath >/dev/null 2>&1; then
SCRIPT_DIR=“$(dirname “$(realpath “$0”)”)”
else
SCRIPT_DIR=“$(dirname “$(readlink “$0” || echo “$0”)”)”
fi
NODE_BIN=“$SCRIPT_DIR/node”
exec “$NODE_BIN” --use-system-ca “$SCRIPT_DIR/index.js” “$@”

Gross. No.

Using the installed version of node fails:

Oh, I can just guess which of THEIR index.js files to run, right?

find ~/.local -name index.js | wc -l
253

No. Maybe…

Steps to Reproduce

Get an actual Mac user to run the command in your mail.

Watch sadness.

Here’s a fixed version.

#!/usr/bin/env bash
set -euo pipefail
set -x

Get the directory of the actual script (handles symlinks)

if command -v realpath >/dev/null 2>&1; then
SCRIPT_DIR=“$(dirname “$(realpath “$0”)”)”
else
SCRIPT_DIR=“$(dirname “$(readlink “$0” || echo “$0”)”)”
fi

NODE_BIN=“$SCRIPT_DIR/node”

NODE_BIN=“node”

exec “$NODE_BIN” --use-system-ca “$SCRIPT_DIR/index.js” “$@”

JS_JUNK=~/.local/share/cursor-agent/versions/2025.09.18-7ae6800/index.js
exec $(which $NODE_BIN) --use-system-ca “$JS_JUNK” “$@”

Don’t actually use that. I can do better, but have to run. This version doesn’t crash on start at least. :-/

Expected Behavior

  1. Follow command in mail.
  2. Receive joy.
  3. Receive some guilt for not being a subscriber.
  4. goto 2.

Operating System

MacOS

Current Cursor Version (Menu → About Cursor → Copy)

2025.09.18-7ae6800 paddingpaddingpadding

Does this stop you from using Cursor

No - Cursor works, but with this issue

Thanks for the report. Did you see any errors or warnings when you ran the install command?

Regarding other items, I’ll pass on the feedback to the team. Thanks!

Thanx for checking on it.

Unfortunately, it reports ‘succeess’ when it’s clearly a doomed instalation. With the agent binary in one place and the node binary about guaranteed to be anywhere else, it’s never going to work.

FWIW, I used a cleaned up version of the script above and was actually able to do agent cli stuff, so it’s functionally OK, it’s just split up in a way that stops it from playing nice with node.

This topic was automatically closed 22 days after the last reply. New replies are no longer allowed.