Skip to content

Implement interactive terminal (Xterm.js) for instances #331

@poyrazK

Description

@poyrazK

Documentation Reference

docs/adr/ADR-006-realtime-communication.md (line 26):

3. **WebSocket for bidirectional events** (`/ws`)
   - Instance lifecycle notifications
   - Audit log real-time feed
   - Future: interactive terminal (Xterm.js)

Interactive terminal access via Xterm.js is listed as a future feature. This would allow users to get a shell-like terminal connection to instances directly in the browser.

Expected Outcome

Implement interactive terminal support for instances using WebSocket and Xterm.js.

Severity

medium

Type

enhancement

Labels

enhancement, realtime, terminal, websocket

Acceptance Criteria

  1. GET /instances/:id/terminal upgrades to WebSocket and provides interactive shell
  2. Browser-based terminal UI using Xterm.js
  3. Terminal session authenticated via existing API key mechanism
  4. Supports both Docker containers and Libvirt VMs
  5. docs/adr/ADR-006-realtime-communication.md updated to reflect implementation

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions