Agent skill · writing content · daymade

read-claude-web-conversation

Reads or exports the COMPLETE transcript of a Claude.ai web conversation — private /chat/... and public /share/... links — via Claude.ai's internal API in the user's logged-in Chrome, plus its files. Use when the user pastes a claude.ai link and asks to read, summarize, export, archive, or extract it — "读这个对话", "导出网页版对话", "拉到本地". Local sessions: read-claude-code-history; exported files: claude-export-txt-better.

Why this skill is useful

Adds a script that reliably extracts complete transcripts from Claude.ai web conversations, overcoming common pitfalls that other methods cannot handle.

What it needs

Requires chrome installed locally. Requires claude.ai account access. About 12k tokens when loaded. Last updated 2026-08-07. 1,320 stars on the source repository.

What this skill does

Read Claude.ai Web Conversation Pull a Claude.ai web conversation into a full, structured transcript — every message and every tool call, not just what is currently on screen. Verified against Claude.ai's web API as of July 2026. These are the same private JSON endpoints the Claude.ai front-end calls; they are not a documented or version-stable public API, so if a request 404s, re-derive the shape from the Network tab (see references/claude-web-api-extraction.md). This skill vs. its siblings Pick by the source you are holding, not by the word "conversation": Source Use -------- ----- A live claude.ai/chat/… or claude.ai/share/… URL This skill Local Claude Code sessions (~/.claude/projects/.jsonl) read-claude-code-history An already-exported .txt / .json conversation file claude-export-txt-better Why the obvious approaches fail (read this first) Four traps, and every one of them fails silently — you get back something that looks like a complete export, and you only notice the loss if you happen to know how long the conversation really was. Assume you are being lied to by default; the fidelity gate in Step 4 exists to make the lies audible. 1. Login wall. curl and WebFetch don't get an auth redirect — they get a Cloudflare challenge page (HTTP 403, Just a moment...). Nothing you do to the headers fixes this; the page is gated on a session that lives in the user's Chrome. Never reach for curl here, not even to "just check". 2. Virtual scrolling. With the conversation open, getpagetext and DOM scraping still only see the handful of messages currently rendered — often just the last one. A 40-message thread comes back as 1. 3. Default rendering collapses the tool calls. The API's default rendering turns every tool call into a "not supported on your current device" placeholder. On a research/agent conversation the tool blocks ARE the content: measured on a real one, the default rendering returned 9.4k chars against 173k with renderalltools=true — 5%. …

How to use it

Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:

@skills daymade/read-claude-web-conversation

View the source on GitHub

Browse the @skills marketplace