Skip to content
| Marketplace
Sign in
Visual Studio Code>AI>Rokket GSDNew to Visual Studio Code? Get it now.
Rokket GSD

Rokket GSD

Rokketek

|
4 installs
| (0) | Free
AI coding agent by Rokketek — full chat UI, tool execution, model picker, and GSD workflow automation in VS Code. The GSD-PI / GSD V2 frontend.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Rokket GSD

Rokket GSD

The GSD-PI / GSD V2 VS Code Extension

Built on gsd-pi by Glittercowboy (Lex Christopherson), based on Pi Mono by Mario Zechner ❤️

A full-featured VS Code frontend for the gsd-pi AI coding agent.
Streaming responses, 40+ tool visualizations, Telegram relay with voice transcription,
parallel worker dashboards, model controls, four built-in themes, and deep workflow integration.

Version VS Code License Platform


What Is This?

RokketGSD

Rokket GSD turns the gsd-pi CLI into a native VS Code experience. Streaming responses, 40+ tool visualizations, Telegram relay with voice transcription, parallel worker dashboards, model controls, four built-in themes, and deep workflow integration. Everything runs inside your editor.

The extension spawns GSD as a child process over JSON-RPC (gsd --mode rpc), giving the agent full access to your workspace, tools, and configured providers while you get a proper UI on top.


✨ Highlights

🔄 Auto-Updates
One-click install from GitHub Releases

📂 Session History
Search, rename, resume right where you left off

⌨️ 59+ Slash Commands
Full GSD workflow from a single / keystroke

🧠 Model Picker
Grouped by provider with context size and reasoning tags

🎯 Steer While Streaming
Redirect the agent mid-task without waiting

🎨 Four UI Themes
Classic, Phosphor, Clarity, and Forge

💬 Streaming Chat
Per-token text rendering with live DOM updates

🔧 40+ Tool Visualizations
Category icons, key args, collapsible output — spinners animate continuously

📊 Parallel Worker Dashboard
Per-worker state, budget bars, and stale detection

⚡ Live Auto-Mode Progress
Task, phase, cost, elapsed time, and active model

💰 Budget Alerts
Warning toast when workers cross 80% of ceiling

🛡️ Process Resilience
Built for multi-hour sessions with crash recovery

📡 Telegram Relay
Stream conversations to Telegram with voice transcription

🎙️ Voice Input
Hold-to-record with waveform viz; OpenAI, Azure, or xAI transcription

🧪 1370+ Tests
CI enforced on every push


⚠️ Prerequisites

[!IMPORTANT] Rokket GSD is a frontend for the GSD agent. It does not include the agent itself.

You need a working GSD environment before installing:

  1. Node.js 18+ with npm
  2. Git
  3. VS Code 1.94+
  4. gsd-pi installed globally:
    npm install -g gsd-pi
    
  5. A configured AI provider in GSD (Anthropic, OpenAI, Google, etc. via API key or OAuth)

[!TIP] Run gsd in a terminal first to verify it works before installing the extension. If gsd doesn't work in your terminal, the extension won't work either.


📦 Installation

VS Code Marketplace

Search "Rokket GSD" in the Extensions sidebar, or install directly from the VS Code Marketplace.

One-Liner (macOS / Linux / Git Bash)

curl -sL https://raw.githubusercontent.com/Kile-Thomson/Rokket-GSD/main/install.sh | bash

One-Liner (Windows PowerShell)

irm https://raw.githubusercontent.com/Kile-Thomson/Rokket-GSD/main/install.ps1 | iex
Manual Install
git clone https://github.com/Kile-Thomson/Rokket-GSD.git
cd Rokket-GSD
npm install
npm run build
npx vsce package --no-dependencies
code --install-extension rokket-gsd-*.vsix --force

Then reload VS Code (Ctrl+Shift+P > "Developer: Reload Window").

[!TIP] If code --install-extension succeeds silently but the extension doesn't appear, install manually: VS Code > Extensions > ... menu > "Install from VSIX..." > select the .vsix file.


