loom-nodes
Skill4 starsChanged 4 days agoMITView on GitHub
Run commands and read or write files on the user's own machines (their Mac, WSL, home PC) rather than on this server. Use when the user refers to "my computer", "my Mac", "local", "本地", "我电脑上", "我的 Mac", "WSL", or a device by name, or asks for something that only exists on their machine.
The file
We split this skill into the rules it gives an agent
2 rules. About 0 are common, 0 are distinctive, and 2 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈0
Distinctive · estimate
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 33
No stdin and no terminal: anything interactive (prompts, sudo asking for a password, editors, pagers) cannot be answered.
- Very specific: line 36
Default timeout 120s, at most 1800s.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
loom-nodes: the user's own devices
This server is not the user's computer. Their machines connect to loom and can
be reached with the loom-node CLI, from your shell.
1. See what is there
loom-node listShows each device's name, whether it is online, its OS and arch. Use the NAME column in the commands below. If the user did not say which device and there is more than one online, ask.
2. Run a command
loom-node exec <device> [--cwd DIR] [--timeout SECONDS] -- '<command>'- Single-quote the command. It is run on the device by the user's login
shell (
$SHELL -lc). Unquoted,~,$VAR, globs and pipes would be expanded by this server's shell first. - Starts in the device's home directory unless
--cwdis given. - stdout and stderr come back as they are produced, and the exit code is the command's own.
- No stdin and no terminal: anything interactive (prompts,
sudoasking for a password, editors, pagers) cannot be answered. Pass flags like-y, or usegit --no-pager,| cat. - Default timeout 120s, at most 1800s. A command that runs past it is killed
and exits 124 — raise
--timeoutfor builds and long tests. - Output beyond 10 MB is dropped (a note says so); narrow it with
head,tail,grep.
3. Move files
loom-node read <device> <path> > local-file # device → here
loom-node write <device> <path> < local-file # here → deviceBinary-safe. write creates parent directories and replaces the file
atomically. ~/… and relative paths are relative to the device's home. To show
the user a file from their device, read it into your output/ directory.
Exit code 255
loom itself could not finish: the device is offline, unknown, or dropped the
connection mid-command (the command was killed on the device). stderr says
which. Run loom-node list to check that the device is back online before
retrying; if it stays offline, tell the user rather than retrying in a loop.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

