<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>AI Research on Producthunt daily</title>
        <link>https://producthunt.programnotes.cn/en/tags/ai-research/</link>
        <description>Recent content in AI Research on Producthunt daily</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>en</language>
        <lastBuildDate>Fri, 08 May 2026 16:26:14 +0800</lastBuildDate><atom:link href="https://producthunt.programnotes.cn/en/tags/ai-research/index.xml" rel="self" type="application/rss+xml" /><item>
        <title>local-deep-research</title>
        <link>https://producthunt.programnotes.cn/en/p/local-deep-research/</link>
        <pubDate>Fri, 08 May 2026 16:26:14 +0800</pubDate>
        
        <guid>https://producthunt.programnotes.cn/en/p/local-deep-research/</guid>
        <description>&lt;img src="https://images.unsplash.com/photo-1650938769377-f29dbd449f81?ixid=M3w0NjAwMjJ8MHwxfHJhbmRvbXx8fHx8fHx8fDE3NzgyMjg3MTd8&amp;ixlib=rb-4.1.0" alt="Featured image of post local-deep-research" /&gt;&lt;h1 id=&#34;learningcircuitlocal-deep-research&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/LearningCircuit/local-deep-research&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;LearningCircuit/local-deep-research&lt;/a&gt;
&lt;/h1&gt;&lt;h1 id=&#34;local-deep-research&#34;&gt;Local Deep Research
&lt;/h1&gt;&lt;div align=&#34;center&#34;&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/LearningCircuit/local-deep-research/stargazers&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.shields.io/github/stars/LearningCircuit/local-deep-research?style=for-the-badge&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;GitHub stars&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;https://hub.docker.com/r/localdeepresearch/local-deep-research&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.shields.io/docker/pulls/localdeepresearch/local-deep-research?style=for-the-badge&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Docker Pulls&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;https://pypi.org/project/local-deep-research/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.shields.io/pypi/dm/local-deep-research?style=for-the-badge&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;PyPI Downloads&#34;
	
	
&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://trendshift.io/repositories/14116&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://trendshift.io/api/badge/repositories/14116&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Trendshift&#34;
	
	
&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/LearningCircuit/local-deep-research/commits/main&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.shields.io/github/commit-activity/m/LearningCircuit/local-deep-research?style=for-the-badge&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Commits&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;https://github.com/LearningCircuit/local-deep-research/commits/main&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.shields.io/github/last-commit/LearningCircuit/local-deep-research?style=for-the-badge&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Last Commit&#34;
	
	
&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://huggingface.co/datasets/local-deep-research/ldr-benchmarks&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.shields.io/badge/SimpleQA-~95%25_Accuracy-gold?style=for-the-badge&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;SimpleQA Accuracy&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;docs/SQLCIPHER_INSTALL.md&#34; &gt;&lt;img src=&#34;https://img.shields.io/badge/Database-SQLCipher_Encrypted-red?style=for-the-badge&amp;amp;logo=sqlite&amp;amp;logoColor=white&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;SQLCipher&#34;
	
	
&gt;&lt;/a&gt;&lt;/p&gt;
&lt;!-- Well-known security scanners that visitors will recognize --&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://securityscorecards.dev/viewer/?uri=github.com/LearningCircuit/local-deep-research&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://api.securityscorecards.dev/projects/github.com/LearningCircuit/local-deep-research/badge&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;OpenSSF Scorecard&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;https://github.com/LearningCircuit/local-deep-research/security/code-scanning&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://github.com/LearningCircuit/local-deep-research/actions/workflows/codeql.yml/badge.svg?branch=main&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;CodeQL&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;https://github.com/LearningCircuit/local-deep-research/actions/workflows/semgrep.yml&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://github.com/LearningCircuit/local-deep-research/actions/workflows/semgrep.yml/badge.svg?branch=main&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Semgrep&#34;
	
	
&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/LearningCircuit/local-deep-research/actions/workflows/pre-commit.yml&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://github.com/LearningCircuit/local-deep-research/actions/workflows/pre-commit.yml/badge.svg?branch=main&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;🔧 Pre-commit&#34;
	
	
&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/LearningCircuit/local-deep-research/actions/workflows/docker-publish.yml&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://github.com/LearningCircuit/local-deep-research/actions/workflows/docker-publish.yml/badge.svg&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;🐳 Docker Publish&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;https://github.com/LearningCircuit/local-deep-research/actions/workflows/publish.yml&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://github.com/LearningCircuit/local-deep-research/actions/workflows/publish.yml/badge.svg&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;📦 PyPI Publish&#34;
	
	
&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://discord.gg/ttcqQeFcJ3&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.shields.io/discord/1352043059562680370?style=for-the-badge&amp;amp;logo=discord&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Discord&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;https://www.reddit.com/r/LocalDeepResearch/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.shields.io/badge/Reddit-r/LocalDeepResearch-FF4500?style=for-the-badge&amp;amp;logo=reddit&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Reddit&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;https://www.youtube.com/@local-deep-research&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.shields.io/badge/YouTube-Channel-red?style=for-the-badge&amp;amp;logo=youtube&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;YouTube&#34;
	
	
&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;AI-powered research assistant for deep, agentic research&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Performs deep, agentic research using multiple LLMs and search engines with proper citations&lt;/em&gt;&lt;/p&gt;
&lt;a href=&#34;https://www.youtube.com/watch?v=pfxgLX-MxMY&amp;t=1999&#34;&gt;
  ▶️ Watch Review by The Art Of The Terminal
