Skip to content

orieg/yaml-workflow

Repository files navigation

YAML Workflow

A lightweight, powerful, and flexible workflow engine that executes tasks defined in YAML configuration files. This engine allows you to create modular, reusable workflows by connecting tasks through YAML definitions, with support for parallel processing, batch operations, and state management.

Features

  • 📝 YAML-driven workflow definition
  • 🔌 Dynamic module and function loading
  • 🔄 Input/output variable management
  • ⚠️ Comprehensive error handling
  • 🔁 Retry mechanisms
  • ⚡ Parallel processing support
  • 📊 Progress tracking and logging
  • 💾 State persistence and resume capability
  • 🔄 Batch processing with chunking
  • 🌐 Template variable substitution
  • 🔀 Flow control with custom step sequences

Quick Start

  1. Install the package:
pip install yaml-workflow
  1. Initialize example workflows:
# Create workflows directory with examples
yaml-workflow init

# Or specify a custom directory
yaml-workflow init --dir my-workflows

# Initialize with specific examples only
yaml-workflow init --example hello_world
  1. Run the example workflow:
# Run with input parameters
yaml-workflow run workflows/hello_world.yaml name=Alice

# List available workflows
yaml-workflow list

# Validate a workflow
yaml-workflow validate workflows/hello_world.yaml

# Resume a failed workflow
yaml-workflow run workflows/hello_world.yaml --resume

Documentation

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

A lightweight, powerful, and flexible workflow engine that executes tasks defined in YAML configuration files.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •  

Languages