_ _ _ _ _
_ __ ___ ___| |_| |_ ___ ___| |_ ___| (_)
| '_ \ / _ \/ __| __| __/ _ \/ __| __|____ / __| | |
| |_) | (_) \__ \ |_| || __/\__ \ ||_____| (__| | |
| .__/ \___/|___/\__|\__\___||___/\__| \___|_|_|
|_|
⚠ WARNING: This is a beta version
This app is in early development. Some features may be broken. Use at your own risk.
git clone https://github.com/postnerd/posttest-cli.git
cd posttest-cli
npm install OR npm install . -g
Example for global installation:
posttest -e engines.config.example.json -p positions.config.example.json -d -sf´
Example for local installation:
npm start -- -e engines.config.example.json -p positions.config.example.json -d -sf
┌────────┬───────────────────────────────────────────────────────────────────┐
│ option │ description │
├────────┼───────────────────────────────────────────────────────────────────┤
│ -e │ Optional: Path to engines config file (default: engines.json) │
├────────┼───────────────────────────────────────────────────────────────────┤
│ -p │ Optional: Path to positions config file (default: positions.json) │
├────────┼───────────────────────────────────────────────────────────────────┤
│ -o │ Optional: Path to output file for storing results │
├────────┼───────────────────────────────────────────────────────────────────┤
│ -d │ Optional: activate debug mode │
├────────┼───────────────────────────────────────────────────────────────────┤
│ -sf │ Optional: add stockfish engine │
├────────┼───────────────────────────────────────────────────────────────────┤
│ -s │ Optional: silent mode to just show a progress │
└────────┴───────────────────────────────────────────────────────────────────┘
npm start -- -p position.config.example
If no -p option is provided posttest will search for a positions.json file at the root of the executaion folder.
Format
[
{
"fen": "rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1",
"depth": 6
},
]
See the example config file positions.config.example.json. All positions are from stockfish's internal bench function.
npm start -- -e engines.config.example
If no -e option is provided posttest will search for a engines.json file at the root of the execution folder.
Format
[
{
"executable": "/usr/local/bin/node",
"strings": [
"./node_modules/stockfish/src/stockfish-nnue-16-no-simd.js"
],
"advancedComparison": true
},
{
"executable": "postbot",
"strings": []
},
{
"name": "my lore ipsum",
"executable": "loreipsum",
"strings": []
}
]
See the example config file engines.config.example.json.
You can specify a name for every engine that will be used infavour of the name provided by the uci name parameter.
If you want to have an advanced comparison table printed and logged at the end of the tests for one or more engines, you can set the advancedComparison flag.
npm start -- -s
Shows just a progress bar. Should be combined with the -o option to log the output to a file.
npm start -- -o path/to/file.txt
Logs the results to the specified path.
npm start -- -d
Shows additional debug informations.
npm start -- -sf
Adds a version of stockfishjs to the performance test without the need to have stockfish added to the engine config file.