Skip to content

Releases

GConnect v2.3.2 - Workspace Open Folder & Collapsible Directory Explorer

Choose a tag to compare

@At-vy At-vy released this 04 Nov 06:11

GConnect v2.3.2

What's New in v2.3.2

📂 Workspace Open Folder & Dynamic Sidecar Remounting

  • Native OS Folder Picker: Click [📂] Open Folder in the file explorer sidebar to choose any workspace folder on your machine via native OS dialog (rfd::FileDialog).
  • Dynamic Remounting: Selecting a folder persists the active workspace path in connection.json, restarts the backend sidecar with CONNECT_WORKSPACE_DIR, and dynamically recreates the Docker sandbox container mounting your selected directory to /workspace without needing an app restart.
  • Active Workspace Title: Dynamic project title display in the sidebar header (WORKSPACE: <Name>) reflecting the mounted project directory.

📁 Collapsible Directory Explorer & Nested Hierarchies

  • Collapsible Directory Tree: VS Code-style interactive file explorer with 90° animated rotating chevrons, expanding/folding subdirectories cleanly.
  • Persistent Expansion State: Preserves opened/closed folder states across file explorer refreshes.
  • [📁+] New Folder Button: Easily create nested directories (e.g. models/nlp/checkpoints) directly from the UI.
  • Folder Hierarchy Import: Preserves relative subfolder paths during batch uploads with sanitized path traversal protection.

🎙️ Client-to-Container Audio & Docker Resilience (from v2.3.0 & v2.2.2)

  • Bidirectional low-latency microphone and speaker streaming with ALSA virtual audio loopback.
  • Google Meet-style audio settings modal with device selector and ducking gate.
  • Self-healing Docker daemon reconnect and NVIDIA GPU validation.

Verification & Checksums

  • Installer: GConnect_2.3.2_x64-setup.exe
  • SHA-256: FDF42AB5159272C787820E1AD9B73A860E36A4D03550127C6A1BBADE3406AC21
  • File Size: 35.25 MiB (36,962,102 bytes)

GConnect v2.3.0 - Client-to-Container Bidirectional Audio Streaming & Meet-Style UI

Choose a tag to compare

@At-vy At-vy released this 04 Nov 05:07

GConnect v2.3.0

What's New in v2.3.0

🎙️ Client-to-Container Bidirectional Audio Streaming & Meet-Style UI

  • Bidirectional Audio: Real-time microphone capture streamed to Docker container, and container audio output streamed back to client speakers.
  • Virtual ALSA Device: Standard Python libraries (speech_recognition, sounddevice, pyaudio) detect default virtual mic and speaker with zero code modification.
  • Google Meet-Style Controls: Header [🎙️ Audio] button with input/output device selectors and mute/unmute toggles.
  • Audio Router: Port 8001 WebSocket hub with 50ms jitter buffer, duplex echo ducking gate (-18dB attenuation during playback), and single active speaker arbitration.
  • Verification Utility: Standalone voice_test.py deployed at workspace root supporting 3-second recording and harmonic confirmation chime synthesis.

🔄 Self-Healing Docker Dynamic Reconnect & GPU Validation

  • Dynamic Reconnect: GConnect automatically detects when Docker Desktop is launched after GConnect is already running without needing an app restart.
  • Physical GPU Validation: Directly queries pynvml, torch.cuda, and nvidia-smi to verify physical NVIDIA adapters before issuing Docker DeviceRequest / --gpus all, eliminating nvidia-container-cli: no adapters were found 500 errors on systems without NVIDIA cards.

📱 Real-Time Connected Devices Tracker for GPU Sharing

  • Thread-Safe Connection Monitor: Real-time monitoring of clients and remote teammates connected to the GPU host.
  • Physical Device Grouping: Groups connections by client ID to prevent multiple tabs from inflating device counts.

⚡ GPU Share Toggle Resilience

  • Awaits Backend Health: Toggling sharing mode properly polls backend_info until sidecar is ready, preventing UI freeze.
  • Port 8000 Cooldown: Added 800ms cooldown for Windows socket release during mode transitions.
  • Token Persistence: Reuses existing auth_token across restarts.

Verification & Checksums

  • Installer: GConnect_2.3.0_x64-setup.exe
  • SHA-256: 350B66E084261BE32439BBA3FBE84CECB0995993C6752D79EFB264C4CBB15BD1
  • File Size: ~35.24 MiB (36,950,560 bytes)

GConnect v2.2.2 - Bidirectional Audio Streaming, Self-Healing Docker & IDE Enhancements

Choose a tag to compare

@At-vy At-vy released this 31 Oct 05:28

GConnect v2.2.2

What's New in v2.2.2

