Skip to main content
Some desktop environments suspend or lock due to inactivity, which can stop active automation. Cyberdriver offers an optional keepalive mode to simulate light, realistic user activity when no work is incoming.

How it works

  • Idle detection: When connected via cyberdriver join, Cyberdriver tracks the last time it received a request from Cyberdesk Cloud.
  • Threshold: If there has been no work for a configurable threshold (default: 3 minutes), keepalive triggers.
  • Actions: Cyberdriver clicks near the bottom-left corner of the screen, types 2–5 short phrases with natural intervals, then presses Escape to close any UI. If your Windows Start icon isn’t in the bottom-left, you might not see anything visible, but the keepalive still works and prevents idle timeouts.
  • No disruption: If a request arrives while keepalive is running, Cyberdriver waits for keepalive to finish (to close Start/Spotlight cleanly) and then processes the request immediately. After any request, keepalive remains off until the system is idle again for the threshold.
  • Natural cadence: When remote keepalive activity is signaled from the host, the idle timer resets with a small random jitter (±7s) around your configured threshold.

Enable keepalive

cyberdriver join --secret YOUR_API_KEY --keepalive
Options:
  • --keepalive: Enables keepalive mode
  • --keepalive-threshold-minutes: Minutes of inactivity before keepalive runs (default: 3)
  • --keepalive-click-x and --keepalive-click-y: Custom click coordinates (default: bottom-left corner)
Example with custom click location:
# Click at coordinates (100, 100) instead of bottom-left
cyberdriver join --secret YOUR_API_KEY --keepalive \
  --keepalive-click-x 100 \
  --keepalive-click-y 100
Use custom click coordinates when your Start menu or application launcher is in a different location, or when you want the keepalive to interact with a specific area of the screen.
Keepalive uses a precise timer: when the configured idle threshold elapses with no work, the action starts immediately. After an action completes, the next eligible window is scheduled based on your threshold with a small random jitter (±7s or up to 20% of the threshold, whichever is smaller).

Disable/Re-enable without stopping the process

Start join in interactive mode to toggle the tunnel and keepalive on demand:
cyberdriver join --secret YOUR_API_KEY --keepalive --interactive
Inside the prompt:
  • d or disable: Disconnects the cloud tunnel and pauses keepalive. Local server stays up.
  • e or enable: Reconnects the tunnel and resumes keepalive.
  • q or quit: Exit cyberdriver.
  • h or help: Show commands.

Remote Keepalive (Host + VM)

When automating a Windows VM managed by remote desktop software (RDP, Avatara, AnyDesk, etc.), the VM often locks or shuts off after inactivity. Because this is enforced at the remote desktop layer, running keepalive inside the VM may not help. Remote Keepalive solves this by running a second Cyberdriver on the host (where the remote desktop software runs) to keep the VM session active while your main Cyberdriver inside the VM is idle. Why this matters: it keeps the VM ready for work without repeatedly passing 2FA every time you want to run a workflow. Quick setup (on the host machine):
cyberdriver join --secret YOUR_API_KEY --keepalive --register-as-keepalive-for <MAIN_MACHINE_ID>
What happens under the hood:
  • The host Cyberdriver links itself to your VM’s Cyberdriver (same organization enforced; self-links rejected).
  • The host Cyberdriver won’t interfere while a workflow runs on the VM. It only runs keepalive when the VM has been idle beyond your configured threshold.
  • If the VM’s own keepalive happens to be running when work arrives, Cyberdriver finishes that action before starting the workflow to avoid leaving UI elements open on the wrong screen.
  • Remote activity resets the VM’s idle timer with a small random jitter (±7s) around the keepalive threshold.
  • If the host Cyberdriver disconnects, the link is removed automatically. When it reconnects, the link is re-established.

Finding click coordinates

Need to find specific screen coordinates for keepalive configuration? Use the Coordinate Capture utility.