I have Stockfish compiled on my machine. Instead of just running the Stockfish program in the terminal, is it possible to interact with it in a separate program?
For example, some basic things I might want to do:
- Create a position object from a FEN.
- Get an evaluation from the position object (limiting with depth or time).
- Return an array of positions for all the legal moves from the position.
These are just some very basic examples. Can anyone supply some code snippets for these instructions? I'm really struggling to find any helpful documentation.
EDIT: It looks like this really has a two part solution. The first is piping the input/output to some external program. The second is understanding the UCI protocol to perform what I want to do. Does anyone know the UCI protocol for getting all of the possible moves/positions from a given position? Also, it looks like the 'eval' command only gives a static evaluation of a position (i.e. no consideration of the future). Is there anyway to retrieve a time/depth based evaluation as well?