[claude] Bannerlord M1 — GABS Observer Mode (Passive Lord) (#1093) #1124
Reference in New Issue
Block a user
Delete Branch "claude/issue-1093"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Fixes #1093
What this does
Implements M1 of Project Bannerlord (#1091): Passive Lord — Observer Mode via GABS.
Timmy can now read full Bannerlord game state via the GABS TCP JSON-RPC bridge and journal it to
memory/bannerlord/journal.md.Changes
src/config.pygabs_host,gabs_port,gabs_timeout,gabs_poll_interval,gabs_journal_path. Off by default (gabs_enabled=False).src/integrations/bannerlord/gabs_client.pyGabsClient— synchronous TCP JSON-RPC 2.0 client. Exposesget_game_state(),get_player(),get_player_party(),list_kingdoms(). RaisesGabsErroron any failure.src/integrations/bannerlord/observer.pyBannerlordObserver— asyncobserve(days=N)loop. Polls GABS everygabs_poll_intervalseconds, formats game state into Markdown journal entries, and stops after N unique in-game days. Degrades gracefully when GABS is unreachable.tests/integrations/test_gabs_observer.pyobserve(days=N)stop condition.Usage
Tests
Next steps (M2)