53 lines
1.4 KiB
Markdown
53 lines
1.4 KiB
Markdown
---
|
|
title: flow.toml
|
|
description: Manifest fields for codex-flow packages.
|
|
---
|
|
|
|
# flow.toml
|
|
|
|
`flow.toml` declares a flow package and its steps.
|
|
|
|
```toml
|
|
name = "example-flow"
|
|
version = 1
|
|
description = "Short operational purpose."
|
|
|
|
[config]
|
|
commit = true
|
|
|
|
[[steps]]
|
|
name = "do-work"
|
|
runner = "bun"
|
|
script = "exec/do-work.ts"
|
|
timeout_ms = 300000
|
|
|
|
[steps.trigger]
|
|
type = "upstream.release"
|
|
schema = "schemas/upstream-release.schema.json"
|
|
```
|
|
|
|
## Top-level fields
|
|
|
|
| Field | Type | Required | Meaning |
|
|
|-------|------|----------|---------|
|
|
| `name` | string | Yes | Stable flow package name. |
|
|
| `version` | number | Yes | Manifest version for run records and workers. |
|
|
| `description` | string | Yes | Human-readable purpose. |
|
|
| `config` | table | No | Flow-owned configuration passed to steps. |
|
|
|
|
## Step fields
|
|
|
|
| Field | Type | Required | Meaning |
|
|
|-------|------|----------|---------|
|
|
| `name` | string | Yes | Step name within the flow. |
|
|
| `runner` | `"bun"` or `"code-mode"` | Yes | Execution runner. |
|
|
| `script` | string | Yes | Path relative to the flow root. |
|
|
| `timeout_ms` | number | Yes | Step timeout. |
|
|
| `cwd` | string | No | Working directory relative to the flow root. |
|
|
|
|
## Trigger fields
|
|
|
|
| Field | Type | Required | Meaning |
|
|
|-------|------|----------|---------|
|
|
| `type` | string | Yes | `FlowEvent.type` to match. |
|
|
| `schema` | string | Yes | JSON Schema file for `FlowEvent.payload`. |
|