v0.6.0
Điểm nhấn
0.6.0 giúp vòng làm việc với agent lập trình an toàn và nhanh hơn mà không chọn hay cấu hình agent thay bạn: checkpoint quanh mỗi lượt agent để xem và khôi phục, ghi chú trên diff được đưa vào shell của session, tuỳ chọn tự chạy kiểm thử khi một lượt kết thúc và đánh dấu file nhạy cảm trước khi land. Mọi thứ vẫn kết thúc bằng văn bản được gõ vào shell của chính bạn; không có gì tự nhấn Enter.
Mới
- Session checkpoint. Khi agent được nhận diện bắt đầu và kết thúc một lượt, crossweave ghi lại worktree thành git commit ẩn (
refs/crossweave/checkpoints/<session>/<n>, dùng index riêng; không di chuyển branch, HEAD hay index thật).cw checkpoint list|take|diff|restorevà hộp thoại Checkpoints… trong menu session cho biết thay đổi của từng lượt. Khôi phục mặc định là chạy thử, lưu một điểm quay lại và từ chối trước khi đụng đến dữ liệu có thể bị mất. Giữ 50 checkpoint mới nhất. - Ghi chú trên diff. Thêm ghi chú vào dòng trong pane Changes hoặc hộp thoại Checkpoints; ghi chú được dán vào shell session thành một bracketed paste, không bao giờ kèm Enter. Sau khi tải lại, ghi chú được ghép với dòng tương ứng; ghi chú không còn khớp sẽ được liệt kê riêng.
- Auto-check (Settings → Checks, mặc định tắt). Khi lượt agent kết thúc sau khi có thay đổi file,
converge.testCommandđã được bạn tin cậy chạy trong worktree đó, mỗi lần chỉ chạy một tác vụ tự động. Nếu thất bại, nút Send test failure to shell gửi nội dung đã che dữ liệu nhạy cảm và loại ký tự điều khiển, không gửi Enter. - Đánh dấu file nhạy cảm. File trong diff có tên gợi ý bí mật, file tự động hoá (CI, hook, container, cấu hình repository), migration hoặc manifest dependency sẽ có huy hiệu và dòng tóm tắt trong Changes, Checkpoints và Compare. Land sẽ hỏi trước với file giống bí mật và file tự động hoá, trong cùng hộp thoại hỏi về kiểm thử thất bại. Đánh giá chỉ dựa trên tên: có thể bỏ sót hoặc đánh dấu thừa.
- Vòng lặp gỡ lỗi AI (đã có trên
maintừ 2026-10-01):cw hooks install|remove,cw debug, pane Debug, màn hình Responses sau khi gửi từ composer,cw browser errors, trạng thái bao quát các pane chia đôi, bản xem trước cập nhật ngay trong lúc kéo thả. - Trang Settings gọn hơn. Không còn banner tin tức; mỗi mục có phần dẫn một dòng, thẻ đầu tiên có tiêu đề và phần giải thích dài được thu gọn trong Details; cột không còn dịch chuyển khi scrollbar xuất hiện. Notifications được gom nhóm, Checks giải thích cách hoạt động, còn hàng auto-run giữ các lưu ý an toàn trong tầm nhìn (chạy mã agent vừa viết, bên ngoài sandbox, cho mọi dự án, mặc định tắt).
- Thông báo desktop khi kiểm thử thất bại lúc cửa sổ không ở phía trước:
<session>: tests failedkèm mã thoát và thời gian, không kèm output. Mỗi lần chạy thất bại có một thông báo; bật/tắt bằng When tests fail trong Settings → Notifications, mặc định bật. - Tổng quan panel session: chip đếm trên dòng có từ hai pane trở lên liệt kê chúng để bạn chuyển tới đúng pane.
- Đợt gia cố thứ hai: chip
✗ setup, bộ lọc lịch sử giới hạn 500 dòng, thêm các dạng lỗi và token trongcw debug,converge.requireChecktuỳ chọn (kèmcw land --skip-check),cw checkdùng môi trường lease của session, Compare hiển thị hai phiên có xung đột hay không, Refine có thể huỷ, thông báo góc màn hình khi có bản phát hành mới hơn.
Đã sửa
- Lệnh
cwtrong session giờ kết nối đúng daemon sở hữu session đó. - Send test failure to shell làm sạch output trước khi che dữ liệu: khoá bị tách bằng ký tự zero-width, bidi override hoặc escape sequence từng có thể vượt qua bước che rồi ghép lại; BEL, backspace và DEL cũng bị loại bỏ.
- Thanh bên đọc lại trạng thái khi pane đóng; khoảng đệm pane không còn ảnh hưởng việc căn terminal; có thể bỏ chọn dấu tick của session đã dừng.
Nâng cấp
- Schema v18 (verdict của
cw checkđược giữ lại sau khi khởi động lại).cwcũ sẽ từ chối database v18; hãy cập nhật CLI và ứng dụng cùng lúc. - Các method mới (
checkpoint.*, automatic check) cần daemon cùng phiên bản. Khởi động lại daemon dự án sẽ kết thúc session đang chạy, nên hãy chọn lúc phù hợp. - Checkpoint ref xuất hiện trong
git log --allvà các công cụ liệt kê mọi ref; đây là orphan commit, không phải branch. - Auto-check là một quyết định về độ tin cậy. Tính năng này khiến mỗi lượt agent kết thúc sẽ chạy lệnh bạn đã tin cậy bằng
cw config trust, ở mọi dự án nơi bạn đã tin lệnh đó. Hãy tắt nếu bạn không muốn hành vi này. - Thông báo kiểm thử thất bại do cửa sổ ứng dụng gửi, nên chỉ các dự án đang mở trong cửa sổ mới tạo thông báo; nội dung test không bao giờ được hiển thị.
- Giới hạn và ý tưởng chưa triển khai:
docs/superpowers/specs/2026-10-10-{session-checkpoints,diff-comments,auto-check,sensitive-files}-known-limitations.mdvà2026-10-11-settings-polish-check-alert-known-limitations.md.
v0.5.0
Điểm nhấn
0.5.0 bổ sung cho Cockpit trang Settings theo phong cách của Cursor và Dashboard hiển thị mức dùng đĩa, bộ nhớ của các dự án và session — đồng thời đề xuất, chứ không tự thực hiện, những gì bạn có thể dừng hoặc xoá để máy nhẹ hơn.
Mới
- Settings được sắp xếp lại: điều hướng theo nhóm bằng biểu tượng, một cột căn giữa, thẻ bo góc theo từng dòng (tên và mô tả bên trái, điều khiển bên phải), công tắc bật/tắt thật và banner có thể đóng. Tìm kiếm và liên kết sâu dùng cùng từ ngữ như trên trang.
- Dashboard (Settings → Dashboard): theo từng dự án có session theo trạng thái, dung lượng worktree, bộ nhớ daemon và chính ứng dụng; hai biểu đồ (mỗi biểu đồ có dạng bảng); danh sách session có thể sắp xếp.
- Đề xuất giải phóng dung lượng: dọn session đã kết thúc, xoá session trống không hoạt động lâu, land hoặc xoá session không hoạt động lâu nhưng còn việc chưa land, dừng shell nhàn rỗi. Mỗi thao tác đều hỏi trước và nêu rõ nội dung sẽ mất; dọn dẹp không bao giờ gồm session mà
gcgiữ lại. - Ô lọc của thanh bên có nhãn Search và biểu tượng.
Đã sửa
- Khung của dự án đang chọn trên thanh bên không còn làm đổi kích thước và vị trí các dòng khi chuyển session hoặc dự án.
- Hộp “No open tabs” không còn chạm vào mép pane.
- Daemon đo dung lượng worktree ngoài event loop (
DiskTracker), nênnode_moduleslớn không làm daemon bị khựng.
Nâng cấp
- Dashboard cần daemon cùng phiên bản này. Dự án vẫn chạy daemon cũ sẽ hiện “restart its daemon to see its numbers”; khởi động lại sẽ kết thúc các session đang chạy của dự án, nên hãy chọn lúc phù hợp.
- Số liệu đĩa là mức tối thiểu (
≥) nếu phép đo chạm giới hạn thời gian. Xemdocs/superpowers/specs/2026-09-30-settings-dashboard-known-limitations.md.
v0.4.0
Điểm nhấn
0.4.0 là bản phát hành nơi Cockpit và shell có thể giao tiếp với nhau, giúp giám sát nhiều agent đang chạy đồng thời dễ hơn: session có thể báo đã xong, được kiểm thử trước khi land, so sánh hai lần thử, gửi một prompt đến nhiều session và khởi chạy cả bộ thiết lập chỉ bằng một thao tác.
Bản này cũng chủ động loại bỏ một số tính năng (xem “Đã loại bỏ”). Nếu bạn nâng cấp từ 0.3.0, hãy đọc phần đó trước.
Mới
Từ shell đến Cockpit
cw notify "tests written" [--kind done|ask]— hook của agent (hoặc chính bạn) báo cho Cockpit rằng session đã xong hoặc cần câu trả lời. Dấu ✓ (hoặc dòng màu hổ phách) xuất hiện; nội dung được đưa vào tooltip và thông báo desktop; lần gõ tiếp theo trong session sẽ xoá trạng thái đó. Hữu ích khi không thể suy đoán trạng thái chính xác chỉ bằng cách đọc màn hình. Ví dụ: hookStopcủa Claude Code chạycw notify "Claude finished".cw check [session]— chạyconverge.testCommandđã được bạn tin cậy của dự án trong worktree session; dòng trạng thái hiện✓ testshoặc✗ tests(mờ đi khi công việc đã thay đổi). Dùng cùng cổng xác thực tin cậy vớiland(cw config trust); lệnh chưa được tin cậy sẽ không chạy. Khi lần kiểm thử cuối thất bại, thao tác land session giờ sẽ hỏi trước.cw pane list|split|select|zoom|layout|move|sync|close|open— sắp xếp pane của Cockpit đang chạy từ shell. Lệnh chỉ đổi bố cục được thực hiện ngay; đóng pane, đồng bộ, mở trang hoặc file sẽ hỏi bạn.cw browser list|console|network|dom|shot|navigate|click|type|eval— agent đọc và điều khiển pane Browser, qua công tắc riêng cho mỗi pane Agent: Off / Read / Control (mặc định tắt). Điều khiển trang ngoài localhost vàevalở mọi nơi đều hỏi bạn cho từng lệnh. Văn bản đọc từ trang được đánh dấu là không đáng tin cậy. Hãy đọc ghi chú known limitations trước khi bật với trang đã đăng nhập.- Command bridge bên dưới: daemon chuyển yêu cầu đến Cockpit rồi trả lời; namespace là danh sách đóng, và mọi quyết định đều được đưa ra trong Cockpit, không phải daemon.
Trong cửa sổ ứng dụng
- Prompt composer (⌘⇧P, nút cây bút): viết một prompt, có thể dùng chương trình do bạn chỉ định để Refine (Settings → Prompt; chỉ trả về đề xuất), rồi gửi đến một hoặc nhiều session. Bản xem trước cho biết chính xác nội dung sẽ đi đâu; chỉ gửi phím Enter nếu bạn bật tùy chọn đó; prompt nhiều dòng không bao giờ bị gõ vào shell thường.
- Compare with another… (menu session): xem thay đổi của hai session cạnh nhau, đánh dấu các file cả hai cùng sửa và có nút Land cho mỗi bên.
- Session presets (Settings → Presets, rồi ⌘T): khởi chạy một launcher, worktree riêng hoặc dùng chung, các terminal bổ sung chạy từng lệnh, cùng pane Browser trên port của session — tất cả trong một thao tác.
- Session history (⌘⇧H,
cw session history): lưu những gì bạn đã land hoặc xoá, kể cả sau khi dòng session biến mất. - Pane kiểu tmux: nhấn
Ctrl-Arồi một phím, đồng bộ pane, chế độ sao chép kiểu vi, chuyển pane sang tab khác, preset bố cục, tab trước/sau. Lưu terminal tuỳ chọn (mặc định tắt) mở lại terminal bổ sung sau khi daemon khởi động lại. - Biểu tượng ứng dụng riêng (một hình đan nhỏ mang màu của các agent) thay cho biểu tượng mặc định của Electron.
- Trạng thái gọn hơn: shell không chạy gì thì không hiện gì; vòng xoay khi agent làm việc; ✓ khi agent đã xong mà bạn chưa xem; màu hổ phách khi agent cần hỏi. Hook thiết lập thất bại được hiện ngay trên dòng session.
Đã sửa
- Thanh trạng thái có thể bỏ sót session vừa tạo cùng lúc với session khác vì lần làm mới cũ, chậm hơn ghi đè dữ liệu mới.
- Shell thường hiện vòng xoay mỗi khi bạn gõ (echo của phím bạn tự gõ bị tính nhầm là hoạt động).
- Session trong thư mục dự án có thể kích hoạt cảnh báo đĩa sai “holds 36 GB”.
- Sửa thao tác thả file vào terminal, menu ngữ cảnh ở sát mép màn hình và một số lỗi chập chờn trong kiểm thử port đồng thời.
- Lease của session đã land được giải phóng sau khi teardown hoàn tất, không phải trước đó; daemon không nhận diện method được phân biệt với các lỗi RPC khác; worktree hỏng không còn làm treo bảng tổng quan các file được nhiều session cùng sửa.
Đã loại bỏ
- Nhập giọng nói trong ứng dụng. Dictation phù hợp hơn với công cụ hệ thống (Handy, Superwhisper, macOS Dictation) và hoạt động trong mọi ứng dụng. Phiên bản cuối có tính năng này là tag
v0.5-voice-input; Refine của composer vẫn hỗ trợ ý tưởng đó cho văn bản. - Trước đó (2026-09-27): collision guard, tiers / Safe Mode, agent adapter và launch flag, MCP server cùng OS sandbox (tag
v0.3-radar), và điều khiển trình duyệt từ xacw gateway(tagv0.4-remote-web). Ghi chú 0.3.0 mô tả sandbox hiện không còn tồn tại.
Nâng cấp
- Lần đầu daemon của dự án khởi động trên 0.4.0, schema database được nâng từ v14 lên v17 (terminal, mã thoát của setup hook, lịch sử session). Migration chỉ bổ sung.
- Khởi động lại daemon của từng dự án sau khi cài ứng dụng; nếu không,
cw notify,cw check,cw pane,cw browservà lịch sử sẽ được daemon cũ trả lời bằng “Unknown method”. Khởi động lại sẽ kết thúc các session đang chạy trong dự án đó. - File settings còn khối
voicevẫn tải được và sẽ bỏ khối đó ở lần lưu tiếp theo. - Ứng dụng được ký bằng chứng chỉ phát triển và chưa notarize (việc này cần tài khoản Apple Developer): lần đầu khởi chạy macOS có thể yêu cầu chọn Open Anyway.
Giới hạn đã biết
Mỗi tính năng có file *-known-limitations.md bên cạnh spec; bản tóm tắt một dòng nằm trong docs/superpowers/specs/2026-08-14-known-limitations-digest.md. Những điểm cần biết trước khi dựa vào tính năng: verdict từ cw check chỉ được nhớ trong bộ nhớ và kiểm thử worktree session, không phải bản merge; văn bản trang, ảnh chụp và kết quả eval từ cw browser chưa được che dữ liệu nhạy cảm; caller của command bridge được thiết kế là không xác thực (tiến trình cùng user có thể đăng ký trước); nhận diện agent chỉ là suy đoán từ process tree nên agent không nhận diện được sẽ được composer xem như shell thường.
v0.3.0
Điểm nhấn
Bản phát hành này có hai điểm chính: sandbox cấp hệ điều hành cho từng session, và crossweave Cockpit — ứng dụng desktop mà kiến trúc lõi đã hướng tới ngay từ đầu.
Mới — sandbox session cấp hệ điều hành (macOS)
Các tier của Safe Mode chặn những gì agent báo cáo về lệnh gọi công cụ, nên thao tác ghi qua shell, script hoặc tiến trình con có thể lọt qua. Giờ đây mỗi session chạy trong một ranh giới của hệ điều hành (seatbelt trên macOS), nơi thao tác ghi đó không chỉ bị chặn — mà không thể thực hiện:
- session có thể ghi trong worktree riêng, thư mục tạm riêng, cache và trạng thái agent riêng — không nơi nào khác: không phải checkout chính, worktree của session khác,
$HOME,.git/confighay git hook; git commitvẫn hoạt động, vì profile chỉ mở đúng các dạng object/ref/log mà commit ghi vào.gitdùng chung của linked worktree;- mạng bị tắt trừ khi workspace cho phép.
// crossweave.config.json
{ "sandbox": { "enabled": true, "network": false } }
enabled mặc định là true. Trên nền tảng không có provider (Linux, Windows), hoặc với session --no-worktree dùng chung checkout, session chạy không bị giới hạn và daemon ghi rõ điều đó trong log — không bao giờ âm thầm bỏ qua ranh giới.
Linux (bubblewrap) đã có thiết kế nhưng chưa được triển khai; xem docs/superpowers/specs/2026-09-18-os-sandbox-design.md.
Mới — crossweave Cockpit (Electron, macOS arm64)
Ứng dụng desktop mỏng dùng cùng daemon: các pane xterm thật, thanh theo dõi chú ý (đang chạy / cần bạn / bị chặn / có thể land) và thao tác land từ giao diện chỉ khi có đủ bằng chứng. Có thể tự build từ mã nguồn (cd apps/cockpit && bun run dist:mac); đính kèm bộ cài vào release là bước tiếp theo. CLI TUI (cw tui) vẫn là bảng điều khiển đa nền tảng.
Mới — cw session start và nhãn tier chính xác
cw session start <session>— khởi chạy agent mà không attach.session newmột lần nữa chỉ tạo session (trước đây lệnh còn chạy agent, và thất bại nếu binary không có trongPATH).- Mỗi tier hiển thị đúng phạm vi nó bao phủ —
T2 · Edit|Write,T3 · nothing— thay vì chỉ ghi tier khiến người dùng tưởng đó là lớp bảo vệ. Bash chỉ được theo dõi sau khi chạy và mang tính tham khảo: trạng thái blocked chỉ dành cho thao tác ghi mà daemon thực sự đánh giá. - Session đã dừng không còn hiện xanh là “ready” — huy hiệu giờ phản ánh agent có thực sự đang chạy hay không.
cursor-print(T3) chạycursor-agent --print --output-format stream-json.--agent cursor(T1/ACP) giờ báo lỗi ngay với thông điệp rõ ràng: các bảncursor-agenthiện tại đã bỏ ACP, trước đây khiến lệnh treo im lặng.
Đã sửa — độ tin cậy của land và lease
- Land được ràng buộc bằng bằng chứng: kết quả trial gắn với commit nền mà nó kiểm thử và được chạy lại khi commit nền thay đổi, vì vậy
cw land alldừng với “nothing to land” thay vì land dựa trên bằng chứng cũ.--forcevẫn chủ động ghi đè được. - Squash merge tạo ra diff staged rỗng được xem là no-op thành công, không còn báo lỗi giả
LAND_MERGE_FAILED. ports.namedkhông thể ghi đèPORT, và cả khối port được kiểm tra trước khi cấp lease.cw session rm/kill --rm-worktreegiải phóng thư mục cache đã cấp lease và database được sao chép trước khi xoá bản ghi.cw session listhiển thị tóm tắt lease port/cache/db.- ACP adapter hết thời gian chờ nếu handshake không hoàn tất, thay vì để session im lặng và chết nhưng vẫn hiện
running.
Nâng cấp
Sandbox được bật mặc định. Nếu quy trình của bạn thực sự cần ghi ra ngoài worktree session (cache build dùng chung, cấu hình công cụ toàn cục), hãy đặt sandbox.enabled: false cho repo đó hoặc bật mạng bằng sandbox.network: true — log daemon sẽ nêu session và lý do mỗi khi không áp dụng ranh giới.
Bộ cài và checksum được đính kèm bên dưới. install.sh tự chọn binary phù hợp với nền tảng của bạn.