Skip to content

v1.13.0 — idle auto-stop, quiet Chrome with CDP, readable DeepSeek Harness, local.yml

Choose a tag to compare

@oriolrius oriolrius released this 22 Oct 17:57
· 12 commits to main since this release

Highlights

Auto-stop when idle (#36)

  • New tag idle-stop: a systemd timer checks every 5 min. After 60 min with no keyboard/mouse in the Chrome Remote Desktop session and no typing in any terminal (SSH, tmux, herdr), it saves your chezmoi configuration (re-add, commit, push) and shuts down.
  • Shutting down from inside stops the instance: the disk is kept, and no AWS credentials are needed on the VM. Terraform and CloudFormation now set InstanceInitiatedShutdownBehavior = stop explicitly.
  • A busy machine (5-minute load above 1.0) is never stopped.
  • Variables: idle_stop_enabled, idle_stop_minutes, idle_stop_max_load. Use sudo /usr/local/sbin/idle-stop --dry-run to see what it measures.
  • New scripts/resume.sh: starts the stopped instance and prints its new public IP.

Desktop Chrome: quiet policies, Google search, optional CDP (#37)

  • chrome_quiet_policies (default on), as managed policies:
    • no password manager or "save password" prompt, and no autofill;
    • no default-browser question, promotional tabs or metrics;
    • no Privacy Sandbox prompt, and no first-run screen;
    • Google as the default search engine, which also skips the EU "Choose your search engine" screen.
  • chrome_cdp_enabled (default off): the desktop Chrome exposes CDP on 127.0.0.1:9222 (chrome_cdp_port), reachable through an SSH tunnel.
    • It uses its own profile, because Chrome ≥ 136 refuses CDP on the default one.
    • The dock, the menu and links opened by other programs all start it with CDP.

DeepSeek Harness web UI readable in recordings (#38)

  • The shell's font (JetBrainsMono Nerd Font Mono) is used for text, code and the terminal, at larger sizes: text 18 (was 14), code 16 (was 11), terminal 18 (was 13).
  • Variables: dsh_font_size, dsh_code_font_size, dsh_terminal_font_size, dsh_font_family.

Personal settings in local.yml (#39)

  • Copy local.yml.example to local.yml (git-ignored). The playbook loads it automatically, so your choices (keyboard, model, CDP, idle limit…) apply on every run without -e. -e still wins.
  • No secrets in it: pass litellm_api_key once with -e.

Verified on a live VM

  • A real idle stop (66 min idle → chezmoi saved and pushed → stopped), then resume.sh.
  • chrome://policy shows every policy with status OK, and CDP answers /json/version.
  • The dsh UI renders in JetBrainsMono at 18 px.
  • A local.yml run changes nothing on a VM already configured that way.

Full Changelog: v1.12.0...v1.13.0