DEV Community

Ankit Sharma
Ankit Sharma

Posted on

๐Ÿš€ ๐—ช๐—ต๐—ฎ๐˜ ๐—ถ๐—ณ ๐—ผ๐—ป๐—ฒ ๐—”๐—œ ๐—ฎ๐—ด๐—ฒ๐—ป๐˜ ๐—ฝ๐—น๐—ฎ๐—ป๐—ป๐—ฒ๐—ฑ ๐˜†๐—ผ๐˜‚๐—ฟ ๐—ฟ๐—ฒ๐˜€๐—ฒ๐—ฎ๐—ฟ๐—ฐ๐—ต ๐˜„๐—ต๐—ถ๐—น๐—ฒ ๐Ÿญ๐Ÿด ๐—ผ๐˜๐—ต๐—ฒ๐—ฟ๐˜€ ๐—ด๐—ฎ๐˜๐—ต๐—ฒ๐—ฟ๐—ฒ๐—ฑ ๐—ฒ๐˜ƒ๐—ถ๐—ฑ๐—ฒ๐—ป๐—ฐ๐—ฒ ๐—ถ๐—ป ๐—ฝ๐—ฎ๐—ฟ๐—ฎ๐—น๐—น๐—ฒ๐—น?

I built a multi-agent Deep Research workflow with LangGraph that turns a single topic into a fully cited research reportโ€”and then automatically publishes a LinkedIn post from it.

๐Ÿ‘‡ ๐—›๐—ฒ๐—ฟ๐—ฒ'๐˜€ ๐—ต๐—ผ๐˜„ ๐—ถ๐˜ ๐˜„๐—ผ๐—ฟ๐—ธ๐˜€


โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”

๐Ÿง  ๐—ข๐—จ๐—ง๐—˜๐—ฅ ๐—š๐—ฅ๐—”๐—ฃ๐—› (๐—ข๐—ฟ๐—ฐ๐—ต๐—ฒ๐˜€๐˜๐—ฟ๐—ฎ๐˜๐—ผ๐—ฟ)

๐—”๐—ด๐—ฒ๐—ป๐˜ ๐Ÿญ
โ†’ Analyzes the topic and plans the report structure.

๐—”๐—ด๐—ฒ๐—ป๐˜ ๐Ÿฎ
โ†’ Uses LangGraph's Send() API to spawn parallel workersโ€”one for each section.

๐—”๐—ด๐—ฒ๐—ป๐˜ ๐Ÿฏ
โ†’ Collects and assembles every completed section.

๐—”๐—ด๐—ฒ๐—ป๐˜ ๐Ÿฐ
โ†’ Generates the introduction and conclusion after all research is finished.

โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”

๐Ÿ” ๐—œ๐—ก๐—ก๐—˜๐—ฅ ๐—š๐—ฅ๐—”๐—ฃ๐—› (Runs in Parallel)

Every section gets its own research workflow.

๐—”๐—ด๐—ฒ๐—ป๐˜ ๐Ÿฑ

โ€ข Generates 3 targeted search queries

โ€ข Searches the web using Tavily for fresh, relevant sources

โ€ข Writes the section with proper citations

โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”

For a 6-section report, the workflow automatically coordinates:

โœ… 1 Planning Agent

โœ… 18 Parallel Worker Executions

โœ… 1 Complete Research Report

โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”

๐Ÿ“„ ๐—ง๐—›๐—˜ ๐—ข๐—จ๐—ง๐—ฃ๐—จ๐—ง

A structured Markdown report where every section is grounded in real sources instead of relying on a single prompt.

But I wanted to take it one step further...

โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”

โœจ ๐—ฃ๐—จ๐—•๐—Ÿ๐—œ๐—ฆ๐—›๐—œ๐—ก๐—š ๐—”๐—š๐—˜๐—ก๐—ง

Once the report is complete, another agent:

โ€ข Reads the entire report

โ€ข Extracts the most valuable insights

โ€ข Writes a LinkedIn post (hook, summary & hashtags)

โ€ข Publishes it directly to LinkedIn

๐—ฅ๐—ฒ๐˜€๐—ฒ๐—ฎ๐—ฟ๐—ฐ๐—ต โ†’ ๐—ฅ๐—ฒ๐—ฝ๐—ผ๐—ฟ๐˜ โ†’ ๐—Ÿ๐—ถ๐—ป๐—ธ๐—ฒ๐—ฑ๐—œ๐—ป

One automated workflow.

โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”

๐Ÿค” ๐—ช๐—›๐—ฌ ๐—ก๐—ข๐—ง ๐—๐—จ๐—ฆ๐—ง ๐—จ๐—ฆ๐—˜ ๐—” ๐—ฆ๐—œ๐—ก๐—š๐—Ÿ๐—˜ ๐—Ÿ๐—Ÿ๐—  ๐—ฃ๐—ฅ๐—ข๐— ๐—ฃ๐—ง?

โœ… Every section performs its own focused web research.

โœ… Research runs in parallel, making the workflow faster.

โœ… Intro and conclusion are generated only after every section is complete.

โœ… Every major claim is backed by cited sources.

โœ… The final report is automatically transformed into a publish-ready LinkedIn post.

โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”

๐Ÿ› ๏ธ ๐—ง๐—˜๐—–๐—› ๐—ฆ๐—ง๐—”๐—–๐—ž

Python โ€ข LangGraph โ€ข LangChain โ€ข Tavily โ€ข FastAPI โ€ข Groq โ€ข Gemini โ€ข OpenAI

โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”

My favorite part of LangGraph is the Send() API.

One node can fan out into N parallel subgraph executions without writing any threading or concurrency logic.

It's a clean and elegant pattern for building scalable AI workflows.

Next, I'm planning to extend this into a reusable research engine with support for different report types and publishing destinations.

๐Ÿ’ฌ What topic would you throw at a Deep Research agent first?

AI #LangGraph #AIAgents #Python #LLM #MultiAgentSystems #BuildInPublic

Top comments (0)