You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/src/content/docs/guides/campaigns.md
+21-1Lines changed: 21 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -272,13 +272,33 @@ gh aw campaign status --json # JSON status output
272
272
gh aw campaign new security-q1-2025 # Scaffold a new campaign spec
273
273
gh aw campaign validate # Validate all campaign specs
274
274
gh aw campaign validate --json # JSON validation report
275
-
gh aw campaign validate --no-strict # Report problems without failing
275
+
gh aw campaign validate --strict=false # Report problems without failing
276
276
```
277
277
278
278
This gives you a centralized, Git-backed catalog of campaigns in the
279
279
repository, aligned with the executable workflows in `.github/workflows/` and
280
280
the data they write into repo-memory.
281
281
282
+
### Compile Integration and Orchestrators
283
+
284
+
Campaign spec files participate in the normal `compile` workflow:
285
+
286
+
- `gh aw compile`automatically validates all `.github/workflows/*.campaign.md` specs before compiling workflows.
287
+
- Validation checks both the spec itself (IDs, tracker labels, lifecycle state, etc.) and that all referenced `workflows` exist in `.github/workflows/`.
288
+
- If any campaign spec has problems, `compile` fails with a `campaign validation failed` error until issues are fixed.
289
+
290
+
For experimentation, you can also enable an **orchestrator workflow** per campaign:
291
+
292
+
```bash wrap
293
+
GH_AW_EXPERIMENTAL_CAMPAIGN_ORCHESTRATOR=1 gh aw compile
294
+
```
295
+
296
+
When this environment variable is set and specs are valid:
297
+
298
+
- Each `<name>.campaign.md` generates an orchestrator markdown workflow named `<name>-campaign.md` next to the spec.
299
+
- The orchestrator is compiled like any other workflow to `<name>-campaign.lock.yml`.
300
+
- This makes campaigns first-class, compilable entry points while keeping specs declarative.
301
+
282
302
### Interactive Campaign Designer
283
303
284
304
For a more guided, conversational experience, this repo also includes a
Copy file name to clipboardExpand all lines: docs/src/content/docs/setup/cli.md
+2Lines changed: 2 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -155,6 +155,8 @@ gh aw compile --strict --zizmor # Strict mode with security scanning
155
155
gh aw compile --validate --strict # Validate schema and enforce strict mode
156
156
```
157
157
158
+
**Campaign specs and orchestrators:** In repositories that define campaign spec files under `.github/workflows/*.campaign.md`, `gh aw compile` first validates those specs (including referenced `workflows`) and fails the compilation if any problems are found. When the environment variable `GH_AW_EXPERIMENTAL_CAMPAIGN_ORCHESTRATOR=1` is set, `compile` also synthesizes an orchestrator workflow for each valid spec (for example, `security-compliance.campaign.md` → `security-compliance-campaign.md`) and compiles it to a corresponding `.lock.yml` file.
159
+
158
160
See [Strict Mode reference](/gh-aw/reference/frontmatter/#strict-mode-strict) for frontmatter configuration and [Security Guide](/gh-aw/guides/security/#strict-mode-validation) for best practices.
0 commit comments