Claude Code Web Session Archiver

Archive a full Claude Code Web session into one self-contained HTML file: auto-scroll, expand collapsed blocks, download screenshots, optional fast mode and code-strip. Multi-locale UI (EN/RU/DE/FR/ES) auto-selected from the browser locale.

이 스크립트를 설치하려면 Tampermonkey, Greasemonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램을 설치해야 합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Userscripts와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 유저 스크립트 관리자 확장 프로그램이 필요합니다.

(이미 유저 스크립트 관리자가 설치되어 있습니다. 설치를 진행합니다!)

Advertisement:

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

(이미 유저 스타일 관리자가 설치되어 있습니다. 설치를 진행합니다!)

Advertisement:

작성자
Contento-R
일일 설치 수
0
총 설치 수
9
평점
0 0 0
버전
1.11.0
생성일
2026-05-21
갱신일
2026-06-08
크기
126KB
라이선스
MIT
적용 사이트

Save the **entire** Claude Code Web session — including history the cloud has already compacted — as a single self-contained HTML file with all screenshots embedded as `data:` URLs. Also exports Markdown and JSON.

A small, **auto-collapsing** green panel appears on `code.claude.com`, `claude.ai/code` and `claude.com/code` with five controls:

- **⬇ Archive** — walks the whole session, captures every message in chronological order, downloads screenshots, and saves a portable file you can open offline in any browser.
- **⚡ Fast** — toggles an aggressive timing profile and parallelizes screenshot downloads from 6 to 10 concurrent requests.
- **📝 No code** — excludes code blocks Claude writes (tool calls, diffs, file viewers, `

` fences) so only the conversation between you and the agent is exported. Detection uses computed `font-family` on the live DOM, so it works regardless of how the upstream UI wraps its code containers.
- **⚙ Settings** — output format (HTML / Markdown / JSON), "only new" delta mode, range filter, local-only network mode, secret redaction (regex list), and "collapse assistant blocks by default".
- Drag handle (`⋮⋮`) on the left edge — panel position persists in `localStorage` and auto-clamps to the viewport on window resize so it never disappears off-screen.

3 s after the cursor leaves the panel it **shrinks to a small green circle**. Hover or focus re-expands it. Suspended during archiving and while the settings modal is open. The circle is also draggable.

Hotkeys: **Alt+A** to start, **Esc** to cancel.

The script does a daily background check against `main` on GitHub. When a newer version is published, a yellow dot appears on the ⚙ button and the settings modal shows an "Install" banner — clicking it lets Tampermonkey perform its normal reinstall flow.

## Why

Claude Code Web compacts long sessions — older turns disappear from the live thread and survive only as a summary. This script walks the live DOM while everything is still rendered, so you can save the full transcript (plus screenshots) before the next compaction.

## How it works

1. Jumps to the top, then auto-scrolls down step by step so the virtualizer renders every message. A MutationObserver wakes the loop as soon as new content appears, falling back to a configurable cap.
2. Expands every `
` and `aria-expanded="false"` disclosure block in view (skipped for code disclosures when *No code* is on). 3. Records each message's absolute Y position so the chronological order in the output matches what you see on the page, regardless of how the virtualizer interleaves rendering. 4. Detects role (User vs Claude) from `data-message-author-role` / `data-author` / `data-role` / `aria-label` attributes, falling back to computed alignment and geometric heuristics. Detects tool calls (Bash, Edit, Write, Read, Glob, Grep, WebFetch, WebSearch, Task, TodoWrite, NotebookEdit, NotebookRead, MultiEdit, ExitPlanMode, SlashCommand, KillShell) and model name (Opus / Sonnet / Haiku); per-message timestamps when `