Skip to content

feat: add fan speed control to CLI set command#17

Merged
eman merged 5 commits into
mainfrom
feature/cli-fan-speed
Jul 4, 2026
Merged

feat: add fan speed control to CLI set command#17
eman merged 5 commits into
mainfrom
feature/cli-fan-speed

Conversation

@eman

@eman eman commented Jul 4, 2026

Copy link
Copy Markdown
Owner

Summary

Adds fan speed control to the quilt set CLI command, matching the fan speed selection available in the Quilt app. Fan speed was already supported in the library (client.set_indoor_unit(fan_speed=...)) and the TUI (f key), but there was no way to set it from the quilt set command.

Changes

  • CLI: new --fan flag on quilt set (AUTO, QUIET, LOW, MEDIUM, HIGH, BLAST) with validation. Fan updates apply independently of mode/setpoint updates, so --fan works alone or combined with --mode/--heat/--cool.
  • Model: new SystemSnapshot.indoor_units_for_space() helper, mirroring the existing comfort_settings_for_space() pattern, used to resolve a room's indoor unit(s).
  • Docs: document the CLI --fan flag and the TUI f binding in the control-spaces how-to.
  • Tests: add coverage for indoor_units_for_space().

Usage

quilt set "Living Room" --fan medium
quilt set "Living Room" --mode cool --cool 22 --fan auto

Validation

  • ruff check + format: clean
  • mypy: clean (43 files)
  • pytest: 235 passed, 85% coverage

eman added 5 commits July 3, 2026 23:39
Add a --fan flag to `quilt set` so fan speed can be set from the CLI,
matching the app's fan speed selection. The flag resolves the room's
indoor unit(s) via a new SystemSnapshot.indoor_units_for_space() helper
and applies the fan speed independently of mode/setpoint updates.

The TUI already supports fan cycling via the `f` key; document both the
CLI flag and TUI binding in the control-spaces how-to.
# Conflicts:
#	src/quilt_hp/cli/main.py
#	src/quilt_hp/models/controller.py
# Conflicts:
#	src/quilt_hp/models/controller.py
@eman
eman merged commit c751751 into main Jul 4, 2026
5 checks passed
@eman
eman deleted the feature/cli-fan-speed branch July 4, 2026 15:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant