Install
$ agentstack add skill-jasondocton-rad-claude-webfetch-patterns ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo 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 No
- ✓ 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.
About
Gemini CLI Web Bridge
Execution Model
Run as subagent to isolate tmux noise from main session.
Output contract: Return ONLY raw content wrapped in `` tags, then terminate immediately. No logs, no status updates, no commentary.
Protocol
1. Init Session
S="fetch_$(date +%s)"
tmux new-session -d -s "$S" -x 200 -y 50
tmux send-keys -t "$S" 'gemini' Enter
sleep 2
2. Send Request
tmux send-keys -t "$S" "Fetch and return full text from: [URL]. No summaries." Enter
3. Poll Until Complete
Loop until READY or FAILURE. Wait 3s between polls, max 15 attempts.
tmux capture-pane -t "$S" -p | awk '
/Type your message/ {print "READY"; exit}
/[Rr]ate.[Ll]imit|[Qq]uota/ {print "FAILURE:THROTTLED"; exit}
/[Ss]ign.[Ii]n|[Ll]ogin/ {print "FAILURE:AUTH"; exit}
/Internal error|unexpected/ {print "FAILURE:ERROR"; exit}
END {print "PENDING"}
'
Stuck in PENDING? Visual State Check
Capture pane and inspect where YOUR QUERY appears relative to the input box:
Enter NOT sent — query is INSIDE the bordered box:
╭─────────────────────────────────────╮
│ > Your query text here │
╰─────────────────────────────────────╯
→ Fix: tmux send-keys -t "$S" Enter
Enter WAS sent — query is OUTSIDE box, activity below:
> Your query text here
⠋ Working...
╭─────────────────────────────────────╮
│ > Type your message │
╰─────────────────────────────────────╯
→ Keep polling. For complex queries, extend max attempts to 30.
4. Extract & Return
tmux capture-pane -t "$S" -p -S -1500 > /tmp/"$S".txt
cat /tmp/"$S".txt
tmux kill-session -t "$S"
rm /tmp/"$S".txt
Parse the Gemini response from captured output. Strip tmux UI artifacts (boxes, prompts, spinners). Return only the substantive content:
[extracted content only]
Failure Handling
On any FAILURE:* status or max poll timeout:
ERROR: [reason] - Unable to fetch [URL]
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: JasonDocton
- Source: JasonDocton/rad-claude
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.