CLI

Play Cabo from the CLI.

The interactive terminal client exposes the same rooms, private knowledge, legal actions, and reconnect behavior as the Web table.

Install and start

The CLI requires Node.js 22 or newer.

npm install --global @cabo-game/cli
cabo --name Alice
cabo --server https://cabo-api.human404.link --name Alice

--server selects the Cabo server. --name sets a player name up to 20 characters; otherwise the CLI uses the current operating-system user.

Connection commands

CommandEffect
roomsBrowse all public rooms. Use ↑/↓ to select, ←/→ to page, and Enter to join.
create public [target] --name "room name"Create a public room. A blank name uses [player]'s room.
create private [target] --name "room name"Create a private room, then enter a six-digit password without echo.
join ROOM [password]Join by case-sensitive room code, optionally with its password.
reconnectReconnect to the locally saved seat.
quitLeave gracefully and exit the client.

Lobby commands

CommandEffect
playersShow the current seats.
startStart once at least two players are connected; host only.
leaveRelease your seat but keep the CLI process open.

Game commands

CommandEffect
showRender the latest table and your remembered cards.
draw deckDraw a private card from the deck.
draw discardTake the top discard, then choose cards to replace.
replace POS [POS ...] [at POS]Replace one to four positions; at selects the new card’s position.
resolve LEFT [PENALTY]Place a mismatched draw and optional penalty at the left or right end.
discardDiscard the deck card you are holding.
peek self POSUse a 7/8 power on one of your positions.
peek PLAYER POSUse a 9/10 power on another player’s position.
swap PLAYER OWN_POS TARGET_POSUse a J/Q power to blind-swap any own position with any opponent position.
skipSkip the pending card power.
caboCall Cabo at the beginning of your turn.
readyConfirm the next round after reviewing a round result.

Interaction notes

Positions run from 1 through the current hand size. A player argument accepts an exact nickname or a session ID. Enter help or ? to show the command reference.

Room names may repeat and contain up to 40 Unicode characters. They are labels only: joining and reconnecting always use the room ID.

In an interactive terminal, the CLI also offers numbered action menus. During a multi-step choice, enter cancel to return to the action menu.