--- name: intent-based-architecture description: Intent-based architecture patterns for the snow_trail_sdl game engine. Load when adding cross-system communication, new systems to the main loop, changing game mode logic (editor/dialog/gameplay), or working with camera, input, or mode-switching. Systems communicate through typed intent queues — no direct cross-system function calls. --- # Intent-Based Architecture Skill Read the architecture document at `docs/intent-based-architecture.md` (resolve relative to the project root `/home/jonas/projects/snow_trail_sdl/`) and follow its patterns when: - Adding cross-system communication (use intents, not direct function calls) - Adding new systems to the main loop - Changing how game modes work (editor, dialog, gameplay) - Working with camera, input, or mode-switching logic Key rule: **systems communicate through typed intent data in shared queues** — producers insert intents, consumers process and remove them. No system calls another system's functions directly.