Skip to main content

A powerful workflow orchestration framework

Project description

CraftFlow

CraftFlow is a powerful workflow orchestration framework designed for building complex processing pipelines, including RAG systems, multi-agent collaborations, and data processing workflows.

CraftFlow Logo

Features

  • 🚀 Asynchronous Processing: Native support for async tasks
  • Parallel Execution: Execute tasks in parallel
  • 🔍 RAG System Support: Built-in components for Retrieval-Augmented Generation
  • 🧠 MCP Decision Nodes: Multi-Conditional Path decision making
  • 🛠️ Tool Integration: Unified tool registry and invocation system
  • 🤖 Agent System: Support for single and multi-agent collaboration
  • 📊 Execution Tracing: Detailed trace of workflow execution

🛠️ Flow Chart

The overall technical flowchart is shown below, covering the entire lifecycle from input to output.

CraftFlow Logo

💿 Installation

pip install craftflow

🏁Quick Start

RAG System Example

from craftflow.examples import rag_system

# Run a simple RAG workflow
rag_system.run_rag_example()

Multi-Agent System

from craftflow.examples import multi_agent_system

# Run a multi-agent collaboration workflow
multi_agent_system.run_multi_agent_example()

🔑Core Concepts

FlowContext

The data sharing context that tracks execution history and tool calls.

FlowNode

Base class for all workflow nodes. Various node types include:

  • TaskNode: Synchronous task node
  • AsyncTaskNode: Asynchronous task node
  • ToolNode: Tool invocation node
  • MCPNode: Multi-Conditional Path decision node
  • AgentNode: Agent encapsulation node
  • ParallelNode: Parallel execution node
  • BatchNode: Batch processing node

ToolRegistry

Central registry for managing tools and their metadata.

⚙️Documentation

Full documentation is available at CraftFlow Docs

📂 Examples & Templates (Developing)

Explore more examples in the examples directory:

  • rag_system.py: Full RAG workflow
  • multi_agent_system.py: Multi-agent collaboration system

💡 Future Work

  • Intelligent Scheduling & Optimization: Leverage historical execution metrics to dynamically allocate resources and optimize task ordering.

  • Multi-Level Nested Workflows: Support complex hierarchical workflows with dependencies and parallel sub-flows across multiple levels.

  • Visual Monitoring & Debugging: Provide a real-time graphical interface for inspecting workflow state, logs, and performance metrics.

  • Enhanced Fault Tolerance & Rollback: Implement automatic error detection, compensation, and rollback mechanisms for robust recovery.

  • Plugin Architecture: Offer a plugin system to allow community-built custom nodes, connectors, and tool integrations.

🤝 Contributing

Contributions are welcome! Please read our Contribution Guidelines before submitting pull requests.

📜 License

CraftFlow is released under the MIT License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

craftflow-1.0.0.tar.gz (21.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

craftflow-1.0.0-py3-none-any.whl (26.3 kB view details)

Uploaded Python 3

File details

Details for the file craftflow-1.0.0.tar.gz.

File metadata

  • Download URL: craftflow-1.0.0.tar.gz
  • Upload date:
  • Size: 21.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.14

File hashes

Hashes for craftflow-1.0.0.tar.gz
Algorithm Hash digest
SHA256 74cb4b13c4d320e36221c6e5285e6aa9afffb493c7f8c8c12de369f3f92fdae7
MD5 15ceeb7c8f37e64dbd93b6a33f1eaa6e
BLAKE2b-256 4b4a533341dbe18524a75c2b683f7cb1a563bca9dc2b962097421eff8637f63c

See more details on using hashes here.

File details

Details for the file craftflow-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: craftflow-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 26.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.14

File hashes

Hashes for craftflow-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 186542fd758b4307d41da33fa1ad61057f253586d538ed0ecffc144cb690fd70
MD5 8b54bc09b1e6740f05445557b6c2d2d5
BLAKE2b-256 bb79b4d6598f1e9fcd7c116bc7af697916c883b666a29a985a90c89a5a45e9f7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page