Skip to content

Web VS Code as sandbox addon #24

Description

@nthh

Summary

Offer VS Code in the browser as an optional addon that can be enabled alongside any agent. Not an agent itself — a tool layer that complements whatever agent the user picks.

User stories

  • "I want a familiar IDE with file tree, syntax highlighting, and extensions while Claude Code runs"
  • "I want to edit files visually while OpenClaw works in the background"
  • "I want Codespaces-like UX without the GitHub lock-in"

Approach: addon checkbox, not an agent

VSCode doesn't act — it's a passive tool. It should be a toggle ("Enable VS Code IDE") in the SetupForm that adds code-server to any agent's sandbox, not a separate agent config.

UX

  • SetupForm: user picks an agent (Claude Code, OpenClaw, etc.) + checks "Enable VS Code IDE"
  • Terminal view shows as usual
  • "VS Code" button opens the IDE via existing /proxy/{id}/ mechanism
  • IDE and agent coexist — agent runs in tmux, user edits in VS Code

Implementation

  • Add addons concept to session creation (distinct from agents)
  • On session create, if vscode addon enabled:
    • Install code-server in the pod (or use an image variant that includes it)
    • Start code-server on port 8080 in the background
    • Register the port for proxying (same mechanism as agent dashboard ports)
  • Agent config stays unchanged — addon is orthogonal

Options for code-server

  1. code-server (Coder) — most popular, MIT licensed, ~500MB
  2. OpenVSCode Server (Gitpod) — lighter, also MIT licensed
  3. VS Code tunnel — Microsoft's official remote tunnel, but requires MS account

Considerations

  • Image size: code-server adds ~500MB — consider a separate image variant or install-on-demand
  • Resources: VS Code needs more RAM (1Gi+) — bump limits when addon is enabled
  • Cold start: larger image = slower pull. Warm pool or pre-built variant helps.
  • Extensions: won't persist across sessions unless Persistent storage across sessions #9 (persistent storage) ships
  • Theming: default to Tokyo Night to match Remolt's terminal theme
  • Addon system: this is the first addon — design the pattern so future addons (e.g., Jupyter, pgAdmin) slot in cleanly

What this is NOT

  • Not an agent — agents act autonomously, VSCode is a passive tool
  • Not the default — terminal-first remains the core UX
  • Not turning Remolt into Gitpod/Codespaces

Competitive context

  • Shellbox: supports VSCode via SSH Remote (user brings their own)
  • Gitpod: VSCode in browser is the primary interface
  • GitHub Codespaces: VSCode in browser, tightly integrated
  • Remolt: VSCode as an optional addon alongside AI agents — unique positioning

Metadata

Metadata

Assignees

No one assigned

    Labels

    mediumWeeks of work

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions