$worker
shell
v0.3.5Unix shell + filesystem worker — exec with allowlist/denylist/timeout/output caps and background jobs; fs::ls|stat|mkdir|rm|chmod|mv|grep|sed|read|write with host jail, denylist, size caps, and sandbox-target forwarding
- macOS: arm64 · x64
- Linux: arm64 · armv7 · x64
skill doc
skills/exec.md
Running a one-shot command in the foreground
When to use
- The command finishes well under the timeout cap and the caller can block until completion.
- One-shot probes:
ls,cat,pwd,git status,wc,head. - Anything where blocking until completion is fine for the calling turn.
Notes
commandis a program name as a string; arguments go in theargsarray. Sendingcommand: ["sh", "-lc", "..."]returns a per-field deserialiser error rather than a misleading "missing 'command'".timeout_msis clamped tomax_timeout_ms(default 30s); negative or non-numeric values fall back todefault_timeout_ms(default 10s).- Output is buffered up to
max_output_bytes(default 1 MiB). Past that,stdout_truncatedandstderr_truncatedflip totrueand the rest is dropped; narrow the command (e.g.head -n 100) rather than asking for more bytes. - Allowlist matches
argv[0]by basename or exact path; an empty allowlist means open. Denylist regex runs overargv.join(" "). target: sandboxreturnsS300if the host cannot boot microVMs (Apple Silicon or/dev/kvmrequired). Host-side spawn errors come back asS216with ahost exec:prefix.- Prefer
shell::fs::ls,shell::fs::stat, andshell::fs::grepoverexec-ingls/stat/grep/rg; the fs backends stay in-process and respect the jail.