🏁 Getting Started

Once installed, follow these steps to get up and running:

1. Set up GSD (first time only)

If you haven't already, install and authenticate the GSD agent:

npm install -g gsd-pi
gsd

The first run walks you through provider authentication (Anthropic, OpenAI, Google, etc.). You'll need at least one configured provider before the extension will work.

2. Open Rokket GSD

  • Click the rocket icon in the VS Code activity bar (left sidebar), or
  • Press Ctrl+Shift+P → "Rokket GSD: Open"

The extension spawns a gsd process automatically — if everything is set up correctly, you'll see the welcome screen with quick-action chips.

3. Verify your setup

If something isn't right, the extension runs a health check on startup and shows a notification with specific fix instructions. You can also run /gsd doctor in the chat to diagnose issues.

4. (Optional) Connect Telegram

To relay conversations to a Telegram group with voice message support:

  1. Create a bot — message @BotFather on Telegram, send /newbot, and copy the token
  2. Add the bot to your Telegram group and make it an admin
  3. Run the setup wizard — type /telegram in the Rokket GSD chat or use Ctrl+Shift+P → "Rokket GSD: Telegram Setup"
  4. Paste your bot token when prompted — the wizard auto-detects your group and verifies the connection
  5. (Optional) Enable voice transcription — run /telegram voice and enter an OpenAI API key for Whisper

All credentials are stored securely in VS Code's SecretStorage — never in config files or source code.

5. (Optional) Customize settings

Open VS Code Settings (Ctrl+,) and search for "gsd" to configure:

  • Theme — choose from Classic, Phosphor, Clarity, or Forge
  • Send key — switch to Ctrl+Enter if you prefer Enter for newlines
  • Layout — open as sidebar panel or editor tab
  • Auto-updates — enabled by default, checks GitHub Releases

🚀 Features

📂 Session History & Resume

  • Browse previous sessions with searchable panel showing titles, dates, and message counts
  • Resume any session with a single click, full context and conversation state injected on load
  • Resume from welcome screen with the "↩ Resume" chip or /resume slash command
  • Rename sessions with meaningful names for easy lookup later
  • Delete sessions to clean up old conversations
  • Each session gets its own GSD process with fully isolated state

⌨️ Slash Commands

Type / to open the command palette with 59+ commands:

GSD Workflow (46 commands)
Command What it does
/gsd Contextual wizard — picks the next action
/gsd auto Auto-execute tasks (fresh context per task)
/gsd next Execute the next task
/gsd stop Stop auto-mode
/gsd pause Pause auto-mode (preserves state)
/gsd quick Execute ad-hoc task with GSD guarantees
/gsd discuss Discuss without executing
/gsd status Project dashboard — milestones, slices, tasks
/gsd visualize Open workflow visualizer overlay
/gsd help Categorized command reference
/gsd changelog Show categorized release notes
/gsd capture Capture a thought during auto-mode
/gsd steer Redirect auto-mode priorities
/gsd triage Manually trigger triage of pending captures
/gsd knowledge View or add to project knowledge base
/gsd queue Queue and reorder future milestones
/gsd new-milestone Create a milestone from a specification document
/gsd park Park a milestone — skip without deleting
/gsd unpark Reactivate a parked milestone
/gsd dispatch Dispatch a specific phase directly
/gsd history View execution history
/gsd undo Revert last completed unit
/gsd skip Prevent a unit from auto-mode dispatch
/gsd start Start a workflow template (bugfix, spike, feature, etc.)
/gsd templates List available workflow templates
/gsd export Export milestone report as HTML
/gsd cleanup Remove merged branches or snapshots
/gsd config View or modify GSD configuration
/gsd prefs View or set preferences
/gsd mode Switch workflow mode (solo/team)
/gsd keys Manage API keys
/gsd hooks Show configured post-unit and pre-dispatch hooks
/gsd run-hook Manually trigger a specific hook
/gsd extensions Manage extensions (list, enable, disable, info)
/gsd doctor Diagnose and fix issues
/gsd forensics Post-mortem analysis of auto-mode failures
/gsd logs Browse activity, debug, and metrics logs
/gsd inspect Show SQLite DB diagnostics
/gsd skill-health Skill lifecycle dashboard
/gsd rate Token usage rates and profile defaults
/gsd init Project init wizard
/gsd setup Global setup status and configuration
/gsd migrate Migrate a v1 .planning directory to .gsd format
/gsd update Update GSD to the latest version
/gsd remote Remote question channels (Slack, Discord, Telegram)
/gsd parallel Parallel auto-mode orchestration
Built-in Actions (13 commands)
Command What it does
/compact Compact context to reduce token usage
/export Export conversation as HTML
/model Open model picker
/thinking Cycle thinking level
/new Start a new conversation
/history Browse and switch sessions
/copy Copy last assistant message
/resume Resume last session
/auto-compact Toggle auto-compaction on/off
/auto-retry Toggle auto-retry on transient errors
/telegram Start Telegram streaming — opens setup and connects
/telegram-stop Stop Telegram streaming — kills relay and disconnects
/telegram voice Set OpenAI API key for voice transcription

