LICENSE
README.md
pyproject.toml
src/whsearch/__init__.py
src/whsearch/application.py
src/whsearch/config.py
src/whsearch/exceptions.py
src/whsearch/observability.py
src/whsearch.egg-info/PKG-INFO
src/whsearch.egg-info/SOURCES.txt
src/whsearch.egg-info/dependency_links.txt
src/whsearch.egg-info/entry_points.txt
src/whsearch.egg-info/requires.txt
src/whsearch.egg-info/top_level.txt
src/whsearch/agent/__init__.py
src/whsearch/agent/service.py
src/whsearch/domain/__init__.py
src/whsearch/domain/models.py
src/whsearch/domain/protocols.py
src/whsearch/evidence/__init__.py
src/whsearch/evidence/claims.py
src/whsearch/evidence/verification.py
src/whsearch/index/__init__.py
src/whsearch/index/sqlite.py
src/whsearch/infrastructure/http/__init__.py
src/whsearch/infrastructure/http/client.py
src/whsearch/mcp/server.py
src/whsearch/mcp/tools/read_page.py
src/whsearch/mcp/tools/research.py
src/whsearch/mcp/tools/search.py
src/whsearch/mcp/tools/search_and_read.py
src/whsearch/reader/__init__.py
src/whsearch/reader/browser.py
src/whsearch/reader/robots.py
src/whsearch/reader/service.py
src/whsearch/reader/video.py
src/whsearch/reader/extractors/base.py
src/whsearch/reader/extractors/html.py
src/whsearch/research/__init__.py
src/whsearch/research/planner.py
src/whsearch/research/stopping.py
src/whsearch/retrieval/__init__.py
src/whsearch/retrieval/deduplication.py
src/whsearch/retrieval/ranking.py
src/whsearch/search/__init__.py
src/whsearch/search/query.py
src/whsearch/search/service.py
src/whsearch/search/providers/arxiv.py
src/whsearch/search/providers/crossref.py
src/whsearch/search/providers/duckduckgo.py
src/whsearch/search/providers/duckduckgo_html.py
src/whsearch/search/providers/googlenews.py
src/whsearch/search/providers/openalex.py
src/whsearch/search/providers/searxng.py
src/whsearch/search/providers/wikipedia.py
src/whsearch/search/providers/youtube.py