Skip to content

[PRD] Feature: Move/Teleport In-Progress Tasks Between CLI and Cloud #248

@enyst

Description

@enyst

Summary

This issue proposes the ability to "teleport" or move in-progress tasks between the local CLI and OpenHands Cloud.

Background

This has been hinted at in OpenHands/OpenHands#6348 (comment)

This write-up is a follow-up from the discussion in ALL-3713 (specifically this comment) about teleport feature.

While ALL-3713 covers starting new conversations in the cloud, this issue addresses a different use case: moving tasks that have already started and have existing history.

Feature Description

Move Task from CLI to Cloud

A user may start a task locally in the CLI, work on it for a while (making commits, building up EventLog history), and then decide to move it to the cloud. Reasons might include:

  • The task is taking longer than expected and they want it to continue running in the background
  • They need to step away from their local machine
  • They want to leverage cloud resources for the remainder of the task

The move should include:

  • The current state of the conversation/task
  • EventLog history
  • Any commits made during the session
  • Current working context

Move Task from Cloud to CLI

The reverse operation: a user has a conversation running in OpenHands Cloud and wants to "teleport" it back to their local CLI to continue working on it locally.

Important Notes

  • This is a move operation, not a sync operation
  • Once moved, the task continues in the new environment
  • The original environment's instance of the task would be closed/archived
  • Similar to Anthropic's approach, this likely requires the repository to be a GitHub repo (to avoid complex file synchronization)

Reference

Open Questions

  1. What is the minimum state that needs to be transferred for a useful "teleport"?
  2. How do we handle uncommitted local changes when moving to cloud?
  3. Should there be any restrictions on when a task can be moved (e.g., not during active tool execution)?
  4. How do we handle authentication/permissions when moving between environments?

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestopenhands-cloudRelated to OpenHands CloudreviewedThis issue has been reviewed

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions