Commit graph

458 commits

Author SHA1 Message Date
Lawrence Chen
41ffd9693b Change "AI agents" to "coding agents" in README notification rings description 2026-02-20 20:21:33 -08:00
Lawrence Chen
51a0b3222c
Merge pull request #218 from manaflow-ai/fix-dragdrop-overlay
Unify drag overlay routing and add drag/drop regression tests
2026-02-20 20:11:07 -08:00
Lawrence Chen
fe6c9ec1dc Restrict portal pass-through to active drag-motion events 2026-02-20 20:07:54 -08:00
Lawrence Chen
a5c7600458 Harden drag overlay routing and add terminal overlay regression probes 2026-02-20 19:58:58 -08:00
Lawrence Chen
9388358914 Merge remote-tracking branch 'origin/main' into fix-dragdrop-overlay 2026-02-20 19:53:45 -08:00
Lawrence Chen
1c8cf082b2 Pin bonsplit submodule to clean commit 43aedcf 2026-02-20 19:52:56 -08:00
Lawrence Chen
af5a75f4c3
Add demo video link to README (#229)
* Add demo video link to README

Link to the "cmux - the terminal built for multitasking" YouTube video,
placed right below the main screenshot.

* Shorten demo link text to match README tone

* Use 'Demo video' for demo link text
2026-02-20 19:45:28 -08:00
Lawrence Chen
745c89fba9
Merge pull request #212 from manaflow-ai/issue-171-homebrew-claude-socket-errors
Default Claude Code integration to off
2026-02-20 19:32:30 -08:00
Austin Wang
41e9b8081f
Increase hit area for browser panel buttons
Merged by manaflow for task kn71ngz7871bej8k7m9ka2qy7d81kxqd.
2026-02-20 19:10:48 -08:00
Lawrence Chen
39c16183ee
Merge pull request #222 from manaflow-ai/feat-pr117-review-followup
Follow up browser DevTools and portal review comments from PR 117
2026-02-20 19:03:38 -08:00
Lawrence Chen
c5255dd303
Merge pull request #226 from manaflow-ai/feat-cmd-tooltip-current-window
Scope Command shortcut hints to the active window
2026-02-20 18:56:07 -08:00
Lawrence Chen
d26390156a Fix flaky initial bonsplit split animation 2026-02-20 18:53:08 -08:00
Lawrence Chen
7957c6daf2
Merge pull request #224 from manaflow-ai/feat-window-top-offset-init
Fix top offset glitch on newly created windows
2026-02-20 18:48:43 -08:00
Lawrence Chen
699e708601 Scope command shortcut hints to active window 2026-02-20 18:48:29 -08:00
Lawrence Chen
cf767cf9af Fix bonsplit drag routing and pin submodule commit 2026-02-20 18:47:34 -08:00
Lawrence Chen
7a5b67049c Fix initial window top inset on new window creation 2026-02-20 18:41:35 -08:00
Lawrence Chen
d9b7511b07
Implement pane.resize divider control and verify in tmux matrix test (#223) 2026-02-20 18:40:37 -08:00
Lawrence Chen
23979d8c02 Merge origin/main into fix-dragdrop-overlay 2026-02-20 18:29:36 -08:00
Austin Wang
04431751ce
Fix file drag-and-drop and file input in browser panel (#214)
* Fix file drag-and-drop and file input in browser panel (#194)

Two fixes for the browser panel:

1. File drag-and-drop from Finder: CmuxWebView previously suppressed ALL
   drag type registration as a no-op to prevent bonsplit tab drags from
   being intercepted. Now it selectively filters out only the text-based
   types that conflict with bonsplit (public.text, public.utf8-plain-text,
   public.plain-text) and the custom tab transfer types, while allowing
   file URL types through so Finder drops work.

2. File <input> elements: Added the WKUIDelegate runOpenPanelWith method
   to BrowserUIDelegate so clicking a file input opens the native macOS
   file picker (NSOpenPanel), with support for multiple selection and
   directory picking as specified by the HTML element.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* chore(claude-opus-4-6): take a look at https://github.com/manaflow-ai/cmux/issues...

* ok

* wok

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 18:26:23 -08:00
Lawrence Chen
6cb282bf09
tmux compat: implement issue-153 command set with matrix tests (#221)
* Add tmux rename-window workspace compatibility

Implement workspace.rename in the v2 API and wire CLI commands rename-workspace/rename-window with help text.

Add a regression test that validates API and CLI rename parity plus error handling.

Refs: https://github.com/manaflow-ai/cmux/issues/153

* Add full tmux compatibility command matrix and regression coverage
2026-02-20 18:22:26 -08:00
Lawrence Chen
f294699670 Fix browser DevTools retry and portal visibility follow-ups 2026-02-20 18:00:20 -08:00
Lawrence Chen
6f1e100db6
Merge pull request #217 from manaflow-ai/fix/setup-cache-robustness
Fix setup.sh cache: always rebuild on miss, add stale lock timeout
2026-02-20 17:50:15 -08:00
Lawrence Chen
9649a90163
Merge pull request #117 from manaflow-ai/fix/browser-devtools-shortcuts-pr
Fix browser devtools persistence and add Safari-style shortcuts
2026-02-20 17:49:10 -08:00
Lawrence Chen
b4bb51c509 Use SHA stamp to safely reuse local xcframework on cache miss
Instead of always rebuilding, write a .ghostty_sha stamp file
inside the xcframework after each build. On cache miss, only
seed from local if the stamp matches the current submodule SHA.
This avoids both unnecessary rebuilds and stale ABI mismatches.
2026-02-20 17:42:35 -08:00
Lawrence Chen
a7363a5702 Merge remote-tracking branch 'origin/main' into fix/browser-devtools-shortcuts-pr
# Conflicts:
#	cmuxTests/CmuxWebViewKeyEquivalentTests.swift
2026-02-20 16:41:08 -08:00
Lawrence Chen
2a1f81020d
Merge pull request #220 from manaflow-ai/followup-pr-219-review-comments
Follow up: resolve surface.read_text workspace targeting
2026-02-20 16:40:49 -08:00
Lawrence Chen
7dbd7811df Fix workspace routing for surface.read_text
Addresses review feedback from https://github.com/manaflow-ai/cmux/pull/219 by resolving read-screen targets against requested workspace/surface instead of the selected workspace.
2026-02-20 16:31:48 -08:00
Lawrence Chen
146ac253af Harden file-drop routing for local tab drags 2026-02-20 16:27:12 -08:00
Lawrence Chen
71a8644411
Merge pull request #219 from manaflow-ai/issue-152-153-read-screen-production
Expose production read-screen capture-pane APIs
2026-02-20 16:25:31 -08:00
Lawrence Chen
b163c2bbf3 Expose production read-screen capture APIs
Implements capture-pane parity item from https://github.com/manaflow-ai/cmux/issues/153 by shipping production read-screen support from https://github.com/manaflow-ai/cmux/issues/152.
2026-02-20 16:22:33 -08:00
Lawrence Chen
a5d724cf28 Unify drag overlay routing and add regression coverage 2026-02-20 16:09:42 -08:00
Lawrence Chen
9952955184 Fix setup.sh cache: always rebuild on miss, add stale lock timeout
- Remove local xcframework seeding on cache miss — the local build
  output isn't tied to the current submodule SHA and can produce
  ABI mismatches. Always run zig build when cache misses.
- Add 300s timeout on lock acquisition. If a prior setup was killed
  uncleanly (SIGKILL, host crash), the lock dir persists forever
  and blocks all future runs. Now auto-removes stale locks.
2026-02-20 16:08:20 -08:00
Lawrence Chen
47151f45e7
Merge pull request #216 from manaflow-ai/manaflow/add-community-section-to-bottom-of-readme-similar-5a48v
Add community section to README
2026-02-20 15:55:46 -08:00
Austin Wang
1f3f366294
Fix #205: Add setting to disable workspace auto-reorder on notification (#215)
* chore(claude-opus-4-6): From HN feedback: https://news.ycombinator.com/item?id=47...

* Centralize workspace auto-reorder into addNotification

Move moveTabToTop into TerminalNotificationStore.addNotification so all
notification paths (Ghostty actions, v2 API, control socket) respect the
reorder-on-notification setting, not just the two Ghostty action sites.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 15:55:31 -08:00
Lawrence Chen
70716d23bf Add community section to README
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 23:50:54 +00:00
Lawrence Chen
438b7a6a41 Merge remote-tracking branch 'origin/main' into fix/browser-devtools-shortcuts-pr
# Conflicts:
#	Sources/Panels/BrowserPanel.swift
#	Sources/cmuxApp.swift
#	cmuxTests/CmuxWebViewKeyEquivalentTests.swift
#	vendor/bonsplit
2026-02-20 15:48:27 -08:00
Lawrence Chen
ea0593475c
Merge pull request #206 from manaflow-ai/issue-180-http-nonsecure-hosts
Allow HTTP in built-in browser for local dev hosts
2026-02-20 15:39:22 -08:00
Austin Wang
270115ccbb
Fix Cmd+Enter being routed as browser reload (#213) 2026-02-20 15:36:24 -08:00
Lawrence Chen
c9cafc0806 Merge origin/main into issue-180-http-nonsecure-hosts 2026-02-20 15:27:59 -08:00
Lawrence Chen
834e156556 Make HTTP allowlist helper and save row responsive 2026-02-20 15:20:44 -08:00
Lawrence Chen
6133da0b20 Prefer navigate row over switch-to-tab for identical URL 2026-02-20 15:19:06 -08:00
Lawrence Chen
df9ba6dcd9
Fix #155: remap-aware bonsplit tooltips + browser split shortcuts (#200)
* Issue #155: remap bonsplit tooltips and add browser split shortcuts

* Fix split button mousedown feedback regression

* Match split button sizing with main
2026-02-20 15:17:00 -08:00
Lawrence Chen
3ffceb7e8e Fix insecure HTTP proceed to be one-time unless saved 2026-02-20 15:16:12 -08:00
Lawrence Chen
eb6caa5ce5 Default Claude Code integration to off 2026-02-20 15:10:48 -08:00
Lawrence Chen
d1bcb17b0d Add explicit save for HTTP host allowlist setting 2026-02-20 15:04:58 -08:00
Lawrence Chen
79b34052cb Persist HTTP allowlist selection when opening externally 2026-02-20 15:00:54 -08:00
Lawrence Chen
573cec4a75
Fix inconsistent Tab/Workspace terminology in settings and menus (#187)
Unify user-facing labels to consistently use "Workspace" instead of
mixing "Tab" and "Workspace":

- Settings: "New Tab" → "New Workspace" (keyboard shortcuts section)
- Menu: "Tab 1"–"Tab 9" → "Workspace 1"–"Workspace 9" (Cmd+1–9)
- Sidebar context menu: "Close Tabs" → "Close Workspaces",
  "Close Tabs Below/Above" → "Close Workspaces Below/Above"

Fixes https://github.com/manaflow-ai/cmux/issues/182

Co-authored-by: austinpower1258 <austinwang115@gmail.com>
2026-02-20 14:58:58 -08:00
Lawrence Chen
821e3ab4c3 Guard insecure HTTP in browser with allowlist and proceed flow 2026-02-20 14:55:26 -08:00
Lawrence Chen
1650ba372f
Fix sidebar workspace staying dim after external drop (#207)
* Fix stuck sidebar dim state after external drop

* Debug sidebar drag outside-drop flow with content overlay

* Handle sidebar drag endings outside window

* Fix stale update feed resolver tests
2026-02-20 14:53:57 -08:00
Lawrence Chen
327d658069
Fix CLI v2 commands showing JSON parse error instead of actual error (#189)
When the server returns a plain-text error (e.g., "ERROR: Access denied
...") before the JSON protocol starts, sendV2() would pass it through
JSONSerialization which throws a confusing NSCocoaErrorDomain 3840 error.

Now sendV2() checks for "ERROR:" prefix and surfaces the real message.
Also includes the raw response in the fallback error for easier debugging.

Fixes https://github.com/manaflow-ai/cmux/issues/188
2026-02-20 14:53:00 -08:00