agentic-readiness
Audit and improve repositories for reliable agentic work across Codex and Codex App, Claude Code, and OpenCode. Use when…
Fetch a web page (URL) and return clean Markdown via local trafilatura, with Exa MCP as a fallback for JS-rendered or anti-bot pages. Use when the user asks to read, fetch, scrape, summarize, or quote a URL — prefer this over the built-in WebFetch tool. Don't use for binary
$ npx -y skills add CodeAlive-AI/ai-driven-development --skill fetch-url-as-markdown --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/fetch-url-as-markdownContext preview
The summary Claude sees to decide when to auto-load this skill.
Fetch a web page (URL) and return clean Markdown via local trafilatura, with Exa MCP as a fallback for JS-rendered or anti-bot pages. Use when the user asks to read, fetch, scrape, summarize, or quote a URL — prefer this over the built-in WebFetch tool. Don't use for binary
name: fetch-url-as-markdown description: Fetch a web page (URL) and return clean Markdown via local trafilatura, with Exa MCP as a fallback for JS-rendered or anti-bot pages. Use when the user asks to read, fetch, scrape, summarize, or quote a URL — prefer this over the built-in WebFetch tool. Don't use for binary files (PDFs, images, archives) or for fetching API/JSON endpoints.
Fetch any web URL and get clean, readable Markdown — main content only, no navigation/footer/ads. Local + free by default; smart fallback to Exa MCP when the page can't be extracted locally.
1. **Try trafilatura first**:
python3 ~/.claude/skills/fetch-url-as-markdown/scripts/fetch_url.py "<URL>"
2. **If exit code is 1 or 2 → fall back to Exa MCP** with the same URL:
mcp__exa__web_search_advanced_exa(
query="<URL>",
includeDomains=["<host of URL>"],
numResults=1,
textMaxCharacters=50000,
type="auto"
)(`mcp__exa__crawling` works too if the server exposes it; the `web_search_advanced_exa` call above is the always-available variant — pin the host with `includeDomains` and use the URL itself as the query.)
3. Exit code `3` means trafilatura is not installed — install once:
python3 -m pip install --break-system-packages trafilatura
| Code | Meaning | Action | |---|---|---| | 0 | Markdown printed to stdout | done | | 1 | DownloadError — network/HTTP/timeout/anti-bot block at fetch | fall back to Exa | | 2 | ExtractionError — empty extract, JS/Cloudflare wall, or stub body (<200 chars) | fall back to Exa | | 3 | trafilatura missing | install (see above), then retry | | 4 | UnsupportedContentTypeError — URL is binary (PDF, image, archive) | **don't** fall back to Exa; use the right specialized skill (e.g. `pdf` for PDFs) |
... fetch_url.py "<URL>" --no-links # strip hyperlinks ... fetch_url.py "<URL>" --no-tables # strip tables ... fetch_url.py "<URL>" --no-metadata # omit YAML header ... fetch_url.py "<URL>" --comments # include user comments (off by default — usually noise) ... fetch_url.py "<URL>" --images # include image refs (experimental) ... fetch_url.py "<URL>" --precision # terser output, drops borderline content
| Situation | Tool | |---|---| | Article, blog post, docs, README, wiki | trafilatura (default) — local, free | | JS-heavy SPA, login-walled, Cloudflare | Exa fallback (the script will signal exit 2) | | Bulk / many URLs | trafilatura — no quota, no API key | | Already failed twice on a domain | Exa directly |
Practices, protocols, and skills for AI-driven software development. Skills and safety hooks for Claude Code, Codex, OpenCode, Cursor, Antigravity, and any agent supporting the Agent Skills standard.
Audit and improve repositories for reliable agentic work across Codex and Codex App, Claude Code, and OpenCode. Use when…
8-step disciplined bug-fix protocol that treats every production bug as two failures — the code defect itself and the testing…
Copy text to clipboard with optional rich formatting. Triggers on "copy to clipboard", "copy that", "pbcopy", "copy formatted",…
Software-engineering heuristics based on Mark Seemann's Code That Fits in Your Head (2021), updated for agent-driven development.…
Use First Principles Framework (FPF) to decompose problems, architect systems, evaluate alternatives, define quality, qualify and…
Manage hooks and automation for coding agents (Claude Code, Codex CLI, OpenCode, Devin CLI/Desktop). Use when users want to add,…