-
-
ChatPrune landing page: AI-powered cleanup for Claude and ChatGPT conversation history.
-
Sweep results: every conversation gets a Delete, Archive, Keep or Review recommendation with a plain-English reason.
-
Find Related: groups conversations by topic across Claude and ChatGPT, ready to consolidate into one document.
-
Saved Notes: consolidated documents saved to your licence account, accessible from any device.
Inspiration
Every heavy AI user has the same problem: hundreds of conversations with no way to manage them. Important content buried under trivial lookups. The same topic discussed across five separate chats on two platforms. I built ChatPrune to fix this.
What it does
ChatPrune analyses your Claude and ChatGPT conversation history and recommends what to Delete, Archive, Keep, or Review, with a specific reason for each conversation based on its actual content, not just the title.
Upload your export ZIP, the AI analyses every conversation in batches, and you get a full results table with topic tags, summaries, and one-click overrides. Download a CSV or text report when done.
Pro users can select related conversations across both platforms and consolidate them into one clean document such as a Complaint Brief, Legal Notes, Project Notes, or Financial Notes.
How we built it
Frontend is Next.js deployed on Vercel. The database is AWS DynamoDB in the Sydney region with fourtables: chatprune-licences, chatprune-sessions with TTL for automatic 2-hour expiry, chatprune-promos and chatprune-notes for Pro consolidated documents. The AI analysis uses Google Gemini 2.5 Flash with exponential backoff retry logic. File parsing runs entirely in the browser using JSZip so no raw conversation data ever touches our servers.
DynamoDB was the right choice because every data access pattern is a direct lookup by primary key. GetItem for validation, UpdateExpression for sweep deduction. The TTL feature on the sessions table handles automatic cleanup with zero infrastructure overhead.
Challenges we ran into
Claude and ChatGPT use completely different JSON structures for their exports. Getting the parser to handle both reliably including edge cases like empty conversations, split files, and nested content arrays required significant testing.
Gemini API rate limiting required implementing exponential backoff with retry logic and reducing batch sizes to stay within limits.
Accomplishments that we're proud of
A fully working B2C product with a landing page, pricing tiers, legal pages, licence management, session handling, and a complete sweep engine built and deployed end to end during the hackathon.
What we learned
DynamoDB's TTL feature is underrated. Automatic session expiry with no cleanup jobs, no Lambda functions, no cron. Just set an attribute and the database handles it. For a licence and session management use case it is the perfect fit.
What's next for ChatPrune
Email delivery of licence keys after purchase, support for more AI platforms beyond Claude and ChatGPT, a dashboard showing sweep history across multiple sessions, and the Payhip pricing page fully connected.
Built With
- aws-dynamodb
- germini
- jszip
- next.js
- tailwind-css
- typescript
- vercel


Log in or sign up for Devpost to join the conversation.