Feature request: a cloud "curator" agent that routes tasks across a user's own machines
I split my work between two machines I own: a desktop that stays at home and a laptop that travels with me. Each holds its own local state (browser profiles with saved logins, git checkouts of the same repositories, credentials, cached files), and the two are rarely online at the same time. When I need something done that depends on state sitting only on the desktop, and I'm away from it with just the laptop, I'm stuck. I either copy that state over by hand, or I remote into the desktop and drive it myself. There's no way to just state the task and let it land on whichever machine actually has what it needs.
Something close to this bit me earlier today. Two Claude Code sessions were open against the same git repository at once, one per machine, each making its own related changes. Neither knew the other existed. A shared data file had moved ahead in one machine's history without the other finding out, and the mismatch only surfaced when a push hit a real merge conflict – by then, some of the diverged content had already gone out to an external system (a CMS, outside git's reach) from one of the sessions. Untangling it meant a careful manual merge and a couple of re-deploys just to undo a regression that had already shipped.
What I'd want is a cloud-side agent that acts as a curator across a user's registered machines. Each machine, while online, would report its live state back to the cloud: OS, available tools and credentials, browser profiles, and for any project the user touches there, its git status against origin – ahead, behind, or carrying uncommitted changes. When I ask for a task, the curator would work out where it actually belongs: the machine I'm sitting at right now, a different one of mine that's online and holds the right state, or a cloud sandbox if none of my own machines fit. It reports back to wherever I'm interacting from, regardless of where the work ran. And before it hands anything off into a shared project, it checks for the exact failure mode above – another of my sessions already active there, or a checkout that's fallen behind the remote – and tells me, instead of letting two machines drift apart without anyone noticing.
None of this starts from zero. Claude Code already has cloud sessions and Remote Control linking a session to another machine (though today Remote Control is a remote-view mechanism, not a handoff: the original machine has to stay on and running). What's missing is routing and conflict-awareness on top of that, so I'm not the one manually deciding and checking every time.
flowchart LR
User(("User<br/>anywhere, on any device"))
subgraph Machines["User's own machines"]
Desktop["Desktop, home<br/>browser profile, saved logins<br/>git: in sync"]
Laptop["Laptop, traveling<br/>current device<br/>git: 3 commits behind"]
end
subgraph Cloud["Cloud"]
Curator{{"Curator agent"}}
Origin[("git origin / project state")]
end
User -- "1. describes a task" --> Curator
Desktop -.-> Curator
Laptop -. "both report live state" .-> Curator
Curator -- "2. checks status" --> Origin
Curator == "3. routes to desktop" ==> Desktop
Desktop -- "4. runs task" --> Curator
Curator -- "5. delivers result" --> User
Curator -. "if diverged, or already<br/>active elsewhere: warns<br/>instead of dispatching" .-> UserThis issue has 1 comment on GitHub. Read the full discussion on GitHub ↗