shell calls.
Available tools
| Tool | Description |
|---|---|
shell | Execute a shell command and return its combined stdout/stderr output. |
run_background_job | Start a long-running command in the background and return a job ID immediately. |
list_background_jobs | List all background jobs with their status and runtime. |
view_background_job | View the live output or final result of a background job by ID. |
stop_background_job | Cancel a running background job by ID. |
Configuration
Options
Environment variables to inject into every shell command. Values can reference existing environment variables using
${VAR} syntax.Custom environment variables
Shell tool parameters
When the agent calls theshell tool, it passes these parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
cmd | string | Yes | The shell command to execute. |
cwd | string | No | Working directory for this command. Defaults to the agent’s working directory. |
timeout | integer | No | Per-call timeout in seconds. Overrides the default 30-second timeout. |
Background jobs
Userun_background_job for long-running processes like dev servers, file watchers, or build daemons. The agent can start the job and continue with other tasks while it runs.
agent.yaml
Example agent
agent.yaml
By default, Docker Agent asks for confirmation before executing shell commands. Use
--yolo to auto-approve all tool calls without prompts — useful for automated workflows:Security considerations
Related
Script
Expose predefined commands as named tools with typed parameters.
Filesystem
Read and write files alongside shell operations.
Sandbox
Run agents in isolated Docker containers.
Permissions
Control which commands require confirmation.