Direct shell wrapper for a single HTTP request. Replaces
sub-agent sub-Agent steps that just GET/POST a URL — order-of-
magnitude faster (no LLM round-trip, no tool surface, no iteration
loop).
Inputs (with:)
| key | required | default | notes |
|---|---|---|---|
url |
yes | — | absolute http(s) URL |
method |
no | GET |
GET / POST / PUT / DELETE (case-insensitive) |
body |
no | '' |
request body, piped via stdin (for POST/PUT); empty = no body |
timeout |
no | 30 |
request timeout in seconds |
max_bytes |
no | 2000000 |
response body cap; larger payloads truncated + suffixed … |
Output
- Success: response body on stdout (UTF-8 decoded, truncated to
max_bytesif larger; lossy decode replaces invalid bytes). - Non-2xx response: exit 1, stderr
HTTP <code>: <reason> <body[:200]>; stdout still carries the body for callers that want to inspect. - Network / DNS / timeout failure: exit 2, stderr cause.
When NOT to use
- Crawling multiple pages → use
scrapling(viasub-agent). - JS-rendered pages → use
sub-agent+ browser tools. - OAuth dance / multi-step auth → use
sub-agent. - Streaming responses → not supported (we buffer + return).
Fallback
If this skill is unavailable, callers should spawn sub-agent
with a curl/requests task — same result, ~10× the latency and a
non-deterministic tool loop.