&lt;/a&gt;
&lt;/div&gt;
&lt;h2 id=&#34;-what-is-local-deep-research&#34;&gt;🚀 What is Local Deep Research?
&lt;/h2&gt;&lt;p&gt;AI research assistant you control. Run locally for privacy, use any LLM and build your own searchable knowledge base. You own your data and see exactly how it works.&lt;/p&gt;
&lt;h2 id=&#34;-quick-start&#34;&gt;⚡ Quick Start
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;Option 1: Docker Run (Linux)&lt;/strong&gt;&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt; 1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 6
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 7
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 8
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 9
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;10
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;11
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;12
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;13
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Step 1: Pull and run Ollama&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;docker run -d -p 11434:11434 --name ollama ollama/ollama
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;docker &lt;span class=&#34;nb&#34;&gt;exec&lt;/span&gt; ollama ollama pull gpt-oss:20b
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Step 2: Pull and run SearXNG for optimal search results&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;docker run -d -p 8080:8080 --name searxng searxng/searxng
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Step 3: Pull and run Local Deep Research&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;docker run -d -p 5000:5000 --network host &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  --name local-deep-research &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  --volume &lt;span class=&#34;s2&#34;&gt;&amp;#34;deep-research:/data&amp;#34;&lt;/span&gt; &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  -e &lt;span class=&#34;nv&#34;&gt;LDR_DATA_DIR&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;/data &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  localdeepresearch/local-deep-research
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;Option 2: Docker Compose&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;CPU-only (all platforms):&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl -O https://raw.githubusercontent.com/LearningCircuit/local-deep-research/main/docker-compose.yml &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; docker compose up -d
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;With NVIDIA GPU (Linux):&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl -O https://raw.githubusercontent.com/LearningCircuit/local-deep-research/main/docker-compose.yml &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;curl -O https://raw.githubusercontent.com/LearningCircuit/local-deep-research/main/docker-compose.gpu.override.yml &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;docker compose -f docker-compose.yml -f docker-compose.gpu.override.yml up -d
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Open http://localhost:5000 after ~30 seconds. For GPU setup, environment variables, and more, see the &lt;a class=&#34;link&#34; href=&#34;docs/docker-compose-guide.md&#34; &gt;Docker Compose Guide&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Option 3: pip install&lt;/strong&gt;&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;pip install local-deep-research
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;blockquote&gt;
&lt;p&gt;Works on Windows, macOS, and Linux. SQLCipher encryption is included via pre-built wheels — no compilation needed.
PDF export on Windows requires Pango (&lt;a class=&#34;link&#34; href=&#34;https://doc.courtbouillon.org/weasyprint/stable/first_steps.html&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;setup guide&lt;/a&gt;).
If you encounter issues with encryption, set &lt;code&gt;export LDR_BOOTSTRAP_ALLOW_UNENCRYPTED=true&lt;/code&gt; to use standard SQLite instead.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;#-installation-options&#34; &gt;More install options →&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;-how-it-works&#34;&gt;🏗️ How It Works
&lt;/h2&gt;&lt;h3 id=&#34;research&#34;&gt;Research
&lt;/h3&gt;&lt;p&gt;You ask a complex question. LDR:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Does the research for you automatically&lt;/li&gt;
&lt;li&gt;Searches across web, academic papers, and your own documents&lt;/li&gt;
&lt;li&gt;Synthesizes everything into a report with proper citations&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Choose from 20+ research strategies for quick facts, deep analysis, or academic research.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;New: LangGraph Agent Strategy&lt;/strong&gt; — An autonomous agentic research mode where the LLM decides what to search, which specialized engines to use (arXiv, PubMed, Semantic Scholar, etc.), and when to synthesize. Early results are promising — it adaptively switches between search engines based on what it finds and collects significantly more sources than pipeline-based strategies. Select &lt;code&gt;langgraph-agent&lt;/code&gt; in Settings to try it.&lt;/p&gt;
&lt;h3 id=&#34;build-your-knowledge-base&#34;&gt;Build Your Knowledge Base
&lt;/h3&gt;&lt;pre class=&#34;mermaid&#34;&gt;
  flowchart LR
    R[Research] --&amp;gt; D[Download Sources]
    D --&amp;gt; L[(Library)]
    L --&amp;gt; I[Index &amp;amp; Embed]
    I --&amp;gt; S[Search Your Docs]
    S -.-&amp;gt; R
&lt;/pre&gt;

&lt;p&gt;Every research session finds valuable sources. Download them directly into your encrypted library—academic papers from ArXiv, PubMed articles, web pages. LDR extracts text, indexes everything, and makes it searchable. Next time you research, ask questions across your own documents and the live web together. Your knowledge compounds over time.&lt;/p&gt;
&lt;h2 id=&#34;-security&#34;&gt;🛡️ Security
&lt;/h2&gt;&lt;div align=&#34;center&#34;&gt;
&lt;!-- Static Analysis (additional scanners beyond CodeQL/Semgrep) --&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/LearningCircuit/local-deep-research/actions/workflows/devskim.yml&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://github.com/LearningCircuit/local-deep-research/actions/workflows/devskim.yml/badge.svg?branch=main&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;DevSkim&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;https://github.com/LearningCircuit/local-deep-research/actions/workflows/bearer.yml&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://github.com/LearningCircuit/local-deep-research/actions/workflows/bearer.yml/badge.svg?branch=main&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Bearer&#34;
	
	
&gt;&lt;/a&gt;&lt;/p&gt;
&lt;!-- Dependency &amp; Secrets Scanning --&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/LearningCircuit/local-deep-research/actions/workflows/gitleaks-main.yml&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://github.com/LearningCircuit/local-deep-research/actions/workflows/gitleaks-main.yml/badge.svg?branch=main&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Gitleaks&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;https://github.com/LearningCircuit/local-deep-research/actions/workflows/osv-scanner.yml&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://github.com/LearningCircuit/local-deep-research/actions/workflows/osv-scanner.yml/badge.svg?branch=main&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;OSV-Scanner&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;https://github.com/LearningCircuit/local-deep-research/actions/workflows/npm-audit.yml&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://github.com/LearningCircuit/local-deep-research/actions/workflows/npm-audit.yml/badge.svg?branch=main&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;npm-audit&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;https://github.com/LearningCircuit/local-deep-research/actions/workflows/retirejs.yml&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://github.com/LearningCircuit/local-deep-research/actions/workflows/retirejs.yml/badge.svg?branch=main&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Retire.js&#34;
	
	
&gt;&lt;/a&gt;&lt;/p&gt;
&lt;!-- Container Security --&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/LearningCircuit/local-deep-research/actions/workflows/container-security.yml&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://github.com/LearningCircuit/local-deep-research/actions/workflows/container-security.yml/badge.svg?branch=main&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Container Security&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;https://github.com/LearningCircuit/local-deep-research/actions/workflows/dockle.yml&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://github.com/LearningCircuit/local-deep-research/actions/workflows/dockle.yml/badge.svg?branch=main&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Dockle&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;https://github.com/LearningCircuit/local-deep-research/actions/workflows/hadolint.yml&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://github.com/LearningCircuit/local-deep-research/actions/workflows/hadolint.yml/badge.svg?branch=main&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Hadolint&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;https://github.com/LearningCircuit/local-deep-research/actions/workflows/checkov.yml&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://github.com/LearningCircuit/local-deep-research/actions/workflows/checkov.yml/badge.svg?branch=main&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Checkov&#34;
	
	
&gt;&lt;/a&gt;&lt;/p&gt;
&lt;!-- Workflow &amp; Runtime Security --&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/LearningCircuit/local-deep-research/actions/workflows/zizmor-security.yml&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://github.com/LearningCircuit/local-deep-research/actions/workflows/zizmor-security.yml/badge.svg?branch=main&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Zizmor&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;https://github.com/LearningCircuit/local-deep-research/actions/workflows/owasp-zap-scan.yml&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://github.com/LearningCircuit/local-deep-research/actions/workflows/owasp-zap-scan.yml/badge.svg?branch=main&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;OWASP ZAP&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;https://github.com/LearningCircuit/local-deep-research/actions/workflows/security-tests.yml&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://github.com/LearningCircuit/local-deep-research/actions/workflows/security-tests.yml/badge.svg?branch=main&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Security Tests&#34;
	
	
&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;pre class=&#34;mermaid&#34;&gt;
  flowchart LR
    U1[User A] --&amp;gt; D1[(Encrypted DB)]
    U2[User B] --&amp;gt; D2[(Encrypted DB)]
&lt;/pre&gt;

&lt;p&gt;Your data stays yours. Each user gets their own isolated SQLCipher database encrypted with AES-256 (Signal-level security). No password recovery means true zero-knowledge—even server admins can&amp;rsquo;t read your data. Run fully local with Ollama + SearXNG and nothing ever leaves your machine.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;In-memory credentials&lt;/strong&gt;: Like all applications that use secrets at runtime — including &lt;a class=&#34;link&#34; href=&#34;https://www.ise.io/casestudies/password-manager-hacking/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;password managers&lt;/a&gt;, browsers, and API clients — credentials are held in plain text in process memory during active sessions. This is an &lt;a class=&#34;link&#34; href=&#34;https://cheatsheetseries.owasp.org/cheatsheets/Secrets_Management_Cheat_Sheet.html&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;industry-wide accepted reality&lt;/a&gt;, not specific to LDR: if an attacker can read process memory, they can also read any in-process decryption key. We mitigate this with session-scoped credential lifetimes and core dump exclusion. Ideas for further improvements are always welcome via &lt;a class=&#34;link&#34; href=&#34;https://github.com/LearningCircuit/local-deep-research/issues&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;GitHub Issues&lt;/a&gt;. See our &lt;a class=&#34;link&#34; href=&#34;SECURITY.md&#34; &gt;Security Policy&lt;/a&gt; for details.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Supply Chain Security&lt;/strong&gt;: Docker images are signed with &lt;a class=&#34;link&#34; href=&#34;https://github.com/sigstore/cosign&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Cosign&lt;/a&gt;, include SLSA provenance attestations, and attach SBOMs. Verify with:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cosign verify localdeepresearch/local-deep-research:latest
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;Security Transparency&lt;/strong&gt;: Scanner suppressions are documented with justifications in &lt;a class=&#34;link&#34; href=&#34;.github/SECURITY_ALERTS.md&#34; &gt;Security Alerts Assessment&lt;/a&gt;, &lt;a class=&#34;link&#34; href=&#34;.github/SECURITY_SCORECARD.md&#34; &gt;Scorecard Compliance&lt;/a&gt;, &lt;a class=&#34;link&#34; href=&#34;.trivyignore&#34; &gt;Container CVE Suppressions&lt;/a&gt;, and &lt;a class=&#34;link&#34; href=&#34;bearer.yml&#34; &gt;SAST Rule Rationale&lt;/a&gt;. Some alerts (Dependabot, code scanning) can only be dismissed or are very difficult to suppress outside the &lt;a class=&#34;link&#34; href=&#34;https://docs.github.com/en/code-security/dependabot/dependabot-alerts/viewing-and-updating-dependabot-alerts&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;GitHub Security tab&lt;/a&gt;, so the files above do not cover every dismissed finding.&lt;/p&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;docs/architecture.md&#34; &gt;Detailed Architecture →&lt;/a&gt; | &lt;a class=&#34;link&#34; href=&#34;SECURITY.md&#34; &gt;Security Policy →&lt;/a&gt; | &lt;a class=&#34;link&#34; href=&#34;docs/SECURITY_REVIEW_PROCESS.md&#34; &gt;Security Review Process →&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&#34;-privacy--data&#34;&gt;🔒 Privacy &amp;amp; Data
&lt;/h3&gt;&lt;p&gt;Local Deep Research contains &lt;strong&gt;no telemetry, no analytics, and no tracking&lt;/strong&gt;. We do not collect, transmit, or store any data about you or your usage. No analytics SDKs, no phone-home calls, no crash reporting, no external scripts. Usage metrics stay in your local encrypted database.&lt;/p&gt;
&lt;p&gt;The only network calls LDR makes are ones &lt;strong&gt;you&lt;/strong&gt; initiate: search queries (to engines you configure), LLM API calls (to your chosen provider), and notifications (only if you set up Apprise).&lt;/p&gt;
&lt;p&gt;Since we don&amp;rsquo;t collect any usage data, we rely on you to tell us what works, what&amp;rsquo;s broken, and what you&amp;rsquo;d like to see next — &lt;a class=&#34;link&#34; href=&#34;https://github.com/LearningCircuit/local-deep-research/issues&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;bug reports&lt;/a&gt;, feature ideas, and even which features you love or never use all help us improve LDR.&lt;/p&gt;
&lt;h2 id=&#34;-performance&#34;&gt;📊 Performance
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;~95% accuracy on SimpleQA benchmark&lt;/strong&gt; (preliminary results)&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Tested with GPT-4.1-mini + SearXNG + focused-iteration strategy&lt;/li&gt;
&lt;li&gt;Comparable to state-of-the-art AI research systems&lt;/li&gt;
&lt;li&gt;Local models can achieve similar performance with proper configuration&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;-picking-a-model-use-the-community-benchmarks&#34;&gt;🧭 Picking a model? Use the community benchmarks
&lt;/h3&gt;&lt;p&gt;Not sure which local model to run with LDR? The community-maintained &lt;strong&gt;&lt;a class=&#34;link&#34; href=&#34;https://huggingface.co/datasets/local-deep-research/ldr-benchmarks&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;LDR Benchmarks dataset on Hugging Face&lt;/a&gt;&lt;/strong&gt; tracks accuracy across models, search engines, and research strategies — it&amp;rsquo;s the fastest way to see which Ollama / LM Studio / llama.cpp models actually work well for deep research before you download multi-GB weights.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;a class=&#34;link&#34; href=&#34;https://huggingface.co/datasets/local-deep-research/ldr-benchmarks&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Browse leaderboards &amp;amp; download CSVs on Hugging Face →&lt;/a&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/LearningCircuit/ldr-benchmarks&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Submit your own results on GitHub →&lt;/a&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;-key-features&#34;&gt;✨ Key Features
&lt;/h2&gt;&lt;h3 id=&#34;-research-modes&#34;&gt;🔍 Research Modes
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Quick Summary&lt;/strong&gt; - Get answers in 30 seconds to 3 minutes with citations&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Detailed Research&lt;/strong&gt; - Comprehensive analysis with structured findings&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Report Generation&lt;/strong&gt; - Professional reports with sections and table of contents&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Document Analysis&lt;/strong&gt; - Search your private documents with AI&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;-advanced-capabilities&#34;&gt;🛠️ Advanced Capabilities
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;a class=&#34;link&#34; href=&#34;docs/LANGCHAIN_RETRIEVER_INTEGRATION.md&#34; &gt;LangChain Integration&lt;/a&gt;&lt;/strong&gt; - Use any vector store as a search engine&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a class=&#34;link&#34; href=&#34;docs/api-quickstart.md&#34; &gt;REST API&lt;/a&gt;&lt;/strong&gt; - Authenticated HTTP access with per-user databases&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a class=&#34;link&#34; href=&#34;docs/BENCHMARKING.md&#34; &gt;Benchmarking&lt;/a&gt;&lt;/strong&gt; - Test and optimize your configuration&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a class=&#34;link&#34; href=&#34;docs/analytics-dashboard.md&#34; &gt;Analytics Dashboard&lt;/a&gt;&lt;/strong&gt; - Track costs, performance, and usage metrics&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a class=&#34;link&#34; href=&#34;docs/journal-quality.md&#34; &gt;Journal Quality System&lt;/a&gt;&lt;/strong&gt; - Automatic journal reputation scoring with 212K+ indexed sources, predatory detection, and quality dashboard. Powered by &lt;a class=&#34;link&#34; href=&#34;https://openalex.org&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;OpenAlex&lt;/a&gt; (CC0), &lt;a class=&#34;link&#34; href=&#34;https://doaj.org&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;DOAJ&lt;/a&gt; (CC0), and &lt;a class=&#34;link&#34; href=&#34;https://predatoryjournals.org&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Stop Predatory Journals&lt;/a&gt; (MIT).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Real-time Updates&lt;/strong&gt; - WebSocket support for live research progress&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Export Options&lt;/strong&gt; - Download results as PDF or Markdown&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Research History&lt;/strong&gt; - Save, search, and revisit past research&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Adaptive Rate Limiting&lt;/strong&gt; - Intelligent retry system that learns optimal wait times&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Keyboard Shortcuts&lt;/strong&gt; - Navigate efficiently (ESC, Ctrl+Shift+1-5)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Per-User Encrypted Databases&lt;/strong&gt; - Secure, isolated data storage for each user&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;-news--research-subscriptions&#34;&gt;📰 News &amp;amp; Research Subscriptions
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Automated Research Digests&lt;/strong&gt; - Subscribe to topics and receive AI-powered research summaries&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Customizable Frequency&lt;/strong&gt; - Daily, weekly, or custom schedules for research updates&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Smart Filtering&lt;/strong&gt; - AI filters and summarizes only the most relevant developments&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Multi-format Delivery&lt;/strong&gt; - Get updates as markdown reports or structured summaries&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Topic &amp;amp; Query Support&lt;/strong&gt; - Track specific searches or broad research areas&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;-search-sources&#34;&gt;🌐 Search Sources
&lt;/h3&gt;&lt;h4 id=&#34;free-search-engines&#34;&gt;Free Search Engines
&lt;/h4&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Academic&lt;/strong&gt;: arXiv, PubMed, Semantic Scholar&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;General&lt;/strong&gt;: Wikipedia, SearXNG&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Technical&lt;/strong&gt;: GitHub, Elasticsearch&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Historical&lt;/strong&gt;: Wayback Machine&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;News&lt;/strong&gt;: The Guardian, Wikinews&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;premium-search-engines&#34;&gt;Premium Search Engines
&lt;/h4&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Tavily&lt;/strong&gt; - AI-powered search&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Google&lt;/strong&gt; - Via SerpAPI or Programmable Search Engine&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Brave Search&lt;/strong&gt; - Privacy-focused web search&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;custom-sources&#34;&gt;Custom Sources
&lt;/h4&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Local Documents&lt;/strong&gt; - Search your files with AI&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;LangChain Retrievers&lt;/strong&gt; - Any vector store or database&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Meta Search&lt;/strong&gt; - Combine multiple engines intelligently&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;LDR respects &lt;code&gt;robots.txt&lt;/code&gt; and identifies itself honestly when fetching web pages — no stealth or anti-detection techniques. In rare cases this means a page that blocks automated access won&amp;rsquo;t be fetched, which we consider the right trade-off.&lt;/p&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;docs/search-engines.md&#34; &gt;Full Search Engines Guide →&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;-installation-options&#34;&gt;📦 Installation Options
&lt;/h2&gt;&lt;p&gt;For most users, the &lt;a class=&#34;link&#34; href=&#34;#-quick-start&#34; &gt;Quick Start&lt;/a&gt; above is all you need.&lt;/p&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;Method&lt;/th&gt;
          &lt;th&gt;Best for&lt;/th&gt;
          &lt;th&gt;Guide&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;Docker Compose&lt;/td&gt;
          &lt;td&gt;Most users (recommended)&lt;/td&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;docs/docker-compose-guide.md&#34; &gt;Docker Compose Guide&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Docker&lt;/td&gt;
          &lt;td&gt;Minimal setup&lt;/td&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;docs/installation.md#docker&#34; &gt;Installation Guide&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;pip&lt;/td&gt;
          &lt;td&gt;Developers, Python integration&lt;/td&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;docs/install-pip.md&#34; &gt;pip Guide&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Unraid&lt;/td&gt;
          &lt;td&gt;Unraid servers&lt;/td&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;docs/deployment/unraid.md&#34; &gt;Unraid Guide&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;docs/installation.md&#34; &gt;All installation options →&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;-usage-examples&#34;&gt;💻 Usage Examples
&lt;/h2&gt;&lt;h3 id=&#34;python-api&#34;&gt;Python API
&lt;/h3&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt; 1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 6
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 7
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 8
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 9
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;10
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;11
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-python&#34; data-lang=&#34;python&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;local_deep_research.api&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;LDRClient&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;quick_query&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Option 1: Simplest - one line research&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;summary&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;quick_query&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;username&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;password&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;What is quantum computing?&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;summary&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Option 2: Client for multiple operations&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;client&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;LDRClient&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;client&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;login&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;username&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;password&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;result&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;client&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;quick_research&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;What are the latest advances in quantum computing?&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;result&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;summary&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;])&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h3 id=&#34;http-api&#34;&gt;HTTP API
&lt;/h3&gt;&lt;p&gt;&lt;em&gt;The code example below shows the basic API structure - for working examples, see the link below&lt;/em&gt;&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt; 1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 6
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 7
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 8
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 9
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;10
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;11
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;12
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;13
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;14
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;15
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;16
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;17
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;18
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-python&#34; data-lang=&#34;python&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;requests&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;bs4&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;BeautifulSoup&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Create session and authenticate&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;session&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;requests&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Session&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;login_page&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;session&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;get&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;http://localhost:5000/auth/login&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;soup&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;BeautifulSoup&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;login_page&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;html.parser&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;login_csrf&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;soup&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;find&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;input&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;name&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;csrf_token&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;})&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;get&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;value&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Login and get API CSRF token&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;session&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;post&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;http://localhost:5000/auth/login&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;data&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;username&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;user&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;password&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;pass&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;csrf_token&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;login_csrf&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;})&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;csrf&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;session&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;get&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;http://localhost:5000/auth/csrf-token&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;json&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;csrf_token&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Make API request&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;response&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;session&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;post&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;http://localhost:5000/api/start_research&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                       &lt;span class=&#34;n&#34;&gt;json&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;query&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;Your research question&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                       &lt;span class=&#34;n&#34;&gt;headers&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;X-CSRF-Token&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;csrf&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;})&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;🚀 &lt;strong&gt;&lt;a class=&#34;link&#34; href=&#34;examples/api_usage/http/&#34; &gt;Ready-to-use HTTP API Examples → examples/api_usage/http/&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;✅ &lt;strong&gt;Automatic user creation&lt;/strong&gt; - works out of the box&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;Complete authentication&lt;/strong&gt; with CSRF handling&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;Result retry logic&lt;/strong&gt; - waits until research completes&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;Progress monitoring&lt;/strong&gt; and error handling&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;command-line-tools&#34;&gt;Command Line Tools
&lt;/h3&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;6
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Run benchmarks from CLI&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;python -m local_deep_research.benchmarks --dataset simpleqa --examples &lt;span class=&#34;m&#34;&gt;50&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Manage rate limiting&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;python -m local_deep_research.web_search_engines.rate_limiting status
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;python -m local_deep_research.web_search_engines.rate_limiting reset
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;-enterprise-integration&#34;&gt;🔗 Enterprise Integration
&lt;/h2&gt;&lt;p&gt;Connect LDR to your existing knowledge base:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;6
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;7
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;8
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-python&#34; data-lang=&#34;python&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;from&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;local_deep_research.api&lt;/span&gt; &lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;quick_summary&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Use your existing LangChain retriever&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;result&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;quick_summary&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;query&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;What are our deployment procedures?&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;retrievers&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;company_kb&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;your_retriever&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;},&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;search_tool&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;company_kb&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Works with: FAISS, Chroma, Pinecone, Weaviate, Elasticsearch, and any LangChain-compatible retriever.&lt;/p&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;docs/LANGCHAIN_RETRIEVER_INTEGRATION.md&#34; &gt;Integration Guide →&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;-mcp-server-claude-integration&#34;&gt;🔌 MCP Server (Claude Integration)
&lt;/h2&gt;&lt;p&gt;LDR provides an MCP (Model Context Protocol) server that allows AI assistants like Claude Desktop and Claude Code to perform deep research.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;⚠️ &lt;strong&gt;Security Note&lt;/strong&gt;: This MCP server is designed for &lt;strong&gt;local use only&lt;/strong&gt; via STDIO transport (e.g., Claude Desktop). It has no built-in authentication or rate limiting. Do not expose over a network without implementing proper security controls. See the &lt;a class=&#34;link&#34; href=&#34;https://modelcontextprotocol.io/docs/concepts/security&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;MCP Security Guide&lt;/a&gt; for network deployment requirements.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id=&#34;installation&#34;&gt;Installation
&lt;/h3&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Install with MCP extras&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;pip install &lt;span class=&#34;s2&#34;&gt;&amp;#34;local-deep-research[mcp]&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h3 id=&#34;claude-desktop-configuration&#34;&gt;Claude Desktop Configuration
&lt;/h3&gt;&lt;p&gt;Add to your &lt;code&gt;claude_desktop_config.json&lt;/code&gt;:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt; 1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 6
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 7
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 8
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 9
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;10
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;11
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-json&#34; data-lang=&#34;json&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nt&#34;&gt;&amp;#34;mcpServers&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nt&#34;&gt;&amp;#34;local-deep-research&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;nt&#34;&gt;&amp;#34;command&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;ldr-mcp&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;nt&#34;&gt;&amp;#34;env&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;nt&#34;&gt;&amp;#34;LDR_LLM_PROVIDER&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;openai&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;nt&#34;&gt;&amp;#34;LDR_LLM_OPENAI_API_KEY&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;sk-...&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h3 id=&#34;claude-code-configuration&#34;&gt;Claude Code Configuration
&lt;/h3&gt;&lt;p&gt;Add to your &lt;code&gt;.mcp.json&lt;/code&gt; (project-level) or &lt;code&gt;~/.claude/mcp.json&lt;/code&gt; (global):&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt; 1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 6
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 7
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 8
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 9
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;10
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;11
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-json&#34; data-lang=&#34;json&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nt&#34;&gt;&amp;#34;mcpServers&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nt&#34;&gt;&amp;#34;local-deep-research&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;nt&#34;&gt;&amp;#34;command&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;ldr-mcp&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;nt&#34;&gt;&amp;#34;env&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;nt&#34;&gt;&amp;#34;LDR_LLM_PROVIDER&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;ollama&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;nt&#34;&gt;&amp;#34;LDR_LLM_OLLAMA_URL&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;http://localhost:11434&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h3 id=&#34;available-tools&#34;&gt;Available Tools
&lt;/h3&gt;&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;Tool&lt;/th&gt;
          &lt;th&gt;Description&lt;/th&gt;
          &lt;th&gt;Duration&lt;/th&gt;
          &lt;th&gt;LLM Cost&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;code&gt;search&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;Raw results from a specific engine (arxiv, pubmed, wikipedia, &amp;hellip;)&lt;/td&gt;
          &lt;td&gt;5-30s&lt;/td&gt;
          &lt;td&gt;None&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;code&gt;quick_research&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;Fast research summary&lt;/td&gt;
          &lt;td&gt;1-5 min&lt;/td&gt;
          &lt;td&gt;Yes&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;code&gt;detailed_research&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;Comprehensive analysis&lt;/td&gt;
          &lt;td&gt;5-15 min&lt;/td&gt;
          &lt;td&gt;Yes&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;code&gt;generate_report&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;Full markdown report&lt;/td&gt;
          &lt;td&gt;10-30 min&lt;/td&gt;
          &lt;td&gt;Yes&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;code&gt;analyze_documents&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;Search local collections&lt;/td&gt;
          &lt;td&gt;30s-2 min&lt;/td&gt;
          &lt;td&gt;Yes&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;code&gt;list_search_engines&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;List available search engines&lt;/td&gt;
          &lt;td&gt;instant&lt;/td&gt;
          &lt;td&gt;None&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;code&gt;list_strategies&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;List research strategies&lt;/td&gt;
          &lt;td&gt;instant&lt;/td&gt;
          &lt;td&gt;None&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;code&gt;get_configuration&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;Get current config&lt;/td&gt;
          &lt;td&gt;instant&lt;/td&gt;
          &lt;td&gt;None&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;individual-search-engines&#34;&gt;Individual Search Engines
&lt;/h3&gt;&lt;p&gt;The &lt;code&gt;search&lt;/code&gt; tool lets you query specific search engines directly and get raw results (title, link, snippet) — no LLM processing, no cost, fast. This is especially useful for &lt;strong&gt;monitoring and subscriptions&lt;/strong&gt; where you want to check for new content regularly without burning LLM tokens.&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt; 1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 6
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 7
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 8
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 9
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;10
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;11
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;12
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;13
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;# Search arXiv for recent papers
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;search(query=&amp;#34;transformer architecture improvements&amp;#34;, engine=&amp;#34;arxiv&amp;#34;)
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;# Search PubMed for medical literature
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;search(query=&amp;#34;CRISPR clinical trials 2024&amp;#34;, engine=&amp;#34;pubmed&amp;#34;)
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;# Search Wikipedia for quick facts
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;search(query=&amp;#34;quantum error correction&amp;#34;, engine=&amp;#34;wikipedia&amp;#34;)
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;# Search OpenClaw for legal case law
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;search(query=&amp;#34;copyright fair use precedents&amp;#34;, engine=&amp;#34;openclaw&amp;#34;)
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;# Use list_search_engines() to see all available engines
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h3 id=&#34;example-usage&#34;&gt;Example Usage
&lt;/h3&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;#34;Use quick_research to find information about quantum computing applications&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;#34;Search arxiv for recent papers on diffusion models&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&amp;#34;Generate a detailed research report on renewable energy trends&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;-performance--analytics&#34;&gt;📊 Performance &amp;amp; Analytics
&lt;/h2&gt;&lt;h3 id=&#34;benchmark-results&#34;&gt;Benchmark Results
&lt;/h3&gt;&lt;p&gt;Early experiments on small SimpleQA dataset samples:&lt;/p&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;Configuration&lt;/th&gt;
          &lt;th&gt;Accuracy&lt;/th&gt;
          &lt;th&gt;Notes&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;gpt-4.1-mini + SearXNG + focused_iteration&lt;/td&gt;
          &lt;td&gt;90-95%&lt;/td&gt;
          &lt;td&gt;Limited sample size&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;gpt-4.1-mini + Tavily + focused_iteration&lt;/td&gt;
          &lt;td&gt;90-95%&lt;/td&gt;
          &lt;td&gt;Limited sample size&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;gemini-2.0-flash-001 + SearXNG&lt;/td&gt;
          &lt;td&gt;82%&lt;/td&gt;
          &lt;td&gt;Single test run&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Note: These are preliminary results from initial testing. Performance varies significantly based on query types, model versions, and configurations. &lt;a class=&#34;link&#34; href=&#34;docs/BENCHMARKING.md&#34; &gt;Run your own benchmarks →&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Full community leaderboard:&lt;/strong&gt; The community maintains a growing collection of benchmark results across models, strategies, and search engines in a dedicated repo with CI-validated submissions and auto-generated leaderboards:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/LearningCircuit/ldr-benchmarks&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;GitHub: LearningCircuit/ldr-benchmarks&lt;/a&gt;&lt;/strong&gt; — submit your results here&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a class=&#34;link&#34; href=&#34;https://huggingface.co/datasets/local-deep-research/ldr-benchmarks&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Hugging Face: local-deep-research/ldr-benchmarks&lt;/a&gt;&lt;/strong&gt; — browse leaderboards and download CSVs&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;benchmark-contributors&#34;&gt;Benchmark Contributors
&lt;/h3&gt;&lt;p&gt;Thanks to the community members who have contributed benchmark runs:&lt;/p&gt;
&lt;!-- BENCHMARK_CONTRIBUTORS:START --&gt;
&lt;!-- BENCHMARK_CONTRIBUTORS:END --&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/LearningCircuit/ldr-benchmarks/blob/main/CONTRIBUTORS.md&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;See all contributors →&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&#34;built-in-analytics-dashboard&#34;&gt;Built-in Analytics Dashboard
&lt;/h3&gt;&lt;p&gt;Track costs, performance, and usage with detailed metrics. &lt;a class=&#34;link&#34; href=&#34;docs/analytics-dashboard.md&#34; &gt;Learn more →&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;-supported-llms&#34;&gt;🤖 Supported LLMs
&lt;/h2&gt;&lt;h3 id=&#34;local-models&#34;&gt;Local Models
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Ollama&lt;/strong&gt; — connect to its native API (default &lt;code&gt;http://localhost:11434&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;LM Studio&lt;/strong&gt; — connect to its OpenAI-compatible server (default &lt;code&gt;http://localhost:1234/v1&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;llama.cpp&lt;/strong&gt; — connect to &lt;code&gt;llama-server&lt;/code&gt;&amp;rsquo;s OpenAI-compatible endpoint (default &lt;code&gt;http://localhost:8080/v1&lt;/code&gt;); start with &lt;code&gt;llama-server -m &amp;lt;model.gguf&amp;gt;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Common models: Llama 3, Mistral, Gemma, DeepSeek, Qwen&lt;/li&gt;
&lt;li&gt;LLM processing stays local (search queries still go to web). No API costs.&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;💡 &lt;strong&gt;Which local model should I pick?&lt;/strong&gt; Check the &lt;strong&gt;&lt;a class=&#34;link&#34; href=&#34;https://huggingface.co/datasets/local-deep-research/ldr-benchmarks&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;LDR Benchmarks dataset on Hugging Face&lt;/a&gt;&lt;/strong&gt; — community-submitted accuracy numbers across local and cloud models, so you can compare before downloading. Also on &lt;a class=&#34;link&#34; href=&#34;https://github.com/LearningCircuit/ldr-benchmarks&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;GitHub&lt;/a&gt; if you want to submit your own runs.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id=&#34;cloud-models&#34;&gt;Cloud Models
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;OpenAI (GPT-4, GPT-3.5)&lt;/li&gt;
&lt;li&gt;Anthropic (Claude 3)&lt;/li&gt;
&lt;li&gt;Google (Gemini)&lt;/li&gt;
&lt;li&gt;100+ models via OpenRouter&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;docs/env_configuration.md&#34; &gt;Model Setup →&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&#34;upgrading-from-earlier-versions&#34;&gt;Upgrading from earlier versions
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;llm.model&lt;/code&gt; no longer has a default.&lt;/strong&gt; Pre-1.7 installs auto-filled &lt;code&gt;gemma3:12b&lt;/code&gt; (Ollama) when no model was configured, which silently downloaded a multi-GB binary. The field is now empty by default — pick a model in Settings → LLM, or research will fail loudly with a clear error.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;The &lt;code&gt;llamacpp&lt;/code&gt; provider now uses HTTP instead of in-process loading.&lt;/strong&gt; If you previously set &lt;code&gt;llm.llamacpp_model_path&lt;/code&gt; to a local &lt;code&gt;.gguf&lt;/code&gt; file, that setting is no longer read. Instead, run &lt;code&gt;llama-server -m &amp;lt;your-model.gguf&amp;gt;&lt;/code&gt; (it ships with every modern llama.cpp build) and the default &lt;code&gt;llm.llamacpp.url&lt;/code&gt; of &lt;code&gt;http://localhost:8080/v1&lt;/code&gt; will pick it up. Optional API key support is available via &lt;code&gt;llm.llamacpp.api_key&lt;/code&gt; if you put &lt;code&gt;llama-server&lt;/code&gt; behind an auth proxy.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;-documentation&#34;&gt;📚 Documentation
&lt;/h2&gt;&lt;h3 id=&#34;getting-started&#34;&gt;Getting Started
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;docs/installation.md&#34; &gt;Installation Guide&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;docs/faq.md&#34; &gt;Frequently Asked Questions&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;docs/api-quickstart.md&#34; &gt;API Quickstart&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;docs/env_configuration.md&#34; &gt;Configuration Guide&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;docs/CONFIGURATION.md&#34; &gt;Full Configuration Reference&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;core-features&#34;&gt;Core Features
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;docs/features.md&#34; &gt;All Features Guide&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;docs/search-engines.md&#34; &gt;Search Engines Guide&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;docs/analytics-dashboard.md&#34; &gt;Analytics Dashboard&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;advanced-features&#34;&gt;Advanced Features
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;docs/LANGCHAIN_RETRIEVER_INTEGRATION.md&#34; &gt;LangChain Integration&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;docs/BENCHMARKING.md&#34; &gt;Benchmarking System&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;docs/elasticsearch_search_engine.md&#34; &gt;Elasticsearch Setup&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;docs/SearXNG-Setup.md&#34; &gt;SearXNG Setup&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;development&#34;&gt;Development
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;docs/docker-compose-guide.md&#34; &gt;Docker Compose Guide&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;docs/developing.md&#34; &gt;Development Guide&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;docs/security/CODEQL_GUIDE.md&#34; &gt;Security Guide&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;docs/RELEASE_GUIDE.md&#34; &gt;Release Guide&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;examples--tutorials&#34;&gt;Examples &amp;amp; Tutorials
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;examples/api_usage/&#34; &gt;API Examples&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;examples/benchmarks/&#34; &gt;Benchmark Examples&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;examples/optimization/&#34; &gt;Optimization Examples&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;-featured-in&#34;&gt;📰 Featured In
&lt;/h2&gt;&lt;blockquote&gt;
&lt;p&gt;&amp;ldquo;Local Deep Research &lt;strong&gt;deserves special mention&lt;/strong&gt; for those who prioritize privacy&amp;hellip; &lt;strong&gt;tuned to use open-source LLMs&lt;/strong&gt; that can run on consumer GPUs or even CPUs. Journalists, researchers, or companies with sensitive topics can investigate information &lt;strong&gt;without queries ever hitting an external server&lt;/strong&gt;.&amp;rdquo;&lt;/p&gt;
&lt;p&gt;— &lt;a class=&#34;link&#34; href=&#34;https://medium.com/@leucopsis/open-source-deep-research-ai-assistants-157462a59c14&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Medium: Open-Source Deep Research AI Assistants&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3 id=&#34;news--articles&#34;&gt;News &amp;amp; Articles
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://korben.info/local-deep-research-alternative-gratuite-recherche-ia-sourcee.html&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Korben.info&lt;/a&gt; - French tech blog (&amp;ldquo;Sherlock Holmes numérique&amp;rdquo;)&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.roboto.fr/blog/local-deep-research-l-alternative-open-source-gratuite-deep-research-d-openai&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Roboto.fr&lt;/a&gt; - &amp;ldquo;L&amp;rsquo;alternative open-source gratuite à Deep Research d&amp;rsquo;OpenAI&amp;rdquo;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.kdjingpai.com/en/local-deep-research/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;KDJingPai AI Tools&lt;/a&gt; - AI productivity tools coverage&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://aisharenet.com/en/local-deep-research/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;AI Sharing Circle&lt;/a&gt; - AI resources coverage&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;community-discussions&#34;&gt;Community Discussions
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://news.ycombinator.com/item?id=43330164&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Hacker News&lt;/a&gt; - 190+ points, community discussion&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://x.com/LangChainAI/status/1901347759757902038&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;LangChain Twitter/X&lt;/a&gt; - Official LangChain promotion&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.linkedin.com/posts/langchain_local-deep-research-an-ai-research-activity-7307113456095137792-cXRH&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;LangChain LinkedIn&lt;/a&gt; - 400+ likes&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;international-coverage&#34;&gt;International Coverage
&lt;/h3&gt;&lt;h4 id=&#34;-chinese&#34;&gt;🇨🇳 Chinese
&lt;/h4&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://juejin.cn/post/7481604667589885991&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Juejin (掘金)&lt;/a&gt; - Developer community&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.cnblogs.com/qife122/p/18955032&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Cnblogs (博客园)&lt;/a&gt; - Developer blogs&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://x.com/GitHub_Daily/status/1900169979313741846&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;GitHubDaily (Twitter/X)&lt;/a&gt; - Influential tech account&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://zhuanlan.zhihu.com/p/30886269290&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Zhihu (知乎)&lt;/a&gt; - Tech community&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.ahhhhfs.com/68713/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;A姐分享&lt;/a&gt; - AI resources&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://blog.csdn.net/gitblog_01198/article/details/147061415&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;CSDN&lt;/a&gt; - Installation guide&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.163.com/dy/article/JQKAS50205567BLV.html&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;NetEase (网易)&lt;/a&gt; - Tech news portal&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;-japanese&#34;&gt;🇯🇵 Japanese
&lt;/h4&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://note.com/r7038xx/n/nb3b74debbb30&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;note.com: 調査革命：Local Deep Research徹底活用法&lt;/a&gt; - Comprehensive tutorial&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://qiita.com/orca13/items/635f943287c45388d48f&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Qiita: Local Deep Researchを試す&lt;/a&gt; - Docker setup guide&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://x.com/LangChainJP/status/1902918110073807073&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;LangChainJP (Twitter/X)&lt;/a&gt; - Japanese LangChain community&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&#34;-korean&#34;&gt;🇰🇷 Korean
&lt;/h4&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://discuss.pytorch.kr/t/local-deep-research/6476&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;PyTorch Korea Forum&lt;/a&gt; - Korean ML community&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://news.hada.io/topic?id=19707&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;GeekNews (Hada.io)&lt;/a&gt; - Korean tech news&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;reviews--analysis&#34;&gt;Reviews &amp;amp; Analysis
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://uflbsail.net/uncategorized/how-useful-is-deep-research-in-academia/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;BSAIL Lab: How useful is Deep Research in Academia?&lt;/a&gt; - Academic review by contributor &lt;a class=&#34;link&#34; href=&#34;https://github.com/djpetti&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;@djpetti&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://youtu.be/pfxgLX-MxMY?t=1999&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;The Art Of The Terminal: Use Local LLMs Already!&lt;/a&gt; - Comprehensive review of local AI tools, featuring LDR&amp;rsquo;s research capabilities (embeddings now work!)&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;related-projects&#34;&gt;Related Projects
&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/porespellar/searxng-LDR-academic&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;SearXNG LDR-Academic&lt;/a&gt; - Academic-focused SearXNG fork with 12 research engines (arXiv, Google Scholar, PubMed, etc.) designed for LDR&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://deepwiki.com/LearningCircuit/local-deep-research&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;DeepWiki Documentation&lt;/a&gt; - Third-party documentation and guides&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; Third-party projects and articles are independently maintained. We link to them as useful resources but cannot guarantee their code quality or security.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id=&#34;-community--support&#34;&gt;🤝 Community &amp;amp; Support
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://discord.gg/ttcqQeFcJ3&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Discord&lt;/a&gt; - Get help and share research techniques&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.reddit.com/r/LocalDeepResearch/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Reddit&lt;/a&gt; - Updates and showcases&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/LearningCircuit/local-deep-research/issues&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;GitHub Issues&lt;/a&gt; - Bug reports&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;-contributing&#34;&gt;🚀 Contributing
&lt;/h2&gt;&lt;p&gt;We welcome contributions of all sizes — from typo fixes to new features. The key rule: &lt;strong&gt;keep PRs small and atomic&lt;/strong&gt; (one change per PR). For larger changes, please open an issue or start a discussion first — we want to protect your time and make sure your effort leads to a successful merge rather than a misaligned PR. See our &lt;a class=&#34;link&#34; href=&#34;CONTRIBUTING.md&#34; &gt;Contributing Guide&lt;/a&gt; to get started.&lt;/p&gt;
&lt;h2 id=&#34;acknowledgements&#34;&gt;Acknowledgements
&lt;/h2&gt;&lt;p&gt;Local Deep Research is built on the work of many open-access initiatives, academic databases, and open-source projects. We are grateful to:&lt;/p&gt;
&lt;h3 id=&#34;academic--research-data&#34;&gt;Academic &amp;amp; Research Data
&lt;/h3&gt;&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;Source&lt;/th&gt;
          &lt;th&gt;What It Provides&lt;/th&gt;
          &lt;th&gt;License&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://openalex.org&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;OpenAlex&lt;/a&gt;&lt;/td&gt;
          &lt;td&gt;Academic metadata for ~280K sources and ~120K institutions, including DOAJ status&lt;/td&gt;
          &lt;td&gt;CC0&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://doaj.org&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;DOAJ&lt;/a&gt;&lt;/td&gt;
          &lt;td&gt;Directory of Open Access Journals — open-access verification (via OpenAlex)&lt;/td&gt;
          &lt;td&gt;CC0&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://arxiv.org&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;arXiv&lt;/a&gt;&lt;/td&gt;
          &lt;td&gt;Preprints in physics, mathematics, CS, and more&lt;/td&gt;
          &lt;td&gt;Various (see arXiv license)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://pubmed.ncbi.nlm.nih.gov&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;PubMed / NCBI&lt;/a&gt;&lt;/td&gt;
          &lt;td&gt;Biomedical and life sciences literature&lt;/td&gt;
          &lt;td&gt;Public domain (US Gov)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.semanticscholar.org&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Semantic Scholar&lt;/a&gt;&lt;/td&gt;
          &lt;td&gt;Cross-discipline academic search with citation data&lt;/td&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.semanticscholar.org/product/api/license&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Terms&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://ui.adsabs.harvard.edu&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;NASA ADS&lt;/a&gt;&lt;/td&gt;
          &lt;td&gt;Astrophysics, physics, and astronomy papers&lt;/td&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://ui.adsabs.harvard.edu/help/terms/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Terms&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://zenodo.org&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Zenodo&lt;/a&gt;&lt;/td&gt;
          &lt;td&gt;Open research data, datasets, and software&lt;/td&gt;
          &lt;td&gt;Various per record&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://pubchem.ncbi.nlm.nih.gov&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;PubChem&lt;/a&gt;&lt;/td&gt;
          &lt;td&gt;Chemistry and biochemistry database&lt;/td&gt;
          &lt;td&gt;Public domain (US Gov)&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://predatoryjournals.org&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Stop Predatory Journals&lt;/a&gt;&lt;/td&gt;
          &lt;td&gt;Predatory journal/publisher blacklist&lt;/td&gt;
          &lt;td&gt;MIT&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/JabRef/abbrv.jabref.org&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;JabRef&lt;/a&gt;&lt;/td&gt;
          &lt;td&gt;Journal abbreviation database&lt;/td&gt;
          &lt;td&gt;CC0&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 id=&#34;knowledge--content-sources&#34;&gt;Knowledge &amp;amp; Content Sources
&lt;/h3&gt;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.wikipedia.org&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Wikipedia&lt;/a&gt; • &lt;a class=&#34;link&#34; href=&#34;https://openlibrary.org&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;OpenLibrary&lt;/a&gt; • &lt;a class=&#34;link&#34; href=&#34;https://www.gutenberg.org&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Project Gutenberg&lt;/a&gt; • &lt;a class=&#34;link&#34; href=&#34;https://github.com&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;GitHub&lt;/a&gt; • &lt;a class=&#34;link&#34; href=&#34;https://stackexchange.com&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Stack Exchange&lt;/a&gt; • &lt;a class=&#34;link&#34; href=&#34;https://www.theguardian.com&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;The Guardian&lt;/a&gt; • &lt;a class=&#34;link&#34; href=&#34;https://web.archive.org&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Wayback Machine&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&#34;infrastructure--frameworks&#34;&gt;Infrastructure &amp;amp; Frameworks
&lt;/h3&gt;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/hwchase17/langchain&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;LangChain&lt;/a&gt; • &lt;a class=&#34;link&#34; href=&#34;https://ollama.ai&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Ollama&lt;/a&gt; • &lt;a class=&#34;link&#34; href=&#34;https://searxng.org/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;SearXNG&lt;/a&gt; • &lt;a class=&#34;link&#34; href=&#34;https://github.com/facebookresearch/faiss&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;FAISS&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&#34;support-open-access&#34;&gt;Support Open Access
&lt;/h3&gt;&lt;p&gt;These projects run on donations and grants, not paywalls. If Local Deep Research is useful to you, consider giving back to the open-access ecosystem that makes it possible:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://arxiv.org/about/give&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;arXiv&lt;/a&gt; — free preprints for physics, math, CS, and more&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.nlm.nih.gov/pubs/donations/donations.html&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;PubMed / NLM&lt;/a&gt; — open biomedical literature&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://donate.wikimedia.org&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Wikipedia / Wikimedia&lt;/a&gt; — the free encyclopedia&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://archive.org/donate&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Internet Archive&lt;/a&gt; — the Wayback Machine and open digital library&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://doaj.org/support&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;DOAJ&lt;/a&gt; — curating and verifying open-access journals worldwide&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://openalex.org&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;OpenAlex&lt;/a&gt; — open scholarly metadata (sponsored by &lt;a class=&#34;link&#34; href=&#34;https://ourresearch.org&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;OurResearch&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.gutenberg.org/donate/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Project Gutenberg&lt;/a&gt; — free ebooks since 1971&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;-license&#34;&gt;📄 License
&lt;/h2&gt;&lt;p&gt;MIT License - see &lt;a class=&#34;link&#34; href=&#34;LICENSE&#34; &gt;LICENSE&lt;/a&gt; file.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Dependencies:&lt;/strong&gt; All third-party packages use permissive licenses (MIT, Apache-2.0, BSD, etc.) - see &lt;a class=&#34;link&#34; href=&#34;.github/workflows/dependency-review.yml#L50-L68&#34; &gt;allowlist&lt;/a&gt;&lt;/p&gt;
</description>
        </item>
        
    </channel>
</rss>
