Skip to content

Latest commit

 

History

History
294 lines (225 loc) · 14.2 KB

File metadata and controls

294 lines (225 loc) · 14.2 KB

cmux

Một terminal macOS dựa trên Ghostty với tab dọc và thông báo cho các agent lập trình AI

Tải cmux cho macOS

English | 日本語 | Tiếng Việt | 简体中文 | 繁體中文 | 한국어 | Deutsch | Español | Français | Italiano | Dansk | Polski | Русский | Bosanski | العربية | Norsk | Português (Brasil) | ไทย | Türkçe | ភាសាខ្មែរ | Українська

X / Twitter Discord GitHub stars

Ảnh chụp màn hình cmux

▶ Video demo · Thiền của cmux

Tính năng

Vòng thông báo

Các pane có vòng xanh và tab sáng lên khi agent lập trình cần bạn chú ý
Vòng thông báo

Bảng thông báo

Xem tất cả thông báo đang chờ ở một nơi, nhảy đến thông báo chưa đọc mới nhất
Huy hiệu thông báo ở sidebar

Trình duyệt trong app

Chia đôi một trình duyệt cạnh terminal với API có thể script, chuyển từ agent-browser
Trình duyệt tích hợp

Tab dọc + ngang

Sidebar hiển thị nhánh git, trạng thái/số PR liên kết, thư mục làm việc, các cổng đang lắng nghe, và dòng thông báo mới nhất. Chia đôi ngang và dọc.
Tab dọc và các pane chia

SSH

cmux ssh user@remote tạo workspace cho máy từ xa. Các pane trình duyệt định tuyến qua mạng từ xa nên localhost hoạt động bình thường. Kéo ảnh vào phiên từ xa để upload qua scp.
cmux SSH

Claude Code Teams

cmux claude-teams chạy chế độ teammate của Claude Code chỉ với một lệnh. Các teammate sinh ra dưới dạng split gốc với metadata sidebar và thông báo. Không cần tmux.
Claude Code Teams
  • Nhập trình duyệt — Nhập cookie, lịch sử, và phiên từ Chrome, Firefox, Arc, và hơn 20 trình duyệt khác để các pane trình duyệt khởi động đã đăng nhập sẵn
  • Lệnh tùy chỉnh — Định nghĩa các hành động riêng cho dự án trong cmux.json và khởi chạy từ bảng lệnh
  • Có thể script — CLI và socket API để tạo workspace, chia pane, gửi phím, và tự động hóa trình duyệt
  • Ứng dụng macOS gốc — Xây bằng Swift và AppKit, không phải Electron. Khởi động nhanh, dùng ít bộ nhớ.
  • Tương thích Ghostty — Đọc cấu hình ~/.config/ghostty/config hiện có của bạn cho theme, font, và màu sắc
  • Tăng tốc GPU — Được hỗ trợ bởi libghostty để render mượt

Cài đặt

DMG (khuyến nghị)

Tải cmux cho macOS

Mở file .dmg và kéo cmux vào thư mục Applications. cmux tự cập nhật qua Sparkle, nên bạn chỉ cần tải một lần.

Homebrew

brew tap manaflow-ai/cmux
brew install --cask cmux

Cập nhật sau này:

brew upgrade --cask cmux

Lần mở đầu tiên, macOS có thể yêu cầu bạn xác nhận mở app từ nhà phát triển được xác định. Nhấn Open để tiếp tục.

Vì sao cmux?

Tôi chạy rất nhiều phiên Claude Code và Codex song song. Tôi từng dùng Ghostty với nhiều pane chia, và dựa vào thông báo macOS gốc để biết khi nào một agent cần tôi. Nhưng nội dung thông báo của Claude Code luôn chỉ là "Claude is waiting for your input" mà không có ngữ cảnh, và khi mở đủ nhiều tab thì tôi thậm chí không đọc được tiêu đề nữa.

Tôi đã thử vài trình điều phối lập trình nhưng phần lớn là app Electron/Tauri và hiệu năng làm tôi khó chịu. Tôi cũng thích terminal hơn vì các trình điều phối GUI buộc bạn theo workflow của họ. Vì vậy tôi xây cmux như một app macOS gốc bằng Swift/AppKit. Nó dùng libghostty để render terminal và đọc cấu hình Ghostty hiện có của bạn cho theme, font, và màu sắc.

Những bổ sung chính là sidebar và hệ thống thông báo. Sidebar có các tab dọc hiển thị nhánh git, trạng thái/số PR liên kết, thư mục làm việc, các cổng đang lắng nghe, và dòng thông báo mới nhất cho từng workspace. Hệ thống thông báo bắt các chuỗi terminal (OSC 9/99/777) và có CLI (cmux notify) để bạn nối vào hook của agent cho Claude Code, OpenCode, v.v. Khi một agent đang chờ, pane của nó có vòng xanh và tab sáng lên ở sidebar, nên tôi có thể biết cái nào cần tôi giữa các split và tab. Cmd+Shift+U nhảy đến thông báo chưa đọc mới nhất.

Trình duyệt trong app có API script được chuyển từ agent-browser. Agent có thể chụp cây accessibility, lấy tham chiếu phần tử, click, điền form, và chạy JS. Bạn có thể chia một pane trình duyệt cạnh terminal và để Claude Code tương tác trực tiếp với dev server của bạn.

Mọi thứ đều có thể script thông qua CLI và socket API — tạo workspace/tab, chia pane, gửi phím, mở URL trong trình duyệt.

Thiền của cmux

