Pin relay init to core 15.0.9, and find Cursor's relay skill
Merged
KJ
9d ago+23+23+01234567890123456789-6-6-0123456789
relay initnow installs core 15.0.9 (probe-v15.0.9, released from the #2060 merge05a130289), so CLI 15.0.3 ships the desktop parity changes from #2060.- Cursor's relay skill is looked for in
~/.agents/skills. The pinnedskills@1.7.4treats Cursor as a universal agent (skillsDir: ".agents/skills"), so its--globalinstall goes there and never to~/.cursor/skills. A liverelay init --tools cursoragainst core 15.0.9 printed "Agent skill could not install … for Cursor (it did not land)" and recorded no copy, so--uninstallsaid it removed the skill but left~/.agents/skills/messaging-agents-on-the-relaybehind. The fakeskillsCLI in the tests had no Cursor entry, which is why the tests missed it. The new test fails without the fix, printing the same warning.
The live test of relay init against the real 15.0.9 core, in an isolated HOME, passed in both cases:
- Cursor never opened: init exits 0, says
cursor_direct_deliveryisn't offered yet, and falls back to the Relay MCP server. - Cursor has run: init writes the hooks to
~/.cursor/hooks.jsonand turns oncursor_direct_deliveryandauto_activate.--uninstallturns both off.
The core reported 15.0.9 at 05a130289f24, and the downloaded binary's sha256 matches the release.
Known follow-up, not in this PR: --uninstall leaves an emptied ~/.cursor/hooks.json ({"version":1}) and hooks.json.relay-desktop-backup, even when init created the file.
No changelog entry: Cursor setup is still unreleased, and the core changes are already described.
🤖 Generated with Claude Code
Agent Relay sessions
claudesessiona994d8be· opened viagh pr create· last active 2026-11-03