--- id: vncdotool version: "1.3.0" license: MIT License license_treatment: permissive maintenance: active --- # vncdotool — Command line VNC client License: permissive · Maintenance: active · Downloads: 487.6K/mo ## What it is and what it does vncdotool is a command-line VNC client designed to automate interactions with remote displays. It connects to VNC servers and sends commands to type text, move the mouse, capture screenshots, and perform other desktop interactions—useful for automating virtual machine control, testing, or hardware device interaction where direct access is impractical. The package is built on Twisted for async networking, Pillow for image handling, and cryptography for secure connections. It supports multiple VNC encodings, IPv6 addresses, password-protected servers, and Apple Remote Desktop. Recent versions (1.3.0) have improved type hints, key handling, and switched to the cryptography library for better maintainability. The tool is actively maintained and works with modern Python versions (3.9–3.13). Use it for: - Automate testing of GUI applications running on virtual machines or remote hardware by scripting keyboard and mouse input. - Capture screenshots from remote VNC servers for monitoring, logging, or automated visual inspection workflows. - Control virtualized environments or embedded devices that expose only a VNC interface, without manual intervention. - Record and replay interactive VNC sessions using the vnclog tool to generate automation scripts from manual actions. - Integrate VNC server control into CI/CD pipelines or test frameworks that need to interact with headless or remote displays. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. vncdotool is a command-line VNC client that automates interactions with remote displays by sending keystrokes, mouse movements, and screen captures to VNC servers. Yes. vncdotool is actively maintained, has low install friction, carries a permissive MIT license, and solves a specific automation problem with no known vulnerabilities. Install it if you need to automate VNC interactions; skip it if your use case doesn't involve remote display control. ## Install pip install vncdotool uv add vncdotool poetry add vncdotool ## Installing vncdotool Before you install: Low install friction with a pure-Python wheel. Depends on Twisted, Pillow, and cryptography—all well-maintained libraries. Active maintenance as of 2026-04-03, with recent improvements to type hints, key handling, and cryptography integration. License in practice: MIT License (permissive) places no restrictions on use, modification, or distribution. Safe for commercial and proprietary projects. Quickstart: pip install vncdotool vncdo -s 192.168.1.1 type "hello world" vncdo -s 192.168.1.1 capture screen.png Requires a running VNC server to connect to; the server address must be specified in the format address[:display|::port]. Verify before relying: - Whether the package supports all common VNC server implementations (RealVNC, TightVNC, QEMU, etc.) equally well. - Performance characteristics when automating high-frequency interactions or large screen captures. - Compatibility with modern VNC server security features beyond basic password authentication. ## Package facts - License: MIT License (permissive) - Python support: unspecified - Install friction: low - Maintenance: active - Downloads: 487.6K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags VNC client command line, automate VNC interactions, remote desktop automation, VNC screen capture, virtual machine control, RFB protocol client, headless VNC control, vnc-automation, remote-desktop, testing-tool [View on SkillFed](https://skillfed.io/packages/vncdotool) · [View on PyPI](https://pypi.org/project/vncdotool/)