Skip to content

Feature - UCI protocol support (work with standard GUIs) #12

Description

@Codex-Crusader

Summary

Add UCI (Universal Chess Interface) support so AZ-Lite can be plugged into standard GUIs (Arena, Cute Chess, etc.).

Motivation

UCI support greatly increases usability and makes it easy to compare/benchmark with other engines.

Acceptance criteria / Definition of Done

  • Implement a UCI entrypoint (e.g., azlite_uci.py) that:
    • Listens for standard UCI commands (uci, isready, position, go, quit).
    • Converts UCI position/go input to the engine API and returns the bestmove.
  • Add a short test or script showing interoperability with a GUI or CLI client (manual verification acceptable).
  • Document how to start AZ-Lite in UCI mode in README (python azlite_uci.py).

Implementation notes

  • python-chess has UCI helper utilities; consider using its facilities.
  • Keep UCI loop lightweight and non-blocking where possible (handle stop and time controls cleanly).

Complexity

Medium–High (requires careful protocol handling and testing).

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions