Discovery of symlinked skills not working for all cases in CLI

Where does the bug appear (feature/product)?

Cursor CLI

Describe the Bug

When skills are symlinked into .cursor/skills/, the IDE agent discovers all of them, but the CLI agent only discovers skills whose symlink targets live under .cursor/ or .claude/. Symlinks pointing to repo root, .agents/, or other paths (e.g. .hidden/) are ignored by the CLI even though they appear under the standard .cursor/skills/ discovery path.

This creates inconsistent behavior between the IDE and CLI for the same project.

Steps to Reproduce

  1. Create the test project (run from any directory):
set -euo pipefail
ROOT="${1:-cursor-skill-symlink-test}"
mkdir -p "$ROOT/.cursor/skills" "$ROOT/.agents/dummyfolder" \
         "$ROOT/.cursor/dummyfolder" "$ROOT/.claude/dummyfolder" \
         "$ROOT/.hidden" "$ROOT/symtest-alpha"
cd "$ROOT"
write_skill() {
  local dir="$1" name="$2" desc="$3" folder="$4" title="$5"
  mkdir -p "$dir"
  cat > "$dir/SKILL.md" <<SKILL
---
name: ${name}
description: ${desc}
---
# ${title}
This is the **${title}** dummy skill.
Source folder: \`${folder}\`
If you can invoke /${title} in Cursor, the symlink from that source location was followed.
SKILL
}
write_skill symtest-alpha                         symtest-alpha  "Dummy test skill. Source location: root."                          "root"                    alpha
write_skill .agents/symtest-bravo                 symtest-bravo  "Dummy test skill. Source location: .agents/."                    ".agents/"                bravo
write_skill .cursor/symtest-charlie               symtest-charlie "Dummy test skill. Source location: .cursor/."                   ".cursor/"                charlie
write_skill .claude/symtest-delta                 symtest-delta  "Dummy test skill. Source location: .claude/."                    ".claude/"                delta
write_skill .agents/dummyfolder/symtest-echo      symtest-echo   "Dummy test skill. Source location: .agents/dummyfolder/."        ".agents/dummyfolder/"    echo
write_skill .cursor/dummyfolder/symtest-foxtrot   symtest-foxtrot "Dummy test skill. Source location: .cursor/dummyfolder/."     ".cursor/dummyfolder/"    foxtrot
write_skill .claude/dummyfolder/symtest-golf      symtest-golf   "Dummy test skill. Source location: .claude/dummyfolder/."       ".claude/dummyfolder/"    golf
write_skill .hidden/symtest-hotel                  symtest-hotel  "Dummy test skill. Source location: .hidden/ (hidden folder at root)." ".hidden/ (hidden folder at project root)" hotel
ln -sfn ../../symtest-alpha                      .cursor/skills/symtest-alpha
ln -sfn ../../.agents/symtest-bravo              .cursor/skills/symtest-bravo
ln -sfn ../symtest-charlie                       .cursor/skills/symtest-charlie
ln -sfn ../../.claude/symtest-delta              .cursor/skills/symtest-delta
ln -sfn ../../.agents/dummyfolder/symtest-echo   .cursor/skills/symtest-echo
ln -sfn ../dummyfolder/symtest-foxtrot           .cursor/skills/symtest-foxtrot
ln -sfn ../../.claude/dummyfolder/symtest-golf   .cursor/skills/symtest-golf
ln -sfn ../../.hidden/symtest-hotel              .cursor/skills/symtest-hotel
echo "Created $(pwd)"
ls -la .cursor/skills/
SETUP```

2. Open cursor-skill-symlink-test in Cursor and start an IDE agent chat.
Ask: "What skills are available?" or type `/` — note all 8 symtest-* skills appear.

3. In a terminal, cd into the same project and run agent.
Ask the same question or type / — note only a subset of skills appear.
Observed in CLI: only skills whose symlink targets are under .cursor/ or .claude/ are detected:



### Expected Behavior
All eight skills symlinked under .cursor/skills/ should be discovered by both the IDE agent and the CLI agent, regardless of where on disk the symlink target lives. Per the Agent Skills docs, Cursor should discover any valid skill folder under .cursor/skills/ at startup — symlink resolution should be consistent across IDE and CLI.



### Operating System
MacOS

### Version Information
About Cursor CLI

CLI Version         2026.06.15-18-00-12-6f5a2cf
Model               Gemini 3.5 Flash
Subscription Tier   Enterprise
OS                  darwin (arm64)
Terminal            apple-terminal
Shell               zsh

### For AI issues: which model did you use?
-

### For AI issues: add Request ID with privacy disabled
-

### Additional Information
-

### Does this stop you from using Cursor
No - Cursor works, but with this issue

Hey, thanks for the detailed report and the ready-to-run setup script, it helps a lot.

I ran your repo exactly as-is on the latest CLI. Discovery finds all 8 skills no matter where the symlink target lives (root, .agents/, .hidden/, etc.). So either this was already fixed compared to build 2026.06.15, or the actual discovered set is different from what you described.

Two things to help us narrow it down:

  1. Update the CLI to the latest version and rerun the test. Check if all 8 skills show up via /.
  2. If the subset is still incomplete, please share the exact output from the / menu (the list of discovered skills). In your current post, the “Observed in CLI” section is empty and the screenshot didn’t load, so we can’t see which skills are missing.

Let me know how it goes. With the real list, we’ll know whether there’s anything left to dig into.

Hey @deanrie thanks for the quick reply!

My Cursor CLI version is at 2026.06.15-18-00-12-6f5a2cf and this is what I see in the CLI vs through the Cursor Desktop app’s agent window (working from the same folder).
From the app:

In the terminal: