I reverse-engineered where 6 AI coding tools store your prompts — and built a dashboard for it

작성자

카테고리:

← 피드로
DEV Community · Al Amin Rifat · 2026-06-11 개발(SW)
Cover image for I reverse-engineered where 6 AI coding tools store your prompts — and built a dashboard for it

Al Amin Rifat

I use a lot of AI coding tools — Claude Code, Cursor, GitHub Copilot, OpenCode,
Windsurf, and Antigravity. The problem: my prompt history was trapped in six
separate local stores, in six different formats, with no way to see it together.

So I built AI Prompt Monitor
a local, self-hosted Next.js dashboard that ingests all of it into one searchable,
filterable view.

What it does

  • Aggregates prompts from all six tools into a local SQLite index
  • Filter by platform, project, and date range; full-text search
  • Stats (total prompts, sessions, projects) + charts (prompts/day, per platform)
  • A dedicated page per platform
  • Copy any prompt or session ID with one click
  • 100% local and read-only — nothing is ever uploaded

The hard part: every tool hides prompts differently

This is where it got interesting. Here’s what I found:

Tool Storage Format Claude Code ~/.claude/history.jsonl JSONL — easy Cursor state.vscdb (~700MB) SQLite; prompts split across composerData + bubbleId rows OpenCode opencode.db clean relational SQLite (sessions/messages/parts) Copilot workspaceStorage/*/chatSessions/*.json per-workspace JSON Windsurf ~/.codeium/chat_state/*.pbtxt text-format protobuf (legacy); Cascade is encrypted Antigravity state.vscdb trajectory summaries base64’d protobuf I decoded by hand

A few things I had to solve:

  • Locked databases — IDEs hold their SQLite files open, so I copy them to a temp dir and open the copy read-only.
  • No native dependencies — using Node 22’s built-in node:sqlite means no better-sqlite3 build step.
  • Encrypted stores — Windsurf Cascade and Antigravity conversation bodies are encrypted on disk, so those gracefully fall back to titles only.
  • Project attribution — Cursor doesn’t directly link prompts to a project, so I match against workspace generation data by text and timestamp.

Try it

git clone https://github.com/alaminrifat/ai-prompt-monitor.git
cd ai-prompt-monitor
npm install
npm run dev

Enter fullscreen mode Exit fullscreen mode

Open http://localhost:3000 and hit Refresh. Needs Node 22+.

It’s MIT licensed and I’d love contributions — especially parsers for more tools.
If you know where your favorite tool stores its history, open an issue or a PR.

https://github.com/alaminrifat/ai-prompt-monitor

원문에서 계속 ↗

코멘트

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다