qol-plugin-window-actionslisted
Install: claude install-skill qol-tools/qol-skills
# Window Actions
Work in the `plugins/*` directory whose manifest declares `id = "plugin-window-actions"`, from the qol-monorepo root. Treat
`plugin.toml` as the source of truth for supported platforms, runtime commands,
actions, daemon configuration, and which actions are continuous.
## Runtime contract
- Keep execution in the Rust `window-actions` binary. Do not add a shell
entrypoint fallback.
- Validate `plugin.toml` through
`qol_plugin_api::manifest::PluginManifest::load_and_validate()` in the
contract test.
- Route ordinary actions through `platform::execute_action()`.
- Route continuous actions through the daemon because their state spans
multiple requests.
- Load settings through the qol-config contract. Keep the Rust type, contract
defaults, and property tests aligned.
## Start here
| Concern | Source |
|---|---|
| Binary composition | `src/main.rs` |
| Daemon lifecycle and request handling | `src/app/` |
| Typed settings | `src/config/` |
| Continuous-action model | `src/glide/` |
| Minimize/restore rules and state | `src/restore/` |
| Action diagnostics | `src/diagnostics/` |
| Platform selection and OS backends | `src/platform/` |
Keep Cinnamon action routing, geometry, glide control, and X11 integration
under the Linux platform backend. Keep Accessibility behavior under the macOS
platform backend. Discover their internal modules from those ownership roots
instead of relying on a copied file inventory.
Follow the platform declaration in `plugin.to