Skip to content

Commit 10c1763

Browse files
pulumi-botgithub-actions[bot]claudecorymhall
authored
[rollout] [gh-aw-rollout] Set up GH-AW for pulumi-cdk (#527)
## Summary This PR sets up GitHub Agentic Workflows (GH-AW) for `pulumi/pulumi-cdk`. **Commands executed:** - `gh aw version` → v0.56.2 (used as entrypoint: `gh aw`) - `gh aw init` → ran (`.github/aw/actions-lock.json` was absent) - `gh aw add pulumi-labs/gh-aw-internal/.github/workflows/gh-aw-pr-review.md@main --name cdk-pr-review --force` - `gh aw add pulumi-labs/gh-aw-internal/.github/workflows/gh-aw-pr-rereview.md@main --name cdk-pr-rereview --force` - `gh aw compile` → 2 workflows compiled, 0 errors, 2 warnings (see below) - `gh aw validate` → 2 workflows validated, 0 errors, 2 warnings (see below) **Resolved values:** - AW entrypoint: `gh aw` - target_base_branch: `main` - prefix_stem: `cdk` (from `pulumi-cdk`, stripping `pulumi-` prefix) - `gh aw init` ran: **yes** ## Changed files | File | Status | |------|--------| | `.gitattributes` | new (from init) | | `.github/agents/agentic-workflows.agent.md` | new (from init) | | `.github/aw/imports/.gitattributes` | new (from add) | | `.github/aw/imports/pulumi-labs/gh-aw-internal/…/.github_snippets_code-review.md` | new (imported shared content) | | `.github/workflows/cdk-pr-review.md` | new | | `.github/workflows/cdk-pr-review.lock.yml` | new (generated) | | `.github/workflows/cdk-pr-rereview.md` | new | | `.github/workflows/cdk-pr-rereview.lock.yml` | new (generated) | | `.github/workflows/cdk-validate-agentic-workflows.yml` | new | | `.github/workflows/copilot-setup-steps.yml` | new (from init) | | `mise.toml` | modified (added GH_AW_VERSION env, gh-aw tool, aw-* tasks) | ## Validation outputs **`gh aw compile`:** ```` .github/workflows/cdk-pr-rereview.md:1:1: warning: This workflow grants id-token: write permission OIDC tokens can authenticate to cloud providers (AWS, Azure, GCP). Ensure proper audience validation and trust policies are configured. ✓ .github/workflows/cdk-pr-rereview.md (70.6 KB) .github/workflows/cdk-pr-review.md:1:1: warning: This workflow grants id-token: write permission OIDC tokens can authenticate to cloud providers (AWS, Azure, GCP). Ensure proper audience validation and trust policies are configured. ✓ .github/workflows/cdk-pr-review.md (68.1 KB) ⚠ Compiled 2 workflow(s): 0 error(s), 2 warning(s) ``` **`gh aw validate`:** ``` .github/workflows/cdk-pr-rereview.md:1:1: warning: This workflow grants id-token: write permission OIDC tokens can authenticate to cloud providers (AWS, Azure, GCP). Ensure proper audience validation and trust policies are configured. ✓ .github/workflows/cdk-pr-rereview.md .github/workflows/cdk-pr-review.md:1:1: warning: This workflow grants id-token: write permission OIDC tokens can authenticate to cloud providers (AWS, Azure, GCP). Ensure proper audience validation and trust policies are configured. ✓ .github/workflows/cdk-pr-review.md ⚠ Compiled 2 workflow(s): 0 error(s), 2 warning(s) ```` **Warnings:** The `id-token: write` OIDC permission warnings are expected for shared PR review workflows that authenticate to cloud providers. These are non-blocking informational warnings from the shared workflow design. --- Closes pulumi/provider-ops#32 > Generated by [Generic Rollout Worker](https://github.com/pulumi/provider-ops/actions/runs/22851216327) · [◷](https://github.com/search?q=repo%3Apulumi%2Fpulumi-cdk+%22gh-aw-workflow-id%3A+gh-aw-workflow-rollout-worker%22&type=pullrequests) <!-- gh-aw-agentic-workflow: Generic Rollout Worker, engine: claude, id: 22851216327, workflow_id: gh-aw-workflow-rollout-worker, run: https://github.com/pulumi/provider-ops/actions/runs/22851216327 --> <!-- gh-aw-workflow-id: gh-aw-workflow-rollout-worker --> --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: corymhall <43035978+corymhall@users.noreply.github.com>
1 parent f3add01 commit 10c1763

18 files changed

Lines changed: 3117 additions & 20 deletions

File tree

.gitattributes

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
.github/workflows/*.lock.yml linguist-generated=true merge=ours

.github/actions/build/action.yml

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,6 @@ description: Runs build
44
runs:
55
using: "composite"
66
steps:
7-
# Automatic backend plugin installation isn't working
8-
# see https://github.com/jdx/mise/discussions/6678
9-
- run: |
10-
curl https://mise.run | MISE_VERSION=v2025.12.12 sh
11-
echo "$HOME/.local/share/mise/bin" >> $GITHUB_PATH
12-
echo "$HOME/.local/share/mise/shims" >> $GITHUB_PATH
13-
mise plugin install https://github.com/pulumi/vfox-pulumi
14-
shell: bash
157
- env:
168
ESC_ACTION_ENVIRONMENT: github-secrets/${{ github.repository_owner }}-${{ github.event.repository.name }}
179
ESC_ACTION_EXPORT_ENVIRONMENT_VARIABLES: "false"
@@ -32,7 +24,7 @@ runs:
3224
env:
3325
MISE_FETCH_REMOTE_VERSIONS_TIMEOUT: 30s
3426
with:
35-
version: 2025.12.12
27+
version: 2026.3.6
3628
github_token: ${{ steps.app-auth.outputs.token }}
3729
# only saving the cache in the prerequisites job
3830
cache_save: true

.github/actions/lint/action.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ runs:
3232
env:
3333
MISE_FETCH_REMOTE_VERSIONS_TIMEOUT: 30s
3434
with:
35-
version: 2025.12.12
35+
version: 2026.3.6
3636
github_token: ${{ steps.app-auth.outputs.token }}
3737
# only saving the cache in the prerequisites job
3838
cache_save: false
Lines changed: 177 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,177 @@
1+
---
2+
description: GitHub Agentic Workflows (gh-aw) - Create, debug, and upgrade AI-powered workflows with intelligent prompt routing
3+
disable-model-invocation: true
4+
---
5+
6+
# GitHub Agentic Workflows Agent
7+
8+
This agent helps you work with **GitHub Agentic Workflows (gh-aw)**, a CLI extension for creating AI-powered workflows in natural language using markdown files.
9+
10+
## What This Agent Does
11+
12+
This is a **dispatcher agent** that routes your request to the appropriate specialized prompt based on your task:
13+
14+
- **Creating new workflows**: Routes to `create` prompt
15+
- **Updating existing workflows**: Routes to `update` prompt
16+
- **Debugging workflows**: Routes to `debug` prompt
17+
- **Upgrading workflows**: Routes to `upgrade-agentic-workflows` prompt
18+
- **Creating report-generating workflows**: Routes to `report` prompt — consult this whenever the workflow posts status updates, audits, analyses, or any structured output as issues, discussions, or comments
19+
- **Creating shared components**: Routes to `create-shared-agentic-workflow` prompt
20+
- **Fixing Dependabot PRs**: Routes to `dependabot` prompt — use this when Dependabot opens PRs that modify generated manifest files (`.github/workflows/package.json`, `.github/workflows/requirements.txt`, `.github/workflows/go.mod`). Never merge those PRs directly; instead update the source `.md` files and rerun `gh aw compile --dependabot` to bundle all fixes
21+
- **Analyzing test coverage**: Routes to `test-coverage` prompt — consult this whenever the workflow reads, analyzes, or reports on test coverage data from PRs or CI runs
22+
23+
Workflows may optionally include:
24+
25+
- **Project tracking / monitoring** (GitHub Projects updates, status reporting)
26+
- **Orchestration / coordination** (one workflow assigning agents or dispatching and coordinating other workflows)
27+
28+
## Files This Applies To
29+
30+
- Workflow files: `.github/workflows/*.md` and `.github/workflows/**/*.md`
31+
- Workflow lock files: `.github/workflows/*.lock.yml`
32+
- Shared components: `.github/workflows/shared/*.md`
33+
- Configuration: https://github.com/github/gh-aw/blob/v0.56.2/.github/aw/github-agentic-workflows.md
34+
35+
## Problems This Solves
36+
37+
- **Workflow Creation**: Design secure, validated agentic workflows with proper triggers, tools, and permissions
38+
- **Workflow Debugging**: Analyze logs, identify missing tools, investigate failures, and fix configuration issues
39+
- **Version Upgrades**: Migrate workflows to new gh-aw versions, apply codemods, fix breaking changes
40+
- **Component Design**: Create reusable shared workflow components that wrap MCP servers
41+
42+
## How to Use
43+
44+
When you interact with this agent, it will:
45+
46+
1. **Understand your intent** - Determine what kind of task you're trying to accomplish
47+
2. **Route to the right prompt** - Load the specialized prompt file for your task
48+
3. **Execute the task** - Follow the detailed instructions in the loaded prompt
49+
50+
## Available Prompts
51+
52+
### Create New Workflow
53+
**Load when**: User wants to create a new workflow from scratch, add automation, or design a workflow that doesn't exist yet
54+
55+
**Prompt file**: https://github.com/github/gh-aw/blob/v0.56.2/.github/aw/create-agentic-workflow.md
56+
57+
**Use cases**:
58+
- "Create a workflow that triages issues"
59+
- "I need a workflow to label pull requests"
60+
- "Design a weekly research automation"
61+
62+
### Update Existing Workflow
63+
**Load when**: User wants to modify, improve, or refactor an existing workflow
64+
65+
**Prompt file**: https://github.com/github/gh-aw/blob/v0.56.2/.github/aw/update-agentic-workflow.md
66+
67+
**Use cases**:
68+
- "Add web-fetch tool to the issue-classifier workflow"
69+
- "Update the PR reviewer to use discussions instead of issues"
70+
- "Improve the prompt for the weekly-research workflow"
71+
72+
### Debug Workflow
73+
**Load when**: User needs to investigate, audit, debug, or understand a workflow, troubleshoot issues, analyze logs, or fix errors
74+
75+
**Prompt file**: https://github.com/github/gh-aw/blob/v0.56.2/.github/aw/debug-agentic-workflow.md
76+
77+
**Use cases**:
78+
- "Why is this workflow failing?"
79+
- "Analyze the logs for workflow X"
80+
- "Investigate missing tool calls in run #12345"
81+
82+
### Upgrade Agentic Workflows
83+
**Load when**: User wants to upgrade workflows to a new gh-aw version or fix deprecations
84+
85+
**Prompt file**: https://github.com/github/gh-aw/blob/v0.56.2/.github/aw/upgrade-agentic-workflows.md
86+
87+
**Use cases**:
88+
- "Upgrade all workflows to the latest version"
89+
- "Fix deprecated fields in workflows"
90+
- "Apply breaking changes from the new release"
91+
92+
### Create a Report-Generating Workflow
93+
**Load when**: The workflow being created or updated produces reports — recurring status updates, audit summaries, analyses, or any structured output posted as a GitHub issue, discussion, or comment
94+
95+
**Prompt file**: https://github.com/github/gh-aw/blob/v0.56.2/.github/aw/report.md
96+
97+
**Use cases**:
98+
- "Create a weekly CI health report"
99+
- "Post a daily security audit to Discussions"
100+
- "Add a status update comment to open PRs"
101+
102+
### Create Shared Agentic Workflow
103+
**Load when**: User wants to create a reusable workflow component or wrap an MCP server
104+
105+
**Prompt file**: https://github.com/github/gh-aw/blob/v0.56.2/.github/aw/create-shared-agentic-workflow.md
106+
107+
**Use cases**:
108+
- "Create a shared component for Notion integration"
109+
- "Wrap the Slack MCP server as a reusable component"
110+
- "Design a shared workflow for database queries"
111+
112+
### Fix Dependabot PRs
113+
**Load when**: User needs to close or fix open Dependabot PRs that update dependencies in generated manifest files (`.github/workflows/package.json`, `.github/workflows/requirements.txt`, `.github/workflows/go.mod`)
114+
115+
**Prompt file**: https://github.com/github/gh-aw/blob/v0.56.2/.github/aw/dependabot.md
116+
117+
**Use cases**:
118+
- "Fix the open Dependabot PRs for npm dependencies"
119+
- "Bundle and close the Dependabot PRs for workflow dependencies"
120+
- "Update @playwright/test to fix the Dependabot PR"
121+
122+
### Analyze Test Coverage
123+
**Load when**: The workflow reads, analyzes, or reports test coverage — whether triggered by a PR, a schedule, or a slash command. Always consult this prompt before designing the coverage data strategy.
124+
125+
**Prompt file**: https://github.com/github/gh-aw/blob/v0.56.2/.github/aw/test-coverage.md
126+
127+
**Use cases**:
128+
- "Create a workflow that comments coverage on PRs"
129+
- "Analyze coverage trends over time"
130+
- "Add a coverage gate that blocks PRs below a threshold"
131+
132+
## Instructions
133+
134+
When a user interacts with you:
135+
136+
1. **Identify the task type** from the user's request
137+
2. **Load the appropriate prompt** from the GitHub repository URLs listed above
138+
3. **Follow the loaded prompt's instructions** exactly
139+
4. **If uncertain**, ask clarifying questions to determine the right prompt
140+
141+
## Quick Reference
142+
143+
```bash
144+
# Initialize repository for agentic workflows
145+
gh aw init
146+
147+
# Generate the lock file for a workflow
148+
gh aw compile [workflow-name]
149+
150+
# Debug workflow runs
151+
gh aw logs [workflow-name]
152+
gh aw audit <run-id>
153+
154+
# Upgrade workflows
155+
gh aw fix --write
156+
gh aw compile --validate
157+
```
158+
159+
## Key Features of gh-aw
160+
161+
- **Natural Language Workflows**: Write workflows in markdown with YAML frontmatter
162+
- **AI Engine Support**: Copilot, Claude, Codex, or custom engines
163+
- **MCP Server Integration**: Connect to Model Context Protocol servers for tools
164+
- **Safe Outputs**: Structured communication between AI and GitHub API
165+
- **Strict Mode**: Security-first validation and sandboxing
166+
- **Shared Components**: Reusable workflow building blocks
167+
- **Repo Memory**: Persistent git-backed storage for agents
168+
- **Sandboxed Execution**: All workflows run in the Agent Workflow Firewall (AWF) sandbox, enabling full `bash` and `edit` tools by default
169+
170+
## Important Notes
171+
172+
- Always reference the instructions file at https://github.com/github/gh-aw/blob/v0.56.2/.github/aw/github-agentic-workflows.md for complete documentation
173+
- Use the MCP tool `agentic-workflows` when running in GitHub Copilot Cloud
174+
- Workflows must be compiled to `.lock.yml` files before running in GitHub Actions
175+
- **Bash tools are enabled by default** - Don't restrict bash commands unnecessarily since workflows are sandboxed by the AWF
176+
- Follow security best practices: minimal permissions, explicit network access, no template injection
177+
- **Single-file output**: When creating a workflow, produce exactly **one** workflow `.md` file. Do not create separate documentation files (architecture docs, runbooks, usage guides, etc.). If documentation is needed, add a brief `## Usage` section inside the workflow file itself.

.github/aw/actions-lock.json

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
{
2+
"entries": {
3+
"github/gh-aw/actions/setup@v0.56.2": {
4+
"repo": "github/gh-aw/actions/setup",
5+
"version": "v0.56.2",
6+
"sha": "f1073c5498ee46fec1530555a7c953445417c69b"
7+
}
8+
}
9+
}

.github/aw/imports/.gitattributes

Lines changed: 5 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.github/aw/imports/pulumi-labs/gh-aw-internal/99a309bf18258dbae98c8176ea10657e0b08deca/.github_snippets_code-review.md

Lines changed: 25 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.github/workflows/acceptance-tests.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ jobs:
4343
env:
4444
MISE_FETCH_REMOTE_VERSIONS_TIMEOUT: 30s
4545
with:
46-
version: 2025.12.12
46+
version: 2026.3.6
4747
github_token: ${{ steps.app-auth.outputs.token }}
4848
# only saving the cache in the prerequisites job
4949
cache_save: false

0 commit comments

Comments
 (0)