1 điểm bởi GN⁺ 3 giờ trước | 1 bình luận | Chia sẻ qua WhatsApp
  • Đang phát triển một trình đa kênh công việc kết nối từ phát triển cục bộ, truy cập từ xa, coding agent, tác vụ nền đến vận hành production trong một phiên liên tục duy nhất
  • Nhằm giải quyết vấn đề công việc tương tác của con người và công việc tự động của CI·agent bị phân tán trên các công cụ và log riêng biệt, đồng thời duy trì ngữ cảnh·dữ liệu có cấu trúc·lịch sử công việc xuyên suốt nhiều môi trường
  • Sản phẩm đầu tiên là trình đa kênh terminal quản lý nhiều khối terminal trong các phiên dài hạn, cho phép tiếp tục công việc từ trạng thái cũ ngay cả khi đóng ứng dụng hoặc đổi thiết bị
  • Hỗ trợ web và ứng dụng native trên macOS·iOS, chia sẻ phiên theo thời gian thực, đồng thời cải thiện các bất tiện của công cụ hiện có để scrollback·chọn·cuộn hoạt động theo đúng cách mặc định của hệ điều hành
  • Có kế hoạch biến mọi thành phần thành các khối có thể kết hợp với nhau và đảm bảo cả độ an toàn production lẫn khả năng vận hành, đồng thời công bố beta đầu tiên và phát hành mã nguồn mở trong quá trình phát triển

Phiên làm việc liên tục nối nhiều môi trường

  • Công việc phần mềm hiện đại trải dài trên máy cục bộ, host từ xa, sandbox, dịch vụ và hệ thống production
    • Công việc tương tác của lập trình viên, công việc tự động của CI và tiến trình nền, cùng công việc của các agent chạy song song đang nằm trên những hệ thống khác nhau
    • Công cụ tương tác giả định luôn có con người trước giao diện, công việc tự động thì bị chôn vùi trong lịch sử chạy việc và log, còn công việc production tồn tại sau các hệ thống và cơ chế kiểm soát riêng biệt
  • AI khiến chi phí của sự phân mảnh công cụ hiện rõ hơn, nhưng quản trị hệ thống, tích hợp liên tục, phát triển từ xa và cộng tác cũng đã gây áp lực lên các ranh giới này suốt hàng chục năm
  • Phiên liên tục mà Superlogical hình dung sẽ đảm nhận các vai trò sau
    • Vượt qua ranh giới giữa ứng dụng và môi trường thực thi
    • Cung cấp ngữ cảnh liên quan theo mặc định
    • Hiển thị dữ liệu có cấu trúc và các tác vụ có thể thực thi
    • Bảo toàn lịch sử công việc
    • Duy trì trạng thái để phần mềm có thể vận hành, đồng thời con người vẫn luôn nhìn thấy và kiểm soát được
  • Việc phát triển được lên kế hoạch theo 3 giai đoạn: xây dựng trình đa kênh chất lượng cao, đảm bảo khả năng kết hợp của các thành phần nội bộ, và đảm bảo độ an toàn production cùng khả năng vận hành

Sản phẩm đầu tiên bắt đầu từ terminal

  • Sản phẩm đầu tiên là trình đa kênh terminal tập hợp nhiều luồng terminal độc lập vào một giao diện chung
    • Sắp xếp nhiều khối terminal trong các phiên dài hạn
    • Sau khi đóng ứng dụng, có thể kết nối lại từ thiết bị khác và tiếp tục công việc từ điểm đã dừng
    • Có thể truy cập phiên từ web và ứng dụng native trên macOS·iOS
    • Tích hợp ngay từ đầu khả năng chia sẻ phiên theo thời gian thực với người khác
    • Triển khai scrollback·chọn·cuộn theo đúng cách mặc định của hệ điều hành để giảm những bất tiện phổ biến của các trình đa kênh hiện có
  • Terminal được chọn làm nền tảng cho trình đa kênh công việc lớn hơn vì nó kết nối lập trình viên, agent, công cụ và hạ tầng
    • Ngay cả khi phạm vi tính năng được mở rộng trong tương lai, chất lượng của chính trình đa kênh terminal vẫn sẽ được duy trì

Đội ngũ và kế hoạch ra mắt

  • Đội ngũ có sự tham gia của Mitchell Hashimoto, Jack Pearkes, Alasdair Monk, Hector Simpson
    • Họ có kinh nghiệm xây dựng công cụ phát triển·hạ tầng·hệ thống AI và giao diện cho lập trình viên như Ghostty, HashiCorp, Vagrant, Terraform, Vault, Poolside, Vercel, Heroku
  • Đã huy động vốn từ các nhà đầu tư gồm Notable Capital và Amplify Partners, đồng thời đang nhận đăng ký thông báo cho beta đầu tiên và bản phát hành mã nguồn mở

