Help us improve
Share bugs, ideas, or general feedback.
From obscura
Fetch a single web page using Obscura headless browser. Best for public, read-only pages. Returns HTML, plain text, links, or JS-evaluated results.
npx claudepluginhub epicsagas/obscura-plugin --plugin obscuraHow this skill is triggered — by the user, by Claude, or both
Slash command
/obscura:obscura-fetchThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Fetch a URL with Obscura and return the content. Use this for single-page read operations — documentation, articles, public data pages.
Guides technical evaluation of code review feedback: read fully, restate for understanding, verify against codebase, respond with reasoning or pushback before implementing.
Share bugs, ideas, or general feedback.
Fetch a URL with Obscura and return the content. Use this for single-page read operations — documentation, articles, public data pages.
/obscura-fetch <url> [--dump html|text|links] [--eval <js>] [--selector <css>] [--stealth]
| Goal | Flag |
|---|---|
| Read article / docs | --dump text |
| Extract links | --dump links |
| Get raw HTML | --dump html (default) |
| Extract structured data | --eval "JSON.stringify(...)" |
| Wait for dynamic content | --selector <css> or --wait-until networkidle0 |
| Bot-detection suspected | --stealth |
obscura fetch <url> --quiet [options]
--stealth or --wait-until networkidle0.When a fetch returns unexpected results in an automated workflow:
| Symptom | Try |
|---|---|
| Empty body | --stealth |
| Bot detection page | --stealth --wait-until networkidle0 |
| SPA content missing | --selector <main-element> --wait-until networkidle0 |
| Redirect loop | Check final URL in output, fetch that directly |
| 403 Forbidden | --stealth with --user-agent "Mozilla/5.0..." |
Before adding a URL to a visited set, normalize it:
https://example.com/page#section → https://example.com/pagehttps://example.com/page/ → https://example.com/pageutm_source, utm_medium, fbclid, gclid# Read article as clean text
obscura fetch https://example.com --quiet --dump text
# Extract page title
obscura fetch https://example.com --quiet --eval "document.title"
# Extract all links
obscura fetch https://example.com --quiet --dump links
# Structured data extraction
obscura fetch https://news.ycombinator.com --quiet \
--eval "JSON.stringify(Array.from(document.querySelectorAll('.titleline > a')).map(a => ({title: a.textContent, url: a.href})))"
# Wait for SPA content
obscura fetch https://example.com --quiet --selector "#main-content" --dump text
# Stealth mode for bot-protected pages
obscura fetch https://example.com --quiet --stealth --dump text