Desktop control CLI for AI agents https://deskctl.dev
Find a file
Harivansh Rathi e392ba1055 Rewrite X11 backend to drop xcap
Use x11rb directly for screenshot capture and window metadata so the Linux build no longer drags in Wayland build dependencies.

Co-authored-by: Codex <noreply@openai.com>
2026-03-25 12:28:23 -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 Rewrite X11 backend to drop xcap 2026-03-25 12:28:23 -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.