Skip to content

Advanced AI Agent for developer tool research using LangGraph, OpenAI GPT-4, and Firecrawl

Notifications You must be signed in to change notification settings

asheint/langgraph-advanced-research-agent

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Advanced Developer Tools Research Agent 🔍

An intelligent AI-powered research agent that helps developers discover, analyze, and compare developer tools and technologies. Built with LangGraph, OpenAI GPT-4, and Firecrawl for comprehensive web research and analysis.

✨ Features

  • Smart Tool Discovery: Automatically extracts relevant developer tools from web articles and documentation
  • Comprehensive Analysis: Analyzes pricing models, tech stacks, API availability, and integration capabilities
  • Developer-Focused: Tailored specifically for programmers and software engineers
  • Interactive CLI: Easy-to-use command-line interface for quick research
  • Structured Output: Clean, organized results with key information at a glance

🛠️ Tech Stack

  • Python 3.12+
  • LangGraph - Workflow orchestration
  • LangChain + OpenAI GPT-4 - AI-powered analysis
  • Firecrawl - Web scraping and search
  • Pydantic - Data validation and modeling
  • UV - Fast Python package manager

🚀 Quick Start

Prerequisites

  • Python 3.12 or higher
  • OpenAI API key
  • Firecrawl API key

Installation

  1. Clone the repository

    git clone https://github.com/asheint/advanced-research-agent.git
    cd advanced-research-agent
  2. Install dependencies with UV

    uv sync
  3. Set up environment variables

    Create a .env file in the root directory:

    OPENAI_API_KEY=your_openai_api_key_here
    FIRECRAWL_API_KEY=your_firecrawl_api_key_here
  4. Run the application

    uv run python main.py

💡 Usage

Once running, simply enter your developer tools query:

🔍 Developer Tools Query: best database for python web apps

📊 Results for: best database for python web apps
============================================================

1. 🏢 PostgreSQL
   🌐 Website: https://postgresql.org
   💰 Pricing: Free
   📖 Open Source: True
   🛠️  Tech Stack: SQL, ACID, JSON, XML
   💻 Language Support: Python, JavaScript, Java, Go, Rust
   🔌 API: ✅ Available
   🔗 Integrations: Django, SQLAlchemy, Prisma, Supabase
   📝 Description: Advanced open-source relational database system

Developer Recommendations:
----------------------------------------
PostgreSQL is the best choice for Python web apps due to excellent SQLAlchemy integration and Django ORM support. It's completely free with enterprise-grade features. Main advantage is robust ACID compliance and JSON support for hybrid workloads.

Example Queries

  • "best CI/CD tools for small teams"
  • "python web frameworks comparison"
  • "database hosting solutions"
  • "API documentation tools"
  • "monitoring tools for microservices"

🏗️ Architecture

The agent follows a structured workflow:

  1. Tool Extraction - Searches for articles and extracts relevant tool names
  2. Research - Gathers detailed information about each discovered tool
  3. Analysis - Uses structured AI analysis to extract key developer-relevant information
  4. Recommendations - Provides concise, actionable recommendations

📁 Project Structure

advanced-research-agent/
├── src/
│   ├── __init__.py
│   ├── workflow.py      # Main workflow orchestration
│   ├── models.py        # Pydantic data models
│   ├── prompts.py       # AI prompts and templates
│   └── firecrawl.py     # Web scraping service
├── main.py              # CLI application entry point
├── pyproject.toml       # UV configuration
├── .env                 # Environment variables (create this)
├── .python-version      # Python version specification
└── README.md           # This file

🔧 Configuration

Environment Variables

  • OPENAI_API_KEY - Your OpenAI API key for GPT-4 access
  • FIRECRAWL_API_KEY - Your Firecrawl API key for web scraping

Model Configuration

The agent uses GPT-4o-mini by default for cost efficiency. You can modify the model in src/workflow.py:

self.llm = ChatOpenAI(model="gpt-4o-mini", temperature=0.1)

🤝 Contributing

Contributions are welcome! This is an open-source project. Please feel free to:

  • Report bugs
  • Suggest new features
  • Submit pull requests
  • Improve documentation

📄 License

This project is open source and available under the MIT License.

☕ Support

If you find this project helpful, consider supporting its development:

Buy Me A Coffee

🔗 Links


Star this repository if you find it helpful!

About

Advanced AI Agent for developer tool research using LangGraph, OpenAI GPT-4, and Firecrawl

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages