v0.7.0 — an honest capability statement
A release about saying what this tool can and cannot do, and what was actually tested. No behaviour changes since v0.6.3 — the code was fine, the documentation overclaimed.
What changed
The README listed "GTK/Qt/Chromium/Electron" as good coverage. Only GTK and Chromium had ever been exercised. Qt has now actually been tested; Electron and Java have not, and now say so.
| Target | Status | Evidence |
|---|---|---|
| GTK 3/4 apps | verified | gnome-calculator, gnome-text-editor, gnome-control-center, gnome-disks, seahorse, Nautilus — read, act, type, watch |
| Qt 5 apps | verified | QDBusViewer: 12 interactive elements; act fired ShowMenu and the File menu opened |
| Chromium/Edge web content | verified, needs --force-renderer-accessibility |
test page exposed 41 elements incl. real DOM; Microsoft Teams navigated, composed, sent |
| Chromium/Edge without the flag | broken by design | exposes exactly one frame — zero web content |
| Electron | not tested | expected to need the same flag |
| Java (Swing/AWT) | not tested | needs java-atk-wrapper |
| Flutter / canvas / games | expected to expose nothing | not tested |
| Wayland | click/key do not work |
XTEST cannot reach native Wayland clients; AT-SPI paths still work (#1) |
The honest caveats
- Tested on exactly one configuration: Ubuntu 22.04.3, GNOME 42.9, X11, at-spi2-core 2.44.0, x86-64. Wayland, KDE/XFCE, other distros, HiDPI/fractional scaling, multi-monitor, non-US keyboard layouts and arm64 are all untested.
- There is no automated test suite. Every number in the README is a real measurement, but nothing re-checks them on commit.
test/env.shis an isolation harness, not a test runner. This is now the top item under Next, ahead of Wayland. - It can break the apps it drives. While building it, this tool crashed a browser three times before the cause was isolated, and once knocked out the developer's own session accessibility bus (a test-isolation gap, since fixed). Both are documented rather than quietly patched.
- Two previously published measurements were wrong and were corrected in later notes — a "zero memory growth" claim read off too short a run, and a "regression" that turned out to predate the change blamed for it.
What it is good at
Driving GTK and Qt desktop apps, and web apps in a suitably-launched Chromium, by name rather than by pixel — with refs that go stale loudly (exit 83) instead of silently acting on the wrong widget, truncated reads that announce themselves, and an event stream you can block on instead of polling. It ships zero LLM code: your agent is the loop.
If you are on Wayland, or need Electron/Java, this is not ready for you yet.
Install
curl -L -o linux-use https://github.com/javimosch/linux-use/releases/download/v0.7.0/linux-use-v0.7.0-x86_64-linux
chmod +x linux-use && sudo mv linux-use /usr/local/bin/
sudo apt install libatspi2.0-0 libxtst6 libx11-6 libglib2.0-0 xclip
gsettings set org.gnome.desktop.interface toolkit-accessibility true
linux-use doctor && linux-use guidesha256: caaa7ac615f29b9ba8e8f5027ffa53c68302f1d0123973358a227dd06b103720
Start with linux-use guide — the whole operator manual is embedded in the binary.
Issues and PRs welcome, particularly from anyone on Wayland, KDE, or a non-GNOME desktop: those are the gaps.
Full Changelog: v0.6.3...v0.7.0