Skip to content

Releases: vultuk/claude-code-web

v3.4.0 - Working VS Code-Style Split View

23 Oct 21:40

Choose a tag to compare

🎉 Major Improvement: Working Split View!

This release completely rewrites the split view system, replacing 1000+ lines of broken code with a clean, reliable VS Code-style implementation.

✨ New Features

VS Code-Style Split View

  • 🔀 Drag any tab to the right edge of the terminal to create a side-by-side split
  • 🖥️ Each split has its own independent terminal instance and WebSocket connection
  • 📐 Resizable divider - drag the blue line to adjust split widths
  • ⌨️ Keyboard shortcuts:
    • Ctrl+1 / Ctrl+2 - Focus left/right split
    • Ctrl+\ - Close split and return to single pane
  • Close button (X) in top-right corner of right split
  • 💾 Split state persists with localStorage

🗑️ Removed

  • Deleted broken panes.js (1018 lines)
    • Complex grid system with rows×cols causing constant bugs
    • Sessions getting lost during grid rebuilds
    • Panels getting stuck
    • Non-functional drag and drop
    • Memory leaks and orphaned connections

🐛 Fixed

  • ✅ Sessions no longer get lost during split operations
  • ✅ Panels can now be closed reliably
  • ✅ Drag and drop works correctly
  • ✅ No more orphaned terminal instances
  • ✅ No more WebSocket connection leaks
  • ✅ Proper cleanup when closing splits

📊 Technical Details

  • Before: 1018 lines of panes.js + complex integration = constant bugs
  • After: 400 lines of splits.js = clean, working implementation
  • Architecture: Each split is independent with its own terminal and connection
  • Compatibility: Fully backward compatible - single-pane mode unchanged

🧪 Testing

  • ✅ All 12 tests passing
  • ✅ No linter errors
  • ✅ Tested: create split, switch sessions, close split, resize
  • ✅ No console errors or warnings

Full Changelog: v3.3.0...v3.4.0

v3.3.0 - Bug Fixes and UI Improvements

23 Oct 21:12

Choose a tag to compare

What's Changed

Fixed

  • Critical: Fixed syntax error in server.js close() method causing improper indentation in agent session cleanup
  • Critical: Fixed memory leaks in all three bridge files (claude-bridge.js, codex-bridge.js, agent-bridge.js) by properly tracking and clearing kill timeouts
  • Fixed race condition in session-store.js where atomic rename could fail if directory was deleted between write and rename operations
  • Fixed duplicate signal handlers in server.js that could cause double-shutdown attempts
  • Removed call to undefined method clearProcessedEntriesCache() in usage-reader.js
  • Removed unused sessionCache Map variable from usage-reader.js
  • Added missing test coverage for agent alias in server alias tests
  • Fixed test cleanup warnings by ensuring storage directory exists before save operations

Changed

  • Removed token usage top bar from UI - no longer displays real-time token statistics in the header
  • Updated applySettings() to reflect removal of token stats visibility toggle
  • Disabled updateUsageDisplay() and startSessionTimerUpdate() functions as UI elements no longer exist

Notes

  • All bug fixes are backward-compatible
  • Usage statistics backend code still runs but is no longer displayed in the UI
  • Test suite passing: 12/12 tests

Full Changelog: v3.2.2...v3.3.0

v3.2.2 - Fix Loading Spinner Overlay Issue

23 Oct 20:56

Choose a tag to compare

Fixed

  • Fixed loading spinner overlay remaining visible when showing folder browser
  • Added proper overlay hiding before showing folder browser in all locations
  • Resolves issue where users couldn't interact with folder browser due to stuck spinner

This patch release fixes a critical UI issue where the loading spinner would remain visible, preventing users from interacting with the folder browser on initial load.

v3.2.1: Fix cursor-agent Command Name

23 Oct 20:47

Choose a tag to compare

🔧 Critical Fix for v3.2.0