1 bình luận

 
Ý kiến trên Hacker News
  • Tôi განსაკუთრებით thích việc quyền sở hữu Ghostty được chuyển sang một tổ chức phi lợi nhuận, rồi công ty mới sử dụng nó như một phụ thuộc mã nguồn mở
    Superlogical sẽ dùng cùng các thành phần giấy phép MIT mà bất kỳ ai cũng có thể dùng, và sẽ tiếp tục đẩy các tác vụ terminal chung lên upstream vào libghostty để mọi người dùng đều được hưởng lợi

    • Điều này tương phản rất rõ với những động thái gần đây của Anthropic/Bun quanh đợt di chuyển sang Rust vẫn chưa được công khai
  • Tôi đã sống trong tmux/vim khoảng 20 năm qua, nhưng tháng gần đây hầu như chỉ dùng ứng dụng desktop Codex, và giờ cũng ngày càng điều khiển từ xa bằng ứng dụng ChatGPT trên điện thoại nhiều hơn
    Tôi thích Ghostty, nhưng không rõ thế giới lấy terminal làm trung tâm này còn kéo dài được bao lâu

  • Nghe giống như sự kết hợp của nhiều công cụ tôi đã dùng gần đây
    pi-web(https://pi-web.dev/) là frontend web để multiplex các phiên Pi trên nhiều máy, còn herdr(https://herdr.dev/) là một TUI multiplex tác nhân khá hoàn thiện, cho phép dễ dàng tạo và xóa cửa sổ theo hoạt động của các tác nhân con
    firstmate(https://github.com/kunchenguid/firstmate) là một môi trường meta cho môi trường thực thi lập trình, xử lý việc tạo/giao tiếp tác nhân con, quản lý worktree và các chức năng khác trong vòng đời phát triển phần mềm, đồng thời nhờ các ràng buộc của script Bash mà dẫn dắt mô hình cho kết quả tốt hơn ngay cả với model yếu hơn

    • Nếu quan tâm đến các công cụ kiểu này thì cũng đáng xem ouijithttps://ouijit.com/https://github.com/ouijit/ouijit
      Đây là một terminal agent orchestrator dành cho người dùng nâng cao muốn có thêm chút thiết kế thay vì trải nghiệm kiểu “hackerman”
    • Tôi đang phát triển plugin collie để chạy ứng dụng web trên host herdr và cung cấp qua Tailscale v.v.
      Kết hợp với khả năng duy trì phiên của herdr, nó giúp việc truy cập tác nhân khi đang di chuyển dễ hơn nhiều và trải nghiệm cũng khá tốt: https://github.com/AltanS/collie
    • Không hẳn chỉ dành cho terminal, nhưng từ tuần trước tôi đã thử dùng Orca(https://github.com/stablyai/orca) và thấy rất hài lòng
  • Đây là lần đầu tôi thấy một trang tuyển dụng cho phép vào bằng ssh superlogical.jobs để xem tin tuyển dụng trong terminal, đúng kiểu rất hợp gu lập trình viên dị biệt

    • NSA và một số công ty khác từ lâu đã cho người dùng vượt qua nhiều cửa ải, thậm chí phải viết exploit nhỏ, mới biết được địa chỉ email để gửi CV
    • Cách làm qua SSH thì vui, nhưng tôi vẫn muốn có cách xem khác
      Hiện tôi đang dùng kết nối có độ trễ rất lớn, nên trong môi trường như vậy trải nghiệm người dùng thật kinh khủng
  • Tôi đã chán kiểu tiêu đề câu nhử click làm như câu đố thay vì nói rõ nội dung, nên sẽ không bấm vào trang này
    Hướng dẫn của HN chỉ nói đại loại rằng tên site sẽ hiện sau liên kết nên không cần đưa vào tiêu đề, nhưng sẽ tốt hơn nếu có thông lệ chỉnh các tiêu đề chỉ có tên miền hay một từ sao cho bộc lộ nội dung

    • Header của trang thực tế là “We are building the multiplexer for all work.”
      Tiêu đề trên HN cũng nên viết kiểu “Superlogical: We are building the [terminal] multiplexer for all work” thì tốt hơn
    • Nếu không bấm vào thì không có cách nào biết vì sao lại đặt tiêu đề như vậy
  • Lợi ích lớn nhất của công cụ kiểu này có lẽ là tính tập trung hóa
    Hệ sinh thái terminal bị phân mảnh quá mức, ai cũng phải hỗ trợ các giao thức terminal khó hiểu và chồng lên vô số wrapper
    Giải pháp dễ nhất là định nghĩa tiêu chuẩn thay vì chỉ làm công cụ tích hợp; nếu có thể chuẩn hóa ở một chỗ các phần mở rộng vẫn giữ được cảm giác dùng terminal nhưng thoát khỏi ngữ nghĩa kiểu thập niên 1980 thì sẽ rất tuyệt
    Cho đến nay, tổ hợp gọn gàng nhất là mosh + tmux, nhưng ngay cả nó cũng có vấn đề như thiếu con trỏ khối
    Nếu mục tiêu cuối cùng của Superlogical là tái cấu trúc hệ sinh thái phát triển Linux thì tôi ủng hộ, nhưng về lâu dài tôi vẫn lo ngại rủi ro chính trị, và thấy ổn chừng nào nó còn là công cụ phát triển cục bộ mã nguồn mở

    • Có lẽ đây không phải lần đầu ai đó cố giải quyết vấn đề này: https://xkcd.com/927/
  • Làm tôi nhớ lại thời Mitchell lần đầu giới thiệu Vagrant trên HN, và từ đó mọi thứ của HashiCorp bắt đầu
    Tôi cứ nghĩ mới 8 năm, nhiều lắm 10~12 năm trước, vậy mà đã 16 năm rồi
    Tò mò không biết lần này có lại là một dự án dùng Zig không: https://news.ycombinator.com/item?id=1175901

    • Nếu dùng libghostty thì khả năng cao là Zig
    • Tin tuyển dụng thì đang tìm lập trình viên Go
  • Họ nói sẽ làm cho những điểm khó chịu thường gặp của công cụ hiện có như scrollback, chọn văn bản và cuộn hoạt động một cách native, nhưng lại làm hỏng cả thanh cuộn của trình duyệt

    • Trong môi trường của tôi thanh cuộn vẫn bình thường, có vẻ chỉ là đổi style
  • Agent orchestrator trông như giấc mơ của IDE được đóng gói lại
    Ngoại trừ những sản phẩm hưởng lợi từ hiệu ứng khóa chặt và tính độc quyền như Visual Studio hay Xcode, IDE chưa bao giờ đạt tới tầm nhìn lớn mà Alan Kay và những người khác từng vẽ ra, và đến nay về cơ bản vẫn chỉ là trình soạn thảo văn bản kèm cây file
    Agent orchestrator cũng vậy: tầm nhìn thì rất lớn, nhưng cách hiện thực lại gần với một terminal có tab

    • Tôi nghĩ IDE thật ra đã thành công, chỉ là một số thứ bị đóng băng trong thời gian
      Ứng dụng client Windows, đặc biệt là Visual Studio cho WinForms, đến giờ vẫn năng suất đáng kinh ngạc
      Bạn có thể kéo thả UI, chuyển sang logic phía sau form, nối backend web service, chia sẻ domain model, và toàn bộ quá trình đó đều được các công cụ duyệt/tìm kiếm hiểu rất rõ; tích hợp TFS cũng rất tốt
      Nhưng “Server Explorer” thì cứ mỗi lần mở lại treo 30 giây sau khi nhét cả Azure VM vào, công cụ Docker thì đến quá muộn, và nhiều dịch vụ Azure cũng không có công cụ VS tử tế
      Tính năng “right click publish” cho hệ thống nhỏ cũng không mở rộng được tới các yêu cầu thực tế có nhiều nhóm cùng tham gia, nên lập trình viên phải học công cụ khác để làm việc hiện đại, và vai trò trung tâm của Visual Studio vì thế suy yếu đi nhiều
    • Nhìn vào hai đoạn trong bài gốc thì có vẻ họ đang theo đuổi tầm nhìn IDE vượt ra ngoài terminal
      Khả năng đóng app rồi kết nối lại từ thiết bị khác để tiếp tục đúng chỗ mình đang làm nghe giống giấc mơ remote IDE mà chưa ai thực hiện tử tế
      Trước đây bạn không cần một thiết bị chạy công việc 24/7, nhưng với các coding agent chạy nền thì tình hình đã khác
      Tuy vậy, trong một terminal multiplexer, chia sẻ phiên theo thời gian thực đòi hỏi phải khớp số hàng/cột màn hình ở mọi nơi, nên nếu trộn điện thoại với laptop thì trải nghiệm người dùng sẽ rất tệ, và chính tôi đã thử mà không tìm ra giải pháp tốt
      Dù vậy, việc họ vẫn đưa tính năng này vào cho thấy mục tiêu dài hạn không phải terminal mà là một agent IDE dựa trên GUI, rồi sau đó mở rộng thành “multiplexer cho mọi công việc” khi toàn bộ công việc dần xoay quanh tác nhân
  • Dự án ngốn token nhiều nhất của tôi từ trước đến nay rất giống cái này; tôi vẫn chưa chắc đây có phải ý tưởng hay không, nhưng quá trình xây nó thì cực kỳ vui