Skip to content

wtm run

Manage dev jobs (services + tasks)

Run commands and profiles declared in /wtm/run.toml — long-running services and one-shot tasks.

Vocabulary: job the unit wtm runs; its kind is service (long-running) or task (one-shot) profile a named, ordered group of jobs compose stack a job that runs docker compose; an isolated worktree gets its own compose project shared service a job with scope = "shared": one instance for the repository, run in the main checkout; a worktree holding it reports it as joined namespace a worktree's own part of a shared service — a database, a realm named URL the address the run proxy serves (http://api.feat-x.myrepo.localhost) port URL the job's own port (http://localhost:4012), printed with --raw isolation isolated: the worktree gets its own ports, compose project and namespaces; verbatim: it keeps its source's values, and so shares its source's data touches the services whose data a task changes (a migration, a reset, a seed) foreign data data this worktree does not own: its source's when it is verbatim, every worktree's for a shared service with no namespace; a job whose touches reach it is refused unless --force [worktree] a worktree's branch name, never a path; omitted, the current worktree

wtm run [flags]
# Once per repository: detect compose files and package scripts
wtm run init
# Start the default profile in this worktree
wtm run up
# What runs, across every repository
wtm run ps
wtm run down
-h, --help help for run
-q, --quiet Silence human output; errors and the exit code are unaffected, and --output json still emits its document