This patch release fixes the agent command name that was incorrectly set in v3.2.0.

🐛 Bug Fixes

  • Fixed agent command: Changed from claude-agent to cursor-agent in AgentBridge
  • Updated search paths: Now correctly searches in ~/.cursor/ directory instead of ~/.agent/

📦 Impact

If you installed v3.2.0, please upgrade to v3.2.1 to ensure the cursor-agent functionality works correctly.

⚡ Installation

npm install -g claude-code-web@latest

Full Changelog: v3.2.0...v3.2.1

v3.2.0: Add Cursor Agent Support

23 Oct 20:45

Choose a tag to compare

🎉 Cursor Agent Support

This release adds cursor-agent as a third CLI option alongside Claude and Codex, giving you more flexibility in choosing your AI assistant.

✨ New Features

  • Cursor Agent Integration: Start cursor-agent sessions with the new "Start Cursor" button
  • Custom Alias Support: Use --agent-alias flag or AGENT_ALIAS env var to customize the display name (default: "Cursor")
  • Full Session Management: Complete WebSocket support with agent_started and `agent_stopped" events
  • Automatic Command Detection: Searches standard paths for cursor-agent installation

🔧 Usage

# Start with default "Cursor" alias
cc-web

# Use custom agent alias
cc-web --agent-alias "MyAgent"

# Or via environment variable
AGENT_ALIAS="MyAgent" cc-web

📋 What's Changed

  • Added AgentBridge for managing cursor-agent sessions
  • Added --agent-alias CLI flag and AGENT_ALIAS environment variable
  • Added "Start Cursor" button to UI (main overlay and per-pane overlays)
  • Extended session management to support three concurrent agent types
  • Updated startup logs to display all three assistant aliases

⚡ Backwards Compatibility

This is a fully backwards-compatible feature addition. Existing Claude and Codex functionality remains unchanged.

🔍 Technical Details

  • Agent bridge searches for cursor-agent in standard paths (~/.cursor/local/cursor-agent, ~/.local/bin/cursor-agent, etc.)
  • No special CLI flags required for agent (unlike Claude's --dangerously-skip-permissions or Codex's bypass flag)
  • Session state properly persists across server restarts

Full Changelog: v3.1.0...v3.2.0

v3.1.0

15 Sep 20:19

Choose a tag to compare

What's Changed

  • Session tabs now maintain explicit order and MRU history for VS Code-style navigation.
  • Added middle-click close, inline rename styling, and auto scroll-into-view for active tabs.
  • Mobile overflow counters/menus and backend-driven tab removal are more reliable.

v3.0.4

14 Sep 20:02

Choose a tag to compare

Fixes:

  • Restore VS Code-style tabs with optional panes.
  • Tabs visible in tiled mode; selection targets active pane.
  • Pane '+' opens session picker; Shift+click to create session.
  • Replay recent output buffer when (re)joining sessions in splits.
  • Remove CSS that hid tabs; panes fill width without interfering.

v3.0.3

14 Sep 19:50

Choose a tag to compare

Fixed: Single-pane/no-session fills full width by moving overlay outside terminal container and making it fixed; ensure .tile-grid flexes to fill available width.

v3.0.2

13 Sep 22:37

Choose a tag to compare

Patch release with stability fixes for tiled splits.\n\nFixes:\n- Correct split index math; insert column/row helpers\n- Reattach sessions after grid rebuilds\n- Respect copy vs move on drag; avoid removing from wrong source\n- Make edge-of-grid splits consistent\n\nSee CHANGELOG.md for details.

v3.0.1

13 Sep 22:28

Choose a tag to compare

Patch release with UI fixes.\n\nFixes:\n- Remove left gap in tiled mode by hiding single-pane container when tiles are enabled\n- Restore per-pane assistant chooser overlay (treat only 'active' as running)\n\nSee CHANGELOG.md for details.