Versions: Cursor `3.12.10`, `cursor-sdk` (Python) `0.1.9`.
I’m trying to build a persistent Cursor chat as an orchestrator for a fleet of Task subagents (for software, this would be the usual planner / implementor / reviewer adversarial relationship). Alongside it, a small external dashboard, probably a Cursor Canvas, or maybe a plain web UI - showing fleet status - and a queue of decisions or human review items.
Think of it as continuing the IDE (multiple windows, a few agents in flight in each) → Agents (one window, still multiple “tabs”) trend, by adding → single surface
That’s the whole shape: one conversation to hold context, one dashboard to see and decide across many things at once.
I found the stop hook’s followup_message field. I think one possibility is to get the agent I’m talking to block during stop hook and wait for me to click around, think, organize replies to what I’ve come back to, and then distribute around to the workers. The SDK Task + resuming has worked well, so getting agents to work, finish, and then resume them with a followup prompt is 100% for me. It’s the hook where I’m dying, and I’m not even sure if I’m using the API in a way it intends. I wouldn’t expect stop to block either.
Looking for ideas and input. My “orchestration harness” exists as a Cursor plugin, and I am all-in at trying to get a great developer UX out of this.