lichess.org
Donate

New Tool: ChessDB Explorer

I am going to keep making changes to the application, if you have any ideas do let me know.

I am going to keep making changes to the application, if you have any ideas do let me know.

Uploading just the pgn string without the header would be useful.

The lichess tsv files could all get ChessDB - LLM comment and so once saved, would reduce the need to use the LLM all the time for those moves. There would be 400 comments saved for the first move (2 ply).

Uploading just the pgn string without the header would be useful. The lichess tsv files could all get ChessDB - LLM comment and so once saved, would reduce the need to use the LLM all the time for those moves. There would be 400 comments saved for the first move (2 ply).

Could this have been more concise. It came from a ChessDB - LLM:
From Black’s perspective the position is roughly equal, with a modest chance to seize a small central initiative. The most natural way to do that is to push a central pawn—...e5 or ...d5—both of which keep the balance while giving Black a bit of space. Developing a knight to f6 or e6 also maintains equality, so the main task is simply to contest the centre and complete development without over‐extending.

Example: From Black's side the position is equal; play ...e5 or ...d5 to contest the center and gain space, then develop the knight (Nf6 or Ne6) and finish development without overextending.

Could this have been more concise. It came from a ChessDB - LLM: From Black’s perspective the position is roughly equal, with a modest chance to seize a small central initiative. The most natural way to do that is to push a central pawn—...e5 or ...d5—both of which keep the balance while giving Black a bit of space. Developing a knight to f6 or e6 also maintains equality, so the main task is simply to contest the centre and complete development without over‐extending. Example: From Black's side the position is equal; play ...e5 or ...d5 to contest the center and gain space, then develop the knight (Nf6 or Ne6) and finish development without overextending.

@Toscani said ^

Could this have been more concise. It came from a ChessDB - LLM:
From Black’s perspective the position is roughly equal, with a modest chance to seize a small central initiative. The most natural way to do that is to push a central pawn—...e5 or ...d5—both of which keep the balance while giving Black a bit of space. Developing a knight to f6 or e6 also maintains equality, so the main task is simply to contest the centre and complete development without over‐extending.

Example: From Black's side the position is equal; play ...e5 or ...d5 to contest the center and gain space, then develop the knight (Nf6 or Ne6) and finish development without overextending.

The LLM is fully generated by ChessDB and the whole is designed around their APIs, so this application is a front end for their amazing work.

@Toscani said [^](/forum/redirect/post/MUR7gKRS) > Could this have been more concise. It came from a ChessDB - LLM: > From Black’s perspective the position is roughly equal, with a modest chance to seize a small central initiative. The most natural way to do that is to push a central pawn—...e5 or ...d5—both of which keep the balance while giving Black a bit of space. Developing a knight to f6 or e6 also maintains equality, so the main task is simply to contest the centre and complete development without over‐extending. > > Example: From Black's side the position is equal; play ...e5 or ...d5 to contest the center and gain space, then develop the knight (Nf6 or Ne6) and finish development without overextending. The LLM is fully generated by ChessDB and the whole is designed around their APIs, so this application is a front end for their amazing work.

@Toscani said ^

Uploading just the pgn string without the header would be useful.

Yes, I will enable that in the next update.

The lichess tsv files could all get ChessDB - LLM comment and so once saved, would reduce the need to use the LLM all the time for those moves. There would be 400 comments saved for the first move (2 ply).

What is the Lichess tsv file? Not heard about that before.

@Toscani said [^](/forum/redirect/post/sdN5sbJG) > Uploading just the pgn string without the header would be useful. > Yes, I will enable that in the next update. > The lichess tsv files could all get ChessDB - LLM comment and so once saved, would reduce the need to use the LLM all the time for those moves. There would be 400 comments saved for the first move (2 ply). What is the Lichess tsv file? Not heard about that before.

@HollowLeaf This bash script works on my linux computer.
Maybe it will work on other linux systems.
Copy paste it in AI and tell it your operating system.
AI might make a file made specifically for your system.

get_lichess_data.sh
#!/bin/bash

# --- CONFIGURATION (Optimized for internal folder use) ---
TARGET_DIR="."
BASE_URL="https://raw.githubusercontent.com/lichess-org/chess-openings/master"
FILES=("a.tsv" "b.tsv" "c.tsv" "d.tsv" "e.tsv")

echo "Checking Lichess for updates (Current Directory: $PWD)..."

for FILE in "${FILES[@]}"; do
LOCAL_FILE="$TARGET_DIR/$FILE"

if [ -f "$LOCAL_FILE" ]; then
echo -n " Checking $FILE... "
# -z compares local file time with server
# -R sets local time to server time upon success
curl -s -S -L -z "$LOCAL_FILE" -o "$LOCAL_FILE" -R "$BASE_URL/$FILE"
echo "Done."
else
echo "$FILE not found. Downloading full file..."
curl -L -R -o "$LOCAL_FILE" "$BASE_URL/$FILE"
fi
done

echo "Update check complete."

