Commit Graph

2756 Commits

Author SHA1 Message Date
scawful
dec8314a55 feat: Enhance project file management and agent settings
- Added support for loading and saving agent settings in the project format, including AI provider, model, and custom prompts.
- Implemented RecentFilesManager for managing recent files with functionality to save and load recent file paths.
- Introduced a new ProjectFileEditor for editing .yaze project files with syntax highlighting and validation features.
- Enhanced the AgentChatWidget with file editing capabilities, allowing users to open, create, and save files directly within the interface.
- Improved configuration directory handling and path expansion for better cross-platform compatibility.
2025-10-04 21:27:39 -04:00
scawful
85bc14e93e feat: Add overworld sprite and entrance commands to agent tool
- Implemented new commands for listing overworld sprites and retrieving entrance details.
- Enhanced CLI functionality to support filtering by map, world, and sprite ID with JSON and text output formats.
- Introduced tile statistics analysis command for detailed tile usage insights.
- Updated function schemas and system prompts to reflect the new commands and their parameters.
2025-10-04 21:27:10 -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
b3fee1b62e feat: Update CMake configuration and vcpkg dependencies
- Enhanced httplib status messages to clarify header-only mode and AI feature requirements.
- Added zlib as a dependency in vcpkg.json to support future compression features.
2025-10-04 20:34:54 -04:00
scawful
dc8ac9a9e4 feat: Configure httplib for Windows compatibility in CMake
- Added settings to disable optional compression features in httplib to resolve Windows build issues.
- Implemented header-only mode for httplib to streamline integration.
- Included status messages to inform users about httplib configuration during the build process.
2025-10-04 20:13:14 -04:00
scawful
1831ddfc49 feat: Revamp AgentChatWidget with modern UI and enhanced functionality
- Introduced a modern menu bar and tabbed interface for improved user experience.
- Added agent configuration options, including AI provider selection and behavior settings.
- Implemented Z3ED command panel for executing commands and managing proposals.
- Enhanced collaboration features with ROM synchronization, snapshot sharing, and proposal management.
- Updated metrics display for session statistics and improved toast notifications for user feedback.
- Refactored code for better organization and maintainability.
2025-10-04 20:12:02 -04:00
scawful
712ed8dbf4 feat: Add Windows compatibility for curl command execution in GeminiAIService
- Implemented conditional compilation for executing curl commands using _popen and _pclose on Windows.
- Ensured consistent handling of command execution across different operating systems.
- Updated response generation methods to maintain functionality in Windows environments.
2025-10-04 20:00:31 -04:00
scawful
8f8caacece feat: Enhance Windows build instructions and troubleshooting guidance
- Added comprehensive Windows support details, including Visual Studio integration and environment verification.
- Introduced quick start commands for building with different configurations (Basic Editor, AI Features, Full Build).
- Expanded requirements section to clarify essential and optional dependencies.
- Included detailed troubleshooting steps for common Windows build issues, with solutions for specific errors.
- Updated CMake presets table to reflect new build options and configurations.
2025-10-04 19:59:07 -04:00
scawful
3cdeeac5a3 feat: Expand network collaboration capabilities and enhance agent functionality
- Updated NetworkCollaborationCoordinator to support advanced features including ROM synchronization, snapshot sharing, and proposal management.
- Enhanced message handling for chat, ROM sync, snapshots, proposals, and AI queries with structured payloads.
- Introduced new callback mechanisms for handling incoming events related to ROM sync, snapshots, proposals, and AI responses.
- Improved documentation in the agent directory to reflect new functionalities and usage examples for network collaboration.
- Added comprehensive README for the Agent Editor module detailing architecture, usage, and advanced features.
2025-10-04 19:57:27 -04:00
scawful
588db01df6 feat: Improve CMake configuration and build environment verification
- Enabled JSON support by default in CMake to resolve Windows build issues.
- Added checks for the existence of the JSON library and its target, providing clear error messages if missing.
- Updated README with instructions for building with AI features.
- Enhanced the build environment verification script for better feedback on setup issues and added checks for agent folder structure.
- Introduced new CMake presets for AI-enabled builds and collaboration support.
2025-10-04 19:43:05 -04:00
scawful
226bcf8686 feat: Add agent folder structure verification and improve CMake cache cleaning
- Introduced Test-AgentFolderStructure function to verify the presence of required agent files and check for old structure indicators.
- Enhanced Clean-CMakeCache function to provide better error handling and clean additional CMake-generated files.
- Updated build process to include agent folder structure checks before CMake configuration.
2025-10-04 19:16:26 -04:00
scawful
5fe73657c3 agent editor include fixes 2025-10-04 19:13:41 -04:00
scawful
c49ef479e5 fix: Correct indentation and formatting in prompt_catalogue.yaml for better readability
- Adjusted indentation for usage notes and descriptions in the resource-list and resource-search tools.
- Ensured consistent formatting across command arguments for clarity.
2025-10-04 17:50:12 -04:00
scawful
b54f4b99dd feat: Refactor agent-related components for improved collaboration and chat management
- Moved agent chat history codec and chat widget to a dedicated agent directory for better organization.
- Introduced AgentEditor class to manage chat, collaboration, and network coordination.
- Updated EditorManager to utilize the new AgentEditor for handling chat and collaboration features.
- Enhanced collaboration capabilities with local and network session management.
- Integrated new agent collaboration coordinator for managing collaborative sessions.
- Improved CMake configuration to include new agent source files and dependencies.
2025-10-04 17:47:23 -04:00
scawful
fbbe911ae0 feat: Expand collaborative session capabilities in Z3ED documentation
- Updated README.md to include detailed instructions for both local and network collaboration modes.
- Added setup requirements and steps for starting a collaboration server using Node.js.
- Enhanced feature descriptions for real-time collaboration, session management, and participant tracking.
- Improved clarity on how to host and join sessions in both collaboration modes.
2025-10-04 17:31:36 -04:00
scawful
cc99fc2ae9 feat: Enhance AgentChatWidget with network collaboration features and UI improvements
- Added support for selecting between local and network collaboration modes in the AgentChatWidget.
- Implemented a UI for entering server URL and managing session details.
- Updated collaboration state management to include server URL and connection status.
- Improved layout of the collaboration panel with a table for session details and controls.
- Integrated a simple WebSocket client for handling network communication.
- Added CLI commands for starting and checking the status of the collaboration server.
2025-10-04 17:29:48 -04:00
scawful
0b29af5f2b feat: Add network collaboration coordinator for real-time collaboration features
- Introduced NetworkCollaborationCoordinator class to manage WebSocket connections for collaborative sessions.
- Implemented session management functions: HostSession, JoinSession, and LeaveSession.
- Added message handling for chat messages and participant updates.
- Updated CMake configuration to include the new network collaboration source files.
- Integrated a stub WebSocket client for initial functionality, with plans for future enhancements.
2025-10-04 17:18:51 -04:00
scawful
f182833afe feat: Implement screenshot capture functionality for specific regions and active windows in screenshot_utils
- Added CaptureHarnessScreenshotRegion function to capture a specified region of the renderer output.
- Introduced CaptureActiveWindow and CaptureWindowByName functions to capture screenshots of the currently active ImGui window or a specific window by name.
- Updated screenshot_utils.h to include new CaptureRegion struct and corresponding function declarations.
- Enhanced EditorManager to utilize the new capture modes based on user selection in the AgentChatWidget.
2025-10-04 17:08:36 -04:00
scawful
5f2c72bfc7 feat: Enhance AgentChatWidget with multimodal capture modes and collaboration state management 2025-10-04 17:02:13 -04:00
scawful
59ef5fb8bf feat: Add collaborative chat sessions and multimodal vision support in Z3ED 2025-10-04 16:56:43 -04:00
scawful
0cc420e53e feat: Update log level check to use YAZE_DEBUG constant 2025-10-04 16:52:43 -04:00
scawful
2c74f08f4c feat: Add support for test discovery and organization in CMake configuration 2025-10-04 16:37:13 -04:00
scawful
37269e763a feat: Enable Z3ED build option in CI configuration 2025-10-04 16:31:13 -04:00
scawful
16a7b855ac feat: Enhance AutoWidgetScope with proper destructor and streamline label extraction 2025-10-04 16:30:56 -04:00
scawful
867fa820ba feat: Add job configuration to build presets and link yaze_test_support in test CMakeLists 2025-10-04 16:30:12 -04:00
scawful
b5880d6ee4 feat: Replace util::logf with LOG_INFO for performance and usage tracking 2025-10-04 16:30:01 -04:00
scawful
0176a66b7e feat: Enable Unity builds for faster compilation
- Added an option to enable Unity (Jumbo) builds in CMake.
- Updated CMakeLists.txt to conditionally set CMAKE_UNITY_BUILD and batch size.
- Removed outdated analysis documentation for overworld implementation.
- Deleted z3ed resources YAML file as it is no longer needed.
- Refactored CMake files to modularize the build system, separating core, editor, gfx, gui, and zelda3 components into library files.
- Added precompiled headers for various libraries to improve compilation times.
- Updated yaze_config.h.in to define IMGUI_DEFINE_MATH_OPERATORS for C++ compatibility.
- Enhanced editor integration tests with necessary includes for ImGui.
2025-10-04 16:23:57 -04:00
scawful
1c4a82ab7e Refactor logging system to use LOG_* macros
- Updated logging calls in main.cc, rom.cc, and test_manager.cc to utilize the new LOG_* macros for consistency and improved readability.
- Removed deprecated util::logf function and replaced its usage with appropriate logging macros.
- Enhanced logging in TestManager to provide more detailed information about ROM state and testing processes.
- Cleaned up commented-out logf calls in room.cc to streamline the code.
- Adjusted LogManager to support general logging through a new logf function for non-category specific messages.
2025-10-04 15:47:52 -04:00
scawful
d699d1133d feat: Add collaboration features to AgentChatWidget and AgentCollaborationCoordinator 2025-10-04 15:14:53 -04:00
scawful
28dc394a7c feat: Implement lazy loading for dungeon rooms and refactor room graphics handling
- Introduced lazy loading for room data to optimize performance and reduce initial load times.
- Updated DungeonEditor and DungeonRoomLoader to handle room graphics rendering directly from room objects.
- Refactored methods to accept room references instead of IDs for better clarity and type safety.
- Enhanced tab management in the DungeonEditor UI for improved user experience.
2025-10-04 15:14:17 -04:00
scawful
5bb696e431 Refactor Dungeon Editor Master Guide: Update content for clarity and accuracy, streamline sections, and enhance test coverage details. Consolidate known issues and next steps, and provide a comprehensive overview of architecture and object encoding. 2025-10-04 14:50:52 -04:00
scawful
a3719201d0 feat: Update dungeon coordinate conversion to use 8x8 pixel tiles and replace DungeonEditor with DungeonEditorV2 2025-10-04 14:46:50 -04:00
scawful
405fd43931 feat: Update AgentChatHistoryCodec to use JSON instead of gRPC for chat history management 2025-10-04 14:46:32 -04:00
scawful
ea40e676af feat: Implement AgentChatHistoryCodec for chat history persistence with JSON support 2025-10-04 14:39:53 -04:00
scawful
37e8e77376 feat: Introduce DungeonEditorV2 with component delegation for improved architecture
- Added DungeonEditorV2 to streamline dungeon editing by delegating tasks to specialized components.
- Implemented comprehensive integration tests to validate functionality and ensure proper ROM handling.
- Achieved 100% pass rate for all integration tests, enhancing reliability and performance of the editor.
- Updated test suite to include tests for the new editor, ensuring robust coverage and error handling.
2025-10-04 14:32:56 -04:00
scawful
31154daa71 feat: Enhance agent test suite with improved pre-flight checks and error handling 2025-10-04 14:30:58 -04:00
scawful
f115e1caad feat: Update z3ed README to enhance CLI output and help system documentation 2025-10-04 14:24:33 -04:00
scawful
78c6041877 feat: Initialize dungeon editor with ROM in setup for integration tests 2025-10-04 14:17:38 -04:00
scawful
640e0a78f2 feat: Remove Asar integration documentation and update index references 2025-10-04 14:17:25 -04:00
scawful
820e4577df feat: Implement collaboration and multimodal functionality in AgentChatWidget 2025-10-04 14:14:26 -04:00
scawful
e840d71add feat: Add End-to-End (E2E) testing documentation for improved test management
- Introduced a comprehensive README for the E2E tests using ImGui Test Engine, detailing active tests and their functionalities.
- Documented the process for running tests, creating new tests, and utilizing the ImGui Test Engine API.
- Included troubleshooting tips and future test ideas to enhance test development and execution.
- Organized the file structure and provided insights into test logging and infrastructure.
2025-10-04 14:10:37 -04:00
scawful
99d37a8747 feat: Revamp agent test suite script for improved functionality and usability
- Converted the agent test suite script to a more comprehensive format, consolidating multiple tests into a single script.
- Enhanced pre-flight checks for AI provider availability, including Ollama and Gemini.
- Implemented detailed test execution and result logging, providing clearer output and recommendations for troubleshooting.
- Removed outdated test scripts to streamline the testing process and improve maintainability.
- Updated README to reflect changes in the test suite and added build environment verification instructions.
2025-10-04 14:10:04 -04:00
scawful
3ef157b991 feat: Add comprehensive test coverage documentation for dungeon editor
- Introduced detailed reports on unit, integration, and E2E test coverage for the dungeon editor.
- Documented test results, including pass rates and identified issues, to enhance visibility into testing outcomes.
- Implemented performance optimizations for the graphics system, significantly improving loading times and user experience.
- Updated the smoke test for the dungeon editor to cover complete UI workflows and interactions.
- Enhanced integration tests to utilize real ROM data, ensuring more reliable test execution.
2025-10-04 14:09:14 -04:00
scawful
3735a0d4a7 feat: Enhance agent chat widget with history management and proposal handling 2025-10-04 14:05:36 -04:00
scawful
c59a4592c3 feat: Add dungeon editor smoke test and register it in the test suite
- Introduced a new smoke test for the Dungeon Editor to verify UI elements and functionality.
- Registered the Dungeon Editor smoke test in the main test suite for automated execution.
- Updated the integration test setup to ensure proper ROM loading from multiple locations.
2025-10-04 14:01:30 -04:00
scawful
dc3a59f03b feat: Update README and z3ed documentation for AI-powered features and editor integration
refactor: Simplify dungeon editor integration tests by using real ROM data and removing mock implementations
2025-10-04 13:53:34 -04:00
scawful
c39b1e5a51 Update scheme management plist to adjust order hints for iOS and macOS schemes
- Changed orderHint for yaze_ios.xcscheme from 12 to 10
- Changed orderHint for yaze_macos.xcscheme from 5 to 11
2025-10-04 13:48:25 -04:00
scawful
207b35df82 feat: Refactor agent chat widget handling and remove unused state variable 2025-10-04 13:48:01 -04:00
scawful
2ac363918e Remove ImGui Widget Testing Guide and update documentation structure
- Deleted the ImGui Widget Testing Guide as it is no longer needed.
- Updated the main documentation index to reflect the new Dungeon Editor Guide location.
- Revised z3ed README to clarify core capabilities and quick start instructions.
- Removed the developer guide for z3ed as its content is now integrated into other documentation.
- Enhanced the architecture section to provide a clearer overview of the z3ed system components.
- Updated command references and added details on agent commands and workflows.
2025-10-04 13:47:41 -04:00
scawful
20a406892c Refactor test structure and enhance object encoding tests
- Updated CMakeLists.txt to correct file paths for unit tests.
- Modified DungeonObjectRenderingE2ETests to inherit from BoundRomTest for better ROM management.
- Enhanced DungeonEditorIntegrationTest with improved mock ROM handling and added graphics data setup.
- Introduced a new MockRom class with methods for setting mock data and initializing memory layout.
- Added comprehensive unit tests for RoomObject encoding and decoding, covering all object types and edge cases.
- Refactored DungeonObjectRenderingTests to utilize BoundRomTest, ensuring consistent ROM loading and setup.
- Improved assertions in rendering tests for better clarity and reliability.
2025-10-04 13:37:52 -04:00