AutoFlow
Getting Started

Configuration

Environment variables, quality thresholds, and directory paths.

AutoFlow is configured through environment variables defined in src/autoflow/config.py. All settings have sensible defaults.

LLM Provider

VariableDefaultDescription
DEFAULT_LLM_PROVIDER"mock"LLM provider to use (openai, anthropic, gemini, ollama, mock)
OLLAMA_BASE_URL"http://localhost:11434"Ollama server address

When using the Ollama provider, AutoFlow automatically discovers locally installed models. Use --model to specify a model, or AutoFlow will prompt you to choose if the default (llama3) isn't available. See LLM Providers for details.

Quality Thresholds

These control the evaluate-critique loop pass criteria:

VariableDefaultDescription
PASS_THRESHOLD_CORRECTNESS4Minimum correctness score (1-5) to pass
PASS_THRESHOLD_FORMAT_VALIDITY5Minimum format validity score (must be exact)
PASS_THRESHOLD_EDIT_MINUTES15Maximum estimated human edit minutes
MAX_CRITIQUE_ITERATIONS2Maximum evaluate-critique cycles before stopping

Analytics

VariableDefaultDescription
AWC_ANALYTICS_ENABLEDtrueEnable pipeline run logging to logs/analytics/

Disable analytics per-run with the --no-analytics CLI flag.

Directory Paths

These are auto-resolved relative to the package root:

PathLocationContents
PROMPTS_DIRprompts/9 prompt templates (.txt)
PERSONAS_DIRpersonas/8 persona definitions (.txt)
SCHEMAS_DIRschemas/JSON Schema files
WORKFLOWS_DIRworkflows/All workflow files
CATALOG_DIRworkflows/starter_templates/20 starter templates
CUSTOM_WORKFLOWS_DIRworkflows/custom_workflows/User-customized workflows
REGISTRY_DIRnode_registry/Node registry YAML definitions
NODE_SCHEMAS_DIRschemas/nodes/Auto-generated per-node JSON Schemas

Example: Strict Quality Settings

export PASS_THRESHOLD_CORRECTNESS=5
export PASS_THRESHOLD_FORMAT_VALIDITY=5
export PASS_THRESHOLD_EDIT_MINUTES=5
export MAX_CRITIQUE_ITERATIONS=3

python -m autoflow "Build a document review pipeline" --mode generate --provider openai

This configuration requires near-perfect outputs and allows an extra critique iteration to get there.

On this page