Getting started
Hướng dẫn này vừa được cập nhật và bản tiếng Việt chưa kịp theo, nên bạn đang xem bản tiếng Anh mới nhất.
SpaceVibe Deck is a desktop terminal for running several AI agent CLIs side by side. Each agent runs in its own terminal pane; Deck shows which one is working, which one is asking for you, and what each one just said, and brings you back to the pane that needs you.
Install
Download the current release from github.com/mxrsv/spacevibe-deck/releases/latest.
- macOS, Apple Silicon (arm64). The
.dmgis signed and notarized. Intel Macs are not served. - Windows, x64. The
-setup.exeinstaller is unsigned, so SmartScreen warns on first install. It installs per user, without elevation. Windows ARM is not served, and the Windows build has not been verified on real hardware.
Deck checks for updates on its own, tells you when one is ready, and lets you choose when to download, install and relaunch. See Settings → About.
If you ran the older Tauri-based Deck: its update check fails, and the last published Tauri
release does not contain the migration notice. Download and install the current Electron
release by hand using the link above. Settings and workspaces do not migrate; it is a clean
install. Your Tauri data remains in ~/Library/Application Support/dev.spacevibe.deck on
macOS or %APPDATA%\dev.spacevibe.deck on Windows. Electron uses a separate
SpaceVibe Deck data folder; see where Deck keeps its data.
First launch
Deck opens on the Open board, the start surface. Beside the folder bar sit three buttons for the most common ways to start: Open folder…, Clone repository… and Create worktree…. The folder bar's menu holds Create workspace…, Resume a session… and Manage agents above your recent folders. The board offers:
- Open workspace… — pick a folder. A workspace is a local folder that becomes the working root for a tab.
- Recent workspaces — selecting a folder fills the workspace and agent choices. Review the selected agent, then choose Open agent to launch it, or double-click the folder to open it at once with its remembered agent (a terminal when no agent can run). A folder that has disappeared from disk cannot be opened.
- Drop files or folders onto Deck or the Open board to save them as workspaces. A file adds its containing folder, and the first folder is selected. Nothing starts until you open an agent; dropping onto a terminal pane still types the path.
- Clone repository… — paste a GitHub repository (
owner/repo, an HTTPS or SSH URL), choose where it goes, and Deck clones it with your own Git credentials and adds it as a workspace. Progress shows in the form and you can cancel; closing the form does not stop the clone. It needs Git installed, clones the default branch with its full history, and leaves submodules and dependencies alone. The same entry is on the File menu. Starting an agent in the new workspace stays a separate step. - Create worktree… — for a git repository, create a new git worktree on a new branch and open it. Worktree and branch are one choice: Deck never offers a branch without its worktree.
- Resume a previous session… — the session history, listing Claude Code and Codex conversations Deck found in those tools' own local logs; a row opens a tab in that session's directory and types the CLI's exact resume command.
When Deck quit with tabs open, the board shows Last session at the top. Reopen brings back those tabs and resumes each agent conversation it can resolve; dismiss it, or open anything else, and Deck starts clean. Scrollback, unsaved file edits and window placement are not restored.
Launch an agent
Press ⌘T (Windows: Ctrl+Shift+T) for the active checkout, or Agent above the Agent Rail (to start one in a checkout that has nothing open, press its name). If you are working in that checkout, the new agent opens beside your current pane; otherwise it opens in a new space there, and the launcher says which before you press Run. Right-click a checkout for the menu, which lists your quick agents; choose one to launch it in that checkout using the command shown in Settings → Agents. Open shell opens a plain shell in a new tab, and New split here opens one beside the current tab. The ⌘T menu also offers Open another project… to choose another workspace (checkout actions).
The window
- Agent Rail (left column). One cluster per project, one row per agent pane. The row shows what the agent last said, or its name if it has said nothing yet. A dot on the agent's logo marks state: red for failed, yellow for asking you, grey once a run is done; a working agent shows a small spinning dot pattern instead. Only the agents that need you keep their logo in full colour, so those rows stand out as you scan the column. Clicking a row focuses that pane. Each row's ✕ closes the thing it names: an agent row closes that pane, a project header closes every tab of that repository. Drag a project header to reorder clusters.
- Stage (centre). The terminal panes of the active tab, split as you like. Above them, one strip of chips: terminal tabs, open documents and the browser tab share one shape and are ordered by when they were opened.
- Side panel (right, ⌘⇧J). Three tabs: File explorer (⌘⇧B), Token usage (⌘⇧U) and Session history (⌘⇧Y).
- Browser tab (⌘⇧I). A page beside your terminals, opening on the home address from Settings → Browser.
- Dev servers (macOS, at the end of the tab strip). A chip counts the servers running in the project you are on; press it for the list. It finds servers started from Deck or from any other terminal or editor. Each one can be opened in Deck or in your browser, or copied. The chip does not appear where Deck cannot look for servers.
Drag the seam between the rail and the stage to resize it. Drag it past its floor, press ⌘B or use the toggle beside the traffic lights to collapse the rail to a column of project avatars. A badge on an avatar counts the agents waiting on you, and pressing one opens that project's sessions beside the column. ⌘B or the toggle at the start of the tab strip expands it again.
Panes and tabs
- Split with ⌘D (side by side) or ⌘⇧D (stacked). Move between panes with ⌘⌥ arrows; swap two panes with ⌘⌥⇧ arrows.
- A plain shell pane in a split tab has a header with your pinned agents' logos. Press one to run that agent in the pane's shell. The header also holds the split, expand and close buttons.
- ⌘E expands the focused pane; ⌘⇧Enter zooms it over the whole tab.
- ⌘W closes the focused pane; ⌘⇧W closes the whole tab. Deck asks first if a process other than an idle shell is running there.
- ⌘⇧T reopens the last closed tab with fresh shells at the same directories.
- ⌘⇧M moves the focused pane into its own window.
- ⌘1–⌘8 select a chip by position; ⌘9 the last one; ⌘⇧] / ⌘⇧[ cycle.
- ⌘⇧A jumps to the pane that most needs you.
Files
Open the file explorer (⌘⇧B) to browse the workspace. Opening a file splits the sidebar: the list stays against the right edge and the document appears to its left, while the terminal remains visible. Use Open files to return to a retained document; unsaved files carry a dot. With the document focused, ⌘S (Windows: Ctrl+S) saves and ⌘W closes it. Markdown opens rendered; ⌘⇧V flips it to source. See the file panel.
The eye button on the folder's row shows or hides dot-files such as .env and .github. The
tree also hides what the repository's .gitignore rules ignore, such as node_modules or build
output, and the funnel button next to the eye shows those entries dimmed. Outside a git
repository node_modules, dist and target count as ignored. .git is always hidden. The row of the document beside the list is highlighted,
and switching documents opens the folders above it and scrolls it into view.
In a git checkout, switch the explorer from Files to Changes to see what has changed since the last commit: each file with its status and added and removed lines. Click one to open it.
If tracked files require executable Git filters, such as Git LFS, Changes reports that it cannot read them safely; use your usual Git client for those files. Submodule commit changes are shown, but file changes inside a submodule are not scanned. See the Changes reader.
Markdown diagrams do not load external HTTP(S) images in the installed app. The image policy does not affect the browser panel.
⌘+click (Windows: Ctrl+click) on a path an agent prints opens it. A path inside a workspace this window has open lands in Deck's own editor at that line; anything else goes to the app chosen in Settings → Links & editor. On Windows only the in-Deck half works in this release.
Usage and privacy
The Token usage tab reads Claude Code's and Codex's own local session logs and groups tokens and estimated cost by agent and day. It needs no account.
Starting with 1.1.0, Deck sends cumulative usage snapshots for each day. Analytics are
always on, with no opt-out, beginning on the first launch after upgrading; 1.0.0 and the
older Tauri releases send no analytics. Each snapshot contains a fresh random id for that day,
Deck's version, platform and architecture, launch counts per built-in agent, how often the
browser, explorer and usage surfaces were opened, the day's highest tab and pane counts,
and whether sessions were restored. It never contains code, paths, prompts, file names,
repository names or a permanent identifier.
Settings → Privacy states exactly what is sent and has no switch.
The full field list is
src/telemetry/payload.ts.
Agent
Agent là một tool AI chạy trên dòng lệnh mà Deck mở trong một pane terminal. Deck không thay cách làm việc riêng của tool đó: nó chạy lệnh trong một shell thật, theo dõi pane, và đọc log phiên làm việc của chính tool đó nếu biết định dạng.
Agent có sẵn
Deck nhận ra sẵn mười hai agent. Mỗi agent đi kèm một lệnh khởi chạy, và lệnh đó hiện rõ trên màn hình trong Settings → Agents chứ không giấu sau một cái tên.
| Agent | Lệnh khởi chạy |
|---|---|
| Claude Code | claude --dangerously-skip-permissions |
| Codex | codex --dangerously-bypass-approvals-and-sandbox -c tui.animations=false |
| OpenCode | opencode |
| Antigravity | agy --dangerously-skip-permissions |
| Gemini CLI | gemini --yolo |
| GitHub Copilot | copilot |
| Amp | amp |
| Kimi Code | kimi |
| Kiro | kiro-cli |
| Grok Build | grok |
| Mistral Vibe | vibe |
| Droid | droid |
-c tui.animations=false của Codex tắt hiệu ứng động lúc rảnh. Khi chờ, Codex cứ vẽ lại ô nhập
prompt liên tục, Deck sẽ hiểu nhầm là agent vẫn đang làm, nên dòng của nó hiện vòng xoay "đang
làm" cả trước khi bạn gõ gì lẫn sau khi câu trả lời đã xong. Nếu bạn tự viết lệnh Codex, nhớ giữ
flag đó, hoặc đặt animations = false dưới [tui] trong ~/.codex/config.toml để tắt hiệu ứng
ở mọi terminal.
Một số lệnh ở đây bỏ qua bước hỏi xác nhận của chính tool. Đó là chủ đích của Deck, vốn sinh ra
để chạy những agent làm việc liên tục, và cũng là lý do mọi lệnh đều được ghi rõ ra và agent nào
cũng tắt được. OpenCode để trần vì chế độ --auto của nó phải bật theo từng phiên. Bảy agent
được thêm sau Gemini CLI cũng để trần: Deck chưa đọc danh sách flag của chúng, nên không có nút
chỉnh flag, model hay effort cho chúng (trừ mức tự chủ và spec mode của Droid), và khi resume thì
chạy lại lệnh trần.
Cho tới khi bạn chọn quick agent, quick launch và menu của checkout sẽ đưa ra các agent đã cài: các agent trên theo đúng thứ tự này, rồi tới agent bạn tự thêm.
Settings → Agents
Danh sách được chia theo những gì Deck tìm thấy trong PATH của login shell:
- Installed — các agent đã tìm thấy file chạy. Refresh tìm lại ngay, kể cả agent bạn tự thêm.
- Available to install — phần còn lại.
Mỗi agent là một dòng, hiện tên và lệnh dùng để chạy nó:
- on / off. Tắt một agent là nó biến khỏi các lựa chọn khởi chạy; agent có sẵn thì không xoá được, vì lần dò tiếp theo Deck lại tìm thấy nó.
- Configure (mũi tên) mở phần cài đặt của agent ngay dưới dòng đó:
- Command — lệnh khởi chạy đầy đủ hiện ở đầu tiên. Sửa thẳng vào đó hoặc chỉnh các nút trong Launch; cả hai cùng sửa một lệnh. Rời khỏi ô hoặc bấm Enter là lưu nếu lệnh hợp lệ; lệnh không hợp lệ vẫn nằm trong ô kèm thông báo lỗi. Mũi tên reset cạnh một lệnh tự viết sẽ xoá preset đó và quay về lệnh đã lưu tiếp theo, hoặc lệnh có sẵn của Deck.
- Launch — các công tắc và lựa chọn mà từng CLI hỗ trợ. Có hai, ba lựa chọn thì chúng nằm cạnh nhau, kể cả CLI default; danh sách dài hơn thì dùng menu.
- Model — Default model, Default effort và Additional models xuất hiện ở các agent đã cài mà CLI của chúng nhận các flag đó.
- Integrations → Signals — với Claude Code, Codex và opencode: dùng trạng thái do chính
agent báo thay cho ước đoán của Deck, áp dụng cho phiên mới. Mặc định bật cho cả ba. Với
Claude Code và Codex, Signals cài hook của Deck vào settings của chúng; còn opencode thì nạp
một plugin nhỏ của Deck và không ghi gì vào config của nó. Tính năng này cũng áp dụng cho
lệnh bạn tự gõ trong Deck. Với Codex, Deck mở các phiên terminal mà không dùng background
service dùng chung của Codex để trạng thái về đúng pane, nên các phiên đó không hiện trong
codex agents. Với opencode,OPENCODE_CONFIG_DIRmà bạn tự đặt sẽ không được dùng bên trong terminal của Deck. Tắt tính năng này là gỡ hook của bản cài này. Terminal mở từ trước khi cài tích hợp thì cần mở lại.
- Với agent nằm trong Available to install, chọn Configure launch để chuẩn bị lệnh trước khi cài. Phần chỉnh model chỉ hiện sau khi Deck phát hiện ra CLI.
- Add command. Lưu thêm một dòng lệnh cho agent. Lệnh đầu tiên lưu cho một agent cũng thành lệnh chính của nó; các lệnh sau đứng sau làm phương án cho mũi tên reset ở trên. Deck nhận ra agent từ chữ đầu tiên của lệnh.
Lệnh bạn viết được gõ y nguyên vào một shell tương tác đang chạy, nên chỉ được dùng chữ cái, chữ
số, dấu cách và . , : @ + = _ - /. Pipe, &&, ;, dấu nháy, redirect, biến và xuống dòng đều
bị từ chối, kèm lời giải thích. Muốn dùng pipeline thì đặt nó trong một wrapper script và khai
báo script đó như một agent tự thêm. Các lệnh cài đặt Deck đưa sẵn là lệnh chính chủ của nhà cung
cấp nên không bị giới hạn này.
Cài agent còn thiếu
Agent có sẵn mà Deck không tìm thấy sẽ có nút Install trên dòng của nó trong
Settings → Quick agents, và hiện thành một ô mờ trong launcher, xếp sau các agent chạy được. Rê
chuột lên để xem chính xác lệnh sẽ chạy. Nút này mở một terminal tên Install <Agent> trong một
space mới (ở thư mục home nếu chưa mở thư mục nào), gõ lệnh cài của nhà cung cấp và chạy luôn ở
đó, nên bạn thấy mọi câu hỏi và trả lời ngay trong terminal đó. Bấm Install lần nữa khi
terminal đó còn mở sẽ đưa bạn quay lại nó.
Deck không ngồi chờ bộ cài chạy xong. Nó tìm lại khi bạn quay về cửa sổ Deck, mở một danh sách
agent, hoặc bấm Refresh, và lúc đó dòng của agent chuyển sang Installed mà không cần khởi
động lại. Agent cài theo cách này cũng được thêm vào quick agent của bạn. Terminal đã mở từ trước
vẫn giữ PATH lúc nó khởi động, nên hãy chạy agent vừa cài từ một terminal mới. Agent nào có lệnh
cài mà Deck chưa kiểm chứng thì hiện nút Get, bấm vào sẽ mở website của nó. Install và Get chỉ
xuất hiện với agent có sẵn đang bật, không bao giờ với agent tự thêm, và chỉ có trong app
Electron.
Quick agent
Quick agent là các ô trong quick launcher và các dòng trong menu của checkout. Bạn chọn chúng ở Settings → Agents → Quick agents; launcher không có danh sách riêng để sửa. Lựa chọn của bạn được lưu lại; agent nào bạn tắt hoặc gỡ cài sẽ không hiện trong menu nữa và cũng không bị thay bằng agent khác.
Rê chuột hoặc focus vào một ô để xem chính xác lệnh nó sẽ gõ, thư mục, và nó sẽ mở ở đâu. Chip Default profile dưới các ô cho bạn chọn một lệnh khởi chạy khác của agent cho lần này; rời launcher là lựa chọn đó bị bỏ, còn Edit profiles in Settings… mở chỗ viết các lệnh. Nếu một agent không chạy được, launcher sẽ nói lý do và cho bạn Retry.
Open shell trong menu của checkout mở một tab terminal mới trong Deck ngay tại checkout đó. Dùng New split here nếu muốn một pane nằm cạnh tab hiện có.
Agent tự thêm
Trong Declared, bạn thêm được bất kỳ CLI nào bằng một cái tên và lệnh sẽ gõ vào mỗi pane. Bấm
vào tên hoặc lệnh để sửa; ✕ để xoá. Agent đã khai báo vẫn nằm trong danh sách khi file chạy của
nó không có trong PATH, để một tool chưa cài hiện là "thiếu" chứ không phải là mất dữ liệu.
Agent tự thêm hiện tên và trạng thái trên rail nhưng không có "câu gần nhất": Deck chỉ đọc log phiên làm việc của những agent có sẵn mà nó biết.
Deck biết gì về từng agent
| Agent | Câu gần nhất trên rail | Resume khi mở lại |
|---|---|---|
| Claude Code | có | đúng session id |
| Codex | có | đúng session id |
| OpenCode | có | đúng session id |
| Gemini CLI | không | --resume latest |
| Antigravity | không | cố tìm session id, không được thì --continue |
| Droid | không | --resume --last cho thư mục đó |
| Các agent có sẵn khác | không | chạy lại lệnh trần |
| Tự thêm | không | chạy lại nguyên lệnh đã khai báo |
Trạng thái đang làm, cần bạn và lỗi lấy từ chính terminal (tiếng bell, thông báo và tín hiệu tiến độ mà tool phát ra, cộng với việc output chạy liên tục), nên dùng được với mọi agent. Khi Deck đoán trạng thái cần bạn hoặc đã xong dựa vào nhịp output thay vì do agent báo, tooltip của dòng đó ghi (inferred). Khi bật Signals (mặc định là bật), trạng thái của phiên mới là do chính agent báo, và trạng thái cần bạn còn nói được nó đang chờ gì, ví dụ một câu hỏi xin quyền. Agent có tiến trình đã rời khỏi pane sẽ hiện là ended.
Mức dùng token
Tab Token usage (⌘⇧U) đọc log phiên làm việc trên máy của Claude Code và Codex, kể cả log của sub-agent trong Claude Code, rồi gom số token và chi phí ước tính theo agent và theo ngày. Các mốc thời gian tính theo ngày lịch ở máy bạn: Today, 7 days, 30 days, All. Chi phí dùng bảng giá chụp sẵn đi kèm Deck.
Details ở đầu tab mở một trang Usage lớn hơn phủ lên vùng chính, rail vẫn nhìn thấy được (⌘⇧R, hoặc View → Usage Details). Back hoặc Escape đưa bạn về chỗ cũ; chọn một tab hay một agent trên rail sẽ đóng trang này và chuyển tới đó.
Phím tắt
Mỗi phím tắt là một thao tác có tên riêng, và trong Settings → Shortcuts bạn có thể gán phím khác cho bất kỳ thao tác nào. Các bảng dưới đây là phím mặc định khi cài Deck.
Trên macOS, ⌘C và ⌘V đơn thuần vẫn là Copy và Paste của hệ thống. Trên Windows, các tổ hợp Ctrl+ đơn thuần được để lại cho shell và agent, trừ hai trường hợp: Ctrl+V để dán, còn Ctrl+C sẽ sao chép khi terminal đang có vùng chọn, không thì vẫn ngắt chương trình đang chạy như bình thường.
Mở và di chuyển
| Thao tác | macOS | Windows |
|---|---|---|
| Chạy một agent | ⌘T | Ctrl+Shift+T |
| Nhảy tới pane đang cần bạn | ⌘⇧A | Ctrl+Shift+A |
| Mission Control | ⌘⇧O | Ctrl+Shift+O |
| Space hoặc chip kế tiếp / trước | ⌘⇧] / ⌘⇧[ | Ctrl+Tab / Ctrl+Shift+Tab |
| Chọn space hoặc chip 1–8 | ⌘1 … ⌘8 | Ctrl+1 … Ctrl+8 |
| Chọn chip cuối cùng | ⌘9 | Ctrl+9 |
| Mở lại tab vừa đóng | ⌘⇧T | Ctrl+Alt+Shift+T |
Mỗi tab terminal là một space, hiện trên dải tab thành một dấu nhỏ sau project, branch, space và phiên hiện tại. Dải này chỉ hiện các space của project đang mở; muốn sang project khác thì đi từ Agent Rail. Các con số đếm những space đó trước, rồi tới tài liệu đang mở và tab trình duyệt. Vuốt ngang hai ngón trên vùng terminal cũng chuyển sang space bên cạnh.
⌘⇧O mở Mission Control. Rê chuột lên một space ở phía trên để xem các pane của nó, bấm vào một pane để tới thẳng đó, hoặc bấm Esc để quay lại mà không đổi gì. Trong lúc nó mở, không có gì bị dừng hay khởi động lại.
Pane
| Thao tác | macOS | Windows |
|---|---|---|
| Chia cạnh nhau | ⌘D | Ctrl+Shift+D |
| Chia chồng lên nhau | ⌘⇧D | Ctrl+Alt+Shift+D |
| Đóng pane | ⌘W | Ctrl+Shift+W |
| Đóng tab | ⌘⇧W | Ctrl+Alt+Shift+W |
| Chuyển sang pane kế tiếp / trước | ⌘] / ⌘[ | Ctrl+Alt+] / Ctrl+Alt+[ |
| Chuyển sang pane trái / phải / trên / dưới | ⌘⌥ + mũi tên | Ctrl+Alt+mũi tên |
| Đổi chỗ với pane bên cạnh | ⌘⌥⇧ + mũi tên | Ctrl+Alt+Shift+mũi tên |
| Mở rộng pane đang chọn | ⌘E | Ctrl+Shift+E |
| Phóng to pane phủ cả tab | ⌘⇧Enter | Ctrl+Shift+Enter |
| Tách pane ra cửa sổ mới | ⌘⇧M | Ctrl+Shift+M |
Terminal
| Thao tác | macOS | Windows |
|---|---|---|
| Tìm trong scrollback | ⌘F | Ctrl+Shift+F |
| Kết quả tiếp theo / trước | ⌘G / ⌘⇧G | F3 / Shift+F3 |
| Xoá scrollback (không hoàn tác) | ⌘K | Ctrl+Shift+K |
| Sao chép vùng chọn | ⌘C | Ctrl+Shift+C, hoặc Ctrl+C khi đang chọn |
| Dán | ⌘V | Ctrl+V, Ctrl+Shift+V, Shift+Insert |
| Sao chép thư mục đang làm việc | ⌘⇧C | Ctrl+Alt+Shift+C |
| Phóng to / thu nhỏ / về mặc định | ⌘= / ⌘- / ⌘0 | Ctrl+= / Ctrl+- / Ctrl+0 |
| Cuộn lên / xuống một trang | ⇧PageUp / ⇧PageDown | Shift+PageUp / Shift+PageDown |
| Cuộn lên đầu / xuống cuối | ⇧Home / ⇧End | Shift+Home / Shift+End |
Các khu vực
| Thao tác | macOS | Windows |
|---|---|---|
| Bật / tắt sidebar | ⌘B | Ctrl+Shift+L |
| Bật / tắt side panel | ⌘⇧J | Ctrl+Shift+J |
| File explorer | ⌘⇧B | Ctrl+Shift+B |
| Token usage | ⌘⇧U | Ctrl+Shift+U |
| Trang chi tiết mức dùng | ⌘⇧R | Ctrl+Shift+R |
| Session history | ⌘⇧Y | Ctrl+Shift+Y |
| Tab trình duyệt | ⌘⇧I | Ctrl+Shift+I |
| Prompt Board | ⌘⇧P | Ctrl+Shift+P |
| Lưu tài liệu đang mở | ⌘S | Ctrl+S |
| Markdown: bản render ↔ mã nguồn | ⌘⇧V | — |
| Settings | ⌘, | Ctrl+, |
Layout preset
| Thao tác | macOS | Windows |
|---|---|---|
| Tạo layout preset mới từ đầu | ⌘⇧N | Ctrl+Alt+Shift+N |
| Lưu layout hiện tại thành preset | ⌘⇧S | Ctrl+Alt+Shift+S |
Preset là một kiểu chia pane có đặt tên, có thể kèm thư mục riêng cho từng pane. Preset tạo mới và ghi đè được, nhưng không đổi tên hay xoá được từ trong app.
Lưu ý
- Phím tắt nào không làm được gì ở chỗ bạn đang đứng thì sẽ không nuốt phím. Ví dụ, bấm một tổ hợp dành cho pane khi đang ở trong một tài liệu thì phím đó sẽ tới tài liệu.
- Trên macOS, các tổ hợp gắn với menu như Find và Clear Buffer bị thanh menu nhận trước khi tài liệu kịp thấy.
- Tổ hợp có phím ngoặc vuông và phím số được gán theo vị trí phím vật lý, nên vẫn dùng được với bàn phím không phải kiểu US.
- Trên Windows, Ctrl+S lưu tài liệu đang mở, nhưng chỉ khi panel của nó đang giữ focus bàn phím. Ở trên terminal thì phím đó vẫn đi vào terminal như trước giờ.
- ⌘⇧V không có phím tương ứng trên Windows vì Ctrl+Shift+V là dán. Thay vào đó, dùng nút chuyển trên khung tài liệu.
Cài đặt
Mở Settings bằng ⌘, (Windows: Ctrl+,). Settings phủ kín cả cửa sổ; thoát ra bằng Back
hoặc Escape. Cài đặt được lưu theo từng máy, trong thư mục dữ liệu của Deck, ở file
settings.json, và áp dụng cho mọi cửa sổ Deck.
Appearance
Appearance gom chế độ màu, chữ trong terminal, khung giao diện của workspace và phần nhận diện. Bản xem trước (chỉ để xem) cập nhật ngay khi bạn chọn; nó không mở phiên terminal nào cả.
- Theme — Light hoặc Dark. Mặc định là Dark. Ở Dark, terminal là lớp nền sâu nhất trong cửa sổ, còn khung giao diện nổi lên phía trên.
- Font and size — dùng chung cho terminal và editor có sẵn (cỡ chữ mặc định là 13).
- Tab bar position — dải chip nằm trong sidebar (mặc định) hoặc chạy dọc phía trên.
- Show pane bar — thanh tên bên trong mỗi pane đã chia (mặc định tắt).
- Show status bar — thanh dưới cùng hiện branch, đường dẫn và thông tin cửa sổ (mặc định tắt).
Browser
- Home address — trang mà tab trình duyệt mở ra khi không có trang cũ nào để khôi phục (mặc
định
http://localhost:3000).
Terminal
- Scrollback — số dòng giữ lại cho mỗi pane: 1,000 / 5,000 / 10,000 (mặc định) / 50,000 / 100,000.
Agents
Danh sách agent: các agent có sẵn đã cài và chưa cài, lệnh khởi chạy của từng agent, công tắc bật tắt, lựa chọn cho quick launch, và các agent bạn tự khai báo. Xem Agent.
Links & editor
- Open with — app dùng để mở một đường dẫn khi bạn ⌘+click vào nó mà đường dẫn đó không thuộc workspace nào đang mở. Danh sách gồm những app Deck tìm thấy đã cài trong số VS Code, Cursor, Zed, GitHub Desktop, GitKraken, Finder, Terminal, iTerm2, Ghostty và Hyper. Đường dẫn nằm trong một workspace đang mở thì luôn mở trong editor của Deck. Deck dò app theo kiểu app bundle của macOS, nên trên Windows bản này chưa gợi ý được app ngoài nào.
Shortcuts
Mọi thao tác kèm phím hiện tại của nó. Bấm vào một dòng để ghi tổ hợp phím mới; nếu trùng với thao tác khác thì dòng đó sẽ báo ra, còn nút reset đưa về phím mặc định. Trong lúc ghi phím, các phím tắt của menu tạm ngưng để phím bạn bấm tới được ô ghi.
Notifications
- Agent notifications — mặc định bật. Khi cửa sổ nằm ở nền, Deck thông báo khi agent làm xong, hỏi bạn hoặc chờ duyệt, hay gặp lỗi. Bấm thông báo để quay về đúng pane đó. Nếu pane đã đóng hoặc chuyển sang cửa sổ khác, thông báo mở lại cửa sổ ban đầu. Bản cập nhật này bật lại một lần nếu trước đó bạn đã tắt; nếu bạn tắt sau đó, Deck sẽ nhớ. Xem thông báo của agent.
- Open System Settings mở phần thông báo của macOS hoặc Windows, nơi hệ điều hành kiểm soát việc hiện thông báo. Trên macOS, cho phép thông báo khi lời nhắc đầu tiên xuất hiện; dùng công tắc Badges của hệ thống để kiểm soát số trên Dock. Xem cài đặt thông báo.
- Dock badge (macOS) — tổng số N need you của mọi cửa sổ đang mở, gồm cả pane đã xong mà bạn chưa xem. Số này biến mất khi về 0 và không phụ thuộc công tắc thông báo trong Deck. Windows có thông báo nhưng không có Dock badge. Xem số pane cần bạn.
About
Phiên bản Deck, Check for updates và Release notes. Bản cập nhật không bao giờ tự tải hay tự cài khi bạn chưa chọn; Deck sẽ hỏi trước khi đóng pane để cài. Lần xác nhận đó tính cả công việc đang chạy và file chưa lưu trong mọi cửa sổ đang mở, theo kiểm tra trước khi cập nhật.
Privacy
Từ bản 1.1.0, analytics về mức sử dụng luôn bật, không có cách tắt. Trang này nói rõ chính xác những gì được gửi và có link tới thông báo về quyền riêng tư; trang không có công tắc nào. Các bản tổng hợp chỉ chứa số liệu sử dụng theo ngày, không bao giờ có code, đường dẫn, prompt hay output của agent. Bản 1.0.0 và các bản Tauri cũ hơn không gửi analytics.
Trạng thái analytics và các bộ đếm trong ngày chưa gửi nằm ở telemetry.json trong thư mục dữ
liệu của Deck, tách riêng khỏi settings.json. Nếu một bản build dành cho phát triển từng lưu lựa
chọn tắt thì khi mở lại, analytics sẽ được bật. Nếu không đọc được telemetry.json, Deck đếm tạm
trong bộ nhớ cho lần chạy đó và để nguyên file; số liệu của ngày hôm đó sẽ mất khi bạn thoát.
Tìm kiếm và dấu đã đổi
Ô ở đầu danh sách Settings tìm một mục cài đặt theo đúng tên in trên dòng của nó. Mỗi trang hiện số kết quả khớp trong trang đó, và các dòng khớp được tô sáng. Esc xoá ô tìm kiếm trước, rồi mới đóng Settings.
Dấu chấm sau tên một mục cài đặt nghĩa là nó đang khác giá trị mặc định. Dấu chấm đánh dấu đúng những gì nút reset page của trang đó sẽ khôi phục: các tuỳ chọn. Agent đã khai báo, cấu hình khởi chạy và layout có dòng riêng trong Reset, nên chúng không có dấu chấm.
Reset
Trang Reset có ba dòng: tuỳ chọn, layout, và agent tự thêm kèm cấu hình khởi chạy cùng mẫu prompt. Dòng nào cũng hỏi trước, liệt kê những cài đặt sẽ bị đổi và những gì được giữ lại. Một dòng sẽ bị mờ đi khi trong nhóm của nó không có gì khác mặc định. Các trang có chứa tuỳ chọn cũng hiện số mục đang khác mặc định, kèm nút reset page chỉ tác động lên đúng trang đó. Reset agent và mẫu prompt cũng bỏ ghim các agent đã xoá khỏi quick launch. Logo tự đặt, workspace và log phiên làm việc của chính các agent vẫn được giữ nguyên.
Deck lưu dữ liệu ở đâu
| File hoặc thư mục | Nội dung |
|---|---|
settings.json |
Tuỳ chọn của app; trạng thái analytics được lưu riêng |
workspaces.json |
Các workspace gần đây, cùng layout và agent lúc mở mỗi workspace lần cuối |
presets.json |
Layout preset |
repositories.json |
Kết quả dò git repo và worktree đã lưu tạm cho rail |
session.json |
Nhật ký tab đang mở, dùng để khôi phục phiên |
update-attempt.json |
Lần cài cập nhật gần nhất, để báo lại nếu mở lại sau cập nhật bị lỗi |
telemetry.json |
Trạng thái analytics và các bộ đếm trong ngày chưa gửi |
usage-cache.json |
Kết quả đã phân tích về token usage và các thư mục project nơi chúng chạy |
themes/ |
File theme từ các bản trước; Settings không có chỗ nhập theme |
Trên macOS, thư mục đó là ~/Library/Application Support/SpaceVibe Deck; trên Windows là
%APPDATA%\SpaceVibe Deck.
Có chỗ nào khó hiểu hay đã cũ? Báo cho chúng tôi