multi-source iterative research with llm-driven query refinement
Executes deep, multi-turn research workflows that iteratively refine queries based on LLM analysis of intermediate results. The system searches 10+ sources (arXiv, PubMed, web via Brave/SearXNG, private documents) in a coordinated loop, with each iteration using LLM reasoning to identify gaps and reformulate queries. Research execution is managed through a service-oriented architecture with thread-safe settings context, enabling parallel research tasks while maintaining isolation per user and per research session.
Unique: Implements LLM-driven query refinement loop where each research iteration analyzes gaps in current results and reformulates queries, rather than executing a static search plan. This is coordinated through a Research Service that manages execution lifecycle with thread-safe context management, enabling concurrent research tasks with per-user isolation via SQLCipher encrypted databases.
vs alternatives: Outperforms single-pass research tools (Perplexity, traditional RAG) by iteratively deepening search based on LLM reasoning about gaps, achieving ~95% accuracy on SimpleQA benchmark while maintaining full local deployment and encryption for sensitive research.
per-user encrypted database with pbkdf2-derived key derivation
Provides per-user data isolation through SQLCipher databases encrypted with AES-256-CBC, where each user's password is derived via PBKDF2-HMAC-SHA512 with 256,000 iterations and a per-user random salt. The database architecture separates user data (research history, collections, settings) from system configuration, with automatic encryption key management and password-based access control. Database encryption check utilities verify SQLCipher compatibility at startup.
Unique: Uses PBKDF2-HMAC-SHA512 with 256,000 iterations and per-user random salt to derive encryption keys directly from user passwords, eliminating the need for external key management systems. This approach is implemented through database/encryption_check.py and database/sqlcipher_compat.py modules that verify SQLCipher availability and handle key derivation transparently.
vs alternatives: Provides stronger per-user isolation than application-level encryption (which shares keys) and simpler deployment than external key management (no KMS infrastructure needed), while maintaining NIST-compliant key derivation parameters.
flask web application with real-time research ui and result streaming
Provides a web-based user interface built with Flask backend and modern frontend (likely React or Vue.js based on build system references). The web UI enables real-time research execution with streaming result updates, research history management, and collection/library organization. Frontend communicates with Flask backend via REST API, with WebSocket support for real-time status updates during long-running research.
Unique: Implements Flask web application with real-time research UI that streams results as they are discovered, rather than waiting for complete research execution. Frontend build system enables modern JavaScript framework integration with hot reloading for development.
vs alternatives: More interactive than CLI tools by providing real-time progress visualization and result streaming, while maintaining same encryption and per-user isolation as backend.
thread-safe settings and context management for concurrent research execution
Implements thread-safe settings management through context variables that enable concurrent research tasks to maintain isolated configuration and state. Each research execution gets its own context (LLM provider, search sources, user credentials) that is thread-local, preventing cross-contamination between concurrent requests. Settings are loaded from environment variables and configuration files with runtime override capability.
Unique: Implements thread-safe settings through Python contextvars, enabling each research execution to maintain isolated configuration without global state. This allows concurrent research tasks with different LLM providers or search sources to execute simultaneously.
vs alternatives: More robust than global configuration variables by preventing cross-contamination between concurrent requests, while simpler than request-scoped dependency injection frameworks.
benchmarking system with simpleqa evaluation and accuracy metrics
Includes built-in benchmarking infrastructure that evaluates research quality against the SimpleQA benchmark, measuring accuracy, citation correctness, and source attribution. The benchmarking system executes research on benchmark queries, compares results against ground truth, and generates accuracy reports. This enables quantitative evaluation of research quality across different LLM providers and configurations.
Unique: Includes built-in benchmarking against SimpleQA with ~95% accuracy achieved with GPT-4.1-mini, enabling quantitative evaluation of research quality. Benchmarking system generates detailed accuracy reports comparing citation correctness and source attribution.
vs alternatives: More comprehensive than manual testing by providing automated benchmarking against standardized dataset, while enabling comparison across LLM providers and configurations.
document download and management with automatic metadata extraction
Automatically downloads and manages research documents (PDFs, web pages) discovered during research, with automatic metadata extraction (title, authors, publication date). Downloaded documents are stored in encrypted database with full-text indexing for later search. Metadata extraction uses heuristics and optional OCR for PDFs, enabling documents to be cited and referenced in future research.
Unique: Automatically downloads and indexes research documents discovered during research, with automatic metadata extraction and storage in encrypted database. Downloaded documents are indexed for full-text search in future research.
vs alternatives: More integrated than manual document management by automatically downloading and indexing documents discovered during research, while maintaining encryption and per-user isolation.
news and subscription management for continuous research updates
Enables subscription to research topics with automatic periodic research execution and result delivery. The system maintains topic subscriptions in encrypted database, executes research on subscribed topics at configured intervals (daily, weekly, monthly), and delivers results via email or web UI notifications. Subscription management includes filtering, deduplication, and archival of subscription results.
Unique: Implements subscription system that automatically executes research on topics at configured intervals and delivers results via email or web UI. Subscription results are stored in encrypted database with deduplication and filtering.
vs alternatives: More integrated than external alert services (Google Alerts, Feedly) by using same research engine and maintaining results in encrypted database for historical analysis.
report generation and export in multiple formats
Generates research reports from research results with support for multiple export formats (markdown, HTML, PDF, JSON). Report generation includes automatic formatting, citation insertion, table of contents generation, and optional styling. Exported reports can be shared externally while maintaining citation metadata for verification.
Unique: Generates research reports in multiple formats (markdown, HTML, PDF, JSON) with automatic citation insertion and formatting. Report generation is integrated into research workflow, enabling one-click export.
vs alternatives: More integrated than external report generators by supporting multiple formats natively and maintaining citation metadata throughout export process.
+8 more capabilities