Skip to content

Latest commit

Β 

History

History
906 lines (719 loc) Β· 91.7 KB

File metadata and controls

906 lines (719 loc) Β· 91.7 KB

Changelog

1.4.1 (2026-02-06)

Bug Fixes

  • make: add SKILL.md to mdformat (c171122)

Documentation

  • claude: add allowed-tools and jq examples to balatrobot SKILL.md (a334125)
  • claude: add balatrobot SKILL (b44dede)
  • claude: use absolute paths in screenshot endpoint in SKILL.md (1d961b7)
  • example-bot: add missing link to polina4096/Ballad community bot (0f7910a)
  • example-bot: add polina4096/Ballad to community bot (f7c421f), closes #153
  • improve docs over all (5ed0eb3), closes #152
  • index: add links to balatrollm and balatrobench (7662f98)
  • index: equal size for all images and add underline (c84091a)
  • mkdocs: set accent color to shades of orange (89b43dc)
  • readme: move aknowledgments to bottom (7e777d4)
  • readme: remove coming soon from release project (aa15fd5)

1.4.0 (2026-02-02)

Features

  • add fps cap setting (8fefa49)
  • add gamespeed, animation_fps, no_reduced_motion settings (f6c1f81)
  • add pixel art smoothing setting (b5eff97)
  • cli: add integration tests for new Typer CLI (dd18bb7)

Bug Fixes

  • balatrobot.cli: more strict error handling using httpx (05b5971)
  • gamestate: try to fix memory leaks in UI nodes - again (42ec1f3)
  • lua.utils: avoid to use hover to generate UI description (11fc9f5)
  • make: correct worker count message for tests/cli (6e5fdd4)

Performance Improvements

  • make: change XDIST_WORKERS to 2 for tests/cli (27240c8)

Documentation

  • api: Adding missing cards to GameState schema (6c4f192)
  • cli: add new cli commands - serve and api (b8355af)
  • remove the breaking changes warning (b92afe3)

1.3.4 (2026-01-13)

Bug Fixes

  • balatrobot: add session_id to BalatroInstance (79230dd)

1.3.3 (2026-01-12)

Continuous Integration

  • release: move release notification to pypi workflow (2274781)

1.3.2 (2026-01-12)

Bug Fixes

  • lua.endpoint: add nil checks for race condition in next_round endpoint (ce08dcc)
  • lua.endpoints: fix error message for invalid voucher/pack index in buy (4af3d39)

1.3.1 (2026-01-11)

Bug Fixes

  • lua.endpoints: fix pack with mega packs with double target selection (ba3e270)

1.3.0 (2026-01-06)

Features

  • lua: improve logging for endpoints (680fd45)

Documentation

  • cli: remove resize rule in hyperland config example (ace84b5)
  • update deps and style of the docs (784b780)

1.2.2 (2026-01-04)

Documentation

  • contributing: add linux native symlink location (d07c354)
  • example-bot: add example bot page (73c4313)
  • prepend uvx to balatrobot command (e9e48e1)

1.2.1 (2026-01-01)

Bug Fixes

  • ci: update release workflow to sync openrpc.json version (905609f)

Documentation

  • contributing: update .luarc.json example (c9c486a)
  • use white logo version for docs logo (e532087)

1.2.0 (2026-01-01)

Features

  • lua.endpoints: add pack endpoint (32ff3eb)
  • lua.endpoints: add pack endpoint (9d3031f)
  • lua.endpoints: add support for adding packs to the add endpoint (41374a7)
  • lua.endpoints: allow rearranging cards during booster pack state (16e4170)
  • lua.endpoints: extend rearrange to pack state (15f282c)
  • lua.utils: add cards field to gamestate (8447855)
  • lua.utils: add pack keys enums (d8cdb33)

Bug Fixes

  • lua.endpoints: await hand to be loaded for Arcana/Spectral packs (43e41a4)
  • lua.endpoints: improve await condition when buying a pack (4993e77)
  • lua.utils: use appropriate field for the request in debugger (d79a81d)
  • lua: fix target selection to wait longer (e98d4ea)
  • validator: revert to old behaviour for array items (729e164)

Performance Improvements

  • change pytest-xdist config from loadfile to loadscope (d7c2a28)

Documentation

  • add conventional commits guideline to contributing (bf164b1)
  • api: add required state for rearrange endpoint (481d579)
  • api: fix api.md formatting (4c85dec)
  • api: remove comment from the gamestate example (44a169f)
  • api: update the add endpoint to support packs (36868f2)
  • CLAUDE: add GitHub repo link to CLAUDE.md (9013de0)
  • docs fixes (099147a)
  • endpoints: fix pack_select formatting (535e3b0)
  • endpoints: fix pack_select formatting (7c0535c)

1.1.0 (2025-12-24)

Features

  • balatrobot: add Windows support to CLI (843a1b7)

