A beautiful terminal UI for playing Go/Baduk against GnuGo offline.
Fork of termsuji that replaces the online-go.com backend with a local GnuGo (GTP) subprocess interface.
termsujiiii.mp4
- Beautiful terminal-based Go board (inherited from termsuji)
- Play against GnuGo locally, completely offline
- No time limits (untimed games)
- Configurable board sizes (9x9, 13x13, 19x19)
- Adjustable engine difficulty (levels 1-10)
- Choose your color (Black/White)
- Customizable board color
- Games saved as SGF files — the universal Go game record format
- Game history browser — revisit and continue past games
- Undo moves
- Go 1.18+
- GnuGo installed and in PATH
- Terminal with Unicode support
macOS (via Homebrew):
brew install gnu-goLinux (Ubuntu/Debian):
sudo apt install gnugoLinux (Fedora):
sudo dnf install gnugoLinux (Arch):
sudo pacman -S gnugoWindows:
- Download GnuGo from http://www.gnu.org/software/gnugo/download.html
- Extract to a folder (e.g.,
C:\gnugo) - Add the folder to your PATH:
- Open System Properties → Advanced → Environment Variables
- Edit PATH and add
C:\gnugo(or wherever you extracted it)
- Verify installation:
gnugo --version
Alternatively on Windows with WSL:
sudo apt install gnugogit clone git@github.com:JollyGrin/termsuji-local.git
cd termsuji-local
go buildThis creates a termsuji-local executable in the current directory.
Simply run the binary:
./termsuji-local| Flag | Description | Default |
|---|---|---|
--boardsize |
Board size (9, 13, or 19) | 19 |
--color |
Player color (black or white) | black |
--difficulty |
GnuGo difficulty level (1-10) | 5 |
--komi |
Komi value | 6.5 |
--play |
Start game immediately with defaults | false |
--focus |
Start in focus mode (fullscreen board) | false |
--version |
Print version and exit | |
--update |
Update to the latest version |
You'll be presented with a game setup screen where you can configure:
- Board size (9x9, 13x13, 19x19)
- Your color (Black plays first, White plays second)
- GnuGo difficulty level (1-10)
- Komi (compensation for White)
| Key | Action |
|---|---|
| Arrow keys | Move cursor |
| hjkl | Move cursor (vim motions) |
| Enter | Play move at cursor |
| p | Pass turn |
| f | Toggle focus mode |
| u | Undo last move |
| r | Toggle game recording |
| q | Quit (or deselect cursor) |
Configuration is stored at ~/.config/termsuji-local/config.json:
{
"theme": { ... },
"gnugo": {
"gnugo_path": "gnugo",
"default_board_size": 19,
"default_komi": 6.5,
"default_level": 5
}
}Based on termsuji by lvank.
MIT