🎙️ Client-to-Container Bidirectional Audio & Microphone Streaming

  • Ultra-Low Latency PCM Streaming: AudioWorklet-based fractional linear downsampling of client microphone input to 16,000 Hz 16-bit mono PCM, streamed over authenticated binary WebSocket (/ws/audio).
  • Container Audio Playback: Plays container sound output (TTS, voice agents, etc.) back through user's chosen client speakers/headphones via AudioContext targeting sinkId with overrun ceiling management.
  • Virtual ALSA Device in Docker: Configured /etc/asound.conf mapping default capture and playback to container overlayfs FIFOs (/tmp/.gconnect_audio/). Standard Python libraries (speech_recognition, sounddevice, pyaudio) detect and use the virtual audio bridge out-of-the-box without code changes.
  • Google Meet-Style Audio UI: Added [🎙️ Audio] top toolbar button and settings modal with microphone & speaker dropdowns, hardware mute toggles, live VU meter, and 1-click active mic cluster takeover.
  • Audio Protection & Network Resilience: 50ms pre-buffering circular jitter buffer (AudioRingBuffer) and software audio ducking gate (DuckingGate) applying -18dB attenuation during container playback to eliminate feedback loops.
  • Verification Tool: Included voice_test.py at workspace root supporting 3-second recording and dual-tone harmonic chime playback.

⚡ GPU Share Toggle Resilience & Token Persistence

  • Fixed 'Applying Configuration...' Freeze: frontend/js/share.js now awaits backend_info to ensure the sidecar has restarted and passed its health check before refreshing dashboard state, updating credentials cleanly.
  • Port 8000 Release Cooldown: In src-tauri/src/main.rs, added an 800ms cooldown before restarting the backend on mode changes, allowing the Windows socket stack to release port 8000.
  • Auth Token File Reuse: In backend/auth.py, get_token() now reuses the existing auth_token file if present rather than overwriting it, preserving credentials across sidecar restarts.

🔄 Self-Healing Docker Dynamic Reconnect

  • Dynamic Reconnect: GConnect automatically detects when Docker Desktop is launched after GConnect is already running without needing an app restart.
  • Graceful Disconnect Recovery: If Docker stops or restarts, GConnect safely transitions container state to offline and reconnects automatically upon the next health check.
  • Throttled Probing: Reconnection attempts are protected by thread locks and cooldown timers to prevent connection spamming.

🛡️ Physical NVIDIA GPU Validation before DeviceRequest

  • Hardware-Level Verification: Directly queries pynvml, torch.cuda, and nvidia-smi to verify an actual physical NVIDIA adapter exists before issuing Docker --gpus all / DeviceRequest.
  • Eliminates 500 Daemon Crashes: Prevents nvidia-container-cli: initialization error: nvml error: no adapters were found crashes on systems with NVIDIA toolkits/CDI specs installed but running on Intel/AMD GPUs or VMs, starting seamlessly in CPU mode.

🌐 Desktop WebView2 CORS Preflight Header Fix

  • Permit X-Client-Id: Added X-Client-Id to CORS_ALLOW_HEADERS and _tauri_cors_headers in backend/auth.py.
  • Eliminates Blocked APIs: Resolves preflight OPTIONS rejections for /api/files and /api/container/status inside the desktop app, preventing "Error loading files" and false "Docker is not running" warnings.