Documentation

  • cli: run_lovely_macos.sh is not required (ccf1996)
  • contributing: improve contributing guide (d5576b2)
  • index: remove link to legacy docs (23029cd)
  • readme: remove the imgs from the related project section (354de3a)

1.0.0 (2025-12-23)

⚠ BREAKING CHANGES

  • update to v1.0.0

Features

  • add --status option to show running balatro instances (bcfeb91)
  • add ante value to game state (f7193c4)
  • add audio flag to balatrobot (disabled by default) (9c2db00)
  • add back the test target in Makefile (ebfbfb5)
  • add balatro enums (fc8d6b4)
  • add balatro.py python script (c0ae64f)
  • add balatro.sh script for running multiple instances (d66fe98)
  • add cards argument to use_consumable (1775952)
  • add check and test case for whether a buy_and_use_card target can be used (dab8f19)
  • add cli entry point for balatrobot (394e8c8)
  • add gamestate menu and start endpoints to balatrobot loading (6aebc4a)
  • add hook for joker rearrangement (c9fe966)
  • add hook for sell_consumable (e390761)
  • add hook for use_consumable (d54042c)
  • add new description field to card objects (0a55df6)
  • add new skip endpoint to balatrobot.lua (b02b675)
  • add option to disable shaders with env var BALATROBOT_NO_SHADERS (6be3497)
  • add rearrange consumeables endpoint (404de7d)
  • add rearrange jokers endpoint (b63c500)
  • add RearrangeConsumeablesArgs type (e7796cc)
  • add redeem_voucher (70e8cb0)
  • add render on api env var / flag (b96e623)
  • add reroll cost < dollars check (644f667)
  • add reroll shop action (1202866)
  • add select endpoint to balatrobot.lua (0414d33)
  • add sell consumable completion condition (dcff055)
  • add sell consumable endpoint (c467611)
  • add sell joker completion condition (e4b3b6e)
  • add sell joker endpoint (183db62)
  • add sell joker types (876a249)
  • add sell_joker hook for logging (44df912)
  • add shop_idle() cond for actions that do not depart the shop (987e965)
  • add state checking for use consumable with cards parameter (ec123d6)
  • add test-migrate target to Makefile (5c41d17)
  • add types for sell consumable (b395430)
  • add use consumable endpoint (012a957)
  • add use_consumable completion condition (44cdcf7)
  • added tests and gamestate for reroll shop (4bc1b61)
  • api: add screenshot API endpoint (165b58c)
  • api: improve cards selection ranges in use consumeables (b9ce462)
  • balatrobot: add CLI interface and entry points (429ee26)
  • balatrobot: add configuration and path utilities (8fa562a)
  • balatrobot: add HTTP health check utility (b8fe42c)
  • balatrobot: add macOS and native platform launchers (49ed21d)
  • balatrobot: add multi-instance manager (57d1dac)
  • balatrobot: add platform abstraction layer (d57b4cd)
  • balatrobot: refactor balatrobot cli (0a3390c)
  • better api errors (617cbc9)
  • checkpoints work (1e78386)
  • client: add port option to client (4c7b912)
  • client: add screenshot method (0ee8b8c)
  • core: add boolean and table types to validator (54561d2)
  • created savefile-based checkpointing (73ab99f)
  • dev: add Makefile (02c569f)
  • docs and types for checkpointing (5efff03)
  • enhance rearrange jokers field in game state (e72c78e)
  • finish buy_and_use_card docs (c644bab)
  • fixtures: update generate.py to use httpx (abc2293)
  • hook reroll_shop (0e533ae)
  • improve CLI for replay bot (077178c)
  • improved graphics settings for screenshots (86af829)
  • log: hook for rearrange_consumeables (06f5be7)
  • lua.core: add rpc.discover endpoint to the dispatcher (fa2f026)
  • lua.core: add state name lookup table (6de65f4)
  • lua.core: move from raw TCP to HTTP server (584aaf8)
  • lua.endpoints: add add endpoint (d5e5e9c)
  • lua.endpoints: add use endpoint (48fa0a1)
  • lua.endpoints: add buy endpoint (3872f44)
  • lua.endpoints: add cash out endpoint (c0aeeb5)
  • lua.endpoints: add discard endpoint (7e25460)
  • lua.endpoints: add gamestate endpoint (4ceb27c)
  • lua.endpoints: add load endpoint (c3e3d0d)
  • lua.endpoints: add menu endpoint (8dba721)
  • lua.endpoints: add next_round endpoint (5ea895d)
  • lua.endpoints: add play endpoint (72636f4)
  • lua.endpoints: add rearrange endpoint (665d5c1)
  • lua.endpoints: add reroll endpoint (1fefae7)
  • lua.endpoints: add save endpoint (1b06580)
  • lua.endpoints: add screenshot endpoint (017e463)
  • lua.endpoints: add select endpoint (37e4dec)
  • lua.endpoints: add sell endpoint (5595b7e)
  • lua.endpoints: add set endpoint (8084d63)
  • lua.endpoints: add skip endpoint (3a2722e)
  • lua.endpoints: add start endpoint (f8fdd97)
  • lua.endpoints: add support for modifiers in the add endpoint (01eff36)
  • lua.endpoints: add types for args for various endpoints (d7bb418)
  • lua.utils: add BB_API global namespace for calling endpoints via /eval (abbec83)
  • lua.utils: add booster packs to gamestate (9a7a8d3)
  • lua.utils: add CardKey schema to openrpc.json (89cbda9)
  • lua.utils: add descriptions to openrpc.json enums (78812f7)
  • lua.utils: add gamestate.check_game_over() (19a0a51)
  • lua.utils: add gamestate.lua to utils (c13f56e)
  • lua.utils: add openrpc.json schema (fecb299)
  • lua.utils: add pack field to gamestate (4283eb5)
  • lua.utils: add request/response types (a930c90)
  • lua.utils: add SCHEMA_INVALID_VALUE error (c52b2e6)
  • lua.utils: add screenshot endpoint types (3264152)
  • lua.utils: add types for gamestate and endpoint (9b9283c)
  • lua.utils: improve enums in gamestate (3c1195a)
  • lua.utils: improve response and request types (9296b01)
  • lua.utils: move enums to enums.lua and add Card.Key enums (d477d66)
  • lua.utils: new simplify error codes (e7db3f5)
  • lua.utils: update types with new dispatcher and server fields (39d6f5c)
  • lua: add BalatroBot settings (4f73a0e)
  • lua: add close previous client socket on new connection (3684285)
  • lua: add debugger utils (6308827)
  • lua: add dispatcher module (a20359d)
  • lua: add error codes utils (58bf3fb)
  • lua: add errors for load and save (b784ffe)
  • lua: add health endpoint (0ec3b0c)
  • lua: add load and save endpoints (e9ba224)
  • lua: add server module (09e7b52)
  • lua: add test endpoints (c05f444)
  • lua: add validator module (430b436)
  • make host configurable via env var (0fc9b9b)
  • markdown format (f361c9c)
  • move checkpoint binaries to git lfs (5b3c513)
  • prototyping checkpoint system (7bdf5e2)
  • redeem voucher docs (8e894e0)
  • reroll shop types (40a9e33)
  • reroll_shop docs (845799c)
  • revert bloom string (b366f15)
  • scripts: add Balatro launchers for Linux, macOS, and Windows (fd5dcef)
  • shop condition based on timing (b713204)
  • stylua (8bbc51a)
  • tests for checkpointign (9c04ff6)
  • tests for redeem_voucher (5982d82)
  • track test checkpoints with git lfs (0ecbb43)
  • update balatrobot.lua (b90d772)
  • update game state with consumeables (2fb2cbc)
  • update to v1.0.0 (0fa8bf7)
  • updated types for redeem_voucher (9fe3e67)
  • use balatro launcher script based on OS in Makefile (c50fd03)
  • using checkpoints in test_shop (4c52efc)
  • utils.gamestate: fix rank and suit and add key field to Card (7d04404)
  • WIP save file manipulation (8cbae31)

