Siddhant Rai 8ef321d784 feat: agent workflow builder (#2264)
* feat: implement WorkflowAgent and GraphExecutor for workflow management and execution

* refactor: workflow schemas and introduce WorkflowEngine

- Updated schemas in `schemas.py` to include new agent types and configurations.
- Created `WorkflowEngine` class in `workflow_engine.py` to manage workflow execution.
- Enhanced `StreamProcessor` to handle workflow-related data.
- Added new routes and utilities for managing workflows in the user API.
- Implemented validation and serialization functions for workflows.
- Established MongoDB collections and indexes for workflows and related entities.

* refactor: improve WorkflowAgent documentation and update type hints in WorkflowEngine

* feat: workflow builder and managing in frontend

- Added new endpoints for workflows in `endpoints.ts`.
- Implemented `getWorkflow`, `createWorkflow`, and `updateWorkflow` methods in `userService.ts`.
- Introduced new UI components for alerts, buttons, commands, dialogs, multi-select, popovers, and selects.
- Enhanced styling in `index.css` with new theme variables and animations.
- Refactored modal components for better layout and styling.
- Configured TypeScript paths and Vite aliases for cleaner imports.

* feat: add workflow preview component and related state management

- Implemented WorkflowPreview component for displaying workflow execution.
- Created WorkflowPreviewSlice for managing workflow preview state, including queries and execution steps.
- Added WorkflowMiniMap for visual representation of workflow nodes and their statuses.
- Integrated conversation handling with the ability to fetch answers and manage query states.
- Introduced reusable Sheet component for UI overlays.
- Updated Redux store to include workflowPreview reducer.

* feat: enhance workflow execution details and state management in WorkflowEngine and WorkflowPreview

* feat: enhance workflow components with improved UI and functionality

- Updated WorkflowPreview to allow text truncation for better display of long names.
- Enhanced BaseNode with connectable handles and improved styling for better visibility.
- Added MobileBlocker component to inform users about desktop requirements for the Workflow Builder.
- Introduced PromptTextArea component for improved variable insertion and search functionality, including upstream variable extraction and context addition.

* feat(workflow): add owner validation and graph version support

* fix: ruff lint

---------

Co-authored-by: Alex <a@tushynski.me>
2026-02-11 14:15:24 +00:00
2025-02-12 09:48:21 +00:00
2026-01-22 12:21:01 +02:00
2026-02-09 14:37:36 +00:00
2025-12-05 20:57:39 +02:00
2025-06-18 22:17:23 +01:00
2025-11-24 12:44:19 +02:00
2026-01-22 13:11:24 +02:00
2025-10-31 18:00:09 +02:00
2023-10-29 14:03:05 +05:30
2023-02-02 11:03:24 +00:00
2025-07-25 14:48:49 +05:30
2024-04-12 09:39:33 +01:00
2026-01-22 12:21:01 +02:00
2026-01-22 12:21:01 +02:00

DocsGPT 🦖

Private AI for agents, assistants and enterprise search

DocsGPT is an open-source AI platform for building intelligent agents and assistants. Features Agent Builder, deep research tools, document analysis (PDF, Office, web content), Multi-model support (choose your provider or run locally), and rich API connectivity for agents with actionable tools and integrations. Deploy anywhere with complete privacy control.


video-example-of-docs-gpt

Key Features:

  • 🗂️ Wide Format Support: Reads PDF, DOCX, CSV, XLSX, EPUB, MD, RST, HTML, MDX, JSON, PPTX, and images.
  • 🌐 Web & Data Integration: Ingests from URLs, sitemaps, Reddit, GitHub and web crawlers.
  • Reliable Answers: Get accurate, hallucination-free responses with source citations viewable in a clean UI.
  • 🔑 Streamlined API Keys: Generate keys linked to your settings, documents, and models, simplifying chatbot and integration setup.
  • 🔗 Actionable Tooling: Connect to APIs, tools, and other services to enable LLM actions.
  • 🧩 Pre-built Integrations: Use readily available HTML/React chat widgets, search tools, Discord/Telegram bots, and more.
  • 🔌 Flexible Deployment: Works with major LLMs (OpenAI, Google, Anthropic) and local models (Ollama, llama_cpp).
  • 🏢 Secure & Scalable: Run privately and securely with Kubernetes support, designed for enterprise-grade reliability.

Roadmap

  • Add OAuth 2.0 authentication for MCP ( September 2025 )
  • Deep Agents ( October 2025 )
  • Prompt Templating ( October 2025 )
  • Full api tooling ( Dec 2025 )
  • Agent scheduling ( Jan 2026 )

You can find our full roadmap here. Please don't hesitate to contribute or create issues, it helps us improve DocsGPT!

Production Support / Help for Companies:

We're eager to provide personalized assistance when deploying your DocsGPT to a live environment.

Get a Demo 👋

Send Email 📧

Join the Lighthouse Program 🌟

Calling all developers and GenAI innovators! The DocsGPT Lighthouse Program connects technical leaders actively deploying or extending DocsGPT in real-world scenarios. Collaborate directly with our team to shape the roadmap, access priority support, and build enterprise-ready solutions with exclusive community insights.

Learn More & Apply →

QuickStart

Note

Make sure you have Docker installed

A more detailed Quickstart is available in our documentation

  1. Clone the repository:

    git clone https://github.com/arc53/DocsGPT.git
    cd DocsGPT
    

For macOS and Linux:

  1. Run the setup script:

    ./setup.sh
    

For Windows:

  1. Run the PowerShell setup script:

    PowerShell -ExecutionPolicy Bypass -File .\setup.ps1
    

Either script will guide you through setting up DocsGPT. Five options available: using the public API, running locally, connecting to a local inference engine, using a cloud API provider, or build the docker image locally. Scripts will automatically configure your .env file and handle necessary downloads and installations based on your chosen option.

Navigate to http://localhost:5173/

To stop DocsGPT, open a terminal in the DocsGPT directory and run:

docker compose -f deployment/docker-compose.yaml down

(or use the specific docker compose down command shown after running the setup script).

Note

For development environment setup instructions, please refer to the Development Environment Guide.

Contributing

Please refer to the CONTRIBUTING.md file for information about how to get involved. We welcome issues, questions, and pull requests.

Architecture

Architecture chart

Project Structure

  • Application - Flask app (main application).

  • Extensions - Extensions, like react widget or discord bot.

  • Frontend - Frontend uses Vite and React.

  • Scripts - Miscellaneous scripts.

Code Of Conduct

We as members, contributors, and leaders, pledge to make participation in our community a harassment-free experience for everyone, regardless of age, body size, visible or invisible disability, ethnicity, sex characteristics, gender identity and expression, level of experience, education, socio-economic status, nationality, personal appearance, race, religion, or sexual identity and orientation. Please refer to the CODE_OF_CONDUCT.md file for more information about contributing.

Many Thanks To Our Contributors

Contributors

License

The source code license is MIT, as described in the LICENSE file.

This project is supported by:

color

Description
No description provided
Readme MIT 118 MiB
Languages
Python 59.3%
TypeScript 36.9%
PowerShell 1.5%
Shell 1.2%
CSS 0.6%
Other 0.4%