mirror of
https://github.com/arc53/DocsGPT.git
synced 2026-02-22 12:21:39 +00:00
* 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>
57 lines
1.3 KiB
Python
57 lines
1.3 KiB
Python
"""
|
|
Main user API routes - registers all namespace modules.
|
|
"""
|
|
|
|
from flask import Blueprint
|
|
|
|
from application.api import api
|
|
from .agents import agents_ns, agents_sharing_ns, agents_webhooks_ns, agents_folders_ns
|
|
from .analytics import analytics_ns
|
|
from .attachments import attachments_ns
|
|
from .conversations import conversations_ns
|
|
from .models import models_ns
|
|
from .prompts import prompts_ns
|
|
from .sharing import sharing_ns
|
|
from .sources import sources_chunks_ns, sources_ns, sources_upload_ns
|
|
from .tools import tools_mcp_ns, tools_ns
|
|
from .workflows import workflows_ns
|
|
|
|
|
|
user = Blueprint("user", __name__)
|
|
|
|
# Analytics
|
|
api.add_namespace(analytics_ns)
|
|
|
|
# Attachments
|
|
api.add_namespace(attachments_ns)
|
|
|
|
# Conversations
|
|
api.add_namespace(conversations_ns)
|
|
|
|
# Models
|
|
api.add_namespace(models_ns)
|
|
|
|
# Agents (main, sharing, webhooks, folders)
|
|
api.add_namespace(agents_ns)
|
|
api.add_namespace(agents_sharing_ns)
|
|
api.add_namespace(agents_webhooks_ns)
|
|
api.add_namespace(agents_folders_ns)
|
|
|
|
# Prompts
|
|
api.add_namespace(prompts_ns)
|
|
|
|
# Sharing
|
|
api.add_namespace(sharing_ns)
|
|
|
|
# Sources (main, chunks, upload)
|
|
api.add_namespace(sources_ns)
|
|
api.add_namespace(sources_chunks_ns)
|
|
api.add_namespace(sources_upload_ns)
|
|
|
|
# Tools (main, MCP)
|
|
api.add_namespace(tools_ns)
|
|
api.add_namespace(tools_mcp_ns)
|
|
|
|
# Workflows
|
|
api.add_namespace(workflows_ns)
|