tilebox.workflow.toml describes how a Python workflow project becomes a workflow release. It identifies the Tilebox workflow, defines which files belong in the release artifact, selects the runtime entrypoint, and optionally names cluster targets for deployments.
The Tilebox command-line tool searches upward from the current directory for the nearest configuration file. This lets release commands run from the project root or from subdirectories inside the project.
Minimal configuration
Workflow section
The[workflow] section identifies the workflow and tells the Tilebox command-line tool how to start the Python workflow runtime during release checks and release execution.
| Field | Required | Description |
|---|---|---|
slug | Yes | Stable workflow slug, such as my-workflow. Releases are published under this workflow. |
root | No | Project root for build paths. Defaults to ".". |
runner | One of runner or command | Python module/object path to a Runner object. The Tilebox command-line tool runs it with uv run python -m tilebox.workflows.runner <module:object>. |
command | One of runner or command | Custom worker command as an array of strings. Use this only when the standard runner object path does not fit your runtime. |
runner or command.
Build section
The[build] section controls which files are included in the release artifact.
| Field | Required | Description |
|---|---|---|
include | Yes | Glob patterns, relative to [workflow].root, for files to include. |
exclude | No | Glob patterns to exclude from the included file set. |
use_gitignore | No | Whether to apply .gitignore. Defaults to true. |
Targets
Targets name reusable cluster groups. They are optional, but useful when the same release should be deployed to a known set of development, staging, or production clusters.Validation rules
The Tilebox command-line tool checks configuration before building or publishing a release:workflow.slugis required.- Exactly one of
workflow.runnerorworkflow.commandis required. build.includemust contain at least one pattern.- Unknown TOML keys fail configuration loading.
- Build paths must stay within the configured workflow root.