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
27 changes: 1 addition & 26 deletions docs/src/content/docs/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,7 @@ description: Exploring AI-powered repository automation running safely on GitHub
template: splash
tableOfContents: true
hero:
title: |
<div class="experimental-badge-container">
<span class="experimental-badge">RESEARCH PROTOTYPE</span>
</div>
GitHub Agentic Workflows
title: GitHub Agentic Workflows
tagline: <strong>Automate GitHub tasks safely using AI agents—write workflows in plain English, no YAML required.</strong><br>AI agents execute complex GitHub operations like issue triage, PR reviews, and repository maintenance automatically.
actions:
- text: Getting Started
Expand All @@ -21,27 +17,6 @@ import { Card, CardGrid } from '@astrojs/starlight/components';
import FeatureCard from '../../components/FeatureCard.astro';
import FeatureGrid from '../../components/FeatureGrid.astro';

<style>{`
.experimental-badge-container {
display: flex;
justify-content: flex-start;
margin-bottom: 1.25rem;
}

.experimental-badge {
display: inline-block;
padding: 0.375rem 0.875rem;
border: 1px solid rgba(240, 246, 252, 0.15);
border-radius: 2rem;
font-size: 0.6875rem;
font-weight: 600;
letter-spacing: 0.08em;
color: rgba(240, 246, 252, 0.65);
text-transform: uppercase;
background: rgba(240, 246, 252, 0.05);
}
`}</style>

## What are GitHub Agentic Workflows?

GitHub Agentic Workflows allow you to write repository-level AI agent descriptions in plain markdown and run automatically in GitHub Actions. Describe your repository automation goals and execute safely with built-in security controls, having AI make intelligent decisions based on context.
Expand Down
55 changes: 55 additions & 0 deletions pkg/cli/templates/github-agentic-workflows.md
Original file line number Diff line number Diff line change
Expand Up @@ -482,6 +482,17 @@ The YAML frontmatter supports these fields:
target-repo: "owner/repo" # Optional: cross-repository
```
When using `safe-outputs.close-pull-request`, the main job does **not** need `pull-requests: write` permission since PR closing is handled by a separate job with appropriate permissions.
- `mark-pull-request-as-ready-for-review:` - Mark draft PRs as ready for review
```yaml
safe-outputs:
mark-pull-request-as-ready-for-review:
max: 1 # Optional: max operations (default: 1)
target: "*" # Optional: "triggering" (default), "*", or number
required-labels: [automated] # Optional: only mark PRs with these labels
required-title-prefix: "[bot]" # Optional: only mark PRs with this prefix
target-repo: "owner/repo" # Optional: cross-repository
```
When using `safe-outputs.mark-pull-request-as-ready-for-review`, the main job does **not** need `pull-requests: write` permission since marking as ready is handled by a separate job with appropriate permissions.
- `add-labels:` - Safe label addition to issues or PRs
```yaml
safe-outputs:
Expand Down Expand Up @@ -532,6 +543,26 @@ The YAML frontmatter supports these fields:
target-repo: "owner/repo" # Optional: cross-repository
```
Links issues as sub-issues using GitHub's parent-child relationships. Agent output includes `parent_issue_number` and `sub_issue_number`. Use with `create-issue` temporary IDs or existing issue numbers.
- `create-project:` - Create GitHub Projects V2
```yaml
safe-outputs:
create-project:
max: 1 # Optional: max projects (default: 1)
github-token: ${{ secrets.PROJECTS_PAT }} # Optional: token with projects:write
target-owner: "org-or-user" # Optional: owner for created projects
title-prefix: "[ai] " # Optional: prefix for project titles
```
Not supported for cross-repository operations.
- `copy-project:` - Copy GitHub Projects V2
```yaml
safe-outputs:
copy-project:
max: 1 # Optional: max copies (default: 1)
github-token: ${{ secrets.PROJECTS_PAT }} # Optional: token with projects:write
source-project: "https://github.com/orgs/myorg/projects/42" # Optional: source project URL
target-owner: "org-or-user" # Optional: owner for copied project
```
Not supported for cross-repository operations.
- `update-project:` - Manage GitHub Projects boards
```yaml
safe-outputs:
Expand All @@ -551,6 +582,14 @@ The YAML frontmatter supports these fields:
{"type": "update_project", "project": "https://github.com/orgs/myorg/projects/42", "content_type": "draft_issue", "draft_title": "Task title", "draft_body": "Task description", "fields": {"Status": "Todo"}}
```

Not supported for cross-repository operations.
- `create-project-status-update:` - Create GitHub project status updates
```yaml
safe-outputs:
create-project-status-update:
max: 10 # Optional: max status updates (default: 10)
github-token: ${{ secrets.PROJECTS_PAT }} # Optional: token with projects:write
```
Not supported for cross-repository operations.
- `push-to-pull-request-branch:` - Push changes to PR branch
```yaml
Expand Down Expand Up @@ -610,6 +649,13 @@ The YAML frontmatter supports these fields:
max: 50 # Optional: max findings (default: unlimited)
```
Severity levels: error, warning, info, note.
- `autofix-code-scanning-alert:` - Add autofixes to code scanning alerts
```yaml
safe-outputs:
autofix-code-scanning-alert:
max: 10 # Optional: max autofixes (default: 10)
```
Provides automated fixes for code scanning alerts.
- `create-agent-session:` - Create GitHub Copilot agent sessions
```yaml
safe-outputs:
Expand Down Expand Up @@ -663,6 +709,15 @@ The YAML frontmatter supports these fields:
missing-tool:
```
The missing-tool safe-output allows agents to report when they need tools or functionality not currently available. This is automatically enabled by default and helps track feature requests from agents.
- `missing-data:` - Report missing data required to complete tasks (auto-enabled)
```yaml
safe-outputs:
missing-data:
create-issue: true # Optional: create issues for missing data (default: true)
title-prefix: "[missing data]" # Optional: prefix for issue titles
labels: [data-request] # Optional: labels for created issues
```
The missing-data safe-output allows agents to report when required data or information is unavailable. This is automatically enabled by default. When `create-issue` is true, missing data reports create or update GitHub issues for tracking.

**Global Safe Output Configuration:**
- `github-token:` - Custom GitHub token for all safe output jobs
Expand Down