← ClaudeAtlas

qol-tray-rustlisted

Use when working on qol-tray's Rust backend — plugin system, daemon supervision, hosted settings surfaces, IPC/runtime endpoints, feature modules, shared qol-* crate placement, cross-platform strategy pattern, tokio concurrency and thiserror/anyhow error handling. Use when modifying files under src/plugins/, src/settings_surface/, src/daemon/, src/runtime/, src/features/, src/sync/, src/menu/, src/tray/, src/app/, src/updates/, or src/profile/, or when adding socket/HTTP endpoints, wiring a new feature module, touching Cargo.toml dependencies, deciding whether logic belongs in qol-tray or a shared qol-* crate, or reviewing Rust concurrency and error-handling patterns in qol-tray.
qol-tools/qol-skills · ★ 0 · API & Backend · score 62
Install: claude install-skill qol-tools/qol-skills
# qol-tray Rust Backend Reference Pairs with the `qol-tray-core` (cross-platform overview + make commands) and `qol-world-canvas` (UI side of dive targets) skills. This skill focuses on the Rust internals: plugin system, daemon supervision, IPC, feature modules, concurrency and error-handling idioms, and shared-crate placement. ## Layout discovery and invariants Derive the maintained module inventory from `src/lib.rs`, binary declarations in `Cargo.toml`, and the source tree. Do not use this skill as a snapshot of which feature directories happen to exist. Before changing layout, inspect direct root files, module declarations, file/directory hybrids, platform-module shapes, and stable public re-exports. Then apply these invariants: - Keep the source root limited to `main.rs` and `lib.rs`. Put every implementation beneath its owning capability directory. - Preserve existing public imports with explicit `lib.rs` re-exports when moving a public module; do not force consumers to follow physical layout churn. - Never combine `foo.rs` with `foo/`. A module with children uses `foo/mod.rs`. - Within one `platform/` directory, use one OS module form consistently: all files or all directories. Non-OS helpers such as `common.rs` may remain flat. - Keep target selection in the owning `platform/mod.rs`; do not introduce new target gates in business modules. - Do not create `shared/`, `common/`, or `utils/` dumping grounds. Route code to the capability that owns its state and invarian