ワンクリックで
fetch-url
HTTP GET/POST utility with size cap, SSRF guard, retries, and circuit breaker.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
HTTP GET/POST utility with size cap, SSRF guard, retries, and circuit breaker.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Bounded auto-iteration for a prompt with explicit stop predicates.
Memory hygiene workflow to classify, deduplicate, and promote durable knowledge across local memory layers.
Bounded simplification pass for a file or hunk that preserves behavior while reducing complexity.
Turn a repeatable workflow into a reusable local SKILL.md with explicit steps, criteria, and safe defaults.
Bounded auto-debug loop for failing build/test commands with evidence-first diagnosis.
Safely update Nexo config files with read-before-write merges, schema-aware mapping, and reload/restart awareness.
| name | Fetch URL |
| description | HTTP GET/POST utility with size cap, SSRF guard, retries, and circuit breaker. |
| requires | {"bins":[],"env":[]} |
Use this skill to download remote HTTP(S) content — raw API calls, web pages, JSON endpoints, small files — safely. Private and metadata hosts are blocked by default to prevent SSRF.
pdf-extract → summarize_textallow_private: true only on
explicitly trusted operator callsstatusNo arguments. Returns limits, policy, default timeout, user-agent.
fetch_urlurl (string, required) — http:// or https:// onlymethod (string, optional) — GET/POST/PUT/DELETE/HEAD/PATCH/OPTIONS (default GET)headers (object, optional) — {"content-type": "application/json", ...}body (string, optional) — request body as raw string; caller sets Content-Typemax_bytes (integer, optional) — response cap. Default 5 MB, hard max 50 MBtimeout_secs (integer, optional) — per-request timeout. Default 15s, max 120sallow_private (boolean, optional) — override SSRF guard. Default falseReturns {status, final_url, headers, content_type, truncated, bytes_read, body_text?, body_base64?}.
body_text is set for text-like content-types (text/*, json, xml, yaml,
javascript) if UTF-8 decodable. Otherwise body_base64 is set and
body_text is null.
max_bytes (e.g. 100 000) when probing an unknown
endpoint — you can always retry with a larger cap.status is 4xx (-32002 error), the body preview is in the error
message — read it before retrying.status is 5xx (-32003), retries already exhausted inside the
extension; do not retry from the LLM side — back off instead.blocked_host error (-32020) → the URL points to a private IP /
loopback / metadata endpoint. Do not pass allow_private=true
unless the operator explicitly asked to hit an internal service.truncated: true means the body was cut at max_bytes. Warn the user
or re-fetch with a bigger cap if needed.1. fetch_url { url, max_bytes: 50000 }
2. summarize_text { text: body_text, length: "medium" }
1. fetch_url { url: "https://.../doc.pdf", max_bytes: 5000000 }
2. (operator saves body_base64 to /tmp/doc.pdf)
3. pdf-extract.extract_text { path: "/tmp/doc.pdf", max_chars: 50000 }
4. summarize_text { text, length: "long" }
(Auto-saving to disk from inside the LLM is not yet supported — a future
extension fetch_url_save could do that safely.)