]> git.sesse.net Git - stockfish/blobdiff - README.md
Add some more information on the UCI protocol
[stockfish] / README.md
index 67fb5fa09acbc4ae092b166da703507e23280a8e..bc34ee1321a158ac16a1f81183c1fbddbea75f20 100644 (file)
--- a/README.md
+++ b/README.md
@@ -33,9 +33,14 @@ This distribution of Stockfish consists of the following files:
   * a file with the .nnue extension, storing the neural network for the NNUE 
     evaluation. Binary distributions will have this file embedded.
 
-## UCI options
+## The UCI protocol and available options
 
-Currently, Stockfish has the following UCI options:
+The Universal Chess Interface (UCI) is a standard protocol used to communicate with a chess engine,
+and is the recommended way to do so for typical graphical user interfaces (GUI) or chess tools.
+
+Stockfish implements most commands as described in [the UCI protocol](https://www.shredderchess.com/download/div/uci.zip)
+
+For users, the following UCI options, which can typically be set via a GUI, are available in Stockfish:
 
   * #### Threads
     The number of CPU threads used for searching a position. For best performance, set
@@ -136,6 +141,24 @@ Currently, Stockfish has the following UCI options:
   * #### Debug Log File
     Write all communication to and from the engine into a text file.
 
+For developers the following non-standard commands might be of interest, mainly useful for debugging:
+
+  * #### compiler
+    Give information about the compiler and environment used for building a binary.
+
+  * #### flip
+    Flips the side to move.
+
+  * #### bench ttSize threads limit fenFile limitType evalType
+    Performs a standard benchmark using various options. The signature or standard node
+    count is obtained using all defaults. `bench` is currently `bench 16 1 13 default depth mixed`.
+
+  * #### d
+    Display the current position, with ascii art and fen.
+
+  * #### eval
+    Return the evaluation of the current position.
+
 ## A note on classical evaluation versus NNUE evaluation
 
 Both approaches assign a value to a position that is used in alpha-beta (PVS) search