The “Sync Skills for Cloud Agents” option is stuck on the syncing step and never finishes. As a result, Cloud Agents can’t access my local skills. This means I can’t use Cloud Agents.
For context, I mostly install skills with npx skills and symlink them to ~/.cursor/skills. I also manually wrote some skills in ~/.agents/skills and symlinked them to ~/.cursor/skills.
Hey @Jerome_De_Leon, thanks for the detail on how your skills are installed - that’s the key. Sync only picks up real folders in ~/.cursor/skills; symlinks are skipped, and since yours are all symlinked in from npx skills/~/.agents/skills, it finds 0 to send. Nothing’s wrong with the skills (your local agent still uses them), and nothing was removed.
To get them across:
Settings → Agents → Sync Skills for Cloud Agents → Cancel, then fully quit Cursor (all windows).
Replace the symlinks with real copies:
cd ~/.cursor/skills
for s in *; do
if [ -L "$s" ]; then
cp -RL "$s" "$s.copy" && rm "$s" && mv "$s.copy" "$s"
fi
done
Open only the Agents Window, turn Sync on, and wait for “Syncing N of N” to finish (N = your real skill count).
The spinner not finishing is a separate issue we’re tracking (more likely with multiple windows open), so keep just the Agents Window open for this. One note: later npx skills updates will need to be copied in rather than symlinked. If it still sticks, tell me the N of N it shows.
You’ve got the tradeoff right, plain copies fall out of date because npx skills updates the source, not the copy. The setup that keeps both aligned is to flip the symlink direction: keep the real skill folders in ~/.cursor/skills (so the cloud sync picks them up) and point ~/.agents/skills at those instead of the other way around. Then npx skills updates land in the real folders that local and cloud both use, with nothing to re-copy. The symlink-skip in the sync itself is a known issue we’re tracking, so that’s a stopgap until the sync follows symlinks directly.