Show RAM usage in the VS Code status bar

Aperta
#1,027 3 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
68/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Tranquilla
Stack tecnologico
typescript, vscode

Direzione di ricerca

Inizia in src/remote/remote.ts, dove l’elemento della barra di stato dei metadati dell’agente usa il primo evento di metadati come testo di stato. Esamina come vengono rappresentati i metadati di coder stat mem e del template Kubernetes predefinito, quindi traccia il comportamento del tooltip. Il lavoro è completo quando l’area di lavoro attiva può mostrare la memoria utilizzata, il totale e la percentuale, contrassegnare visibilmente un utilizzo elevato, conservare i dettagli dei metadati e gestire dati RAM mancanti o non analizzabili senza implicare che la lettura sia valida.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Feature vs-code

Feature request

Please add a way for the Coder Remote VS Code extension to show workspace RAM usage directly in the VS Code status bar, alongside or instead of the current first agent metadata value.

Today, Coder workspace templates commonly expose both CPU and RAM through agent metadata, for example:

metadata {
  display_name = "CPU Usage"
  key          = "0_cpu_usage"
  script       = "coder stat cpu"
  interval     = 10
  timeout      = 1
}

metadata {
  display_name = "RAM Usage"
  key          = "1_ram_usage"
  script       = "coder stat mem"
  interval     = 10
  timeout      = 1
}

The VS Code extension appears to render the first metadata value in the status bar and place the full metadata list in the tooltip. In practice this means CPU is often visible in the status bar, while RAM requires opening the Coder sidebar or hovering the status item.

Why RAM should be more visible

In Kubernetes-backed workspaces, CPU and RAM pressure have very different failure modes:

  • When CPU maxes out, Kubernetes throttles the container and work usually just takes longer.
  • When RAM maxes out, Kubernetes can OOM-kill the pod and restart the workspace.

That makes RAM usage much more important to watch continuously. A status-bar RAM indicator would give users time to stop processes, reduce workload, or resize the workspace before the pod is killed.

Suggested UX

Show RAM usage directly in the VS Code status bar when RAM metadata is available, for example:

RAM 54.1/64 GiB (85%)

or a compact variant:

54.1/64 GiB RAM (85%)

Possible behavior:

  • Prefer metadata whose display name/key clearly represents RAM or memory usage.
  • Keep CPU and other metadata available in the tooltip.
  • Show a warning state when memory usage is high, such as above 80% or 90%.
  • If RAM data is unavailable, do not show a misleading value; keep current behavior or explicitly indicate that memory usage is unavailable.

Acceptance criteria

  • The VS Code status bar can show RAM usage for the active Coder workspace.
  • The visible status text includes used memory, memory limit/total, and percentage when available.
  • High-memory states are visually noticeable.
  • Existing agent metadata tooltip behavior is preserved or improved.
  • Missing/unparseable RAM metadata is handled explicitly and does not look like a successful live reading.

Relevant code paths

  • src/remote/remote.ts currently creates the agent metadata status bar item and uses the first metadata event as the status text.
  • coder/coder already provides coder stat mem, and default Kubernetes template metadata includes RAM Usage, so this may be possible as a display-priority improvement without requiring new workspace telemetry.
Lingua principale
TypeScript
Stelle
131
Fork
48
Merge medio
4g 16h
PR unite (30g)
13

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di coder/vscode-coder

Tutte le issue di coder/vscode-coder

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.