explaingit

vishalkvl-098/multi-agent-research-assistant-

16PythonAudience · pm founderComplexity · 3/5LicenseSetup · moderate

TLDR

A Python command-line tool that runs a chain of AI agents powered by Claude to research a topic, verify facts, and produce a structured Markdown report automatically.

Mindmap

mindmap
  root((research-assistant))
    Agents
      Researcher
      Fact-Checker
      Writer
      Orchestrator
    Workflow
      Break into questions
      Web search
      Verify claims
      Write report
    Output
      Markdown report
      PDF planned
      JSON planned
    Config
      Depth levels
      Model choice
      Anthropic API key
    Roadmap
      Parallel subtopics
      Web interface
      Slack integration
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Run a single command to produce a structured research report on any topic, with sources verified by a separate fact-checking agent.

USE CASE 2

Choose a deep research depth to get a thorough multi-section report suitable for a business proposal or competitive analysis.

USE CASE 3

Use the quick depth for a fast summary when you need rough background on an unfamiliar topic before a meeting.

Tech stack

PythonAnthropic Claude API

Getting it running

Difficulty · moderate Time to first run · 30min

Requires a paid Anthropic API key, PDF export and parallel subtopic research are not yet implemented.

Use freely for any purpose including commercial projects, as long as you keep the copyright notice.

In plain English

This is a Python project that automates the production of research reports by running a chain of AI agents. You give it a topic, and it searches the web, checks facts, and writes a structured report without any further input from you. The pipeline has four roles. A Researcher agent takes the topic, breaks it into sub-questions, and searches the web for raw information. A Fact-Checker agent goes through each claim from the Researcher, validates it against sources, and removes anything unverified or contradictory. A Writer agent takes the verified facts and structures them into a formatted report with an introduction, body sections, and citations. An Orchestrator manages the whole process: passing data between agents, handling failures, and logging how long each step takes. Each agent is built using the Anthropic Claude API. They share data through a common structure called ResearchContext rather than through global variables. You run the tool from the command line by providing a topic and optional flags for depth (quick, standard, or deep), output format (Markdown, PDF, or JSON), and which Claude model to use. The generated report is saved to a folder on your computer. You need an Anthropic API key to use the tool. The key goes into a configuration file. The README includes a quick setup walkthrough covering how to create a Python virtual environment, install dependencies, and add the key. Items on the roadmap that are not yet complete include PDF export, parallel research on multiple subtopics at once, a web interface, and integrations with tools like Slack or Notion. The project is MIT-licensed.

Copy-paste prompts

Prompt 1
I'm using multi-agent-research-assistant. Give me a command to run a deep research report on the current state of vector databases, saved as Markdown.
Prompt 2
The fact-checker agent removed several claims from my report. Explain how I can see which claims were cut and why they failed verification.
Prompt 3
I want to add a fifth agent that formats the Writer's output into a slide deck structure. Outline the changes needed to the orchestration code.
Prompt 4
My Researcher agent keeps returning duplicate sources. Help me add a deduplication step to the ResearchContext before the Writer sees it.
Open on GitHub → Explain another repo

← vishalkvl-098 on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.