computer-useFull desktop computer use for headless Linux servers. Xvfb + XFCE virtual desktop with xdotool automation. 17 actions (click, type, scroll, screenshot, drag,...
Install via ClawdBot CLI:
clawdbot install Ram-Raghav-S/computer-useFull desktop GUI control for headless Linux servers. Creates a virtual display (Xvfb + XFCE) so you can run and control desktop applications on VPS/cloud instances without a physical monitor.
:99Run the setup script to install everything (systemd services, flicker-free VNC):
./scripts/setup-vnc.sh
This installs:
:99All services auto-start on boot and auto-restart on crash.
| Action | Script | Arguments | Description |
|--------|--------|-----------|-------------|
| screenshot | screenshot.sh | β | Capture screen β base64 PNG |
| cursor_position | cursor_position.sh | β | Get current mouse X,Y |
| mouse_move | mouse_move.sh | x y | Move mouse to coordinates |
| left_click | click.sh | x y left | Left click at coordinates |
| right_click | click.sh | x y right | Right click |
| middle_click | click.sh | x y middle | Middle click |
| double_click | click.sh | x y double | Double click |
| triple_click | click.sh | x y triple | Triple click (select line) |
| left_click_drag | drag.sh | x1 y1 x2 y2 | Drag from start to end |
| left_mouse_down | mouse_down.sh | β | Press mouse button |
| left_mouse_up | mouse_up.sh | β | Release mouse button |
| type | type_text.sh | "text" | Type text (50 char chunks, 12ms delay) |
| key | key.sh | "combo" | Press key (Return, ctrl+c, alt+F4) |
| hold_key | hold_key.sh | "key" secs | Hold key for duration |
| scroll | scroll.sh | dir amt [x y] | Scroll up/down/left/right |
| wait | wait.sh | seconds | Wait then screenshot |
| zoom | zoom.sh | x1 y1 x2 y2 | Cropped region screenshot |
export DISPLAY=:99
# Take screenshot
./scripts/screenshot.sh
# Click at coordinates
./scripts/click.sh 512 384 left
# Type text
./scripts/type_text.sh "Hello world"
# Press key combo
./scripts/key.sh "ctrl+s"
# Scroll down
./scripts/scroll.sh down 5
ctrl+End to jump to page bottom in browsersWatch the desktop in real-time via browser or VNC client.
# SSH tunnel (run on your local machine)
ssh -L 6080:localhost:6080 your-server
# Open in browser
http://localhost:6080/vnc.html
# SSH tunnel
ssh -L 5900:localhost:5900 your-server
# Connect VNC client to localhost:5900
Add to ~/.ssh/config for automatic tunneling:
Host your-server
HostName your.server.ip
User your-user
LocalForward 6080 127.0.0.1:6080
LocalForward 5900 127.0.0.1:5900
Then just ssh your-server and VNC is available.
# Check status
systemctl status xvfb xfce-minimal x11vnc novnc
# Restart if needed
sudo systemctl restart xvfb xfce-minimal x11vnc novnc
xvfb β xfce-minimal β x11vnc β novnc
-noxdamage for stabilityexport DISPLAY=:99
google-chrome --no-sandbox & # Chrome (recommended)
xfce4-terminal & # Terminal
thunar & # File manager
Note: Snap browsers (Firefox, Chromium) have sandbox issues on headless servers. Use Chrome .deb instead:
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
sudo dpkg -i google-chrome-stable_current_amd64.deb
sudo apt-get install -f
If you prefer manual setup instead of setup-vnc.sh:
# Install packages
sudo apt install -y xvfb xfce4 xfce4-terminal xdotool scrot imagemagick dbus-x11 x11vnc novnc websockify
# Copy service files
sudo cp systemd/*.service /etc/systemd/system/
# Edit xfce-minimal.service: replace %USER% and %SCRIPT_PATH%
sudo nano /etc/systemd/system/xfce-minimal.service
# Mask xfdesktop (prevents VNC flickering)
sudo mv /usr/bin/xfdesktop /usr/bin/xfdesktop.real
echo -e '#!/bin/bash\nexit 0' | sudo tee /usr/bin/xfdesktop
sudo chmod +x /usr/bin/xfdesktop
# Enable and start
sudo systemctl daemon-reload
sudo systemctl enable --now xvfb xfce-minimal x11vnc novnc
pgrep xfwm4sudo systemctl restart xfce-minimal/usr/bin/xfdesktop)--heartbeat 30 flag-noxdamage flag-noxdamage -noxfixes flagsInstalled by setup-vnc.sh:
xvfb xfce4 xfce4-terminal xdotool scrot imagemagick dbus-x11 x11vnc novnc websockify
Generated Mar 1, 2026
Enables automated GUI testing of web applications on headless servers, simulating user interactions like clicks, typing, and scrolling to validate functionality and UI behavior without physical monitors. Useful for continuous integration pipelines to run browser-based tests in isolated environments.
Automates repetitive data entry tasks in desktop applications on cloud servers, such as form filling or spreadsheet updates, by controlling GUI elements via scripts. Reduces manual labor and errors in administrative workflows.
Monitors desktop applications on headless VPS by taking periodic screenshots and logging interactions for auditing, debugging, or compliance purposes. Helps track application states and user activities in remote environments.
Controls desktop-based social media tools or browsers to schedule posts, interact with content, and manage accounts programmatically. Allows for bulk operations without manual intervention on remote servers.
Creates interactive training simulations by automating GUI actions in educational software on headless servers, enabling remote learners to follow guided tutorials or practice tasks in a controlled environment.
Offer a cloud-based service where clients can run automated GUI tests using this skill, charging subscription fees based on usage or number of test runs. Integrates with CI/CD tools to provide scalable testing solutions.
Provide managed services to automate specific client workflows, such as data processing or application monitoring, using this skill on dedicated servers. Charge retainer or project-based fees for setup and maintenance.
License the skill package to enterprises or developers for integration into their own systems, offering customization and support contracts. Generate revenue through one-time licensing fees and annual support renewals.
π¬ Integration Tip
Ensure proper SSH tunneling for VNC access and test actions in a sandbox environment first to avoid unintended GUI interactions.
Automatically update Clawdbot and all installed skills once daily. Runs via cron, checks for updates, applies them, and messages the user with a summary of what changed.
Essential Docker commands and workflows for container management, image operations, and debugging.
Tool discovery and shell one-liner reference for sysadmin, DevOps, and security tasks. AUTO-CONSULT this skill when the user is: troubleshooting network issues, debugging processes, analyzing logs, working with SSL/TLS, managing DNS, testing HTTP endpoints, auditing security, working with containers, writing shell scripts, or asks 'what tool should I use for X'. Source: github.com/trimstray/the-book-of-secret-knowledge
Deploy applications and manage projects with complete CLI reference. Commands for deployments, projects, domains, environment variables, and live documentation access.
Monitor topics of interest and proactively alert when important developments occur. Use when user wants automated monitoring of specific subjects (e.g., product releases, price changes, news topics, technology updates). Supports scheduled web searches, AI-powered importance scoring, smart alerts vs weekly digests, and memory-aware contextual summaries.
Diagnoses common Linux service issues using logs, systemd/PM2, file permissions, Nginx reverse proxy checks, and DNS sanity checks. Use when a server app is failing, unreachable, or misconfigured.