run_pipeline
Chain security tool outputs through validated multi-step pipelines, replacing unsafe shell piping. Each step undergoes allowlist and policy checks before execution, with output capped to prevent overflow.
Instructions
Execute a pipeline of tools, piping stdout from each step into stdin of the next.
Replaces shell piping (e.g. strings binary | grep flag) with a safe,
no-shell alternative. Each step is validated individually (allowlist,
argument sanitization, policy checks) before any process starts.
Each step's stdout and stderr are bounded to 200KB as they are read, and an
intermediate step's bounded stdout is what gets piped into the next step. If
any step hits that cap, the returned truncated flag is set and the final
stdout carries a truncation marker.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| host | No | Reserved for future use. Currently only local execution is supported. | |
| steps | Yes | List of dicts, each with 'tool' (required) and 'args' (optional) keys. Max 10 steps per pipeline. | |
| timeout | No | Global timeout for entire pipeline in seconds (default 120, max 300). |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||