Skip to content

Commit aec6157

Browse files
jamesadevineCopilot
andcommitted
feat!: replace create wizard with AI-first onboarding
BREAKING CHANGE: The create subcommand has been removed. Use ado-aw init instead. - Remove create subcommand and src/create.rs (1125 lines) - Add init subcommand that generates a Copilot dispatcher agent - Add update and debug prompt files for AI-guided workflow authoring - Enhance create prompt with AI-first modes - Rewrite dispatcher agent for ado-aw - Update README with AI-first Quick Start and Prompts section - Update AGENTS.md architecture and CLI reference Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent cc3355f commit aec6157

10 files changed

Lines changed: 1048 additions & 1291 deletions

File tree

Lines changed: 47 additions & 127 deletions
Original file line numberDiff line numberDiff line change
@@ -1,178 +1,98 @@
11
---
2-
description: GitHub Agentic Workflows (gh-aw) - Create, debug, and upgrade AI-powered workflows with intelligent prompt routing
2+
description: Azure DevOps Agentic Pipelines (ado-aw) - Create, update, and debug AI-powered ADO pipelines with intelligent prompt routing
33
disable-model-invocation: true
44
---
55

6-
# GitHub Agentic Workflows Agent
6+
# ADO Agentic Pipelines Agent
77

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.
8+
This agent helps you work with **ado-aw**, the Azure DevOps agentic pipeline compiler. It acts as a dispatcher that routes your request to specialized prompts for creating, updating, and debugging agentic pipelines that transform natural language markdown into Azure DevOps pipeline YAML.
99

1010
## What This Agent Does
1111

1212
This is a **dispatcher agent** that routes your request to the appropriate specialized prompt based on your task:
1313

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)
14+
- **Creating new agentic pipelines**: Routes to `create` prompt
15+
- **Updating existing pipelines**: Routes to `update` prompt
16+
- **Debugging failing pipelines**: Routes to `debug` prompt
2717

2818
## Files This Applies To
2919

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.68.1/.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
20+
- Agent source files: `agents/*.md`
21+
- Compiled pipelines: `.pipelines/*.yml`
22+
- Prompt files: `prompts/*.md`
4923

5024
## Available Prompts
5125

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.68.1/.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.68.1/.github/aw/update-agentic-workflow.md
26+
### Create New Agentic Pipeline
6627

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.68.1/.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
28+
**Load when**: User wants to create a new agentic pipeline from scratch
8429

85-
**Prompt file**: https://github.com/github/gh-aw/blob/v0.68.1/.github/aw/upgrade-agentic-workflows.md
30+
**Prompt file**: https://raw.githubusercontent.com/githubnext/ado-aw/main/prompts/create-ado-agentic-workflow.md
8631

8732
**Use cases**:
88-
- "Upgrade all workflows to the latest version"
89-
- "Fix deprecated fields in workflows"
90-
- "Apply breaking changes from the new release"
33+
- "Create an agentic pipeline that reviews PRs weekly"
34+
- "I need a pipeline that triages work items"
35+
- "Design a scheduled code quality scanner"
9136

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
37+
### Update Existing Pipeline
9438

95-
**Prompt file**: https://github.com/github/gh-aw/blob/v0.68.1/.github/aw/report.md
39+
**Load when**: User wants to modify an existing agent workflow
9640

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.68.1/.github/aw/create-shared-agentic-workflow.md
41+
**Prompt file**: https://raw.githubusercontent.com/githubnext/ado-aw/main/prompts/update-ado-agentic-workflow.md
10642

10743
**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"
44+
- "Add the Azure DevOps MCP to my pipeline"
45+
- "Change the schedule to weekly"
46+
- "Add a new safe output for work item creation"
11147

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.68.1/.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"
48+
### Debug Failing Pipeline
12149

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.
50+
**Load when**: User needs to troubleshoot a failing pipeline
12451

125-
**Prompt file**: https://github.com/github/gh-aw/blob/v0.68.1/.github/aw/test-coverage.md
52+
**Prompt file**: https://raw.githubusercontent.com/githubnext/ado-aw/main/prompts/debug-ado-agentic-workflow.md
12653

12754
**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"
55+
- "Why is my agentic pipeline failing?"
56+
- "The agent can't reach the MCP server"
57+
- "Safe outputs aren't being processed"
13158

13259
## Instructions
13360

13461
When a user interacts with you:
13562

13663
1. **Identify the task type** from the user's request
137-
2. **Load the appropriate prompt** from the GitHub repository URLs listed above
64+
2. **Load the appropriate prompt** from the URLs listed above
13865
3. **Follow the loaded prompt's instructions** exactly
13966
4. **If uncertain**, ask clarifying questions to determine the right prompt
14067

14168
## Quick Reference
14269

