diff --git a/.github/aw/github-agentic-workflows.md b/.github/aw/github-agentic-workflows.md index f350e65b03..aeb7321327 100644 --- a/.github/aw/github-agentic-workflows.md +++ b/.github/aw/github-agentic-workflows.md @@ -323,6 +323,19 @@ The YAML frontmatter supports these fields: - `web-search:` - Web search tools - `bash:` - Shell command tools - `playwright:` - Browser automation tools + - `serena:` - AI-powered code intelligence with language service integration + - Array format: `["go", "typescript"]` - Enable specific languages + - Object format for advanced configuration: + ```yaml + serena: + version: "latest" + languages: + go: + version: "1.21" + typescript: + version: "5.0" + ``` + - Supported languages: `go`, `typescript`, `python`, `java`, `rust`, `csharp` - Custom tool names for MCP servers - **`safe-outputs:`** - Safe output processing configuration (preferred way to handle GitHub API write operations) @@ -662,6 +675,41 @@ The YAML frontmatter supports these fields: target-repo: "my-org/main-repo" ``` With `[]`, references like `#123` become `` `#123` `` and `other/repo#456` becomes `` `other/repo#456` ``, preventing timeline clutter while preserving information. + - `messages:` - Custom message templates for safe-output footer and notification messages (object) + - Available placeholders: `{workflow_name}`, `{run_url}`, `{triggering_number}`, `{workflow_source}`, `{workflow_source_url}`, `{operation}`, `{event_type}`, `{status}` + - Message types: + - `footer:` - Custom footer for AI-generated content + - `footer-install:` - Installation instructions appended to footer + - `run-started:` - Workflow activation notification + - `run-success:` - Successful completion message + - `run-failure:` - Failure notification message + - `detection-failure:` - Detection job failure message + - `staged-title:` - Staged mode preview title + - `staged-description:` - Staged mode preview description + - Example: + ```yaml + safe-outputs: + messages: + footer: "> Generated by [{workflow_name}]({run_url})" + run-started: "[{workflow_name}]({run_url}) started processing this {event_type}." + ``` + - `mentions:` - Configuration for @mention filtering in safe outputs (boolean or object) + - Boolean format: `false` - Always escape mentions; `true` - Always allow (error in strict mode) + - Object format for fine-grained control: + ```yaml + safe-outputs: + mentions: + allow-team-members: true # Allow repository collaborators (default: true) + allow-context: true # Allow mentions from event context (default: true) + allowed: [copilot, user1] # Always allow specific users/bots + max: 50 # Maximum mentions per message (default: 50) + ``` + - Team members include collaborators with any permission level (excluding bots unless explicitly listed) + - Context mentions include issue/PR authors, assignees, and commenters + - `runs-on:` - Runner specification for all safe-outputs jobs (string) + - Defaults to `ubuntu-slim` (1-vCPU runner) + - Examples: `ubuntu-latest`, `windows-latest`, `self-hosted` + - Applies to activation, create-issue, add-comment, and other safe-output jobs - **`safe-inputs:`** - Define custom lightweight MCP tools as JavaScript, shell, or Python scripts (object) - Tools mounted in MCP server with access to specified secrets