A cli to play chess against an an UCI engine of your choice, written in go

chess-cli

chess-cli is a cli for playing chess against an UCI compatible engine written in go

Note: Chess pieces are in unicode, so the color may seem swapped.

Table of Contents

Usage

$ chess-cli --help
    Chess-cli is a CLI to play chess against an UCI engine of your choice with the ability to 
    specify depth
    Usage:
      chess-cli [command]

    Available Commands:
      analyze     Get lichess analyze urls on your games
      delete      Delete your chess games from database
      help        Help about any command
      list        List all your games (default will only show on-going games)
      play        Play/Continue a chess game
      puzzle      Play a daily lichess puzzle
      resign      Resign on your chess games

    Flags:
      -h, --help     help for chess-cli
      -t, --toggle   Help message for toggle

Examples

Playing against an engine

$ chess-cli play engine --help
    Start a game against an engine

    Usage:
      chess-cli play engine [flags]

    Flags:
          --color string   choose your color: white/black (default random)
      -d, --depth int      Set the engine depth to search x piles only (default 3)
      -h, --help           help for engine
          --name string    Set the name of the game (default random)
      -p, --path string    Set the UCI chess engine path (required)

$ chess-cli play engine -p "D:\Programming\stockfish.exe" --depth 5 --color white

play

List games

$ chess-cli list --help
  List all your games (default will only show on-going games)

  Usage:
    chess-cli list [flags]

  Flags:
    -a, --all      show all games with board
    -e, --engine   show games' engine configuration
    -h, --help     help for list

list

Resign games

$ chess-cli resign --help
  Resign on your chess games

  Usage:
    chess-cli resign [game-names...] [flags]

  Flags:
    -h, --help   help for resign

$ chess-cli resign tZHpL fromsettingNameFlag getGameNamesFromTheListCommand thisiscasesensitiveAlso
  You resigned on Game "tZHpL" Status: 0-1, Resignation
  You resigned on Game "fromsettingNameFlag" Status: 1-0, Resignation
  Game "getGameNamesFromTheListCommand" doesn't exist.
  Game "thisiscasesensitiveAlso" doesn't exist.

Delete games

$ chess-cli delete --help
  Delete your chess games from database

  Usage:
    chess-cli delete [game-names...] [flags]

  Flags:
    -h, --help   help for delete
    
$ chess-cli delete wzfhz tZHpL 
  Game "wzfhz" is deleted.
  Game "tZHpL" is deleted.

Get lichess analysis url for games

$ chess-cli analyze --help
  Get lichess analyze urls on your games

  Usage:
    chess-cli analyze [game-names...] [flags]

  Flags:
    -h, --help   help for analyze

$ chess-cli analyze wzfhz tZHpL blahblah
    Analyze Game "wzfhz" on lichess: https://lichess.org/L7vPPR5e
    Analyze Game "tZHpL" on lichess: https://lichess.org/SP6l4EFe
    Game "blahblah" doesn't exist.

Play a daily puzzle from lichess

$ chess-cli puzzle -h
  Play a daily lichess puzzle

  Usage:
    chess-cli puzzle [flags]

  Flags:
    -h, --help   help for puzzle

puzzle puzzle2 puzzle3

Similar Resources

A chess GUI build using the Fyne toolkit.

A chess GUI build using the Fyne toolkit.

Chess The subject of my current live stream series. A simple chess UI built with Fyne. Thanks to: Chess Go library by Logan Spears github.com/notnil/c

Dec 20, 2022

A small go program that solves the Queen's Gambit chess puzzle.

Queen's Gambit Solver This program attempts to solve the Queen's Gambit each time it is run. The Queen's Gambit is a chess-based puzzle where eight qu

Jun 27, 2022

chess.com api wrapper for go

Chessdotcom-go An unofficial, simple, lighweight API wrapper for chess.com written in go Usage go get -u "github.com/ATTron/chessdotcom-go" im

Dec 31, 2021

A chess server built with Temporal.

A chess server built with Temporal.

chesstempo A chess server built with Temporal. Dependencies The activity worker runs Stockfish in the background. In Debian-based distros, you can ins

Nov 21, 2022

basicbots is a programming game where you program your robot to compete against other robot.

basicbots is a programming game where you program your robot to compete against other robot.

basicbots What is baiscbots? basicbots is a programming game where you program your robot to compete agaist other robots. What is the inspiration? My

Jan 8, 2022

lets play a game

Flashbots is a research and development organization formed to mitigate the negative externalities and existential risks posed by miner-extractable value (MEV) to smart-contract blockchains.

Jul 9, 2021

Golang RISC-V emulator that can play DOOM

Golang RISC-V emulator that can play DOOM

RISC-V Emulator A toy Golang RISC-V emulator that can play DOOM For now it uses smunaut bootloader and riscv_doom from the ICE40 project. But since th

Dec 12, 2022

Awesome 2D Maze-based games to play with kids in family and with friends on rich console UI. developed into Go.

Awesome 2D Maze-based games to play with kids in family and with friends on rich console UI. developed into Go.

gomazes Have fun time with kids and family and friends at playing awesome 2D maze-based games while feeling like a programmer on the computer console/

Dec 23, 2021

Vote, play, and chill.

GoDiscordBot Template GoDiscordBot is a Discord bot template repository that helps you quickly get started builing a Discord bot in go. Get GoDiscordB

Jan 17, 2022
♛♔ Play chess against UCI engines in your terminal.
♛♔ Play chess against UCI engines in your terminal.

uchess ♛♔ Play chess in your terminal. Introduction uchess is an interactive terminal chess client designed to allow gameplay and move analysis in con

Nov 17, 2022
Blunder is an open-source UCI compatible chess engine.

A UCI compatible chess engine written in Golang

Dec 30, 2022
Play chess in your terminal
Play chess in your terminal

Gambit Chess board in your terminal. Warning gambit does not have many features at the moment. I plan on adding a chess engine, mouse support, timers,

Dec 21, 2022
Chesscode - a way of encoding messages using a chess board and the starting set of chess pieces
Chesscode - a way of encoding messages using a chess board and the starting set of chess pieces

chesscode Are you a spy that needs to leave an urgent top secret message for an

Jan 3, 2023
Chesscode - Chesscode: a way of encoding messages using a chess board and the starting set of chess pieces
Chesscode - Chesscode: a way of encoding messages using a chess board and the starting set of chess pieces

chesscode Are you a spy that needs to leave an urgent top secret message for an

Jan 1, 2022
Play chess with Go, HTML5, WebSockets and random strangers!

ChessBuddy Play chess with Go, HTML5, WebSockets and random strangers! Demo: http://chess.tux21b.org:8000/ Hint: Open the page in two different tabs,

Nov 10, 2022
A chess engine written in golang
A chess engine written in golang

Weasel Art graciously provided by Alex Table of Contents: About Installing and Compiling from Source Contributing License About Weasel is an 0x88 and

Dec 30, 2022
Currently in beta testing. A chess engine written in golang
Currently in beta testing. A chess engine written in golang

Weasel Art graciously provided by Alex Table of Contents: About Installing and Compiling from Source Contributing License About Weasel is an 0x88 and

Dec 30, 2022
A simple chess engine for experiment, made in Golang

chess-engine A simple chess engine for experiment, made in Golang Build the engine Run the command make or make build Run the engine Run the command f

Dec 26, 2021
chess package for go
chess package for go

chess Introduction chess is a set of go packages which provide common chess utilities such as move generation, turn management, checkmate detection, P

Dec 26, 2022