🧠 Model & Thinking Controls

  • Model picker grouped by provider with section headers, context window size, and reasoning capability tags
  • Thinking level dropdown with off / minimal / low / medium / high / xhigh and descriptions for each level
  • Model-aware thinking hides levels your model doesn't support. Extended thinking only shows for models that handle it.
  • Context usage bar below the header with color-coded thresholds (green at 0-70%, amber at 70-90%, red at 90%+)
  • Live session stats showing token count, session cost, and context pressure at a glance
  • Dynamic model routing indicator flashes the model badge and announces via toast when gsd-pi switches models mid-task

💬 Streaming Chat

  • Sequential segment rendering - text, thinking blocks, and tool calls stream in arrival order with no re-renders or layout jumps
  • Full markdown with syntax-highlighted code blocks, tables, blockquotes, headings, inline code, and images
  • Copy buttons on every code block and full assistant responses
  • Image paste and drag-drop directly into the input area
  • File attachments via button, drag-and-drop, or paste with type-specific icons and removable chips
  • Message timestamps with relative times that update live and absolute times on hover
  • Thinking blocks collapsed by default with line count indicator, expanded during streaming
  • Steer while streaming to redirect the agent mid-task without stopping it
  • Steer persistence — messages sent during auto-mode are saved to OVERRIDES.md and apply to all future tasks, not just the current turn
  • Drag-to-resize input area for longer messages
  • !command shortcut to run bash commands directly without the agent

🔧 Tool Execution Visualization

subagents
  • Live tool calls with category-specific icons and color accents for 40+ tools
  • Rich key arg display for lsp, browser_, github_, gsd_*, mcp_call, bash, and more
  • Collapsible output with smart truncation for large results
  • Parallel tool indicator with ⚡ badge and pulse animation when tools run concurrently
  • Tool call grouping collapses consecutive read-only tools (file reads, searches, browser reads) into expandable summary rows
  • Subagent results rendered as full markdown with usage pills showing token and cost breakdowns
  • Clickable file paths that open directly in VS Code
  • Shimmer animation on running tools so you always know what's active
  • Duration tracking on every completed tool call
  • Server-side tool indicators — compact inline cards for Anthropic's native server-side tools (web search, code execution) showing tool name, search query, spinner while running, and result count on completion

⚡ Auto-Mode Progress

  • Live progress widget sticky above the input showing current task, phase, progress bars, elapsed time, cost, and active model
  • Phase rendering with distinct labels and icons: Executing, Planning, Validating (✓), Completing, Blocked, Replanning
  • Discussion-pause visibility shows 💬 "Awaiting Discussion" with a /gsd discuss hint when auto-mode pauses for slice discussion
  • Pending captures badge (📌) in the progress widget for /gsd capture thoughts awaiting triage
  • Workflow state badge in the header showing active milestone, slice, task, and current phase
  • Auto-mode indicator with ⚡ Auto, ▸ Next, ⏸ Paused states
  • Health widget — ambient system health bar in the footer showing system status, budget, provider issues, and environment errors
  • Model health indicator — green/amber/red dot next to the model name reflecting current system health

