Claude Code has WebFetch. Every AI coding agent has some way to grab a webpage.
They all hit the same wall: auth.
Try fetching a Medium article. A Facebook post. A private Substack. Anything behind Cloudflare. The agent gets a login page, a CAPTCHA, or nothing — and makes up the rest.
What playpanda does
playpanda https://medium.com/@someone/private-post
You log in once. Cookies get saved. After that, fetching just works — from an agent, a script, or the terminal.
The output is markdown with the junk stripped out. No nav bars, no cookie banners, no ads, no image CDN URLs. Just the content.
How agents can use it
Anything that can shell out can use it:
# Replace WebFetch in Claude Code
playpanda https://docs.example.com/private-api
# Fetch multiple pages at once
playpanda https://url1.com,https://url2.com,https://url3.com
How fetching works
It tries the fastest method first and escalates when something gets in the way:
| Method | Speed | When it kicks in |
|---|---|---|
| HTTP fetch | ~200ms | Default, works for most pages |
| JS rendering | ~1.5s | Page needs JavaScript to load |
| Real browser + anti-detection | ~6s | Site actively blocks bots |
The agent doesn't need to know which tier ran. It just gets markdown back.
Size
Single Zig binary, under 400kb.
Install
One-liner:
curl -fsSL https://raw.githubusercontent.com/ancs21/playpanda/main/scripts/install.sh | sh
As an agent skill:
npx skills add ancs21/playpanda
From source (requires Zig 0.15+):
git clone https://github.com/ancs21/playpanda.git
cd playpanda
zig build -Doptimize=.ReleaseFast
cp zig-out/bin/playpanda ~/.local/bin/
GitHub: https://github.com/ancs21/playpanda (Apache 2.0 license)



