v0.8.6
freestylefly/awesome-gpt-image-2v0.8.6Sep 19, 2026by github-actions[bot]
Upgrading?
AI Summary
This release focuses on extensive code refactoring to improve modularity, ownership, and test coverage across the GUI, IPC, device handling, and core modules. It includes performance optimizations for GUI asset generation and the addition of a new feature to detect and display installation sources. Additionally, documentation and CI workflows have been refined to support better development and testing processes.
Key Highlights
- Major refactoring of GUI components, splitting state mutators, sliders, and views for better separation of concerns.
- Improved device handling by splitting inventory, gesture capture, and session skeletons into dedicated modules.
- Performance optimization: GUI now resolves device assets once per generation.
- Expanded documentation with new agent guidance, diagnostic workflows, and CI testing on Windows.
New Features
- Detect and display installation sources in the GUI
Full Release Notes
## What's Changed * refactor(gui): split app_icon around an AppIconExt trait by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1422 * fix(gui): hold a config reload until the agent connects by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1416 * refactor(ipc): own the client handshake once and guard it with ast-grep by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1424 * refactor(core): name the process roles, host profiles, and environment knobs once by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1426 * refactor(ipc,cli): bound the handshake once and give the CLI one agent door by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1427 * refactor(core): build every worker runtime in one place by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1428 * refactor(core): spell the app bundle's layout once by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1429 * docs(infra): add openlogi workflow skills by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1409 * docs(infra): refine agent guidance and diagnostic workflows by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1485 * refactor(cli): give the command modules that carry code a file of their own by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1494 * refactor(hidpp): split the pending-request queue and the mock channel out of channel.rs by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1495 * refactor(hook): split the macOS backend by responsibility by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1496 * refactor(hook): split the Linux backend into the evdev hook and the foreground watcher by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1497 * chore: drop an unused dependency, a dead parameter, and stale docs by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1487 * refactor(gui): let state mutators own their events and views share one relevance filter by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1505 * refactor(gui): give write-on-release sliders one component by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1506 * refactor(ipc): own the observe loop's connection state in one Observer by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1507 * perf(gui): resolve each device's assets once per asset generation by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1508 * refactor(gui): say what the state types are by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1509 * refactor(core): give the key vocabulary one owner by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1488 * refactor(core): give seven copied decisions one owner each by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1489 * refactor(xtask): spell xtask's waits and its bundle builder in the workspace's vocabulary by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1490 * ci(windows): run the tests on Windows by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1491 * refactor(device): drop the capture paths nothing calls and type the session errors by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1500 * refactor(core): split the config module by concern by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1511 * refactor(device): split the inventory and probe modules by responsibility by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1512 * refactor(device): call durations that bound a wait timeouts by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1513 * refactor(device): run gesture and keyboard capture through one session skeleton by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1501 * refactor(device): share one pending-restore token between capture and host switch by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1502 * refactor(agent): run the capture watchers on one harness and name the device-access handles by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1503 * refactor: say what eight identifiers are by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1517 * refactor(camera): suffix the macOS backends like the other platforms' by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1518 * refactor(gui): move the F-key geometry into function_row/key_points.rs by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1525 * refactor(agent): move the device list and re-apply plan into orchestrator/devices.rs by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1526 * refactor(gui): split the AppState tests by what they exercise by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1527 * refactor(inject): run scripts and workflows once, over four platform hooks by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1529 * refactor(core): split the config tests by what they exercise by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1530 * refactor(device): split the inventory and gesture capture tests by what they exercise by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1531 * refactor(agent): split the orchestrator tests by what they exercise by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1532 * refactor(hidpp): split the channel tests by what they exercise by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1533 * refactor(device): move the host-switch session's tests to host_switch/tests.rs by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1535 * refactor(agent): move the button runtime's worker loop into button/worker.rs by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1536 * refactor(inject): break the macOS injector into scroll, browser and SPI modules by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1537 * refactor(gui): move the mouse view's binding labels and tests out of view.rs by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1538 * refactor(gui): move the camera panel's row builders into controls/rows.rs by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1539 * feat(gui): detect and display installation sources by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1515 * docs(gui): mend the desktop crate's intra-doc links by @AprilNEA in https://github.com/AprilNEA/OpenLogi/pull/1541 * chore: release v0.8.6 by @aprilnea[bot] in https://github.com/AprilNEA/OpenLogi/pull/1481 **Full Changelog**: https://github.com/AprilNEA/OpenLogi/compare/v0.8.5...v0.8.6
Related Repositories
The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.
The library for web and native user interfaces.
Node.js JavaScript runtime ✨🐢🚀✨
Agent skills that give coding agents taste: art direction, reference images and a browser check instead of generic AI pages
A fancy self-hosted monitoring tool