📊 Parallel Worker Dashboard

  • Worker cards during parallel auto-mode showing per-worker milestone ID, state badge, current unit, and cost
  • State badges for Running, Paused, Stopped, and Error with distinct colors
  • Budget usage bars per worker with green/orange/red thresholds at 80% and 100%
  • Budget alert toast fires a VS Code warning when any worker crosses 80% of budget_ceiling
  • Stale worker detection dims workers with old heartbeats and shows a "(stale)" label
  • Graceful degradation to standard single-worker display when no parallel data exists

📈 Workflow Visualizer

  • Full-page overlay via /gsd visualize with three tabs
  • Progress tab with milestone header, progress bars, slice/task breakdown, milestone registry, blockers, and next action
  • Metrics tab with cost breakdown, tool call counts, model usage, token breakdown, and context usage
  • Health tab with system health status, budget info, environment warnings, and active model
  • Auto-refresh every 5 seconds during active auto-mode
  • Dashboard panel with milestone registry, slice/task progress, cost projections, and activity log

🤖 Agent Interaction

  • Inline UI dialogs for confirm, select, input, and editor prompts rendered directly in the chat flow (no modal popups)
  • Multi-select support with checkbox-style selection and confirm button
  • Auto-compaction indicator overlay banner when context is being compacted
  • Auto-retry indicator with countdown timer and abort button when the provider rate-limits
  • Provider fallback alerts via toast when GSD auto-switches models due to rate limits, and again when the original provider recovers
  • Crash recovery with restart button, exit code diagnostics, and full state cleanup

📡 Telegram Relay

  • Stream conversations to Telegram — relay assistant messages to a Telegram group in real time
  • Setup wizard via /telegram or the command palette with guided Bot Token → Group ID → Chat Title flow
  • Voice message transcription — Telegram voice messages are transcribed via OpenAI Whisper and injected as user prompts
  • Photo support — images sent in Telegram are forwarded to the agent as attachments
  • Topic-based threading — each session creates a Telegram topic for organized conversations
  • Streaming granularity control — configure as off, throttled, or final-only in settings
  • Secure credential storage — Bot Token and OpenAI API key stored in VS Code's SecretStorage, never in source files

🎨 VS Code Integration

  • Activity bar icon (rocket) with sidebar panel
  • Flexible layout - open as sidebar or editor tab
  • Status bar showing streaming state, active model, and session cost
  • Working indicator with pulsing amber glow on the rocket logo while the agent is active
  • Theme-aware - works with any VS Code color theme (light, dark, high contrast)
  • Four built-in themes: Classic, Phosphor, Clarity, and Forge
  • Auto-updates from GitHub Releases with one-click install notification
  • HTML export from the command palette ("Rokket GSD: Export Milestone Report")
  • What's New overlay on version upgrade with changelog viewer
  • Welcome screen quick actions with clickable chips for Auto, Status, and Review
  • Scroll-to-bottom FAB when scrolled up
  • Toast notifications for action feedback

⌨️ Keyboard Shortcuts

Shortcut Action
Enter Send message (or steer while agent is working)
Esc Stop the agent
Ctrl+Shift+G Focus the GSD input from anywhere in VS Code
Ctrl+Shift+N New conversation (when GSD is focused)

[!TIP] Enable gsd.useCtrlEnterToSend in settings if you want Enter for newlines and Ctrl+Enter to send.