14370
```bash
144-
# Initialize repository for agentic workflows
145-
gh aw init
71+
# Initialize a repo for AI-first pipeline authoring
72+
ado-aw init
14673

147-
# Generate the lock file for a workflow
148-
gh aw compile [workflow-name]
74+
# Compile an agent file to pipeline YAML
75+
ado-aw compile agents/my-agent.md -o .pipelines/my-agent.yml
14976

150-
# Debug workflow runs
151-
gh aw logs [workflow-name]
152-
gh aw audit <run-id>
77+
# Recompile all detected pipelines
78+
ado-aw compile
15379

154-
# Upgrade workflows
155-
gh aw fix --write
156-
gh aw compile --validate
80+
# Verify pipeline matches source
81+
ado-aw check .pipelines/my-agent.yml
15782
```
15883

159-
## Key Features of gh-aw
84+
## Key Features of ado-aw
16085

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
86+
- **Natural Language Pipelines**: Write pipelines in markdown with YAML frontmatter
87+
- **3-Stage Pipeline**: Agent → Threat Analysis → Safe Output Execution
88+
- **Network Isolation**: AWF (Agentic Workflow Firewall) provides L7 domain whitelisting
89+
- **MCP Gateway**: Tool routing via MCPG for SafeOutputs and custom MCP servers
90+
- **Safe Outputs**: Controlled write operations (create PRs, work items, wiki pages, etc.)
91+
- **Persistent Agent Memory**: Cache memory across pipeline runs via artifacts
16992

17093
## Important Notes
17194

172-
- Always reference the instructions file at https://github.com/github/gh-aw/blob/v0.68.1/.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-
- **Network configuration**: Use ecosystem identifiers (`node`, `python`, `go`, etc.) or explicit FQDNs in `network.allowed`. Bare shorthands like `npm` or `pypi` are **not** valid. See https://github.com/github/gh-aw/blob/v0.68.1/.github/aw/network.md for the full list of valid ecosystem identifiers and domain patterns.
178-
- **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.
95+
- Agent files must be compiled with `ado-aw compile` after frontmatter changes
96+
- Markdown body changes don't require recompilation
97+
- Follow security best practices: minimal permissions, explicit `network.allow`, scoped service connections
98+
- Reference full docs at the [AGENTS.md](../../AGENTS.md) in this repo

AGENTS.md

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ Alongside the correctly generated pipeline yaml, an agent file is generated from
2727
│ │ ├── standalone.rs # Standalone pipeline compiler
2828
│ │ ├── onees.rs # 1ES Pipeline Template compiler
2929
│ │ └── types.rs # Front matter grammar and types
30-
│ ├── create.rs # Interactive agent creation wizard
30+
│ ├── init.rs # Repository initialization for AI-first authoring
3131
│ ├── execute.rs # Stage 2 safe output execution
3232
│ ├── fuzzy_schedule.rs # Fuzzy schedule parsing
3333
│ ├── logging.rs # File-based logging infrastructure
@@ -907,10 +907,11 @@ Reserved for future use. Currently replaced with an empty string.
907907

908908
Global flags (apply to all subcommands): `--verbose, -v` (enable info-level logging), `--debug, -d` (enable debug-level logging, implies verbose)
909909

910-
- `create` - Interactively create a new agent markdown file
911-
- `--output, -o <path>` - Output directory for the generated file (defaults to current directory)
912-
- Guides you through: name, description, engine selection, schedule, workspace, repositories, checkout, and MCPs
913-
- The generated file includes a placeholder for agent instructions that you edit directly
910+
- `init` - Initialize a repository for AI-first agentic pipeline authoring
911+
- `--path <path>` - Target directory (defaults to current directory)
912+
- `--force` - Overwrite existing agent file
913+
- Creates `.github/agents/ado-aw.agent.md` — a Copilot dispatcher agent that routes to specialized prompts for creating, updating, and debugging agentic pipelines
914+
- The agent auto-downloads the ado-aw compiler and handles the full lifecycle (create → compile → check)
914915
- `compile [<path>]` - Compile a markdown file to Azure DevOps pipeline YAML. If no path is given, auto-discovers and recompiles all detected agentic pipelines in the current directory.
915916
- `--output, -o <path>` - Optional output path for generated YAML (only valid when a path is provided)
916917
- `check <pipeline>` - Verify that a compiled pipeline matches its source markdown

README.md

Lines changed: 49 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ pipelines that run AI agents in network-isolated sandboxes.
66

77
Inspired by [GitHub Agentic Workflows (gh-aw)](https://github.com/githubnext/gh-aw).
88

9-
> **If you are an AI agent** tasked with creating an ado-aw workflow, read [`prompts/create-ado-agentic-workflow.md`](prompts/create-ado-agentic-workflow.md) for step-by-step instructions on authoring a workflow file.
9+
> **If you are an AI agent**, use the specialized prompts in [`prompts/`](prompts/) for step-by-step guidance: [create](prompts/create-ado-agentic-workflow.md) · [update](prompts/update-ado-agentic-workflow.md) · [debug](prompts/debug-ado-agentic-workflow.md)
1010
1111
---
1212

@@ -47,25 +47,32 @@ or build from source:
4747
cargo build --release
4848
```
4949

50-
### 2. Create an Agent
51-
52-
Use the interactive wizard to scaffold a new agent file:
50+
### 2. Initialize Your Repository
5351

5452
```bash
55-
ado-aw create -o agents/
53+
ado-aw init
54+
```
55+
56+
This creates a Copilot agent at `.github/agents/ado-aw.agent.md` that helps you create, update, and debug agentic pipelines. The agent automatically downloads the ado-aw compiler and handles compilation.
57+
58+
### 3. Create an Agent with AI
59+
60+
Ask your coding agent (Copilot, Claude, Codex) to create a workflow:
61+
5662
```
63+
Create an ADO agentic workflow using
64+
https://raw.githubusercontent.com/githubnext/ado-aw/main/prompts/create-ado-agentic-workflow.md
5765
58-
The wizard walks you through:
66+
The purpose of the workflow is to check for outdated dependencies weekly
67+
and open PRs to update them.
68+
```
5969

60-
- **Name & description** — human-readable identity for the agent
61-
- **Model** — AI engine (`claude-opus-4.5`, `claude-sonnet-4.5`, `gpt-5.2-codex`, `gemini-3-pro-preview`, etc.)
62-
- **Schedule** — when the agent runs, using [fuzzy schedule syntax](#schedule-syntax)
63-
- **Workspace**`root` or `repo` working directory
64-
- **Repositories** — additional repos the agent can access
65-
- **MCP servers** — tool integrations (ADO, Kusto, IcM, etc.)
66-
- **Permissions** — ARM service connections for ADO access
70+
Or if you've run `ado-aw init`, simply ask your AI agent:
71+
```
72+
Create an agentic pipeline that checks for outdated dependencies and opens PRs
73+
```
6774

68-
This generates a markdown file like:
75+
The AI will generate a markdown file like:
6976

7077
```markdown
7178
---
@@ -95,7 +102,7 @@ dependency, update it to the latest stable version and create a pull
95102
request with a clear description of what changed and why.
96103
```
97104

98-
### 3. Compile to a Pipeline
105+
### 4. Compile to a Pipeline
99106

100107
```bash
101108
ado-aw compile agents/dependency-updater.md -o .pipelines/dependency-updater.yml
@@ -105,7 +112,7 @@ This generates a complete Azure DevOps pipeline YAML file. The compiler also
105112
copies the agent markdown body into `agents/dependency-updater.md` in the output
106113
tree so it's available at runtime.
107114

108-
### 4. Verify (CI Check)
115+
### 5. Verify (CI Check)
109116

110117
Ensure pipelines stay in sync with their source:
111118

@@ -397,7 +404,7 @@ network:
397404
ado-aw [OPTIONS] <COMMAND>
398405

399406
Commands:
400-
create Create a new agent markdown file interactively
407+
init Initialize a repository for AI-first agentic pipeline authoring
401408
compile Compile markdown to pipeline definition
402409
check Verify a compiled pipeline matches its source
403410
mcp Run as an MCP server (safe outputs)
@@ -413,6 +420,31 @@ Options:
413420
414421
---
415422
423+
## Prompts & Skill Files
424+
425+
ado-aw provides specialized prompt files that guide AI agents through common tasks. Use these with any coding agent (Copilot, Claude, Codex, etc.):
426+
427+
| Task | Prompt URL | Description |
428+
|------|-----------|-------------|
429+
| Create a workflow | [create-ado-agentic-workflow.md](prompts/create-ado-agentic-workflow.md) | Step-by-step guide for creating a new agentic pipeline from scratch |
430+
| Update a workflow | [update-ado-agentic-workflow.md](prompts/update-ado-agentic-workflow.md) | Guide for modifying existing agent workflows |
431+
| Debug a pipeline | [debug-ado-agentic-workflow.md](prompts/debug-ado-agentic-workflow.md) | Troubleshoot failing agentic pipelines |
432+
433+
### Using Prompts with Your AI Agent
434+
435+
Paste the raw URL into your coding agent's chat:
436+
437+
```text
438+
Create an ADO agentic workflow using
439+
https://raw.githubusercontent.com/githubnext/ado-aw/main/prompts/create-ado-agentic-workflow.md
440+
441+
The purpose of the workflow is to <describe what you want>
442+
```
443+
444+
The AI agent will fetch the prompt, follow its instructions, and create a complete workflow file for you.
445+
446+
---
447+
416448
## Development
417449

418450
```bash

0 commit comments

Comments
 (0)