- Add POST /api/sessions/:sessionId/reset-size endpoint to reset terminal size when clients disconnect
- Implement reset-size control pipe command in PTY manager
- Update session-view component to call reset-size on unmount
- Add terminal resize event listener in fwd.ts to track terminal size changes
- Fix source maps configuration for development mode:
- Set inline source maps with embedded sources in esbuild config
- Add source map settings to TypeScript configs
- Set NODE_ENV to development for dev builds
This ensures external terminals resize back to their actual size when the last web client disconnects.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Fixed diff view highlighting by completely disabling workers
- Changed from ES modules to AMD loading for Monaco
- Extracted 356 lines of icon code to file-icons.ts utility
- Fixed git status detection with proper path handling
- Added recursive git changes view with flat listing
- Improved title bar with blue path color and better back button
- Made file browser fullscreen with mobile swipe support
- Moved git toggles to file list header to save space
- Made preview header responsive with 2-column grid on mobile
- Fixed server-side git show HEAD command with ./ prefix
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Rename terminal test bundle to generic test bundle (test.js)
- Create organized test structure in src/client/test/
- Move test HTML files to src/client/assets/test/
- Fix terminal-test component API usage and styling
- Fix Monaco editor worker loading issues by disabling workers
- Use AMD loader approach for Monaco initialization
- Apply Tailwind classes instead of inline CSS
The test infrastructure now supports isolated component testing with
individual HTML pages for each component. Monaco editor works with
syntax highlighting using the default vs-dark theme.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
The shadow utility was using theme(colors.accent.green) which is not
supported in arbitrary value syntax. Replaced with direct hex value #00ff88.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add Monaco Editor (v0.52.2) as dependency
- Create MonacoEditor Lit component with normal and diff modes
- Support inline/side-by-side diff switching with responsive behavior
- Replace CodeMirror in file browser with Monaco
- Add /api/fs/diff-content endpoint for fetching original/modified content
- Update build system to use esbuild with Monaco plugin
- Add proper Monaco asset handling and bundling
- Style Monaco with VibeTunnel dark theme
Note: There are rendering artifacts that need to be addressed
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>