Skip to content

Surface branch-hibernation settings in the GUI#49

Merged
Ed-Barnes937 merged 1 commit into
mainfrom
hibernation-settings
Jul 6, 2026
Merged

Surface branch-hibernation settings in the GUI#49
Ed-Barnes937 merged 1 commit into
mainfrom
hibernation-settings

Conversation

@Ed-Barnes937

Copy link
Copy Markdown
Collaborator

What

Adds a Hibernation category to the claude-commander settings modal so the three hibernation config fields can be edited from the GUI instead of only via the config file / TUI.

Field Control Default Notes
hibernate_enabled toggle false Master switch; gates the two below
hibernate_idle_timeout_secs number (s) 86400 (1 day) 0 = never hibernate
hibernate_check_interval_secs number (s) 600 (10 min) effective min 30; 0 disables the loop

Why no backend change

The settings modal is schema-driven and get_config/save_config already round-trip the whole Config (overwriting only edited leaves), so these fields were already flowing through — they just weren't rendered. The hibernation loop is also already started at boot in polling.rs.

Restart handling is automatic: in claude-commander, hibernate_enabled and hibernate_check_interval_secs are restart-required while hibernate_idle_timeout_secs is hot-reloadable. save_config returns restart_required() and the existing "restart to take effect" toast already covers it; the category note mentions it.

Testing

  • npm run typecheck — clean
  • iwft suite passes, including a new settings scenario asserting enabling hibernation ungates the interval fields and that all three persist through save_config

🤖 Generated with Claude Code

claude-commander v0.24.0 exposes three hibernation config fields
(hibernate_enabled, hibernate_idle_timeout_secs,
hibernate_check_interval_secs) that already round-trip through
get_config/save_config but weren't rendered in the settings modal.

Add a "Hibernation" category to COMMANDER_CATEGORIES: a master
hibernate_enabled toggle gating the idle-timeout and check-interval
numbers, mirroring the project-pull toggle/interval pattern. No backend
change is needed — the hibernation loop is already started at boot, and
save_config already returns restart_required so the existing "restart to
take effect" toast covers the restart-required fields (enabled + check
interval); the idle timeout is hot-reloadable.

iwft: a settings scenario asserts enabling hibernation ungates the
interval fields and that all three persist through save_config.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@Ed-Barnes937
Ed-Barnes937 merged commit 9992e8d into main Jul 6, 2026
4 checks passed
@Ed-Barnes937 Ed-Barnes937 mentioned this pull request Jul 7, 2026
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