Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions .github/aw/create-agentic-workflow.md
Original file line number Diff line number Diff line change
Expand Up @@ -828,6 +828,16 @@ Based on the parsed requirements, determine:
- **No action needed** → `safe-outputs: noop:` - **IMPORTANT**: When the agent successfully completes but determines nothing needs to be done, use `noop` to signal completion. This is critical for transparency—it shows the agent worked AND that no output was necessary.
- **Daily reporting workflows** (creates issues/discussions): Add `close-older-issues: true` or `close-older-discussions: true` to prevent clutter
- **Daily improver workflows** (creates PRs): Add `skip-if-match:` with a filter to avoid opening duplicate PRs (e.g., `'is:pr is:open in:title "[workflow-name]"'`)
- **Scheduled workflows that create issues**: Add `skip-if-match:` to avoid creating duplicate issues on every run. Pair with `expires:` so resolved issues are cleaned up automatically. Example:
```yaml
on:
Copy link

Copilot AI Apr 26, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The example for “Scheduled workflows that create issues” shows on: with only skip-if-match, but no actual trigger (e.g., schedule:). Since skip-if-match is a modifier rather than a trigger, copying this example would produce invalid frontmatter / a compile error. Add a schedule: line (and optionally show it combined with skip-if-match) to make the example runnable.

Suggested change
on:
on:
schedule:
- cron: '0 9 * * *'

Copilot uses AI. Check for mistakes.
skip-if-match: 'is:issue is:open in:title "[workflow-name]"'
safe-outputs:
create-issue:
title-prefix: "[workflow-name] "
expires: 7 # auto-close after 7 days
Comment on lines +834 to +838
Copy link

Copilot AI Apr 26, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In the example, title-prefix includes a trailing space ("[workflow-name] ") but the skip-if-match query searches for "[workflow-name]" without the trailing space. This still matches, but it’s less precise and inconsistent with the more exact scheduled-workflow example in github-agentic-workflows.md. Consider aligning the query string with the exact prefix (including the trailing space) to reduce accidental matches.

Copilot uses AI. Check for mistakes.
```
Without `skip-if-match`, a scheduled workflow that creates issues will open a new issue on every run even if an identical issue is already open.
- **New workflows** (when creating, not updating): Consider enabling `missing-tool: create-issue: true` to automatically track missing tools as GitHub issues that expire after 1 week
5. **Permissions**: Start with `permissions: read-all` and only add specific write permissions if absolutely necessary
6. **Repository Access Roles**: Consider who should be able to trigger the workflow:
Expand Down
14 changes: 14 additions & 0 deletions .github/aw/github-agentic-workflows.md

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading