--- name: autonomous-web-research-agent version: 1.0.0 description: 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. inputs: - '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' steps: - 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. outputs: - '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 tags: [] metadata: source_repo: https://github.com/DennisDRX/Faraday-Web-Researcher-Agent.git extracted_at: '' confidence: 0.85 --- # autonomous-web-research-agent 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. ## Steps 1. 1. Accept user query and optional tool selections. 2. 2. Initialize agent framework (e.g., LangGraph) with integrated tools: web search (Tavily, Google, DuckDuckGo), news API, web scraping. 3. 3. Decompose query into sub-questions if needed and iteratively call tools to gather relevant information. 4. 4. Extract and deduplicate content from retrieved sources, tracking source metadata (URL, tool used). 5. 5. Use a large language model to synthesize findings into an executive summary and detailed sections. 6. 6. Analyze potential biases or limitations of gathered sources. 7. 7. Compile a structured report object (ResearchReport) containing query, summary, sections, sources, biases. 8. 8. Optionally present report via a UI (e.g., Streamlit) or return as JSON. ## Inputs - 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 ## Outputs - 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 ## Failure Modes - Missing or invalid API keys causing tool authentication failures - Rate limits or network errors from search APIs - Insufficient or low-quality search results leading to incomplete report - LLM hallucination or mis-summarization despite source tracking - Parsing errors in HTML/scraped content ## Source Extracted from: [https://github.com/DennisDRX/Faraday-Web-Researcher-Agent.git](https://github.com/DennisDRX/Faraday-Web-Researcher-Agent.git) Confidence: 0.85