📱 Real-Time Connected Devices Tracker for GPU Sharing

  • Thread-Safe Connection Monitor: Added ConnectionTracker in backend/connection_tracker.py that tracks all connected client machines in real time.
  • Physical Device Grouping: Persistent gconnect_client_id prevents duplicate tab/terminal counts from inflating the connected device numbers.
  • Local vs Remote Classification: Accurately distinguishes This PC (Host) from Remote Teammates (LAN/Tailscale).
  • Client OS & Platform Detection: Automatically identifies client devices (e.g. Mac (Chrome), Windows PC (Edge), Linux (Firefox)).
  • Host Dashboard UI: Live "Connected Devices" card with device count badge (#shareBtnBadge), status bar indicator (#statusBarClients), and expandable client list.

🎨 High-Contrast Shell Command Echo & PS1 Prompt

  • Vibrant PS1 Shell Prompt: Bold Cyan host (\e[1;36m), Bold Green path (\e[1;32m), and Bold White command cursor (\e[1;37m).
  • Command & Output Differentiation: Active commands echo in Bold White with automatic debug trap resetting command outputs to crisp, readable gray.
  • Windows Host CMD & Bash Support: Fallback ANSI prompt configurations for Windows PTY and host bash.

✨ Monaco Editor Cursor Pulse & Fluid Caret

  • Enabled cursorBlinking: "blink" for clear cursor visibility.
  • Enabled cursorSmoothCaretAnimation: "on" for fluid caret navigation across lines and mouse positioning.

📂 Workspace File Import & Upload API

  • Added "Import File(s)" button with multi-file picker directly in the workspace explorer header.
  • Implemented POST /api/files/upload backend endpoint with path traversal defense and filename sanitization.

📐 VS Code-Style Bottom Status Bar (24px Elevation)

  • Integrated dedicated 24px bottom status bar (#appStatusBar) keeping terminal text cleanly elevated above the Windows taskbar.
  • Real-time line/column cursor tracker, file encoding, language mode, Docker sandbox state, and problems indicator.

🖱️ Smooth Terminal Scrollbar & Mouse Context Menu

  • Fluid terminal scrolling (smoothScrollDuration: 150) matching Monaco.
  • Right-click terminal context menu (Copy, Paste, Select All, Clear) + copy-on-select.

Verification & Checksums

  • Installer: GConnect_2.2.2_x64-setup.exe
  • SHA-256: EC7BE84363D155E681135EF47E4CB99FB5C7881C162E9893FBDF9F2B726B40A2
  • File Size: ~35.24 MiB (36,949,968 bytes)

GConnect v2.2.1 - Universal Remote GPU Platform & Turnkey Sharing

Choose a tag to compare

@At-vy At-vy released this 29 Oct 10:35

GConnect v2.2.1 - Universal Remote GPU Development Platform & Turnkey 1-Click Sharing. (Full details in the changelog.)

Download

GConnect_2.2.1_x64-setup.exe attached below. Run it - no admin rights needed. Windows 10/11; Docker Desktop is optional (the app degrades gracefully without it, and GPU-less machines show CPU + RAM instead of GPU stats). macOS/Linux: build from source.

  • File: GConnect_2.2.1_x64-setup.exe
  • Size: 35.18 MB (36,892,277 bytes)
  • SHA-256: 35E4F8D258E4CBD61D581194BA1FA8CEBAD71C516F129A95A4A13E716867CEA9

Highlights in v2.2.1

  • ⚡ Turnkey 1-Click GPU Sharing: Automatic network interface discovery prioritizing reachable Tailscale (100.x.x.x) and primary LAN (192.168.x.x) IPs. Zero manual config; teammates paste the invite directly into GConnect to connect immediately.
  • 🛡️ 1-Click Firewall Elevation: Built-in Windows Firewall detection and one-click UAC prompt to open inbound ports 8000/8001 without manual CLI commands.
  • 🖥️ VS Code IDE Layout Pinning: Locked file tabs above Monaco editor with proper container constraints. Tabs stay pinned and never get pushed off-screen when scrolling down or cover line 1 when scrolling up.
  • ⌨️ Terminal Keyboard Shortcuts & Mouse Interaction:
    • Ctrl+C: Copy selected text to clipboard; passes through SIGINT (^C) to cancel commands when nothing is selected.
    • Ctrl+V / Ctrl+Shift+V / Shift+Insert: Direct clipboard paste into the terminal PTY.
    • Right-Click: Instant context paste into the terminal shell prompt.
  • 📐 Terminal Bottom Safe-Padding: Added bottom padding (padding: 6px 10px 16px 10px) and lineHeight: 1.15 to ensure the active command prompt and output never collide with the bottom border or Windows taskbar. Auto-scrolls on streaming output.
  • 🖴️ Single System Tray: Eliminated duplicate tray icon glitch on Windows startup.
  • ⚡ Non-blocking Docker Sandbox: Container initialization runs asynchronously in the background. Desktop IDE launches in < 1s without freezing during the initial PyTorch image download.
  • 🧪 Test Suite: 58 automated backend tests passed.

GConnect v1.0

Choose a tag to compare

@At-vy At-vy released this 25 Oct 23:25

GConnect v1.0 - first public release of the personal remote GPU development platform. (App version: 2.2.0 - full details in the changelog.)

Download

GConnect_2.2.0_x64-setup.exe attached below. Run it - no admin rights needed. Windows 10/11; Docker Desktop is optional (the app degrades gracefully without it, and GPU-less machines show CPU + RAM instead of GPU stats). macOS/Linux: build from source.

SHA-256: 71669ddfa5139e4fe348d98ec8f1745574d7f60811a6fdf18cf5d5b67a3a3ed9

Highlights

  • Desktop app with remote GPU mode - connection screen on first launch: this PC's sandbox or a remote GPU workstation (URL + token); switch anytime from the header
  • PROBLEMS panel (VS Code-style) - Python syntax + pyflakes diagnostics as red/yellow squiggles and a clickable problem list (jumps to file:line), plus runtime tracebacks parsed from the terminal
  • Honest telemetry - real GPU stats via NVML at 2 Hz; GPU-less machines show real CPU + RAM instead of fabricated numbers
  • Docker-unavailable banner + Run guard - a yellow banner and a popup explain what's wrong; scripts never die silently
  • GPU Cluster - register daemons on your other PCs and see every GPU with pooled VRAM
  • Secure by default - token auth everywhere, loopback-only binding, opt-in LAN, 26-issue security audit (report a vulnerability)
  • Tested - 54 backend tests + 15 Playwright E2E tests, enforced by CI on every push