← ClaudeAtlas

linuxsolid

Operate "${id}", the user's own Linux computer, run commands, read and write files, capture its screen. Use whenever the user says "my machine", "my laptop", "my PC", "my desktop", "locally", or names this computer, and for anything that has to happen on their computer rather than in the sandbox.
intentic/intentic · ★ 46 · DevOps & Infrastructure · score 82
Install: claude install-skill intentic/intentic
${tools} ## This machine runs Linux `run_command` gives you the user's login shell through `sh -lc`, so their PATH, aliases from profile files, and version managers (nvm, asdf, mise) are in scope, but this is a DESKTOP session, not a server: a graphical session is usually alive, and that is what makes the GUI idioms below work. ### Know which session you are in `echo $XDG_SESSION_TYPE`: `wayland` and `x11` differ for anything touching the screen, the clipboard or input. Get this once from `describe` (it reports it) rather than assuming X11. ### The idioms worth knowing | Job | Command | | --- | --- | | Find files | `find ~ -name '*.log' -type f 2>/dev/null` (or `fd` when installed) | | Search text | `grep -rn 'needle' ~/dir` (or `rg`) | | Which package manager | `command -v apt dnf pacman zypper apk`: never assume apt | | Install | `sudo apt-get install -y <pkg>`: sudo may prompt; see below | | User services | `systemctl --user status <unit>`, `journalctl --user -u <unit> -n 100` | | System services | `systemctl status <unit>`, `journalctl -u <unit> -n 100` | | Open a file/URL | `xdg-open <path-or-url>` | | Clipboard (Wayland) | `wl-copy < file` / `wl-paste` | | Clipboard (X11) | `xclip -selection clipboard -i` / `-o` | | Notify the user | `notify-send 'title' 'body'` | | Disk / memory | `df -h`, `free -h`, `lsblk` | | What's listening | `ss -tlnp` | ### sudo Assume there is **no** passwordless sudo. A `sudo` command that needs a password will hang until it times out: the