The JAWL (Just A While Loop) framework is an asynchronous Python-based system designed for event-driven AI agents. It utilizes an Event-Driven ReAct Loop and a hybrid Vector-Graph RAG memory system, combining Qdrant and KuzuDB for semantic and structural data storage. The architecture is divided into four layers: a state layer for passive caching, a database layer for long-term memory, an interface layer for external plugins, and an agent core for high-level logic.
To optimize API costs, the framework implements a local Event Bus that manages model wake-up cycles based on event priority. Events are categorized from BACKGROUND and LOW to CRITICAL, with critical events triggering an immediate agent response. The system also incorporates a hybrid RAG approach where vector search results are cross-resolved with graph nodes to maintain logical chains and entities.
The framework supports task delegation to specialized background sub-agents, such as CODER, WEB_RESEARCHER, and QA_ENGINEER, who operate on cheaper, faster models like Gemini 3.5 Flash Lite. These sub-agents work in isolated stateless ReAct cycles and return results as Markdown reports. Additionally, the system features a Deploy Sessions mechanism for safe code self-modification, utilizing Copy-on-Write backups and automated testing via compileall and pytest to ensure stability with automatic rollback capabilities.
JAWL is distributed under the MIT license and its source code, architectural diagrams, and documentation are available on GitHub.

