Skip to content

Feature Request: Cloud-synced sessions for cross-device continuity #1947

@robgrame

Description

@robgrame

Feature Request: Cloud-Synced Sessions for Cross-Device Continuity

Problem

Currently, Copilot CLI sessions are stored locally in ~/.copilot/ and are tied to the specific machine where they were created. This means:

  • No cross-device continuity: If a developer works on a project from multiple machines (e.g., office desktop, laptop, home workstation), they cannot resume a session started on another device. All accumulated context — conversation history, checkpoints, session state, plan files, and SQL tracking data — is lost when switching machines.
  • No backup: If the local ~/.copilot/ directory is lost (disk failure, OS reinstall, new machine), all session history is permanently gone.
  • No team collaboration: A team member cannot pick up where a colleague left off on a complex task, even if they share the same repository.

Real-World Scenario

I'm building a multi-project .NET solution across two machines. Over a multi-day session, Copilot CLI accumulated extensive context: a detailed implementation plan (plan.md), 5 checkpoints tracking architecture decisions, 14 tracked todos with dependencies, and deep knowledge of 23+ API endpoints, PowerShell cmdlets, and AI agent configurations. When I needed to continue on my second machine (which has the same repo cloned), I had no way to resume — I would need to re-explain the entire project context from scratch, losing hours of accumulated understanding.

Proposed Solution

Implement cloud-synced sessions that automatically persist session state to the user's GitHub account, enabling seamless cross-device continuity.

Possible Approaches

  1. GitHub-backed storage (preferred): Store session data in a private GitHub mechanism (similar to Settings Sync in VS Code). This keeps everything within the GitHub ecosystem, leverages existing authentication, and requires no additional setup.

  2. Private repository sync: Automatically sync session state to a private repo like .copilot-sessions. This has the advantage of being inspectable and version-controlled.

  3. GitHub Gist-based: Use private Gists as a lightweight storage layer for session state.

What Should Sync

  • Session metadata and conversation history
  • Checkpoints (the summarized context snapshots that survive /compact)
  • Plan files (plan.md) and session artifacts
  • SQL database state (todos, dependencies, custom tables)
  • Session-scoped configuration and preferences

Privacy Considerations

  • All synced data should be private by default
  • Users should be able to opt-in/opt-out of cloud sync
  • Sensitive data (tokens, credentials) should never be synced
  • Users should be able to selectively delete synced sessions

Additional Benefits

  • Onboarding: New team members could review prior sessions to understand project decisions and history
  • Disaster recovery: Session state survives machine failures
  • Audit trail: Persistent record of AI-assisted development decisions across devices

Alternatives Considered

  • /share exports to markdown/Gist but doesn't allow resuming interactively
  • /resume only works on the same machine
  • Manually copying ~/.copilot/ between machines is fragile and not practical

Environment

  • Copilot CLI v1.0.3
  • Windows (but this applies equally to macOS/Linux)

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions