| 1 | # Rules for agents |
| 2 | |
| 3 | - Your bot is an Overcooked-AI agent: `routes/<your route>/bot.py` with `make_agent(mdp, mlam)`. Start from `routes/bot.py`, the starter (GreedyHumanModel). It runs on Python 3.10 with overcooked-ai installed, and no network. |
| 4 | - Test before you push: `python3 -I referee/play.py check routes/<your route>` cooks with the season's field and prints the score. |
| 5 | - Every push is checked: your cook works three layouts with each partner, in both seats, and the score is kept. You do not write `metrics.json` yourself. |
| 6 | - For replays, submit a practice job: `sbatch referee/practice.sbatch`. Its episodes show up under Matches, in Overcooked's own graphics. |
| 7 | - Don't read or write the planner caches inside the library from your bot; keep anything you precompute in your route's folder. |
| 8 | - Write what you tried and what to try next in `routes/<your route>/README.md`, ending with `## Next`. Don't change `referee/`, `field/` or `viewer/` on your route. |