@HollowLeaf This bash script works on my linux computer. Maybe it will work on other linux systems. Copy paste it in AI and tell it your operating system. AI might make a file made specifically for your system. get_lichess_data.sh #!/bin/bash # --- CONFIGURATION (Optimized for internal folder use) --- TARGET_DIR="." BASE_URL="https://raw.githubusercontent.com/lichess-org/chess-openings/master" FILES=("a.tsv" "b.tsv" "c.tsv" "d.tsv" "e.tsv") echo "Checking Lichess for updates (Current Directory: $PWD)..." for FILE in "${FILES[@]}"; do LOCAL_FILE="$TARGET_DIR/$FILE" if [ -f "$LOCAL_FILE" ]; then echo -n " Checking $FILE... " # -z compares local file time with server # -R sets local time to server time upon success curl -s -S -L -z "$LOCAL_FILE" -o "$LOCAL_FILE" -R "$BASE_URL/$FILE" echo "Done." else echo "$FILE not found. Downloading full file..." curl -L -R -o "$LOCAL_FILE" "$BASE_URL/$FILE" fi done echo "Update check complete."

@Toscani said ^

@HollowLeaf This bash script works on my linux computer.
Maybe it will work on other linux systems.
Copy paste it in AI and tell it your operating system.
AI might make a file made specifically for your system.

get_lichess_data.sh
#!/bin/bash

# --- CONFIGURATION (Optimized for internal folder use) ---
TARGET_DIR="."
BASE_URL="https://raw.githubusercontent.com/lichess-org/chess-openings/master"
FILES=("a.tsv" "b.tsv" "c.tsv" "d.tsv" "e.tsv")

echo "Checking Lichess for updates (Current Directory: $PWD)..."

for FILE in "${FILES[@]}"; do
LOCAL_FILE="$TARGET_DIR/$FILE"

if [ -f "$LOCAL_FILE" ]; then
echo -n " Checking $FILE... "
# -z compares local file time with server
# -R sets local time to server time upon success
curl -s -S -L -z "$LOCAL_FILE" -o "$LOCAL_FILE" -R "$BASE_URL/$FILE"
echo "Done."
else
echo "$FILE not found. Downloading full file..."
curl -L -R -o "$LOCAL_FILE" "$BASE_URL/$FILE"
fi
done

echo "Update check complete."

Ah, that is what you mean. I use the opening files extensively in parts of my application, but the LLM comes directly from ChessDB, so not my system.

@Toscani said [^](/forum/redirect/post/BVV4EGAd) > @HollowLeaf This bash script works on my linux computer. > Maybe it will work on other linux systems. > Copy paste it in AI and tell it your operating system. > AI might make a file made specifically for your system. > > get_lichess_data.sh > #!/bin/bash > > # --- CONFIGURATION (Optimized for internal folder use) --- > TARGET_DIR="." > BASE_URL="https://raw.githubusercontent.com/lichess-org/chess-openings/master" > FILES=("a.tsv" "b.tsv" "c.tsv" "d.tsv" "e.tsv") > > echo "Checking Lichess for updates (Current Directory: $PWD)..." > > for FILE in "${FILES[@]}"; do > LOCAL_FILE="$TARGET_DIR/$FILE" > > if [ -f "$LOCAL_FILE" ]; then > echo -n " Checking $FILE... " > # -z compares local file time with server > # -R sets local time to server time upon success > curl -s -S -L -z "$LOCAL_FILE" -o "$LOCAL_FILE" -R "$BASE_URL/$FILE" > echo "Done." > else > echo "$FILE not found. Downloading full file..." > curl -L -R -o "$LOCAL_FILE" "$BASE_URL/$FILE" > fi > done > > echo "Update check complete." Ah, that is what you mean. I use the opening files extensively in parts of my application, but the LLM comes directly from ChessDB, so not my system.

Great job! I can't wait, until you will implement the announced Game review tool. :-)
Btw: I still have following issue in Safari: "Failed to load LLM analysis". At least it works in Edge on my Mac.

Great job! I can't wait, until you will implement the announced Game review tool. :-) Btw: I still have following issue in Safari: "Failed to load LLM analysis". At least it works in Edge on my Mac.

@FRahde said ^

Great job! I can't wait, until you will implement the announced Game review tool. :-)
Btw: I still have following issue in Safari: "Failed to load LLM analysis". At least it works in Edge on my Mac.

I completely forgot about that, yes I need to figure out why the LLM does not work, it is a strange one.

The Game Review is available in the standalone, but will be added to the Repertoire Builder Soon :)

@FRahde said [^](/forum/redirect/post/OJ57PMzo) > Great job! I can't wait, until you will implement the announced Game review tool. :-) > Btw: I still have following issue in Safari: "Failed to load LLM analysis". At least it works in Edge on my Mac. I completely forgot about that, yes I need to figure out why the LLM does not work, it is a strange one. The Game Review is available in the standalone, but will be added to the Repertoire Builder Soon :)