Overview
PaperScout is an AI-powered research assistant for discovering and organizing academic papers from arXiv. Built on Cloudflare Workers with Durable Objects and Workers AI, it provides each user with an isolated agent instance backed by full SQLite persistence.
Ask PaperScout to find papers on a topic, get AI-generated summaries using Llama 3.3 70B, save papers to your personal library with custom tags, and query your collection later.
Key Features
arXiv Search
Query arXiv with date filters and result limits, returning relevant academic papers in real time.
AI Summaries
Structured summaries (TL;DR, Key Contributions, Limitations) generated by Llama 3.3 70B with abstract-only disclaimers.
Persistent Library
Save papers to a personal library with SQLite backing. Data survives page refreshes and browser sessions.
Custom Tagging
Organize saved papers with custom tags and query your library by topic later.
Streaming Responses
Real-time response streaming for a snappy UX, with up to 10 agentic reasoning steps.
User Isolation
Each user gets their own Durable Object instance with no shared state and full SQLite persistence.
Technical Highlights
Durable Objects + SQLite
Each user gets an isolated Durable Object instance with embedded SQLite for persistent storage of papers, summaries, and tags. State syncs to the frontend for real-time UI updates.
Tool-based Agent Architecture
PaperScout exposes AI tools (searchArxiv, summarizePaper, savePaper, listSavedPapers, removeSavedPaper) using the ai-sdk tool() API, with confirmation prompts for destructive operations.
Workers AI Integration
Uses Llama 3.3 70B Instruct via Cloudflare Workers AI with streamText() for real-time streaming. No external API keys needed — runs entirely on Cloudflare's infrastructure.
Graceful Fallbacks
Storage utilities automatically fall back from localStorage to sessionStorage to memory. React error boundaries catch rendering errors with recovery options.
What I Learned
- Durable Objects: Building stateful, user-isolated backends on Cloudflare's edge infrastructure with embedded SQLite.
- Agent SDK Design: Implementing tool-based AI agents with auto-execute and confirmation patterns using the Cloudflare Agents SDK.
- Streaming LLM Responses: Real-time streaming with streamText() for responsive multi-turn chat experiences.
- arXiv API Integration: Parsing Atom feeds, normalizing paper IDs across formats, and respecting rate limits.
- Edge-native Architecture: Designing apps that run entirely on Cloudflare Workers with zero external dependencies.