🔒 Security

  • CSP enforcement — nonce-based Content Security Policy with no unsafe-inline in style-src or script-src
  • DOMPurify sanitization on all rendered markdown with explicit attribute allowlist
  • URL scheme allowlist restricting clickable links to http, https, and vscode
  • Path traversal protection with workspace boundary validation and symlink resolution
  • Command injection prevention using args arrays instead of shell interpolation; destructive bash pattern detection with modal confirmation
  • Environment isolation stripping Electron/VS Code env vars before spawning GSD
  • Download validation restricting update installs to GitHub URLs only
  • Temp file size limit (50MB) on save operations
  • No secrets in DOM — API keys and tokens are never rendered in the webview
  • Buffer overflow protection — full JSON-RPC buffer reset (not truncation) to preserve protocol integrity

⚙️ Configuration

Setting Default Description
gsd.theme "forge" UI theme: classic, phosphor, clarity, or forge
gsd.processWrapper "" Custom executable path for the GSD process
gsd.environmentVariables [] Extra env vars to set when launching GSD
gsd.useCtrlEnterToSend false Use Ctrl+Enter to send instead of Enter
gsd.preferredLocation "panel" Default open location: "sidebar" or "panel"
gsd.autoUpdate true Check for new versions on GitHub Releases
gsd.githubToken "" GitHub token for update checks (also reads GH_TOKEN / GITHUB_TOKEN env vars)
gsd.telegramGroupId 0 Telegram group ID for the relay
gsd.telegramChatTitle "" Telegram group chat title
gsd.telegramBotUsername "" Telegram bot username
gsd.telegramStreamingGranularity "throttled" Streaming mode: off, throttled, or final-only

🛡️ Process Resilience

Built to handle real-world agent sessions that run for hours:

  • Health monitoring with periodic pings to detect hung processes
  • Environment isolation stripping Electron/VS Code env vars to prevent subprocess crashes
  • Graceful shutdown handling session_shutdown events cleanly
  • Force-kill and restart via UI button for stuck processes
  • Duplicate spawn prevention via mutex per session
  • Buffer overflow protection with full reset (not truncation) to preserve JSON-RPC protocol integrity

🏗️ Architecture

┌─────────────────────┐    postMessage     ┌─────────────────────┐
│   Webview (Chat UI) │ <───────────────> │   Extension Host     │
│                     │                   │                      │
│  Streaming render   │                   │  Dialog mapping      │
│  Tool visualization │                   │  File operations     │
│  Model/thinking     │                   │  Update checker      │
│  Session history    │                   │  Status bar          │
│  Slash commands     │                   │  Health monitoring   │
│  Worker dashboard   │                   │  Parallel polling    │
│  Agent cards        │                   │  Telegram bridge     │
└─────────────────────┘                   └──────────┬───────────┘
                                                     │ stdin/stdout
                                                     │ JSON-RPC
                                          ┌──────────▼───────────┐
                                          │   gsd --mode rpc     │
                                          │   (Child Process)    │
                                          └──────────────────────┘
                                                     │
                                          ┌──────────▼───────────┐
                                          │   Telegram Poller    │
                                          │   OpenAI Whisper     │
                                          └──────────────────────┘
  • Webview — vanilla DOM (no framework), ~13K lines of TypeScript + 16 CSS modules + 3 theme files, esbuild-bundled IIFE. Sequential segment-based renderer with requestAnimationFrame batching for smooth streaming. CSS uses a semantic token layer (--gsd-*) bridging VS Code's theme system — components never reference --vscode-* directly.
  • Extension Host — ~10K lines of TypeScript managing the GSD child process, routes messages, handles file operations, monitors health, polls parallel worker status, and coordinates the Telegram bridge. All hot-path I/O is async; polling runs via parallelized Promise.all.
  • GSD Process — the full gsd-pi agent running via JSON-RPC over stdin/stdout. Each session gets its own process.
  • Telegram Bridge — poller, coordinator, IPC, topic manager, and message formatter. Voice messages transcribed via OpenAI Whisper; photos forwarded as image attachments.

The extension ships as a .vsix with no runtime dependencies beyond VS Code and the gsd CLI. 1370 tests across 66 files.


