clodcapture

Auto-save, export, and continue Claude.ai chat sessions across conversations. Zero dependencies, zero accounts, all data stays local.

clodcapture 3D icon

About

Problem

  • Claude.ai has no full session export. When context fills up, long threads are hard to keep.
  • Manual copy-paste loses structure, and there's no way to resume a prior conversation in a new chat without friction.
  • You can't see how much context you've used until it's too late.

Solution

  • clodcapture runs while you use claude.ai. No separate login, no setup.
  • Captures full conversation JSON automatically as you navigate between chats.
  • One-click export, bulk sync, GitHub backup, and session continuation in new chats.

Summary

You wantHow
Auto-capture a chatJust visit it - clodcapture captures on navigation
Copy session to clipboardClick Copy in popup
Download raw JSONClick Grab
Export everythingClick Sync All - zips to Downloads/clodcapture/
Resume in a new chatClick the continue button on any captured chat
Quick continue (FAB)Click the floating spider button on claude.ai
Select a range to continueUse the timeline spine to pick specific messages
Combine multiple chatsLong-press to multi-select, continue with stacked keys
Push to GitHubConfigure repo in Settings, click Push All
See context usageCheck the gauge in the popup footer or the FAB ring

UI

clodcapture UI

Install

Download from Chrome Web Store

From source

  1. Clone this repo.
  2. Chrome -> Extensions -> turn on Developer mode -> Load unpacked -> choose the repo folder (the one with manifest.json).
  3. Open https://claude.ai and use the extension popup.

How it works

Capture pipeline

  1. Content script patches history.pushState / replaceState and listens for popstate. Switching chats triggers a capture via the service worker.
  2. Uses your existing claude.ai session cookies to call the conversation API. No API key required for saving.
  3. Raw JSON stored in IndexedDB (brainjar). Metadata indexed in chrome.storage.local for fast popup rendering.
  4. Background alarm refreshes captures every 30 minutes.

clawd-continue (session resume)

Resume a saved thread in a new chat:

  1. Distills captured JSON to { role, text } pairs.
  2. With API key: Claude Sonnet builds an intelligence report (entities, arc, state, next step) - not a line-by-line replay.
  3. Without API key: Fallback prompt embeds session JSON directly.
  4. Injects into the claude.ai composer via ClipboardEvent.

Context usage gauge

  • With API key: exact token count via /v1/messages/count_tokens against a 200k window.
  • Without: estimate via chars / 3.5.
  • Shown as a segmented ring in the popup footer.

Floating Action Button (FAB)

A draggable jelly spider button injected directly onto claude.ai. Click to open a mini-panel with your recent captured chats. One click to continue any session in a new chat. Toggle with Cmd+Shift+K.

Timeline Spine

Click "Go" on any chat in the FAB panel to open the timeline spine - a vertical scrubber showing every message as a proportional marker (orange = human, purple = assistant). Drag the handles to select a range. Quick-select chips: Last 10, Last 25, 2nd half, All. Live token estimate. Only your selected slice gets injected into the new chat.

Portable Chat Keys

Each chat can generate a compact summary key (~500 tokens) via Haiku. Keys contain: summary, entities (people, tools, files, decisions), arc, tags, current state, and next step. Long-press chat items to multi-select up to 5 sessions, then "Go with keys" to stack all their summaries into one new chat. Auto-tags show as colored pills and are searchable with #tag-name.


Architecture

clodcapture architecture diagram

manifest.json            MV3 service_worker + content_scripts on claude.ai
  +-- background.js      capture, sync, export, GitHub push, alarms,
  |                       spine indexing, key generation, token count
  +-- content.js         history patching, capture triggers, composer injection
  +-- fab.js             floating action button, panel, chat list
  +-- spine.js           timeline scrubber, range selection, partial continue
  +-- keys.js            portable keys, tagging, multi-select, key-based continue
  +-- fab.css + spine.css styles for FAB, panel, spine, tags, liquid buttons
  +-- popup.html/js      popup UI, settings, full chat list
  +-- spider.js          3D spider canvas animation (click = bounce)

Zero runtime dependencies. ~1100 lines across 8 JS files.


Permissions

PermissionWhy
storage, unlimitedStorageIndexedDB + extension storage for captured sessions
tabsDetect active claude.ai tab and extract chat ID from URL
cookiesSession-backed API calls for capture (no cookies stored or transmitted)
downloadsJSON and ZIP exports to Downloads folder
clipboardWrite, clipboardReadCopy/paste workflows for session data
scriptingInject content script for composer loading
alarms30-minute background sync

Host permissions: claude.ai (capture), api.anthropic.com (optional token counting + continue), api.github.com (optional backup).


Settings

SettingWhat it does
API keyEnables exact token counting and AI-powered session digests via clawd-continue
GitHub repoowner/repo for backup. Push captured sessions as versioned JSON files
Auto-pushAutomatically push to GitHub on every capture

All settings stored locally in chrome.storage.local. No data leaves your machine unless you explicitly configure GitHub backup.