Decompose a task into a JSON DAG, run each node as a Cursor SDK local subagent in topological order, and stream live status into a Cursor Canvas that hot-reloads on every state change. Recorded run of ...