# Architecture YMhut Box is split into a WinUI app and a reusable Core library. ## Layers - `YMhut.Box.WinUI`: window shell, navigation, pages, App Installer update trigger and Windows integration. - `YMhut.Box.Core`: settings, log, HTTP/API, local data, system snapshots, tool catalog and tool execution. - `YMhut.Box.Tests`: MSTest coverage for migration-critical services and tool behavior. ## Services The WinUI app builds a DI container in `AppServices.Configure()` and registers settings, logging, HTTP/API, update, data, system metrics, startup, window state and tool worker services. Tool pages call `IToolWorkerService` and `ToolExecutor`; API-backed tools go through `IApiManager`, which owns endpoint resolution, timeout behavior, logging and cache boundaries. ## Tool Contract Every tool is registered as an `IToolModule` with stable metadata. `ToolCatalog` is a static C# registry and no longer reads a runtime tool registry from another project.