-
-
Notifications
You must be signed in to change notification settings - Fork 6
Description
User Story
As a developer using the KSail VSCode extension,
I want real-time cluster health indicators in the Clusters sidebar,
So that I can see pod counts, reconciliation state, TTL countdown, and per-distribution health without switching to a terminal.
Context
The Weekly Roadmap — March 16, 2026 identifies VSCode extension live cluster status as a "Next" priority:
A dedicated VSCode extension docs page exists (shipped via #3071 in v5.59.0). Tilt and DevSpace have real-time dashboards; deepens editor integration without CLI changes. Medium complexity.
Tilt and DevSpace both offer real-time resource status views in their editor integrations. The KSail VSCode extension currently provides cluster lifecycle commands (create/update/delete/start/stop) but lacks real-time status visibility. A live status panel would significantly deepen the editor integration and reduce the need to switch to a terminal for cluster health checks.
The extension has a src/ TypeScript source structure under vsce/. Enum options are already populated dynamically from KSail MCP tool schemas (with fallback hardcoded values).
Approach
- Design the status data model — define what fields to display per cluster:
- Cluster name and distribution
- Overall health (healthy / degraded / unknown)
- Pod count (running / total)
- GitOps reconciliation state (Flux
Kustomizationstatus or ArgoCDApplicationsync state) - TTL countdown (if
--ttlwas set at creation) - Provider info
- Add a status polling mechanism — use
ksail cluster info(via MCPcluster_readtool or direct CLI invocation) to fetch status on a configurable interval (e.g., 30s). - Update the Clusters tree view — display health icons and status strings in the existing sidebar tree view provider.
- Show detailed status on cluster selection — clicking a cluster in the sidebar opens a WebView panel with richer status information.
- Handle offline/disconnected state gracefully — clusters without reachable kubeconfig context show a "disconnected" indicator.
Key files:
vsce/src/— TypeScript extension sourcevsce/package.json— extension manifest (tree view contribution points)- KSail MCP
cluster_readtool — status data source
Acceptance Criteria
- Clusters sidebar shows a health indicator icon per cluster (healthy 🟢 / degraded 🟡 / unknown ⚪)
- Pod counts (running/total) displayed per cluster in the sidebar
- GitOps reconciliation state shown (Flux Kustomization sync status or ArgoCD Application sync)
- TTL countdown displayed for clusters created with
--ttl - Status refreshes automatically on a configurable interval (default 30s)
- Disconnected clusters (kubeconfig unreachable) show a clear "disconnected" state
-
npm run compilepasses with no TypeScript errors - No regressions in existing extension commands
Generated by Daily Plan · ◷
Metadata
Metadata
Assignees
Labels
Type
Projects
Status