cmux không áp đặt cách developer sử dụng công cụ. Nó là một terminal và trình duyệt có CLI, và phần còn lại là do bạn quyết định.

cmux là một nguyên thủy, không phải giải pháp. Nó cung cấp terminal, trình duyệt, thông báo, workspace, split, tab, và một CLI để điều khiển tất cả. cmux không ép bạn theo một cách dùng agent lập trình đầy định kiến. Bạn xây gì từ những nguyên thủy đó là của bạn.

Những developer giỏi nhất luôn tự xây công cụ của mình. Chưa ai tìm ra cách tốt nhất để làm việc với agent, và các đội ngũ xây sản phẩm đóng chắc chắn cũng chưa. Những developer gần codebase của họ nhất sẽ tìm ra trước.

Trao cho một triệu developer những nguyên thủy có thể ghép, và họ sẽ cùng nhau tìm ra workflow hiệu quả nhất nhanh hơn bất kỳ đội sản phẩm nào có thể thiết kế theo hướng top-down.

Tài liệu

Để biết thêm về cách cấu hình cmux, xem tài liệu của chúng tôi.

Phím tắt

Workspace

Phím tắt Hành động
⌘ N Workspace mới
⌘ 1–8 Nhảy đến workspace 1–8
⌘ 9 Nhảy đến workspace cuối
⌃ ⌘ ] Workspace tiếp theo
⌃ ⌘ [ Workspace trước
⌘ ⇧ W Đóng workspace
⌘ ⇧ R Đổi tên workspace
⌘ B Bật/tắt sidebar

Surface

Phím tắt Hành động
⌘ T Surface mới
⌘ ⇧ ] Surface tiếp theo
⌘ ⇧ [ Surface trước
⌃ Tab Surface tiếp theo
⌃ ⇧ Tab Surface trước
⌃ 1–8 Nhảy đến surface 1–8
⌃ 9 Nhảy đến surface cuối
⌘ W Đóng surface

Chia pane

Phím tắt Hành động
⌘ D Chia sang phải
⌘ ⇧ D Chia xuống dưới
⌥ ⌘ ← → ↑ ↓ Đổi focus pane theo hướng
⌘ ⇧ H Nhấp nháy panel đang focus

Trình duyệt

Phím tắt công cụ developer của trình duyệt theo mặc định Safari và có thể tùy chỉnh trong Settings → Keyboard Shortcuts.

Phím tắt Hành động
⌘ ⇧ L Mở trình duyệt trong pane chia
⌘ L Focus thanh địa chỉ
⌘ [ Quay lại
⌘ ] Tiến tới
⌘ R Tải lại trang
⌥ ⌘ I Bật/tắt Developer Tools (mặc định Safari)
⌥ ⌘ C Hiện JavaScript Console (mặc định Safari)

Thông báo

Phím tắt Hành động
⌘ I Hiện bảng thông báo
⌘ ⇧ U Nhảy đến thông báo chưa đọc mới nhất

Tìm kiếm

Phím tắt Hành động
⌘ F Tìm
⌘ G / ⌘ ⇧ G Tìm tiếp / tìm trước
⌘ ⇧ F Ẩn thanh tìm
⌘ E Dùng vùng chọn để tìm

Terminal

Phím tắt Hành động
⌘ K Xóa scrollback
⌘ C Sao chép (khi có chọn)
⌘ V Dán
⌘ + / ⌘ - Tăng / giảm cỡ chữ
⌘ 0 Đặt lại cỡ chữ

Cửa sổ

Phím tắt Hành động
⌘ ⇧ N Cửa sổ mới
⌘ , Cài đặt
⌘ ⇧ , Tải lại cấu hình
⌘ Q Thoát

Bản dựng Nightly

Tải cmux NIGHTLY

cmux NIGHTLY là một app riêng với bundle ID riêng, nên có thể chạy song song với bản ổn định. Được build tự động từ commit main mới nhất và tự cập nhật qua feed Sparkle riêng.

Báo lỗi nightly trên GitHub Issues hoặc trong #nightly-bugs trên Discord.

Khôi phục phiên (hành vi hiện tại)

Khi mở lại, cmux hiện chỉ khôi phục bố cục app và metadata:

  • Bố cục cửa sổ/workspace/pane
  • Thư mục làm việc
  • Scrollback của terminal (cố gắng hết mức)
  • URL và lịch sử điều hướng của trình duyệt

cmux không khôi phục trạng thái tiến trình đang chạy bên trong terminal. Ví dụ, các phiên Claude Code/tmux/vim đang hoạt động chưa được khôi phục sau khi restart.

Lịch sử sao

Biểu đồ lịch sử sao

Đóng góp

Cách tham gia:

Cộng đồng

Founder's Edition

cmux miễn phí, mã nguồn mở, và sẽ luôn như vậy. Nếu bạn muốn hỗ trợ phát triển và có quyền truy cập sớm vào những thứ sắp tới:

Lấy Founder's Edition

  • Ưu tiên yêu cầu tính năng/sửa lỗi
  • Truy cập sớm: cmux AI cung cấp ngữ cảnh cho mọi workspace, tab và panel
  • Truy cập sớm: ứng dụng iOS với terminal đồng bộ giữa desktop và điện thoại
  • Truy cập sớm: Cloud VM
  • Truy cập sớm: Voice mode
  • iMessage/WhatsApp cá nhân của tôi

Giấy phép

cmux là mã nguồn mở theo GPL-3.0-or-later.

Nếu tổ chức của bạn không thể tuân thủ GPL, giấy phép thương mại có sẵn. Liên hệ founders@manaflow.com để biết chi tiết.