Turn your ChatGPT history into something you can actually explore.
Prompt Scope is a local-first Streamlit app that lets you import, analyze, categorize, and extract insights from your ChatGPT conversations โ without sending your data anywhere.
Prompt Scope transforms raw ChatGPT exports into a structured, searchable, analyzable dataset.
- ๐ฅ Import your ChatGPT
conversations.json - ๐๏ธ Organize chats with categories
- ๐ Search across titles + full content
- ๐ Generate insights about how you use ChatGPT
- ๐ง Detect topics, keywords, and patterns
- ๐ Analyze message-level behavior (words, phrases, trends)
- ๐ค Export everything back to JSON
All processing happens locally on your machine.
ChatGPT stores your conversations, but it doesnโt help you understand them.
Prompt Scope answers questions like:
- What do I actually use ChatGPT for?
- What topics come up over and over?
- Which conversations go deep vs. quick hits?
- What patterns exist in how I write or prompt?
It turns your chat history into something closer to:
- a dataset
- a personal archive
- a reflection tool
Upload your ChatGPT export JSON.
Prompt Scope:
- Normalizes different export formats
- Extracts messages (even messy nested structures)
- Stores everything in a local SQLite database
Browse your conversations with:
- Search (title + content)
- Category filters
- Sorting (newest, oldest, AโZ)
- Inline previews
- Topic detection (rule-based, no AI calls)
- Keyword extraction
- Conversation depth analysis
- Global summaries of your usage
Powered by deterministic logic (no external APIs)
Message-level analysis:
- Most common words
- Bigrams / trigrams
- Conversation frequency
- Monthly usage trends
Includes:
- Code filtering
- Speaker filtering (user vs assistant)
- Token cleaning
- Create categories
- Assign chats to multiple categories
- Filter by combinations
Everything is stored locally in SQLite.
Export your enriched dataset:
{
"schema_version": 1,
"exported_at": "...",
"categories": [...],
"chats": [...]
}- No API calls
- No tracking
- No cloud sync
- No external dependencies
Your data never leaves your machine.
Prompt Scope is optimized for large chat histories:
- Content truncation for fast UI rendering
- Cached analysis results
- Lazy loading (analysis only runs when requested)
Key limits:
MAX_ANALYSIS_CHARS = 20,000MAX_PREVIEW_CHARS = 4,000
โ see
- Frontend/UI: Streamlit
- Storage: SQLite (local file)
- Data processing: Pandas
- Visualization: Plotly / Altair
- Language: Python 3
Dependencies: โ see
git clone https://github.com/yourusername/prompt-scope.git
cd prompt-scopepython -m venv .venv
.venv\Scripts\activate # Windowspip install -r requirements.txtstreamlit run app.pyprompt-scope/
โโโ app.py # Main Streamlit app
โโโ promptscope.db # Local SQLite database
โโโ conversation_insights.py # Topic + insight engine
โโโ chat_patterns.py # Message-level analysis
โโโ requirements.txt
No AI, no embeddings โ just rule-based scoring.
- Keyword pattern matching
- Multi-hit thresholding
- Topic confidence scoring
Handles messy real-world exports:
- Nested JSON structures
mapping-based exports- Transcript-style
[user]/[assistant]logs - Mixed formats
Removes:
- JSON structural tokens (
content,parts, etc.) - Code blocks (optional)
- Stopwords
So your analysis reflects actual human language.
- SQLite for persistence
- No server required
- Works offline
- Instant startup after import
- Personal knowledge mining
- Prompt engineering analysis
- Writing pattern discovery
- AI usage reflection
- Research / journaling analysis
- Dataset generation for future tools
- Timeline visualizations
- Conversation clustering
- Prompt quality scoring
- Export to CSV / embeddings-ready formats
- GitHub-style diff for conversations
Contributions are welcome โ especially:
- Better topic rules
- New analysis modules
- UI improvements
- Export formats
MIT
ChatGPT remembers everything.
Prompt Scope helps you understand it.
