The agent-facing skill now ships with the tool, and writing it exposed a bug the skill would otherwise have documented falsely.
An agent skill in the repo
.agents/skills/linux-use/SKILL.md — a drop-in skill for Claude Code, Devin, or anything that reads SKILL.md. Versioned alongside the commands it documents, so it cannot drift.
It leads with when not to use this tool: terminal TUIs belong to tmux, session-free scraping to Playwright, and sending a message to an API. GUI automation is the last resort, and the skill says so before it says anything else.
Also included: the loop, both ref kinds, seven landmines that will actually bite, the verified Teams recipe, and an explicit statement of what is untested.
contrib/a11y-browser
A launcher for a Chromium-family browser that linux-use can actually drive — --force-renderer-accessibility plus its own profile, since the flag cannot be applied to a running browser and PWA windows share a process with ordinary ones.
contrib/a11y-browser -n teams https://teams.microsoft.com/
contrib/a11y-browser -n teams --hidden <url> # private Xvfb + private XDG_RUNTIME_DIR
contrib/a11y-browser -n teams --stopThe bug it surfaced
find --app <name> returned refs like Microsoft Edge:/0/1#fp even when two processes published that name — so every ref it handed back failed to resolve with app_ambiguous. state refused ambiguity correctly; find quietly did not.
findnow qualifies emitted refs as<name>#pid<PID>:...when a name is shared, and leaves them bare when it is not.splitrefsplits the fingerprint on the last#, so an app part can carry#pid<N>.collect()compares against the raw app name, or every ref silently downgraded from a path ref to a geometry ref.
Verified: an ambiguous name now yields path-shaped, pid-qualified refs that read and act correctly; unambiguous apps still emit bare refs; state still refuses a plain ambiguous --app with exit 80.
One more thing that would have shipped broken
.gitignore contained a bare linux-use (for the built binary). Git matches that against any path component, so .agents/skills/linux-use/ was silently excluded — the skill would have been missing from the repo without a single warning. Now anchored to /linux-use.
Install
curl -L -o linux-use https://github.com/javimosch/linux-use/releases/download/v0.7.1/linux-use-v0.7.1-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: 6f8fef73a719734e70dc1d4e227ffc24c158dd660dcea8c8824e74e482a69274
Full Changelog: v0.7.0...v0.7.1