Cursor Subagent Cookbook
Map Cursor subagents to profiles and fleet.
Skill metadata
| Source | Bundled (installed by default) |
| Path | skills/software-development/cursor-subagent-cookbook |
| Version | 1.0.0 |
| Author | VibeOS |
| License | MIT |
| Platforms | linux, macos, windows |
| Tags | cursor, subagent, profiles, fleet, delegation, kanban |
| Related skills | cursor-task-orchestration, kanban-automations, plan, requesting-code-review, cursor-review-bridge |
Reference: full SKILL.md
info
The following is the complete skill definition that VibeOS loads when this skill is triggered. This is what the agent sees as instructions when the skill is active.
Cursor Subagent Cookbook
Cursor stores specialized agents as .cursor/agents/*.md. VibeOS does not
copy that file format. Map the same intent onto profiles, fleet presets,
delegate_task, or kanban — zero new core tools.
When to Use
- User asks for a custom subagent / “как create-subagent в Cursor”
- Choosing between in-process leaf, profile, or durable kanban worker
- Setting up fleet specialists (researcher, builder, critic, …)
Prerequisites
- Read
cursor-task-orchestrationfor short parallel leaves - Read
kanban-automationswhen work must survive restart - Optional: Desktop fleet presets in
apps/desktop/src/lib/fleet-specialist-presets.ts - Profiles live under
~/.vibeos/profiles/<name>(isolatedVIBEOS_HOME)
How to Run
- Name the specialty (explore, implement, review, monitor, …).
- Pick the socket from the Quick Reference table.
- Write a short SOUL / system note for that profile or leaf goal — not a mid-chat system-prompt rewrite on the parent (keeps prompt cache stable).
- Smoke with one concrete task.
Quick Reference
| Cursor idea | VibeOS socket | When |
|---|---|---|
| Explore codebase agent | delegate_task leaf, toolsets file+terminal | Minutes, fresh context |
| Implementer agent | leaf or fleet builder profile | Coding with tests |
| Reviewer / Bugbot-like | leaf + requesting-code-review or fleet critic | Independent verify |
| Long-lived specialist | vibeos -p <profile> chat + SOUL.md | Same persona across sessions |
| Team of workers | kanban assignees + dispatcher | Survives restart / multi-profile |
| Monitor / watcher | cron Monitor + fleet monitor | Cheap poll, wake on delta |
| Nested orchestrator | delegate_task role=orchestrator | Bounded by max_spawn_depth |
Fleet role → keep-skills (desktop presets): researcher, builder, critic, creative, operator, archivist, monitor, orchestrator.
Procedure
A. One-shot leaf (closest to Cursor Task)
delegate_task(
goal="…",
context="…inline everything needed…",
toolsets=["file", "terminal"],
role="leaf"
)
- Do not give leaves
delegate_task/clarify/ messaging unless required. - Parent integrates; do not let a leaf grade its own work.
B. Reusable profile (closest to .cursor/agents/foo.md)
vibeos profile create <name>(or Desktop Create specialist).- Put persona + constraints in that profile’s
SOUL.md/ skills keep-list. - Narrow toolsets in the profile config (coding profile is the template).
- Launch:
vibeos -p <name> chator ACP with thatVIBEOS_HOME.
C. Durable worker
- Create kanban task with assignee profile.
- Dispatcher claims → worker subprocess.
- Use
kanban-automationsfor webhook/cron intake.
D. Translating a Cursor agent markdown file
| Cursor frontmatter / body | VibeOS |
|---|---|
| name / description | profile name + description |
| system prompt body | profile SOUL.md (stable per session) |
| tool allow-list | profile tools.*.enabled / toolsets |
| model override | profile model section |
| “readonly” explore | leaf with no write tools / careful prompt |
Do not add a loader for .cursor/agents/ into core.
Pitfalls
- Process-local
delegate_task(background=true)dies with the process — use kanban/cron for durability. - Mid-conversation toolset swaps break prompt cache — change on the profile or next session.
- Do not invent new core tools named after Cursor Task types.
- Profiles are islands: no live config inheritance from default (by design).
Verification
- One leaf completes a research summary without editing unrelated files.
- A named profile starts with
vibeos -p <name> chatand shows expected skills. - Durable path: kanban task claimed by the assignee profile at least once.