
Markov Documentation
Markov is a Go-based YAML workflow engine for Kubernetes. Define workflows declaratively, and Markov executes them as K8s Jobs, HTTP requests, or shell commands with built-in concurrency, conditionals, checkpoint/resume, and a rule engine.
Quick Links
Getting Started
New to markov? Start here:
- Getting Started — from zero to a running workflow
- Core Concepts — the mental model behind markov
- Writing Workflows — build a real workflow step by step
Language Reference
Complete, field-by-field documentation for the markov YAML DSL:
Guides
Practical how-to guides with complete examples:
- Testing with CPU Kev — recreate the pinned local server and verify authenticated Jev steps and offline resume
- Writing Workflows — anatomy of a workflow, variables, register, conditions, custom types
- Fan-Out Patterns — for_each concurrency, sub-workflow fan-outs, stable keys
- Resuming Workflows — checkpoint/resume workflow operations, caveats, and troubleshooting
- Using Postgres for Markov State — shared durable state store setup, Kubernetes wiring, and operations
- Looping with Gates — recursive workflows, retry loops, gate-controlled iteration
- Conditional Logic — when vs gates vs assert, decision routing patterns
- Running in Kubernetes — in-cluster auth, RBAC, state persistence, callbacks
- Debugging — verbose/debug output, status inspection, diagrams, common errors
Design Documents
Internal design docs and research notes (preserved for reference):
How to Use These Docs