Bug Fixes

  • add --debug flag to balatro.py (c40670b)
  • add GAME_OVER check to love.update (3919fa3)
  • add missing set fields in game state (ee92ac0)
  • add timeout to socket.recv (12d086a)
  • adjust balatro settings (866d201)
  • api: clear hand highlights before selecting new cards (9efb351)
  • balatrbot.platforms: add NotImplementedError for Linux and Windows (7e3d666)
  • balatrobot: increase timeout for health check (64511d7)
  • balatrobot: remove unused paths (1007aee)
  • buy card hook (#68) (6412506)
  • effect for c_eris (fd564ce)
  • fast profile for balatro (ac4eaa5), closes #83
  • fixtures: add $schema to fixtures schema (db1f2d6)
  • increase TCP socket timeout from 60s to 300s (de3ba54)
  • increase timeout for balatrobot client to 60 seconds (edf26e2)
  • kill processes on a specific port in balatro.py (b21058a)
  • long messages limit in luasocket (7d6168b)
  • lua.core: close server on error (030ff7c)
  • lua.core: trigger render on api using BB_RENDER variable (78b1285)
  • lua.endpoint: properly wait for SHOP state (eb1c924)
  • lua.endpoints: account for Credit Card joker via bankrupt_at (2132dee)
  • lua.endpoints: add check state loading for load endpoint (af50437)
  • lua.endpoints: add return after error in skip endpoint (96e4e44)
  • lua.endpoints: fix start endpoint check condition (95d230c)
  • lua.endpoints: fix test for add params validation types (89c71db)
  • lua.endpoints: fix type annotation for skip endpoint (da89ca8)
  • lua.endpoints: improve wait condition for play endpoint (3b905be)
  • lua.endpoints: properly check that the items in shop loaded (67f5808)
  • lua.endpoints: properly wait for ROUND_EVAL and SHOP states in load (19f3a21)
  • lua.endpoints: properly wait for ROUND_EVAL state (f2184e7)
  • lua.endpoints: remove card count condition from use endpoint (8dc5fed)
  • lua.endpoints: remove no_delete flag from events for which it is not needed (f5f9340)
  • lua.endpoints: short circuit load if controller is locked or state is not complete (d30a991)
  • lua.endpoints: skip materialize and check CONTROLLER state in add endpoint (82c1003)
  • lua.endpoints: suppress "Card area not instantiated" warnings during load (4ff9c59)
  • lua.endpoints: use of area.config.card_count which is more reliable (98bd561)
  • lua.endpoints: use port in temp file name in save and load endpoints (cec88fe)
  • lua.endpoints: wait for blind_select to properly finish (43ad5e1)
  • lua.utils: remove " Card" suffix from enhancement in gamestate (766d90c)
  • lua.utils: set the proper type for requires_state (integer[]?) (5e494b1)
  • lua.utils: use BB.DEBUGGER as prefix for debug messages in debugger.lua (149cdcd)
  • lua.utils: use Card.Value.Rank|Suit instead Rank|Suit (8174168)
  • lua: add missing test endpoint (557fab1)
  • lua: fix headless mode (2fa55be)
  • make use of shutil.move instead of os.rename (c908326)
  • prevent memory leaks generating UI descriptions (e8d62e1)
  • remove resize from screenshot (83876d7)
  • remove unused out of place test (163e4a8)
  • revert shop() -> cash_out() (a2555a4)
  • scripts: wait for port to be ready in launcher scripts (57508e7)
  • shop check (c77c52b)
  • skip tutorial (190ae71)
  • spelling for debuf to debuff (e18ebfe)
  • tmp fix for 8k luasocket buffer size (#103) (d6f6cde)
  • typo in field in game state (3f111b2)
  • update debuff name in game state (d2a4769)
  • update makefile to use new --ports option (3c76367)
  • update makefile to use the correct path for basedpyright (e02ae34)
  • use comma-separated list of ports (42a566a)
  • utils: add won field to gamestate (b80af60)
  • utils: improve gamestate get_blinds_info and make it public (5e4d071)
  • utils: improve gamestate get_blinds_info and make it public (5e4d071)
  • validate that index is an integer (e9ccc62)

Performance Improvements

  • lua.endpoints: go back to menu only if not already in menu (bc34e13)

Documentation

  • add assets for balatrobot, balatrollm, and balatrobench (d80fba1)
  • add audio option to docs for contributing (045bcf7)
  • add badges to readme (fdfdb7d)
  • add cli reference (266b51d)
  • add cli reference to mkdocs config (8cba067)
  • add docs/api.md (5fd345c)
  • add MIT license (6ee693c)
  • add pypi badge (accb2df)
  • add python syntax highlighting (abe7cf4)
  • add rearrange consumables to protocol api (d1ec66f)
  • add related projects and v1 warning (7be30b4)
  • add sell consumable endpoint to protocol-api.md (209b0d8)
  • add sell joker to protocol-api.md (ce99b11)
  • add stirby to contributors in balatrobot.json (3187e0a)
  • add use_consumable to protocol-api.md (20915c7)
  • cli: add hyprland config tip (f848dff)
  • cli: remove --parallel option (b870437)
  • contributing: add note about running tests separately (684dbcc)
  • contributing: add windows/linux (proton) support (e9807ad)
  • fix english grammar (d14d9b2)
  • fix formatting for contributing.md (987de25)
  • fix minor english issues (369372c)
  • installation: add version requirements (b567359)
  • lua.utils: add missing descriptions to enums (21f47c9)
  • lua.utils: be more explicit about supported modifiers (ffefcd2)
  • lua.utils: document error name conversion (98a72fa)
  • minor section rename in index.md (1bf0cc7)
  • remove pre-1.0 notice (4c232d0)
  • setup favicon and logo for the docs (c086549)
  • simplify the contributing guide (b3a729b)
  • update badges in readme (1353177)
  • update CLAUDE.md with new files and tests structure (72c6026)
  • update CLAUDE.md with new make commands (0f6c1e6)
  • update contributing.md with new instructions for running tests in parallel (44306dd)
  • update docs for new BalatroBot API (d80b9ba)
  • update installation guide with new launcher scripts (2b3eea4)
  • update links the from S1M0N38 to coder (7b77fae)
  • update the overview in README.md and update the main image (e471cf0)
  • update warning banner with new CLI (bb3b346)

Miscellaneous Chores

0.7.5 (2025-10-30)

Bug Fixes

  • prevent memory leaks generating UI descriptions (e8d62e1)

0.7.4 (2025-10-28)

Bug Fixes

  • add timeout to socket.recv (12d086a)

0.7.3 (2025-10-25)

Bug Fixes

  • use comma-separated list of ports (42a566a)

0.7.2 (2025-10-24)

Bug Fixes

  • increase TCP socket timeout from 60s to 300s (de3ba54)

0.7.1 (2025-10-23)

Bug Fixes

  • remove resize from screenshot (83876d7)

Documentation

0.7.0 (2025-10-23)

Features

  • add new description field to card objects (0a55df6)

Bug Fixes

  • typo in field in game state (3f111b2)

0.6.1 (2025-10-23)

Bug Fixes

  • increase timeout for balatrobot client to 60 seconds (edf26e2)

0.6.0 (2025-10-22)

Features

  • add --status option to show running balatro instances (bcfeb91)
  • add ante value to game state (f7193c4)
  • add audio flag to balatrobot (disabled by default) (9c2db00)
  • add balatro enums (fc8d6b4)
  • add balatro.sh script for running multiple instances (d66fe98)
  • add balatrobot logo (b95d1d1)
  • add blind_on_deck to game_state and ftm code (79da57f)
  • add card limit to joker game data (8cb99cf)
  • add cards argument to use_consumable (1775952)
  • add check and test case for whether a buy_and_use_card target can be used (dab8f19)
  • add decks and stakes enumns (d89942b)
  • add extensive logging to python code (56c7c80)
  • add hook for buy_card, should work with buy_and_use card (a6b8b0f)
  • add hook for joker rearrangement (c9fe966)
  • add hook for sell_consumable (e390761)
  • add hook for use_consumable (d54042c)
  • add rearrange consumeables endpoint (404de7d)
  • add rearrange jokers endpoint (b63c500)
  • add RearrangeConsumeablesArgs type (e7796cc)
  • add redeem_voucher (70e8cb0)
  • add render on api env var / flag (b96e623)
  • add reroll cost < dollars check (644f667)
  • add reroll shop action (1202866)
  • add sell consumable completion condition (dcff055)
  • add sell consumable endpoint (c467611)
  • add sell joker completion condition (e4b3b6e)
  • add sell joker endpoint (183db62)
  • add sell joker types (876a249)
  • add sell_joker hook for logging (44df912)
  • add settings.lua for configuring Balatro (4b36304)
  • add shop_idle() cond for actions that do not depart the shop (987e965)
  • add sort_id to card in game state (77bc507)
  • add state checking for use consumable with cards parameter (ec123d6)
  • add test-migrate target to Makefile (5c41d17)
  • add types for joker card limit and count (207c41b)
  • add types for sell consumable (b395430)
  • add use consumable endpoint (012a957)
  • add use_consumable completion condition (44cdcf7)
  • added tests and gamestate for reroll shop (4bc1b61)
  • api: add cashout API function (e9d86b0)
  • api: add comprehensive error handling and validation system (c00eca4)
  • api: add comprehensive function call logging system (38a3ff9)
  • api: add hands_left to current_round game state (79cec38)
  • api: add log_path optional param to start_run (e9b986c)
  • api: add screenshot API endpoint (165b58c)
  • api: add shop action support with next_round functionality (6bcab8a)
  • api: add shop booster field to game state (48c4fd6)
  • api: add shop jokers field to game state (ad062bb)
  • api: add shop vouchers field to game state (b998062)
  • api: game over and no discard left edge cases (5ad134a)
  • api: handle winning a round in play_hand_or_discard (975b0b7)
  • api: implement play_hand_or_discard action (2c0ae92)
  • api: improve cards selection ranges in use consumeables (b9ce462)
  • api: improve logging for function calls (8ba681e)
  • api: integrate logging system into main mod (3c4a09f)
  • api: new improved game state object (4e2f5ac)
  • api: new types for the G game state object (7a23f6f)
  • api: validate state in the usage of API functions (94a58b5)
  • better api errors (617cbc9)
  • bot: add standardized error codes enum (2c9fdaa)
  • bot: add TCP-based replay bot for JSONL files (b5b6cf8)
  • bot: replace Bot ABC with structured API client (3a70fde)
  • bots: improve replay script with proper CLI (e38cbd4)
  • checkpoints work (1e78386)
  • client: add port option to client (4c7b912)
  • client: add screenshot method (0ee8b8c)
  • created savefile-based checkpointing (73ab99f)
  • dev: add commit command with conventional commits spec (95e4067)
  • dev: add Makefile (02c569f)
  • dev: add test command and improve process detection (344d1d3)
  • docs and types for checkpointing (5efff03)
  • enhance rearrange jokers field in game state (e72c78e)
  • examples: update example bot to use new client API (73bf5b7)
  • finish buy_and_use_card docs (c644bab)
  • hook reroll_shop (0e533ae)
  • implement game speed up (b46995f)
  • improve CLI for replay bot (077178c)
  • improved graphics settings for screenshots (86af829)
  • init lua code socket server (85b5249)
  • log: add hand rearrange logging (WIP) (7ea6b37)
  • log: add JSONLLogEntry model and flexible arguments field (3e8307a)
  • log: add log module functions to Log type (732039c)
  • log: add logging to BalatroClient connection and API calls (3776c9c)
  • log: add types for log module (719e3ff)
  • log: hook for rearrange_consumeables (06f5be7)
  • log: improved logging system (#39) (919f59d)
  • log: ts before and after for each log entry and refactoring (40fd9ba)
  • make host configurable via env var (0fc9b9b)
  • markdown format (f361c9c)
  • move checkpoint binaries to git lfs (5b3c513)
  • port balatrobot to new smods format (bb24993)
  • prototyping checkpoint system (7bdf5e2)
  • redeem voucher docs (8e894e0)
  • remove botlogger and simplify lua code (e3dcbd5)
  • remove start/stop balatro methods (76a431a)
  • reroll shop types (40a9e33)
  • reroll_shop docs (845799c)
  • revert bloom string (b366f15)
  • shop condition based on timing (b713204)
  • skip initial splash screen when starting Balatro (58922f2)
  • stylua (8bbc51a)
  • tests for checkpointign (9c04ff6)
  • tests for redeem_voucher (5982d82)
  • tests: add TCP client support to test infrastructure (ff935f3)
  • track test checkpoints with git lfs (0ecbb43)
  • update Bot with types and new abc methods (da47254)
  • update example bot to the new Bot class (a996b06)
  • update game state with consumeables (2fb2cbc)
  • update mod entry point to new lua code (5158a56)
  • update models to match lua types (0a224ea)
  • update MyFirstBot to use Decks and Stakes enums (6c0db6f)
  • updated types for redeem_voucher (9fe3e67)
  • using checkpoints in test_shop (4c52efc)
  • utils: add completion conditions table in utils (a36f9eb)
  • utils: add sets_equal function (133b150)
  • WIP save file manipulation (8cbae31)

Bug Fixes

  • action params format (5478ede)
  • add missing set fields in game state (ee92ac0)
  • adjust balatro settings (866d201)
  • api: add card count validation to play_hand_or_discard function (0072a0e)
  • api: add event queue threshold check to skip_or_select_blind (91e4613)
  • api: add event queue threshold check to start_run condition (ea210ed)
  • api: add event queue threshold to skip_or_select_blind (f9c6f04)
  • api: add seed warning for non-reproducible runs (b996f45)
  • api: clear hand highlights before selecting new cards (9efb351)
  • api: correct blind state key from Large to Big in comment (f7e5c42)
  • api: correct socket type references from UDP to TCP (149d314)
  • api: prevent skipping Boss blind in skip_or_select_blind (dc66e7e)
  • api: remove misleading comment and fix typo in logging system (859a50a)
  • buy card hook (#68) (6412506)
  • ci: correct YAML indentation in deploy docs workflow (ca2d797)
  • client: increase timeout to 30s (6f315e1)
  • client: make arguments optional in send_message (56419f5)
  • dev: remove --check flag from mdformat command (3f710b8)
  • effect for c_eris (fd564ce)
  • fast profile for balatro (ac4eaa5), closes #83
  • include ActionSchema in init.py exporting (72b06ab)
  • key for G.GAME.skips (d99b4c9)
  • log: update type definitions to match implementation (4bbe051)
  • long messages limit in luasocket (7d6168b)
  • lua type for BalatrobotConfig (2ae6055)
  • make use of shutil.move instead of os.rename (c908326)
  • reduce default mod dt to 4/60 (21ea63b)
  • remove set_ranks and align_cards from rearrange_hand (7ae211e)
  • remove unused out of place test (163e4a8)
  • revert shop() -> cash_out() (a2555a4)
  • shop check (c77c52b)
  • skip tutorial (190ae71)
  • spelling for debuf to debuff (e18ebfe)
  • tmp fix for 8k luasocket buffer size (#103) (d6f6cde)
  • update debuff name in game state (d2a4769)
  • utils: check if GAME is nil in get_game_state (d714c83)
  • utils: prevent UI-related keys from being sanitized (d37c2aa)
  • validate that index is an integer (e9ccc62)

Documentation

  • add api-protocol page to the docs (11a7971)
  • add audio option to docs for contributing (045bcf7)
  • add badges to readme (fdfdb7d)
  • add balatro documentation as git submodule (5275d1c)
  • add CLAUDE.md with development guidelines and commands (be7898e)
  • add comprehensive BalatroBot Python API reference (548c0c3)
  • add comprehensive logging systems documentation (b09d830)
  • add contributing.md (b149388)
  • add dev env setup to bot-development.md (f8a5b49)
  • add docs generated by llm (1f5ef80)
  • add homepage to docs (77df9d6)
  • add log_path parameter to start_run (4c74244)
  • add logo configuration to mkdocs theme (7ba1413)
  • add MIT license (6ee693c)
  • add pre-1.0 development warnings to README and docs (3d70496)
  • add project link to readme (bddbad1)
  • add rearrange consumables to protocol api (d1ec66f)
  • add sell consumable endpoint to protocol-api.md (209b0d8)
  • add sell joker to protocol-api.md (ce99b11)
  • add use_consumable to protocol-api.md (20915c7)
  • api: add standardized error codes and improve formatting (5ca9813)
  • api: add TODO comment for additional shop actions (34071a2)
  • api: refactor API protocol documentation for TCP implementation (411268b)
  • bot: init version for new balatrobot python package (a29996e)
  • clean up formatting and mkdocs configuration (4ec6e21)
  • configure mkdocs-llmstxt plugin for LLM-friendly documentation (aaf9b38)
  • dev: add configuration system documentation (16933cd)
  • dev: clarify commit command formatting guidelines (12130f2)
  • dev: improve CLAUDE.md development commands and testing guidance (2883a6d)
  • dev: improve code documentation and comments (b06c259)
  • dev: refine commit command workflow instructions (c3340e6)
  • dev: update commit command co-author handling (b554b44)
  • dev: update commit command scope and co-author docs (c089ff5)
  • dev: update test suite metrics after shop API addition (8c49a7d)
  • dev: update test suite metrics in CLAUDE.md (cc5b159)
  • dev: update test suite statistics (dcf44fe)
  • enhance mkdocs config (8a1714e)
  • expand documentation with new references and best practices (f4f6003)
  • fix english grammar (d14d9b2)
  • fix mkdocs palette configuration format (0756cd3)
  • improve bot-development page (987e7eb)
  • improve MkDocs API documentation formatting (7a537c2)
  • remove content from troubleshooting (8f454b4)
  • remove emoji from docs (b5acd72)
  • remove empty troubleshooting page and references (b69d2ed)
  • remove legacy content in the README (42cbde3)
  • remove legacy pages from mkdocs.yml (2947b32)
  • remove legacy pages from the docs (53cb13b)
  • remove pre-1.0 notice (4c232d0)
  • remove redundant commands and refine existing ones (a1e4d07)
  • remove table of contents from md files (249ec7e)
  • renamed log file and provide suggestion for Timeout errors (ce6aa6d)
  • replace troubleshooting with LLM documentation links on homepage (b632077)
  • restructure documentation and configure mkdocstrings (e89e34a)
  • simplify docs and add mermaid diagrams (5fca88c)
  • simplify the contributing guide (b3a729b)
  • tmp fix for line numbers in code blocks (939146a)
  • update API documentation page titles (ab79ef3)
  • update badges in readme (1353177)
  • update balatrobot api with new models (d611270)
  • update CLAUDE.md with new make commands (0f6c1e6)
  • update CLAUDE.md with test prerequisites and workflow (f7436e0)
  • update contributing.md with new instructions for running tests in parallel (44306dd)
  • update docs themes (6059519)
  • update docs/protocol-api.md with new sign for rearrange_hand (6eff295)
  • update installation guide (6afc3cd)
  • update links the from S1M0N38 to coder (7b77fae)
  • update README (325dd20)
  • update README.md with docs and contributors (ba2c9da)
  • update the path of the example bot (023dbb0)
  • updpate bot-development docs page (c687417)
  • use mkdocs admonition for warning (11a0b0e)

0.5.0 (2025-07-17)

Features

  • api: add hands_left to current_round game state (79cec38)
  • bot: add TCP-based replay bot for JSONL files (b5b6cf8)
  • log: add JSONLLogEntry model and flexible arguments field (3e8307a)
  • log: add logging to BalatroClient connection and API calls (3776c9c)

Bug Fixes

  • api: add seed warning for non-reproducible runs (b996f45)
  • api: prevent skipping Boss blind in skip_or_select_blind (dc66e7e)
  • client: make arguments optional in send_message (56419f5)

Documentation

  • add comprehensive logging systems documentation (b09d830)
  • clean up formatting and mkdocs configuration (4ec6e21)
  • improve MkDocs API documentation formatting (7a537c2)

0.4.1 (2025-07-14)

Documentation

  • configure mkdocs-llmstxt plugin for LLM-friendly documentation (aaf9b38)
  • remove empty troubleshooting page and references (b69d2ed)
  • replace troubleshooting with LLM documentation links on homepage (b632077)
  • update API documentation page titles (ab79ef3)

0.4.0 (2025-07-14)

Features

  • api: add comprehensive error handling and validation system (c00eca4)
  • bot: add standardized error codes enum (2c9fdaa)
  • bot: replace Bot ABC with structured API client (3a70fde)
  • examples: update example bot to use new client API (73bf5b7)
  • tests: add TCP client support to test infrastructure (ff935f3)

Bug Fixes

  • api: add card count validation to play_hand_or_discard function (0072a0e)
  • api: add event queue threshold check to start_run condition (ea210ed)
  • api: correct socket type references from UDP to TCP (149d314)
  • ci: correct YAML indentation in deploy docs workflow (ca2d797)
  • dev: remove --check flag from mdformat command (3f710b8)

Documentation

  • add comprehensive BalatroBot Python API reference (548c0c3)
  • api: add standardized error codes and improve formatting (5ca9813)
  • api: refactor API protocol documentation for TCP implementation (411268b)
  • bot: init version for new balatrobot python package (a29996e)
  • dev: improve CLAUDE.md development commands and testing guidance (2883a6d)
  • dev: update test suite statistics (dcf44fe)
  • restructure documentation and configure mkdocstrings (e89e34a)

0.3.0 (2025-07-12)

Features

  • api: add comprehensive function call logging system (38a3ff9)
  • api: integrate logging system into main mod (3c4a09f)

Bug Fixes

  • api: add event queue threshold check to skip_or_select_blind (91e4613)
  • api: correct blind state key from Large to Big in comment (f7e5c42)
  • api: remove misleading comment and fix typo in logging system (859a50a)

Documentation

  • api: add TODO comment for additional shop actions (34071a2)
  • dev: update commit command scope and co-author docs (c089ff5)
  • dev: update test suite metrics in CLAUDE.md (cc5b159)

0.2.0 (2025-07-11)

Features

  • add blind_on_deck to game_state and ftm code (79da57f)
  • add extensive logging to python code (56c7c80)
  • api: add cashout API function (e9d86b0)
  • api: add shop action support with next_round functionality (6bcab8a)
  • api: game over and no discard left edge cases (5ad134a)
  • api: handle winning a round in play_hand_or_discard (975b0b7)
  • api: implement play_hand_or_discard action (2c0ae92)
  • api: improve logging for function calls (8ba681e)
  • api: validate state in the usage of API functions (94a58b5)
  • dev: add commit command with conventional commits spec (95e4067)
  • dev: add test command and improve process detection (344d1d3)
  • implement game speed up (b46995f)
  • init lua code socket server (85b5249)
  • update mod entry point to new lua code (5158a56)

Bug Fixes

  • action params format (5478ede)
  • include ActionSchema in init.py exporting (72b06ab)
  • key for G.GAME.skips (d99b4c9)
  • lua type for BalatrobotConfig (2ae6055)
  • reduce default mod dt to 4/60 (21ea63b)

Documentation

  • add CLAUDE.md with development guidelines and commands (be7898e)
  • dev: clarify commit command formatting guidelines (12130f2)
  • dev: improve code documentation and comments (b06c259)
  • dev: refine commit command workflow instructions (c3340e6)
  • dev: update commit command co-author handling (b554b44)
  • dev: update test suite metrics after shop API addition (8c49a7d)
  • remove redundant commands and refine existing ones (a1e4d07)
  • renamed log file and provide suggestion for Timeout errors (ce6aa6d)
  • update CLAUDE.md with test prerequisites and workflow (f7436e0)

0.1.0 (2025-07-06)

Features

  • add balatrobot logo (b95d1d1)
  • add decks and stakes enumns (d89942b)
  • port balatrobot to new smods format (bb24993)
  • remove botlogger and simplify lua code (e3dcbd5)
  • remove start/stop balatro methods (76a431a)
  • update Bot with types and new abc methods (da47254)
  • update example bot to the new Bot class (a996b06)
  • update MyFirstBot to use Decks and Stakes enums (6c0db6f)

Documentation

  • add api-protocol page to the docs (11a7971)
  • add dev env setup to bot-development.md (f8a5b49)
  • add docs generated by llm (1f5ef80)
  • add homepage to docs (77df9d6)
  • add logo configuration to mkdocs theme (7ba1413)
  • enhance mkdocs config (8a1714e)
  • expand documentation with new references and best practices (f4f6003)
  • fix mkdocs palette configuration format (0756cd3)
  • improve bot-development page (987e7eb)
  • remove content from troubleshooting (8f454b4)
  • remove emoji from docs (b5acd72)
  • remove legacy content in the README (42cbde3)
  • remove legacy pages from mkdocs.yml (2947b32)
  • remove legacy pages from the docs (53cb13b)
  • remove table of contents from md files (249ec7e)
  • simplify docs and add mermaid diagrams (5fca88c)
  • update docs themes (6059519)
  • update installation guide (6afc3cd)
  • update README (325dd20)
  • update README.md with docs and contributors (ba2c9da)
  • update the path of the example bot (023dbb0)
  • updpate bot-development docs page (c687417)