Commit Graph

22 Commits

Author SHA1 Message Date
scawful
c77ca503ca feat(dungeon): add z3ed dungeon emulator commands and unified layout
- Introduced new commands for dungeon editing, including exporting room data, listing objects, and setting room properties.
- Implemented a hex viewer component for inspecting ROM data in a hexadecimal format.
- Updated the tool dispatcher to handle new dungeon commands and integrated them into the CLI.
- Enhanced the main menu and unified layout to include the hex viewer and improved navigation.
- Refactored existing components for better state management and event handling.

Benefits:
- Expanded functionality for dungeon editing and ROM inspection.
- Improved user experience with new tools and streamlined navigation.
2025-10-10 20:34:12 -04:00
scawful
6a49f7defa feat: Introduce mock ROM mode for testing without actual ROM files
- Added a new feature to the `z3ed` AI agent allowing testing in mock ROM mode, which creates a minimal valid ROM structure with embedded labels but no actual game data.
- Updated the `agent_test_suite.sh` script to default to mock ROM mode for easier testing.
- Introduced `--mock-rom` command line flag to enable mock ROM mode in various agent commands.
- Enhanced documentation to cover the usage and benefits of mock ROM mode for CI/CD and development testing.
- Implemented necessary changes in the codebase to support mock ROM initialization and label management.
2025-10-10 17:10:09 -04:00
scawful
8688f0c502 feat: Enhance Agent Chat History Popup with Retro Animations
- Introduced retro-style animations including pulsing borders, scanline effects, and glitch animations to the Agent Chat History Popup, enhancing visual appeal.
- Updated message display with terminal-inspired styling, including color-coded sender labels and retro separators.
- Improved header design with a pulsing glow effect and animated status indicators for unread messages, enriching user interaction.
- Refactored drawing methods to accommodate new visual effects while maintaining existing functionality.
2025-10-06 01:33:08 -04:00
scawful
ffddb208c6 refactor: Revamp CLI Structure and Command Handling
- Introduced a new CLI structure by creating cli.cc and cli.h files, enhancing command organization and modularity.
- Updated command handling to improve the setup and execution of various CLI commands, including AI agent interactions and ROM operations.
- Replaced the deprecated modern_cli.h with a more streamlined approach, ensuring better maintainability and clarity in command definitions.
- Adjusted CMake configuration to reflect the new file structure and included additional proto files for gRPC services, supporting enhanced functionality.
- Enhanced the TUI components for improved user experience, including better navigation and command execution flow.
2025-10-05 23:44:14 -04:00
scawful
8b9f838054 feat: Add GUI Automation Tool for Tile Placement
- Introduced the HandleGuiPlaceTileCommand function to facilitate tile placement via GUI automation, enhancing the tool's capabilities for user interaction.
- Updated the ToolDispatcher to include the new command, allowing for seamless integration into the existing command structure.
- Enhanced the AgentChatWidget to initialize default labels for resource tools, improving the user experience with visual feedback on label loading status.
- Improved error handling and user messaging for better clarity during tile placement operations.
2025-10-05 06:04:18 -04:00
scawful
019c20e749 feat: Enhance z3ed networking documentation and CLI capabilities
- Updated NETWORKING.md to reflect the new versioning and provide a comprehensive overview of the z3ed networking, collaboration, and remote access features.
- Introduced detailed architecture descriptions, including communication layers and core components for collaboration.
- Added new CLI commands for hex and palette manipulation, enhancing the functionality of the z3ed CLI.
- Implemented a TODO management system within the CLI for better task tracking and execution planning.
- Improved README.md to include new CLI capabilities and enhancements related to the TODO management system.
2025-10-05 01:15:15 -04:00
scawful
eec9f84fb0 refactor: Update CMake configurations and enhance TODO management features
- Replaced `${CMAKE_SOURCE_DIR}` with `${PROJECT_SOURCE_DIR}` in CMake files for consistent path handling.
- Introduced new `todo_commands` and `todo_manager` components to manage TODO items, including creation, listing, updating, and deletion functionalities.
- Added detailed implementations for handling TODO commands in the CLI, improving task management capabilities.
- Enhanced the `TodoManager` class to support persistence and execution planning for TODO items.
- Updated CMake configurations to include new source files related to TODO management, ensuring proper integration into the build system.
2025-10-05 00:19:57 -04:00
scawful
429506e503 feat: Integrate unified gRPC server for enhanced service management
- Added `UnifiedGRPCServer` class to host both ImGuiTestHarness and ROM service, allowing simultaneous access to GUI automation and ROM manipulation.
- Implemented necessary header and source files for the unified server, including initialization, start, and shutdown functionalities.
- Updated CMake configurations to include new source files and link required gRPC libraries for the unified server.
- Enhanced existing services with gRPC support, improving overall system capabilities and enabling real-time collaboration.
- Added integration tests for AI-controlled tile placement, validating command parsing and execution via gRPC.
2025-10-04 23:14:09 -04:00
scawful
ec88f087a2 feat: Add AI GUI controller and vision action refiner for enhanced automation
- Introduced `AIGUIController` class to manage AI-driven GUI automation with vision feedback, enabling natural language command execution and iterative action refinement.
- Implemented `VisionActionRefiner` class to analyze screenshots and refine actions based on visual feedback, improving action success rates.
- Added header and implementation files for both classes, along with necessary methods for screenshot analysis, action verification, and UI element location.
- Updated CMake configuration to include new source files for the AI GUI controller and vision action refiner functionalities.
2025-10-04 23:09:59 -04:00
scawful
7be949b30f feat: Implement gRPC ROM service for remote manipulation
- Added `RomServiceImpl` class to facilitate remote ROM operations, including reading/writing ROM data, managing versions, and submitting proposals.
- Integrated gRPC support for real-time collaboration and remote access to ROM functionalities.
- Updated `README.md` to document the new gRPC ROM service and its capabilities.
- Enhanced CMake configuration to include new source files for the gRPC implementation and related services.
2025-10-04 22:51:13 -04:00
scawful
13bbe8078a feat: Enhance GUI action generation and testing for AI tile placement
- Introduced `GuiActionGenerator` class to convert high-level AI actions into executable GUI test scripts, supporting JSON output for automated testing.
- Added comprehensive test suite for AI tile placement commands, validating command parsing and generated test scripts.
- Updated `README.md` to reflect recent enhancements and completed features in the project.
- Improved CMake configuration to include new source files for GUI action generation and related services.
2025-10-04 22:23:31 -04:00
scawful
61f1d6fbac feat: Update function schemas and system prompt for enhanced agent capabilities
- Revised function schemas in `function_schemas.json` to streamline resource listing and searching, including new parameters for dungeon and overworld queries.
- Introduced a new system prompt in `system_prompt_v3.txt` to improve the agent's proactive exploration and multi-tool chaining strategies.
- Updated `GeminiAIService` to support the new prompt version and enhanced function calling logic for better tool integration.
- Added tests for multimodal image analysis and error handling in `test_gemini_vision.cc` to ensure robust functionality.
2025-10-04 22:14:04 -04:00
scawful
f38946118c feat: Implement message handling commands for agent tool
- Added functionality for listing, reading, and searching messages in the ROM.
- Introduced new commands: `message-list`, `message-read`, and `message-search` with appropriate parameters and descriptions.
- Enhanced the CLI to support these commands, including JSON and text output formats.
- Updated system prompts and function schemas to reflect the new message handling capabilities.
2025-10-04 20:53:13 -04:00
scawful
acada1bec5 feat: Add proposal executor for agent response handling and command execution 2025-10-04 05:18:09 -04:00
scawful
83f6f50326 feat: Update CMake presets and agent configuration for improved build options and interactive chat session experience 2025-10-04 01:04:24 -04:00
scawful
e1304384bc feat: Add simple chat session implementation and integrate into build system 2025-10-04 00:02:01 -04:00
scawful
602f1beec5 feat: Consolidate AI agent build flags and enhance JSON support handling 2025-10-03 23:19:37 -04:00
scawful
db227c9de5 feat: Update CMake configuration for Abseil and gRPC, enhance modular build support, and add CLI flag handling 2025-10-03 20:24:58 -04:00
scawful
c3eaace72c feat: Implement modular build system for Yaze
- Added option to enable modular build with `YAZE_USE_MODULAR_BUILD`.
- Updated CMake configuration to support modular libraries for core, editor, graphics, GUI, and emulator functionalities.
- Refactored existing libraries to separate concerns and improve build times.
- Introduced new utility library `yaze_util` for low-level utilities.
- Adjusted CI and release workflows to accommodate the new build system.
- Updated various source files to reflect new include paths and modular structure.
- Enhanced YAML configuration handling in the agent component.
2025-10-03 18:32:51 -04:00
scawful
42c64db904 Add YAML support and enhance AI service context handling
- Integrated yaml-cpp library into the project for YAML file parsing.
- Updated ConversationalAgentService to set ROM context in AI services.
- Extended AIService interface with SetRomContext method for context injection.
- Implemented SetRomContext in GeminiAIService and OllamaAIService.
- Enhanced PromptBuilder to load resource catalogues from YAML files.
- Added functions to parse commands, tools, examples, and tile references from YAML.
- Improved error handling for loading YAML files and added search paths for catalogues.
- Updated CMake configuration to fetch yaml-cpp if not found.
- Modified vcpkg.json to include yaml-cpp as a dependency.
2025-10-03 16:44:29 -04:00
scawful
3715ae98eb Enhance agent chat functionality with ROM context support and structured message rendering 2025-10-03 14:46:22 -04:00
scawful
ba9f6533a4 Enhance AI Agent Integration and Tool Command Functionality
- Added support for JSON in CMake configuration for AI integrations.
- Implemented new tool commands: resource-list and dungeon-list-sprites.
- Created ToolDispatcher for managing tool command execution.
- Refactored CMake structure to include agent sources and improve build configuration.
- Updated agent roadmap and README documentation to reflect current status and next steps.
2025-10-03 13:34:54 -04:00