Skip to content
Docs/vem runner

vem runner

Pair a local checkout with the web app so users can run project commands from the Workspace page while task-level agent runs execute through the online sandbox backend.

What it is used for

`vem runner` keeps a local repository available to the web Workspace terminal. It reports availability, repo metadata, and executes normal shell commands from that checkout.

What it is not used for

Web task agent runs no longer depend on a paired runner. They are queued for isolated sandbox execution and require the project to be connected to GitHub.

Start a paired runner

Run the command inside the repository you want to expose to the web Workspace page.

cd /path/to/your-repo
vem login
vem link
vem runner --agent copilot --poll-interval 2

Keep this process running in its own terminal window.

You can start multiple runner processes for the same project to increase parallel task throughput.

The runner reports the repo root, current branch, worktree cleanliness, and the configured agent command back to the web UI.

Workspace terminal flow

1. Open Workspace

Go to a project in the web app and open the Workspace tab.

2. Wait for an idle runner

The page should show your machine as online and idle before you submit commands.

3. Run non-interactive commands

Submit commands like `pwd`, `git status --short`, or other standard shell checks. Output streams back into the page.

Task runs from the web

The task page's Run with agent button now targets an isolated sandbox backend.

  • The sandbox clones the repository into a temp workspace.
  • It runs the agent away from the user's local machine.
  • Multiple run requests are queued and processed as runners become available.
  • It can push a branch and create a pull request when GitHub is connected.
  • If GitHub is not connected, the task page will block the run up front.

GitHub connection is required

Sandbox task runs need a GitHub-connected project because the backend clones the repo with installation credentials and may push branches or open pull requests.

Troubleshooting

“No paired runner was online to claim this command”

Start or reconnect `vem runner` in the linked checkout, then rerun the command from Workspace.

“A paired runner did not claim this command in time”

The runner stopped polling or disconnected before claiming the queued command. Confirm the runner terminal is still active and the Workspace page shows it as idle.

Task run says GitHub must be connected

Open project settings, connect the repository to GitHub, and then retry the sandbox task run.

Related docs