A Python library for building and documenting process workflows through interactive interviews.
- Interactive process building through natural language interviews
- Automatic generation of process documentation in multiple formats:
- Mermaid diagrams (
.mmd
and.png
) - CSV files for steps and notes
- Executive summaries
- LLM prompts for process analysis
- Mermaid diagrams (
- Versioned output storage with timestamped directories
- Support for complex process flows with:
- Success and failure paths
- Decision points
- Process notes
- Validation rules
- Error handling
pip install processbuilder
from processbuilder import ProcessBuilder
# Initialize the process builder
builder = ProcessBuilder(process_name="make_a_sandwich")
# Start the interactive interview
builder.interview()
# Generate outputs
outputs = builder.generate_outputs()
Process outputs are organized in timestamped directories:
output/
└── process_name/
└── YYYYMMDD_HHMMSS/
├── process_name_steps.csv
├── process_name_notes.csv
├── process_name_diagram.mmd
├── process_name_diagram.png
├── process_name_prompt.txt
└── process_name_summary.md
-
CSV Files:
process_name_steps.csv
: Contains all process steps with their descriptions, decisions, and outcomesprocess_name_notes.csv
: Contains all process notes with their associated steps
-
Mermaid Diagrams:
process_name_diagram.mmd
: Mermaid syntax diagram fileprocess_name_diagram.png
: Rendered PNG image of the diagram (requires Mermaid.INK API)
-
Documentation:
process_name_prompt.txt
: LLM prompt for process analysisprocess_name_summary.md
: Executive summary of the process
- Automatic node ID sanitization
- Proper handling of special characters in descriptions
- Support for success and failure paths
- Process notes as subgraphs
- Clean and readable diagram layout
- Python 3.8+
- OpenAI API key (for LLM features)
- Internet connection (for Mermaid.INK API)
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.