The
exec tool lets agents run shell commands. It’s how your Developer agent runs tests, builds your project, installs dependencies, and validates its own changes. All exec calls require approval by default.What it does
When your Developer agent needs to run something — a test suite, a build command, a script — it usesexec to run that command on the Qorven server and gets back the output (stdout + stderr, exit code).
Example: You ask your Developer agent to “add input validation to the signup form and make sure the tests still pass.”
The agent:
- Reads the relevant files
- Makes the code changes
- Calls
exec("npm test")to run the test suite - Reads the output — if tests fail, it investigates and fixes
- Reports back once tests are passing
Approval required
By default, everyexec call requires your approval. An approval card appears in the chat:
npm test or git status.
Configuring auto-approval
In an agent’s settings, specify which commands run without asking:Working directory
By default, exec runs from the Qorven data directory. Set a default working directory in the agent’s tool config, or your agent can specify the directory per command. For project-specific work, register the project withqorven projects add — the Developer agent will then run commands from the correct directory automatically.
Security model
The exec tool runs under theqorven system user — a locked-down account with limited permissions. It cannot write to system directories, run as root, or access files outside the allowed paths.
For stricter isolation (running untrusted code, user-submitted scripts), enable sandbox mode — this runs commands inside a restricted Linux namespace. See sandbox mode →.
Related tools
Filesystem
Read and write files — works alongside exec for code changes.
Apply Patch
Apply code changes as a unified diff.
Approvals
How to configure approval rules for exec and other tools.
Sandbox mode
Run commands in an isolated environment.