| autonomous-web-research-agent |
1.0.0 |
Autonomously research a given query on the web using multiple search tools and generate a structured report with summary, detailed sections, source tracking, and bias analysis. |
| query (string): the research question or topic to investigate |
| tools (list, optional): selected web search/tools to use (e.g., Tavily, Google, NewsAPI, DuckDuckGo) |
| api_keys (dict, optional): credentials for LLM and external search APIs |
| model_config (dict, optional): LLM provider and parameters |
|
| 1. Accept user query and optional tool selections. |
| 2. Initialize agent framework (e.g., LangGraph) with integrated tools: web search (Tavily, Google, DuckDuckGo), news API, web scraping. |
| 3. Decompose query into sub-questions if needed and iteratively call tools to gather relevant information. |
| 4. Extract and deduplicate content from retrieved sources, tracking source metadata (URL, tool used). |
| 5. Use a large language model to synthesize findings into an executive summary and detailed sections. |
| 6. Analyze potential biases or limitations of gathered sources. |
| 7. Compile a structured report object (ResearchReport) containing query, summary, sections, sources, biases. |
| 8. Optionally present report via a UI (e.g., Streamlit) or return as JSON. |
|
| ResearchReport (JSON/dict) with fields: query (string), summary (string), sections (list of {heading, content}), sources (list of {url, tool_used, title}), potential_biases (string) |
| Optional UI rendering of report with source badges and expandable sections |
|
|
|