piece/square configurations

CQL supports a number of filters to search for patterns of squares and pieces in a specific position. These filters only consider the arrangement of pieces or squares: they do not consider side-to-move, next move, or any other dynamic features of a position. In the table below, click on the name of a filter for more detailed information:

filter name example description
. . a-h1-8, i.e. any square
attack attack (R K) first argument attacks second argument
between between (R K) squares between its arguments
check check one side is in check
countsquares countsquares 3 8 Q number of squares in its argument is within range
darksquares darksquares dark squares
directional filters right 1 Q squares in specified direction in specified distance
lightsquares lightsquares lightsquares
mate check one side is mated
piece designators Na3
designated pieces on designated squares
power power 15 100 A material of argument is in range
powerdifference powerdifference 15 100 (A a) difference in material of arguments is in range
ray ray (Q a k) specified arguments arranged in ordered line segment without interference
stalemate stalemate one side in stalemate