🔨 Development
git clone https://github.com/Kile-Thomson/Rokket-GSD.git
cd Rokket-GSD
npm install
npm run watch    # Rebuilds on file changes
# Press F5 in VS Code to launch Extension Development Host

Scripts

Script Description
npm run build Production build (extension + webview)
npm run watch Watch mode with auto-rebuild
npm test Run unit tests (Vitest)
npm run lint Run ESLint
npm run package Package as .vsix

Project Structure

src/
  extension/
    index.ts                # Entry point, commands, status bar
    rpc-client.ts           # JSON-RPC client over stdin/stdout
    webview-provider.ts     # Webview lifecycle, message routing
    message-dispatch.ts     # Inbound message routing (extension side)
    rpc-events.ts           # RPC event handlers
    auto-progress-poller.ts # Auto-mode progress polling (parallelized)
    parallel-status.ts      # Parallel worker status reader
    dashboard-parser.ts     # Dashboard data aggregation
    metrics-parser.ts       # Cost/token metrics parsing
    captures-parser.ts      # Pending capture count parsing
    state-parser.ts         # GSD workflow state parsing
    update-checker.ts       # Auto-update from GitHub Releases
    session-list-service.ts # Session history filesystem parser
    session-state.ts        # Per-session state management
    file-ops.ts             # File operations (export, save, access)
    health-check.ts         # Process health monitoring
    html-generator.ts       # Webview HTML + CSP generation
    watchdogs.ts            # Streaming/tool timeout watchdogs
    command-fallback.ts     # Slash command fallback handling
    telegram/               # Telegram relay (setup, polling, formatting, IPC)
    openai/                 # OpenAI Whisper voice transcription
  shared/
    types.ts                # Message protocol types (extension <> webview)
  webview/
    index.ts                # DOM setup, events, initialization
    renderer.ts             # Streaming segment renderer
    message-handler.ts      # Inbound message routing
    auto-progress.ts        # Auto-mode progress bar + worker cards
    visualizer.ts           # Workflow visualizer overlay
    dashboard.ts            # GSD dashboard overlay
    model-picker.ts         # Model selection overlay
    thinking-picker.ts      # Thinking level dropdown
    slash-menu.ts           # Slash command palette (45+ built-in commands)
    ui-dialogs.ts           # Inline confirm/select/input dialogs
    tool-grouping.ts        # Read-only tool collapse logic
    session-history.ts      # Session browser panel
    helpers.ts              # Markdown, formatting, tool display
    ui-updates.ts           # Header, footer, overlay updates
    keyboard.ts             # Keyboard shortcut handling
    state.ts                # Shared mutable state
    a11y.ts                 # Accessibility utilities
    toasts.ts               # Toast notification system
    file-handling.ts        # File attachment handling
    styles/
      tokens.css            # Semantic design tokens (--gsd-* layer)
      base.css              # Reset, typography, scrollbar
      layout.css            # Grid, panels, overlays
      input.css             # Chat input area
      entries.css           # Message bubbles, turns
      footer.css            # Status bar, badges
      tools.css             # Tool call cards
      overlays.css          # Modals, pickers, visualizer
      misc.css              # Focus rings, animations, utilities
      parallel.css          # Worker dashboard cards
      auto-progress.css     # Auto-mode progress widget
      dashboard.css         # GSD dashboard overlay
      toasts.css            # Toast notifications
      themes/
        phosphor.css        # Phosphor theme overrides
        clarity.css         # Clarity theme overrides
        forge.css           # Forge theme overrides
resources/
  gsd-logo.svg              # Activity bar icon
  rokket-icon.png            # Extension icon
  extensions/               # Bundled pi extensions (auto-installed)

Known Limitations

  • Requires gsd-pi — this is a UI wrapper, not a standalone agent. The gsd CLI must be installed and configured separately.
  • Some GSD custom UI commands rely on TUI widgets that VS Code webviews cannot render directly. /gsd status is supported via the structured dashboard renderer; other widget-dependent commands produce text-only output.

License

MIT


▲ ROKKETEK
Built by Kile Thomson

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft