Commit graph

669 commits

Author SHA1 Message Date
Peter Steinberger
19f80eaf5c
Fix screencap authentication (fixes #264) (#374) 2025-07-16 23:15:45 +02:00
Peter Steinberger
253d0ae3e7
Fix npm package build and installation issues (#360)
Co-authored-by: Alex Mazanov <alexandr.mazanov@gmail.com>
2025-07-16 23:05:26 +02:00
Peter Steinberger
2f3a4217d0
Fix control message loop and simplify welcome screen repository display (#372) 2025-07-16 09:30:56 +02:00
Peter Steinberger
500c75ebc8
Hide screen sharing button when Mac app is not connected (#367) 2025-07-16 03:37:33 +02:00
Peter Steinberger
12a2468f01
Replace bell icon with settings icon (#366) 2025-07-16 03:26:01 +02:00
Peter Steinberger
d40a78b4f2
Synchronize repository base path from Mac app to web UI (#358) 2025-07-16 03:09:19 +02:00
Peter Steinberger
1481b490e4 Update to version 1.0.0-beta.11 build 200 2025-07-16 03:05:12 +02:00
Peter Steinberger
32d92e306a
feat: add verbosity control to vt command (#356) 2025-07-15 22:43:38 +02:00
Peter Steinberger
de2f5bcf59
Only show spawn window toggle when Mac app is connected (#357) 2025-07-15 22:41:51 +02:00
Peter Steinberger
7cef4c1641
Fix file browser constant refresh issue (#354) 2025-07-15 21:06:38 +02:00
Peter Steinberger
6c4adfe10f fix: resolve Tailwind CSS content pattern performance warning
- Remove redundant content patterns
- Add explicit node_modules exclusion
- Prevents accidental matching of node_modules files
2025-07-15 20:45:52 +02:00
Peter Steinberger
f09eb9a493 fix: increase file browser z-index to appear above modal backdrop
The file browser was rendering behind the session create form modal because its z-index (200) was lower than the modal backdrop (1000). Increased FILE_BROWSER z-index to 1100 to ensure proper layering.

Also added debug logging to handleBrowse method for better troubleshooting.
2025-07-15 09:31:39 +02:00
Igor Tarasenko
4f1dd36be5
fix: allow browser keyboard shortcuts to work properly (#298)
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Peter Steinberger <steipete@gmail.com>
2025-07-15 05:38:23 +02:00
Luke
2b8db854d9
fix: prevent duplicating sessions (#345)
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Peter Steinberger <steipete@gmail.com>
2025-07-15 03:50:51 +02:00
Peter Steinberger
7545e86e6a
feat: Set Dracula as default theme for new users (#349)
Co-authored-by: Claude <noreply@anthropic.com>
2025-07-15 03:44:42 +02:00
Peter Steinberger
192fd7e941
Improve asciicast clear offset caching (#333)
Co-authored-by: Claude <noreply@anthropic.com>
2025-07-15 03:24:15 +02:00
Marek Šuppa
e8191181c9
feat(web): Add repository discovery to web client (#301)
Co-authored-by: Peter Steinberger <steipete@gmail.com>
2025-07-15 03:23:28 +02:00
Tao Xu
e89abc9dc6
Fix SSH key manager modal layout and test compatibility (#325)
Co-authored-by: Claude <noreply@anthropic.com>
2025-07-15 02:52:49 +02:00
Peter Steinberger
68e6456aef
docs: Add Linux setup instructions and authentication documentation (#344)
Co-authored-by: Claude <noreply@anthropic.com>
2025-07-15 02:47:25 +02:00
Peter Steinberger
34b596a010
Enable keyboard navigation on session grid (#322) 2025-07-12 23:23:28 +02:00
Peter Steinberger
00933690a8
Fix Safari clipboard paste (#336)
Co-authored-by: Claude <noreply@anthropic.com>
2025-07-12 23:13:35 +02:00
Peter Steinberger
29f938dcc1
Terminal theme improvements (#332)
Co-authored-by: Claude <noreply@anthropic.com>
2025-07-12 22:11:30 +02:00
Peter Steinberger
d019559f2b feat(web): add terminal theme preference 2025-07-12 19:45:27 +02:00
Peter Steinberger
93ba0064bd feat: add compression, security headers, and caching optimizations
Implement several performance and security improvements for Express 5:

Performance:
- Add compression middleware with Brotli support for all responses
- Enable WebSocket compression (perMessageDeflate) for terminal data
- Exclude compression for SSE streams (/api/sessions/:id/stream) to prevent asciicast issues
- Add intelligent caching headers for static assets:
  - Immutable assets (JS, CSS, fonts, images): 1 year cache
  - HTML files: 1 hour cache
  - Enable ETags and Last-Modified headers

Security:
- Add Helmet middleware for security headers
- Disable CSP and COEP to maintain compatibility with terminal features

Additional improvements:
- Remove obsolete @ts-expect-error directives (Express 5 properly types res.flush)
- Balanced compression level (6) for optimal performance

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-12 19:42:54 +02:00
Peter Steinberger
c2d9039e45 chore: update all dependencies to latest versions (except Tailwind)
Update all project dependencies to their latest versions while keeping
Tailwind CSS at v3.4.17 to avoid breaking changes.

Notable updates:
- Express: 4.19.2 → 5.1.0 (major version upgrade)
- Chalk: 4.1.2 → 5.4.1 (major version upgrade to ESM)
- CodeMirror packages: Updated to latest v6 versions
- TypeScript types: Updated to latest versions
- Development tools: Biome, Playwright, Puppeteer, etc.

All code quality checks pass successfully after the updates.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-12 19:30:47 +02:00
Peter Steinberger
cd2378c665 fix: add user ID for no-auth mode and improve TypeScript imports
Extract improvements from PR #318:

1. Set default user ID in no-auth mode for auth middleware
   - Ensures consistent behavior when authentication is disabled
   - Prevents potential issues with undefined user IDs

2. Convert to type-only imports in push notification service
   - Use TypeScript type imports for better tree shaking
   - Remove .js extensions from imports for consistency
   - Minor logging improvement for service worker registration

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-12 19:21:29 +02:00
Peter Steinberger
1052354394 feat: add keyboard navigation to session grid
- Enable arrow key navigation (up/down/left/right) through sessions
- Press Enter to open selected session
- Add visual feedback for keyboard-selected sessions
- Fix global event listener conflict by scoping to component
- Make session-list focusable with proper focus indicators
- Pass selected state to session-card for visual highlighting

Adopts PR #322 with improvements based on review feedback
2025-07-12 12:48:22 +02:00
Peter Steinberger
e3d0d9655b
Add professional light mode with theme toggle (#314) 2025-07-12 01:42:42 +02:00
Peter Steinberger
2dc37db0bb
Extract mobile detection to shared utility and reduce mobile font size (#310) 2025-07-11 10:24:06 +02:00
Peter Steinberger
0c617aed8d
Fix mobile terminal resize loop (#305) 2025-07-11 08:23:47 +02:00
Peter Steinberger
b16035b9f8
Remove activity indicator to prevent title jumping (#309) 2025-07-11 08:22:54 +02:00
Peter Steinberger
83fa3a22b8
Replace Microsoft node-pty with vendored fork to fix crashes (#304) 2025-07-11 07:19:32 +02:00
Peter Steinberger
25c8322b04
Fix mobile header overflow with dropdown menu (#295) 2025-07-10 07:50:34 +02:00
Jeff Hurray
d0e5bdacf2
Consolidate Z Index Logic (#291)
Co-authored-by: Claude <noreply@anthropic.com>
2025-07-10 06:34:50 +02:00
Peter Steinberger
76e16e94c6
refactor: extract preventAndStopEvent helper + support alt+nav on mobile (#290) 2025-07-09 21:07:20 +02:00
Jeff Hurray
ca3b1519d5 Revert "fix playwright tests"
This reverts commit d02b410c14678fe7d556ea0e70f21f85ba65f2be.
2025-07-09 16:38:49 +02:00
Jeff Hurray
8cab4e6caa fix playwright tests
This was an unrelated issue on main

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-09 16:38:49 +02:00
Jeff Hurray
14f5315ab0 Fix lint errors in file browser test
- Remove non-null assertion in favor of proper null check
- Add z-index comments for clarity in modal overlays
- Remove unused Z_INDEX imports after switching to comments

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-09 16:38:49 +02:00
Jeff Hurray
913cce61d2 lint fix 2025-07-09 16:38:49 +02:00
Jeff Hurray
274d9aeceb Add debugging and stopPropagation to file browser button
- Add stopPropagation to Browse button click handler in session-create-form
- Add debug logging to track state changes
- Match the pattern used in session-header for consistency
2025-07-09 16:38:49 +02:00
hewigovens
bf32367fee add alt+delete/left/right support 2025-07-09 16:33:04 +02:00
Peter Steinberger
43c98cac4b bump to b9 2025-07-09 09:18:08 +02:00
Peter Steinberger
dc0676b0a0 change server cleanup logic to only kill zombies 2025-07-08 22:05:01 +02:00
Peter Steinberger
6b93fdbf41
Fix Homebrew library dependencies in release builds (#269) 2025-07-08 09:55:52 +01:00
Jeff Hurray
32caa7ac4f Make file picker a distinct route 2025-07-08 08:15:20 +01:00
Jeff Hurray
10987e6290 Remove modal wrapper bc it breaks things 2025-07-08 08:09:12 +01:00
Peter Steinberger
b7b5aa2004
feat: add magic wand button to web frontend for AI sessions (#262)
Co-authored-by: Claude <noreply@anthropic.com>
2025-07-08 02:13:34 +01:00
Peter Steinberger
e65843064c Remove unnecessary Fish shell expansion comment 2025-07-08 00:47:11 +01:00
Raghav Sethi
966c671755
feat: add fish shell expansion support (#228) (#242)
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: raghav-latte <131696988+raghav-latte@users.noreply.github.com>
2025-07-08 00:44:31 +01:00
Peter Steinberger
ea3c22fba1 Remove remaining animations and fix file browser issues
- Swap file picker and settings buttons in session header (settings now at the end)
- Disable all button transitions in session view with body.in-session-view
- Disable modal backdrop fade-in animation (0.3s) in session view
- Fix file browser briefly showing then going dark by preventing event bubbling
- Add stopPropagation to file browser button click to prevent duplicate modals

The session detail page should now have zero animations when toggling sidebar
or opening modals.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-08 00:43:51 +01:00