$ show guy-hartstein/company-research-agent
This repository implements a multi-agent AI system for generating comprehensive company research reports. The backend is a FastAPI application that orchestrates a LangGraph-based pipeline of specialized research agents: a grounding node that optionally crawls the company's website, parallel research nodes (company, industry, financial, news) that use Tavily search and LLM-generated queries to gather data, a curator that filters documents by relevance score, an enricher that fetches raw content, a briefing node that generates category-specific summaries using Gemini, and an editor that compiles the final report using GPT-4o. The frontend is a React application with TypeScript and Tailwind CSS that communicates via SSE streaming. The system is primarily a web application with a modular agent pipeline, not a data analysis project.
The LLM identified 2 files worth highlighting for reuse:
Provides a collection of standalone utility functions for extracting readable domain names from URLs, cleaning and normalizing titles, deduplicating and sorting references by relevance score, and formatting them in MLA style for markdown output. These functions have no internal dependencies beyond standard Python libraries and could be extracted and reused in any project that needs to process and format web references.
Wraps the PDF generation logic (using reportlab) into a service class that accepts markdown content and returns a streamable PDF. It handles filename sanitization, content extraction from markdown headers, and provides a clean interface for generating PDFs on demand. The underlying `generate_pdf_from_md` function in `backend/utils/utils.py` is also reusable for any project needing markdown-to-PDF conversion.