AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified MIT Self-run

Web Reading Router

skill-xiaohei-info-oh-my-agent-skills-web-reading-router · by xiaohei-info

>

No reviews yet
0 installs
18 views
0.0% view→install

Install

$ agentstack add skill-xiaohei-info-oh-my-agent-skills-web-reading-router

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access Used
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-xiaohei-info-oh-my-agent-skills-web-reading-router)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
3mo ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Web Reading Router? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Web Reading Router

Use this skill to decide how to read a URL before trying tools at random.

When to Use

Use this skill when:

  • the user shares a URL and wants content read or summarized
  • the page might need JavaScript rendering
  • a lightweight fetch returned partial content
  • the URL might belong to a platform that deserves a specialized workflow
  • the content may actually be a file resource rather than a normal webpage

Do not load this skill for ordinary search-only tasks where no URL needs to be read. Exception: if lightweight search/extract tooling is failing upstream but you can identify likely target URLs, use this skill to route a manual browser-based verification pass on those targets.

Core Rule

Prefer the narrowest reliable path:

  1. platform-specific skill or workflow
  2. lightweight generic extraction
  3. lightweight external reader fallback
  4. browser rendering and interaction
  5. user assist after diagnosing the blocker

Do not jump to the heaviest option first unless the URL clearly requires it.

Fast Checklist

Before picking a tool path, classify the URL:

  1. Is it a known platform domain?
  2. Is it file-like (.pdf, image, JSON, XML, RSS)?
  3. Is the task one-off reading or repeated extraction?
  4. Did a lighter path already fail, and how?

If the helper script exists, run:

python3 SKILL_DIR/scripts/route_url.py "URL"

Use the result as a starting point, not as an absolute rule.

Baseline Routes

1. Platform URLs

Prefer dedicated workflows when possible:

  • mp.weixin.qq.com → load wechat-reader
  • github.com → use Hermes GitHub skill or gh for repo-native reads
  • For repository evaluation tasks, do not stop at the repo landing page or README if the user is asking about doctrine, architecture, overlap, adoption value, or whether the repo is actually useful. Identify and read the canonical files that define the repo's real model before making substantive judgments. Typical paths include docs/, AGENTS.md, SOUL.md, MEMORY.md, implementation/integration guides, and the specific skills/ or template files that operationalize the model.
  • If you only read the README, explicitly label the result as a first-pass impression. Do not present overlap/adoption conclusions as if the full repository charter or operating model has already been reviewed.
  • raw.githubusercontent.com → if the page snapshot is empty or unhelpful, read the raw body with browser DOM inspection (document.body.innerText) instead of assuming the file is unreadable
  • x.com, twitter.com → first try lightweight extraction if available, but expect it to fail or return partial content; if so, use browser rendering because the logged-out post page often exposes the post text directly in the accessibility tree. If media matters, recover rendered image URLs via DOM inspection (document.querySelectorAll('img')) and analyze the attachment separately.
  • youtube.com, youtu.be, bilibili.com → prefer transcript / metadata paths or Agent Reach
  • reddit.com → prefer Agent Reach or Reddit-native reading

1a. Agent Reach as a platform bridge

If Agent Reach is installed and healthy, use it as a specialized backend for supported channels rather than treating it as a separate top-level micro-skill.

Best fit:

  • Reddit, V2EX, GitHub, RSS, WeChat-article search/read, YouTube, Bilibili, and related supported channels
  • cases where Hermes native web_extract is weak or partial but a platform-aware bridge may succeed
  • workflows where agent-reach doctor can quickly tell you whether the channel is currently available

Rules:

  • resolve the real Agent Reach binary first instead of assuming it is on PATH
  • run a fresh doctor before trusting a channel
  • still prefer the narrowest path: if the URL is a direct mp.weixin.qq.com article and browser rendering is clearly required, go straight to the WeChat/browser workflow rather than forcing Agent Reach first

2. File-like URLs

Switch early when the URL is obviously a file:

  • PDF → web_extract usually works well
  • image → use vision_analyze
  • JSON / XML / RSS → use web_extract or terminal fetch, then inspect structured content

3. Generic Public Pages

Start with web_extract. Escalate only if the result is clearly incomplete, heavily templated, empty, or JS-walled.

Search / Extraction Outage Fallback

If web_search or web_extract fails with an upstream/provider error on a public-web research task, do not stop at the error if the target sites are already known.

Use this fallback sequence:

  1. identify the 3-5 highest-value target URLs or boards
  2. open them with browser_navigate
  3. verify live activity signals such as recent timestamps, visible listings, result counts, salary/rate snippets, or open application flows
  4. clearly distinguish browser-verified findings from unverified assumptions
  5. if one target is blocked, continue verifying the next best targets instead of abandoning the whole research pass

This is especially useful for marketplace/board reconnaissance where lightweight search fails but direct site access still works.

Escalation Ladder

Step A — web_extract

Use first for public articles, docs, help pages, and other normal webpages. Escalate when the result is title-only, empty, clearly truncated, or missing the body.

Step B — Lightweight external reader fallback

If a public page still looks readable but web_extract is incomplete, try a lightweight external path such as:

curl -s "https://r.jina.ai/https://example.com/article"

Use this only for public pages. Do not expect it to bypass strong anti-bot or login walls.

Step C — Browser rendering

Use browser tools when the page likely needs JavaScript rendering, scrolling, clicking, or inspection of the rendered state. If the browser hits CAPTCHA, slider verification, login walls, or permission gates, report the exact blocker instead of pretending the content was read.

Step D — User assist

Ask for help only after diagnosing the blocker. Typical asks:

  • paste the relevant text
  • send screenshots
  • share a mirror link
  • provide login state or cookies if the user wants that path used

Output Pattern

When readable, prefer:

  • Type: page/resource type
  • Path: route used
  • Summary: answer first
  • Confidence: full / partial / low
  • Notes: any missing pieces or blind spots

When blocked, prefer:

  • Type: page/resource type
  • Path tried: route used
  • Blocker: exact reason
  • Next step: best fallback or minimum user assist needed

Pitfalls

  • Do not hallucinate content when extraction failed.
  • Do not use browser first for every normal public article.
  • Do not treat metadata-only extraction as a full read.
  • Do not ignore platform-native paths for GitHub, WeChat, YouTube, Bilibili, or Reddit.

References

  • references/platform-routing.md
  • references/failure-diagnosis.md

Verification

Before replying, confirm:

  • the selected path matched the URL type
  • any extracted body is non-empty
  • any blocker is stated precisely
  • the answer distinguishes full read vs partial recovery

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.