ChessAI - это настольный шахматный анализатор с графической доской, интеграцией Stockfish и тренировочными режимами. Приложение написано на Python с использованием tkinter и ориентировано на практический сценарий: загрузить партию, найти ключевые ошибки, посмотреть линии движка и превратить неточности в тренировочные позиции.
- Импорт партий из локальных
PGN-файлов,FEN, буфера обмена, URL Lichess, URL Chess.com и прямых ссылок на PGN. - Открытие PGN с несколькими партиями и выбор нужной игры из списка.
- Анализ текущей позиции через Stockfish с несколькими лучшими линиями (
MultiPV) и стрелками лучших ходов, угроз и последнего хода прямо на доске. - Полный анализ партии с классификацией ходов, расчетом точности,
ACPL, поиском зевков, определением дебюта и построением графика оценки. - Пакетный анализ
PGN-файлов с несколькими партиями и сводной таблицей результатов. - Сохранение аннотированного PGN с комментариями и
NAG-метками. - Работа с вариантами: добавление линии из движка, перенос варианта в главную линию, удаление ответвлений.
- Игра против движка с настраиваемой силой.
- Тренировочные режимы:
- поиск лучшего хода в текущей позиции;
- генерация задач из ошибок, найденных в партии.
- Подсказки тренера, режим "только доска", звуки ходов, экспорт
FENи горячие клавиши для быстрой навигации.
git clone https://github.com/ReNothingg/ChessAI.git
cd ChessAIpip install -r requirements.txtpython main.py- Python
3.9+ tkinterв составе установленного Python- движок Stockfish
На Windows в корне проекта уже лежит stockfish.exe, поэтому базовый запуск обычно работает сразу.
На Linux и macOS нужно:
- либо положить бинарник Stockfish в корень проекта под именем
stockfish; - либо указать путь через переменную окружения
STOCKFISH_PATH.
Если движок не найден, интерфейс все равно откроется, но функции анализа и тренировки будут недоступны.
По умолчанию приложение ищет движок здесь:
- Windows:
./stockfish.exe - Linux/macOS:
./stockfish
Путь можно переопределить через STOCKFISH_PATH.
Пример для PowerShell:
$env:STOCKFISH_PATH = "C:\path\to\stockfish.exe"
python main.pyПример для Bash:
export STOCKFISH_PATH=/path/to/stockfish
python main.pyPGN-файлы, включая файлы с несколькими партиями- текст
PGNиз буфера обмена - строка
FENиз буфера или диалога загрузки - URL партий с Lichess
- URL live- и daily-партий с Chess.com
- прямые ссылки на
.pgn
- Загрузите партию из файла, буфера обмена или по URL.
- Перемещайтесь по ходам и просматривайте позицию на доске.
- Используйте быстрый анализ текущей позиции.
- Запустите полный анализ партии, чтобы получить точность,
ACPL, переломный момент и данные по дебюту. - Изучите текстовый отчет и график оценки.
- Запустите тренировку по найденным ошибкам.
Left/Right- предыдущий или следующий ходHome/End- переход в начало или конец партииF- перевернуть доскуA- анализ текущей позицииT- показать угрозуP- найти лучший ходH- открыть помощьSpace- режим "только доска"
Двойной клик по ходу в панели "Лучшие ходы" добавляет его как вариант.
python-chessдля логики доски и работы с PGNStockfishв роли анализирующего движкаtkinterдля настольного интерфейсаmatplotlibдля графика оценкиPillowдля доски и фигурrequestsдля загрузки партий по URLpygameдля звуков ходовchess-tcnдля конвертации партий Chess.com
MIT. Подробности в LICENSE.


