Training AI agents to play tabletop games.
This project is vibe-researched and vibe-coded, mostly using Claude Code and the superpowers plugin. It draws on patterns from open RL / game-AI work; I've tried to follow license rules for anything reused — please open an issue if you spot an attribution gap.
Project goals:
- explore strategies for the games included
- surface balance suggestions for game designers
- refine my agentic coding setup for greenfield projects
In progress: {insert link to beads tasks here?}
Suggest a game — game designers and creators, please open an issue with the rules and player count; I'd love to add more games.
Requires Python ≥3.12 and pdm.
make sync # pdm install — sync deps from pdm.lock into .venv
make test # run the test suite
.venv/bin/uvicorn table_peak.web.app:app --reloadRun make help for the full list of dev targets.
Open http://localhost:8000/ to play TicTacToe against a trained agent. The
training entry point is table_peak.training.loop.train.
Tooling: pdm, ruff, mypy --strict, pytest, pre-commit — config in
pyproject.toml and
.pre-commit-config.yaml. Work follows the
beads-superpowers workflow
(brainstorm → spec → plan → implement) under
docs/superpowers/, with task tracking in
beads (bd).
MIT — see LICENSE. The Game / State shape is conceptually
modelled on open_spiel
(noted in src/table_peak/games/base.py). Open an issue for any attribution
gap.