As far as I can tell, Cursor bolted on “subagents” mainly to make existing Claude Code configs look compatible: by default it tries to load ~/.claude/agents/.md and then surfaces that as a subagent in the UI.
In Claude Code, agents are actually used as real sub‑roles/tools that the main agent can delegate to, with proper routing and prompt plumbing. In Cursor right now it’s basically: read the file, show it in the UI, error out and then not really invoke it in a way that behaves like Claude Code at all.
If the goal is Claude‑config compatibility, this should:
Treat those agents as first‑class tools the main agent can call
Pass through the same rules/agent prompts Claude uses
Be clearly documented so users know what’s implemented vs “future idea”
Right now it just makes people think they misconfigured something, when in reality the implementation isn’t actually matching the Claude behavior they’re mimicking.
From what I understand, there is a problem with the initial loading of the file, it’s prompt is completely ignored.
when they work they are actually like the claude code ones
with the exception that you cant continue working in the same chat window or delegate them to the background and have to wait for completion, guess its better to write a skill which starts a cursor-cli agent instead for the task at hand if you dont want to wait