Desktop control CLI for AI agents https://deskctl.dev
Find a file
2026-03-25 12:28:38 -04:00
assets Phase 3: screenshot annotation with bounding boxes and @wN labels 2026-03-24 21:28:10 -04:00
src Rewrite X11 backend to drop xcap 2026-03-25 12:28:23 -04:00
.gitignore gitignore 2026-03-24 22:00:27 -04:00
AGENTS.md Phase 6: utility commands, SKILL.md, AGENTS.md, README.md 2026-03-24 21:40:29 -04:00
Cargo.lock Rewrite X11 backend to drop xcap 2026-03-25 12:28:23 -04:00
Cargo.toml rename 2026-03-25 12:28:38 -04:00
README.md rename 2026-03-24 22:59:21 -04:00
SKILL.md rename 2026-03-24 22:59:21 -04:00

deskctl

Desktop control CLI for AI agents on Linux X11.

Install

cargo install deskctl

System deps (Debian/Ubuntu):

sudo apt install libxcb-dev libxrandr-dev libclang-dev

Quick Start

# See the desktop
deskctl snapshot

# Click a window
deskctl click @w1

# Type text
deskctl type "hello world"

# Focus by name
deskctl focus "firefox"

Architecture

Client-daemon architecture over Unix sockets (NDJSON wire protocol). The daemon starts automatically on first command and keeps the X11 connection alive for fast repeated calls.

Requirements

  • Linux with X11 session
  • Rust 1.75+ (for build)

Wayland Support

Coming soon hopefully. The trait-based backend design means adding Hyprland/Wayland support is a single trait implementation with zero refactoring of the core which is good.