Skip to content

Releases: github/gh-aw

v0.49.3

23 Feb 07:17
cb678b4

Choose a tag to compare

🌟 Release Highlights

This release brings a new workflow control option to quiet bot comments, improved engine icons, and reliability fixes for download scripts — plus two community-requested improvements.

✨ What's New

  • Silence activation comments — The new activation-comments: false frontmatter flag lets you disable the bot comments gh-aw posts when activating or falling back on a workflow. Useful for keeping issue/PR comment threads clean. (#17834)
  • Engine icons for Claude, Codex & Gemini — Local icon assets are now bundled for Claude, Codex, and Gemini alongside a Gemini author entry, giving workflow UIs a consistent visual identity across all supported engines. (#17837)
  • Community contributor celebration in release highlights — The release highlight generator now cross-references community-labeled issues with merged PRs and explicitly calls out the issue authors. (#17842)

🐛 Bug Fixes & Improvements

  • web-fetch MCP fix — The web-fetch MCP server was incorrectly generating a container format instead of the expected command/args structure, preventing it from initializing. (#17822)
  • Duplicate code detector — The detector now correctly emits a noop safe output when no duplication is found, avoiding spurious failures. (#17836)
  • Retry on transient download failures — Install scripts now pass --retry 3 --retry-delay 5 to curl when downloading the Copilot CLI and AWF binary, automatically recovering from the occasional 502 on public runners. (#17841)

📚 Documentation

  • Clarified that CLAUDE_CODE_OAUTH_TOKEN is not a supported authentication method. (#17835)
  • Updated reference documentation with the latest features. (#17830)

🌍 Community Contributions

A huge thank you to the community members who reported issues that were resolved in this release:


For complete details, see CHANGELOG.

Generated by Release


What's Changed

  • Fix smoke-copilot golden file to include --browser-arg --no-sandbox in Playwright entrypointArgs by @Copilot in #17819
  • [jsweep] Clean close_discussion.cjs by @github-actions[bot] in #17824
  • fix: web-fetch MCP server generates container format instead of command/args by @Copilot in #17822
  • [docs] Update documentation for features from 2026-02-23 by @github-actions[bot] in #17830
  • docs: clarify CLAUDE_CODE_OAUTH_TOKEN is not supported by @Copilot in #17835
  • Add Gemini author and local icons for Claude, Codex, and Gemini by @Copilot in #17837
  • fix(duplicate-code-detector): require noop when no duplication found by @Copilot in #17836
  • feat(release): celebrate community issue authors in release highlights by @Copilot in #17842
  • feat: add activation-comments to disable activation/fallback bot comments by @Copilot in #17834
  • Add --retry 3 with delay to curl downloads to handle transient 502s by @Copilot in #17841

Full Changelog: v0.49.2...v0.49.3

v0.49.2

23 Feb 03:03
1c8368c

Choose a tag to compare

🌟 Release Highlights

This release brings new workflow privacy controls, improved CI integration, key bug fixes in Playwright and safe-outputs conformance checks, and token-efficiency improvements in the safe-outputs prompt system.

✨ What's New

  • Workflow privacy via private frontmatter (#17801) — Workflows marked with private: true are now hidden from the gh aw add command, giving teams a clean way to keep internal-only workflows out of the public catalogue.

  • CI trigger token support for PR and branch pushes (#17803) — Workflows can now supply a dedicated token when triggering CI on PRs and branches, enabling richer automation pipelines that require elevated or scoped credentials.

🐛 Bug Fixes & Improvements

  • Playwright MCP: Chromium sandbox disabled for localhost access (#17808) — Fixed a configuration issue that prevented Playwright MCP from accessing localhost-hosted services inside the runner container.

  • Safe-outputs conformance: reduce SEC-003 false positives (#17790) — The conformance checker was incorrectly flagging valid safe-output patterns as SEC-003 violations; this is now resolved, reducing noise in security reports.

  • Safe-outputs prompt: XML wrapping & template extraction (#17769) — The safe-outputs prompt has been refactored to use dedicated template files and XML-wrapped content, improving token efficiency and maintainability without changing observable behaviour.

🔧 Internal

  • Shared components extracted for Serena Go analysis tooling and Copilot PR analysis base setup (#17797, #17798), improving reuse across workflows.
  • Developer specifications consolidated into a single instructions file (#17794).

For complete details, see CHANGELOG.

Generated by Release


What's Changed

  • Refactor safe outputs prompt: extract all content to template files, wrap in XML, optimize for token usage by @Copilot in #17769
  • Fix SEC-003 false positives in safe-outputs conformance check by @Copilot in #17790
  • [instructions] Sync github-agentic-workflows.md with release v0.49.1 by @github-actions[bot] in #17792
  • [docs] Consolidate developer specifications into instructions file (2026-02-23) by @github-actions[bot] in #17794
  • Extract Serena Go Analysis Tool Configuration into shared component by @Copilot in #17798
  • Extract Copilot PR Analysis Base Setup into shared component by @Copilot in #17797
  • 🔔 Add CI trigger token support for PR and branch pushes by @dsyme in #17803
  • [q] fix: disable Chromium sandbox in Playwright MCP to allow localhost access by @github-actions[bot] in #17808
  • Add private frontmatter field to block add command by @Copilot in #17801

Full Changelog: v0.49.1...v0.49.2

v0.49.1

22 Feb 23:14

Choose a tag to compare

🌟 Release Highlights

This patch release delivers targeted security hardening, reliability improvements, and documentation polish—keeping your agentic workflows running smoothly and securely.

🔒 Security

  • Cross-repository allowlist validation (#17771): Flagged workflow handlers now enforce strict cross-repository allowlist checks, preventing unintended cross-repo access.

🐛 Bug Fixes

  • add-wizard imports resolution (#17765): Frontmatter imports: dependencies are now fetched locally during add-wizard, fixing resolution failures in offline or restricted environments.
  • Safe outputs expiry (#17737): All create-discussion safe output jobs across workflows now correctly set expires: 1d, avoiding stale output retention.
  • Parser property ordering (#17754): Strict unknown-property ordering in the parser is now stable, eliminating non-deterministic compilation output.

📚 Documentation

  • Quick Start guide hierarchy (#17745): Fixed heading levels in the Quick Start guide for improved navigation and accessibility.
  • Feature docs update (#17741): Documentation updated to reflect the latest features from 2026-02-22.

✨ Improvements

  • Archie workflow messaging (#17746): Workflow status messages from the Archie agent now use a more professional, consistent tone.

For complete details, see CHANGELOG.

Generated by Release


What's Changed

  • Set expires: 1d for create-discussion safe outputs across all workflows by @Copilot in #17737
  • [docs] Update documentation for features from 2026-02-22 by @github-actions[bot] in #17741
  • Improve test quality for pkg/parser/import_cache_test.go by @Copilot in #17742
  • fix: correct heading hierarchy in Quick Start guide by @Copilot in #17745
  • Elevate professional tone in Archie workflow messages by @Copilot in #17746
  • parser: stabilize strict unknown-property ordering by @davidahmann in #17754
  • fix: fetch frontmatter imports: dependencies locally during add-wizard by @Copilot in #17765
  • refactor(workflow): Priority 1 semantic clustering — shared mount validation, copilot function relocation by @Copilot in #17768
  • [code-simplifier] parser: add doc comment and assertion message to normalizeAdditionalPropertyList by @github-actions[bot] in #17772
  • fix(IMP-003): move generateCustomJobToolDefinition to safe_outputs_config_generation.go by @Copilot in #17770
  • SEC-005: Add cross-repository allowlist validation to flagged handlers by @Copilot in #17771

Full Changelog: v0.49.0...v0.49.1

v0.49.0

22 Feb 15:18
0eb518a

Choose a tag to compare

🌟 Release Highlights

This release focuses on security hardening, safe outputs flexibility, and code quality improvements — making workflows more robust and configurable.

🔒 Security Hardening

Critical security fixes and hardening across the codebase:

  • Shell injection fix in upload_assets.cjs — closes an incomplete fix from a prior commit (#17736)
  • Hardened exec.Command invocations for cross-platform compatibility and security across the codebase (#17729)

✨ What's New

  • Templatable boolean & integer fields in safe outputs — workflow authors can now use template expressions for boolean flags and integer max fields, enabling dynamic configuration without recompilation (#17653, #17667, #17694)
  • expires codemod — a migration helper that automatically converts integer expires values to the new day-string format, making upgrades seamless (#17695)
  • Configurable bot trigger neutralizationsafe-outputs.max-bot-mentions controls how many bot trigger references are preserved vs. escaped, with smarter handling for already-quoted entries (#17689)
  • Source links in GitHub MCP tools report — the MCP tools report now includes direct links to source definitions, improving discoverability (#17709)
  • MCP Gateway updated to v0.1.5 (#17697)

🐛 Bug Fixes & Improvements

  • Fixed base64 executable not found on Windows during gh aw update (#17720)
  • Resolved 22 actionlint expression errors caused by missing needs: declarations in 4 workflows (#17681)
  • Fixed ci-doctor to pre-download logs and artifacts, applying generic error heuristics to reduce token usage (#17719)
  • Replaced curl | sh uv install with pinned astral-sh/setup-uv action for more reliable CI (#17688)

🔧 Internal

  • Enabled 16 additional Go linters + modernize and intrange linters with all issues resolved (#17714, #17705)
  • Normalized report formatting across multiple internal workflows (#17727, #17698)

For complete details, see CHANGELOG.

Generated by Release


What's Changed

  • [docs] Update dictation skill instructions by @github-actions[bot] in #17665
  • Convert boolean safe output fields to templatable bools by @Copilot in #17653
  • Add templatable integer support for safe output max fields by @Copilot in #17667
  • Fix SC2129: use grouped redirect for prompt construction in compiler template by @Copilot in #17687
  • Replace curl | sh uv install with pinned astral-sh/setup-uv action by @Copilot in #17688
  • Update safe outputs spec with templatable boolean and integer fields by @Copilot in #17694
  • Normalize report formatting for step-name-alignment and bot-detection workflows by @Copilot in #17698
  • Add codemod to migrate expires integer values to day-string format by @Copilot in #17695
  • fix: rename "Upload Assets to Orphaned Branch" step to "Push assets" across 23 workflows by @Copilot in #17696
  • Fix missing needs: declarations causing 22 actionlint expression errors in 4 workflows by @Copilot in #17681
  • Add modernize and intrange linters and fix all issues by @Copilot in #17705
  • Update MCP Gateway to v0.1.5 by @Copilot in #17697
  • Add source links to GitHub MCP tools report by @Copilot in #17709
  • fix(ci-doctor): pre-download logs and artifacts, apply generic error heuristics to reduce token usage by @Copilot in #17719
  • Fix base64 executable not found on Windows in gh aw update by @Copilot in #17720
  • neutralizeBotTriggers: allow first n references unchanged then escape excess, skip already-quoted entries, configurable via safe-outputs.max-bot-mentions by @Copilot in #17689
  • Normalize report formatting in org-health-report and daily-safe-outputs-conformance workflows by @Copilot in #17727
  • fix: use strings.Cut to resolve stringscut lint violation in known_needs_expressions by @Copilot in #17728
  • Enable 16 additional Go linters and fix all reported issues by @Copilot in #17714
  • Review and harden all exec.Command invocations for cross-platform compatibility and security by @Copilot in #17729
  • fix: close shell injection in upload_assets.cjs (incomplete fix from d07e64c) by @Copilot in #17736

Full Changelog: v0.48.4...v0.49.0

v0.48.4

22 Feb 05:54
24676b2

Choose a tag to compare

🌟 Release Highlights

This release promotes Google Gemini CLI to general availability, improves validation error quality, and consolidates network configuration with a migration codemod for Playwright users.

⚠️ Breaking Changes

  • Playwright allowed_domains/allowed_hosts removed — These fields have been moved from tools.playwright to the unified network.allowed configuration. Run the migration codemod to update your workflows automatically:
    gh aw fix --write
    The codemod playwright-allowed-domains-migration handles the conversion. (#17629)

✨ What's New

  • Google Gemini CLI is now GA — The Gemini engine graduates from experimental status and is ready for production workflows. Gemini gains /tmp/gh-aw/ read access outside the workspace, neutral tool mappings for settings compatibility, and improved diagnostics (DEBUG env var support, error log artifacts). (#17656, #17642, #17612, #17558)

  • Repo-memory branch scoped by workflow ID — Default repo-memory branches are now qualified with the workflow ID, preventing collisions when multiple workflows share the same repository memory. (#17657)

  • Smarter schema validation errors — Validation failures now include caret (^) pointers to the exact problem location, plain-English constraint descriptions, and contextual examples — making it much easier to fix frontmatter issues at a glance. (#17551)

  • Parent author allowed in add_comment — Workflows can now mention the author of the parent issue, PR, or discussion when posting comments, enabling more targeted notifications. (#17628)

🐛 Bug Fixes & Improvements

  • Audit surfaces pre-agent step errorsgh aw audit now reports errors that occur before the agent executes (e.g., setup failures), so investigations no longer require manual log digging. (#17623)
  • Standardized error codes in safe-output handlers — All safe output handlers now emit structured error codes (e.g., USE-001) for consistent error tracking and automation. (#17557)
  • PR triage scoped to fork PRs — Triage workflows now correctly restrict processing to fork-originated pull requests, reducing noise on internal PRs. (#17576)
  • Preserve expression-based draft boolean — The create-pull-request handler no longer drops expression values for the draft field during config compilation. (#17597)
  • Status comments enabled on all smoke workflows — All smoke-* workflows now post status comments, improving end-to-end validation coverage. (#17566)

📚 Documentation

  • Workflow Editors reference page — A new Workflow Editors page consolidates all available editors including the Agentic Prompt Generator. (#17570, #17574)
  • Supported runners table — The frontmatter reference now includes a table of supported runner types. (#17361)
  • Create Workflows page enhanced — Scenario-based AstroTabs examples replace the single prompt, giving new users concrete starting points. (#17560)

For complete details, see CHANGELOG.

Generated by Release


What's Changed

  • Fix schema validation error quality: caret pointer, duplicate path prefix, plain-English constraints, contextual examples by @Copilot in #17551
  • fix(workflows): add Python network preset to shared/trending-charts-simple.md by @Copilot in #17554
  • docs: replace single prompt with AstroTabs scenario examples on Create Workflows page by @Copilot in #17560
  • Enable status-comment on all smoke-* workflows by @Copilot in #17566
  • docs: convert Compiler Playground sidebar link into Workflow Editors reference page by @Copilot in #17570
  • feat(triage): restrict PR triage to fork PRs only by @Copilot in #17576
  • docs: add Agentic Prompt Generator to reference/editors page by @Copilot in #17574
  • Improve Gemini engine diagnostics: DEBUG env var, error log artifacts, and remove model fallback by @Copilot in #17558
  • Copilot/weekly workflow editor checks by @pelikhan in #17585
  • Copilot/update firewall access editors by @pelikhan in #17599
  • fix(USE-001): add standardized error codes to all safe output handlers by @Copilot in #17557
  • Copilot/update parser log javascript by @pelikhan in #17605
  • [instructions] Sync github-agentic-workflows.md with v0.40.1 by @github-actions[bot] in #17622
  • Allow parent issue/PR/discussion author as an allowed mention in add_comment by @Copilot in #17628
  • [docs] docs: unbloat dispatch-ops by condensing bullet lists and thin sections by @github-actions[bot] in #17626
  • [jsweep] Clean add_copilot_reviewer.cjs by @github-actions[bot] in #17641
  • fix(audit): surface pre-agent step errors when agent never executed by @Copilot in #17623
  • [docs] Update documentation for features from 2026-02-22 by @github-actions[bot] in #17647
  • Refactor: Extract shared missing issue handler logic into missing_issue_helpers.cjs by @Copilot in #17644
  • fix: preserve expression-based draft boolean in create-pull-request handler config by @Copilot in #17597
  • Remove tools.playwright allowed_domains/allowed_hosts; add codemod to migrate to network.allowed by @Copilot in #17629
  • feat(gemini): fix /tmp/ access and add neutral tool mapping for Gemini CLI settings by @Copilot in #17642
  • docs: add supported runners table to frontmatter reference by @Mossaka in #17361
  • Promote Google Gemini CLI from experimental to GA by @Copilot in #17656
  • Qualify default repo-memory branch by workflow ID by @Copilot in #17657

Full Changelog: v0.48.3...v0.48.4

v0.48.3

21 Feb 19:53
972ffaf

Choose a tag to compare

🌟 Release Highlights

This release focuses on reliability improvements to the safe-outputs pipeline and workflow tooling, ensuring failures surface cleanly and findings remain actionable.

🐛 Bug Fixes & Improvements

  • Fail-fast mode for code-push safe outputs (#17543): When push_to_pull_request_branch or create_pull_request fails, the safe-output pipeline now stops processing subsequent outputs immediately. Previously, downstream steps like add_comment would continue running and produce misleading success-looking messages — this is now fixed.

  • Workflow normalizer: single consolidated issue (#17540): The workflow-normalizer was creating parent/sub-issue hierarchies (group: true), which prevented each run's findings from being standalone actionable reports. Findings are now consolidated into a single issue per run.

🔧 Internal Improvements

  • Repo memory prompt generation refactored to use runtime template files, aligning it with all other built-in prompt sections (#17544).
  • Workflow functions relocated to their correct domain files for improved maintainability (#17541).

For complete details, see CHANGELOG.

Generated by Release


What's Changed

  • fix: workflow-normalizer: remove grouping, consolidate findings in single issue by @Copilot in #17540
  • refactor(workflow): relocate functions to correct domain files by @Copilot in #17541
  • Refactor repo memory prompt generation to use template files by @Copilot in #17544
  • Add fail-fast mode for code-push safe outputs by @Copilot in #17543

Full Changelog: v0.48.2...v0.48.3

v0.48.2

21 Feb 17:50
50ab544

Choose a tag to compare

🌟 Release Highlights

This release brings meaningful improvements to the workflow authoring experience — a smarter gh aw new wizard, better safe-output tooling, and a wave of reliability fixes across MCP, activation, and compiler-generated scripts.

✨ What's New

  • Smarter gh aw new command (#17450): The new-workflow wizard now auto-detects toolsets, generates dynamic safe-outputs, sets read-only permissions by default, and detects repo network access — reducing boilerplate and manual configuration.
  • Improved gh aw add wizard (#17517): The add wizard now includes a merge prompt and dirty-check guard, preventing accidental overwrites when your workflow files have uncommitted changes.
  • update-issue gains title-prefix support (#17512): Safe-output update-issue operations can now prepend a prefix to the issue title, enabling richer automation patterns.
  • Auto-inject create-issue safe output (#17418): Workflows with no non-builtin safe outputs automatically get a create-issue safe output injected, so results are always surfaced somewhere actionable.
  • Enhanced scout command (#17429, #17435): The scout command now accepts additional inputs and has an increased timeout for deep research workflows.
  • Contribution-check report expiration (#17458): Contribution check reports now expire after 1 day, keeping issue trackers clean.

🐛 Bug Fixes & Improvements

  • Activation job correctness (#17499, #17498): Fixed invalid needs.pre_activation.outputs.* references in activation jobs for workflows without a pre_activation step, and resolved matched_command being undefined in pre_activation outputs — eliminating actionlint failures.
  • PR fallback comment (#17530): Fixed fallback comment creation on PRs when there is no activation comment, ensuring workflow results always reach the right thread.
  • update-pull-request respects footer: false (#17525): The update-pull-request safe output now correctly omits the footer when footer: false is set.
  • Safe-output schema validation (#17524): Parser now reports all safe-output schema failures with precise per-field line and column locations, making configuration errors much easier to diagnose.
  • Shell quoting in compiled scripts (#17500): Fixed missing quotes around $GITHUB_OUTPUT in compiler-generated shell scripts (SC2086), preventing word-splitting issues in edge cases.
  • MCP protocol compliance (#17419): The check_mcp_servers.sh script now implements the proper MCP handshake (ping → initialize → session ID → tools/list), improving reliability of MCP server health checks.
  • Assign-to-agent key mismatch (#17396): Resolved a key mismatch (name vs default-agent) in the assign-to-agent handler that could cause agent assignment to silently fail.
  • Go toolchain downloads (#17453): Added the Go ecosystem to the CLI version checker's network allowlist, fixing toolchain download failures in restricted environments.
  • Multi-repo wildcard support (#17400): Refactored isRepoAllowed() into sanitize_content_core for consistent wildcard matching across multi-repo configurations.

📚 Documentation

  • Fixed typos in the AI Engines reference (#17492)
  • Corrected nested code fence formatting in the HTTP MCP servers authentication example (#17447)
  • Added missing required sections to 7 safe output type reference pages (#17417)

For complete details, see CHANGELOG.

Generated by Release


What's Changed

  • docs: add missing required sections to 7 safe output types (REQ-002) by @Copilot in #17417
  • docs: hyphenate Ops pattern slugs and update cross-references by @mnkiefer in #17422
  • Enhance scout command with additional inputs by @mnkiefer in #17429
  • Increase scout timeout for deep research by @mnkiefer in #17435
  • Auto-inject create-issue safe output when no non-builtin safe outputs are configured by @Copilot in #17418
  • Add daily-rendering-scripts-verifier agentic workflow by @Copilot in #17421
  • [actions] Update GitHub Actions versions - 2026-02-21 by @github-actions[bot] in #17439
  • refactor: use isRepoAllowed() in sanitize_content_core for consistent multi-repo wildcard support by @Copilot in #17400
  • docs: fix nested code fence in HTTP MCP servers authentication example by @Copilot in #17447
  • fix: resolve assign-to-agent key mismatch (name vs default-agent) by @Copilot in #17396
  • Relax brittle description assertion in live MCP registry integration test by @Copilot in #17449
  • fix(cli-version-checker): add go ecosystem to network allowlist for toolchain downloads by @Copilot in #17453
  • Update CLI versions: Claude Code 2.1.50, Copilot CLI 0.0.414 by @Copilot in #17448
  • fix: implement proper MCP protocol (ping + initialize + session ID + tools/list) in check_mcp_servers.sh by @Copilot in #17419
  • feat(contribution-check): add 1d expiration to report issues by @Copilot in #17458
  • Add missing operations to safe-outputs schema $comment by @Copilot in #17461
  • Remove unused git-fallback dead code from download_workflow.go by @Copilot in #17475
  • Improve gh aw new command: toolsets, dynamic safe-outputs, read-only permissions, repo network detection by @Copilot in #17450
  • Constrain agentic-workflows agent to single-file output by @Copilot in #17479
  • Replace %v with %w for error wrapping in fmt.Errorf calls by @Copilot in #17472
  • Update wasm golden fixtures for Copilot CLI 0.0.414 by @Copilot in #17478
  • Add error return to MCPConfigProvider.RenderMCPConfig interface by @Copilot in #17476
  • Add grouped section headers to gh aw logs help text examples by @Copilot in #17491
  • Fix typos in AI Engines reference documentation by @Copilot in #17492
  • fix: align step names across smoke-gemini, layout-spec-maintainer, prompt-clustering-analysis, and mergefest workflows by @Copilot in #17487
  • doc(skills): Add GitHub API limitations section to github-mcp-server skill by @Copilot in #17502
  • 🧙 Improve add wizard with merge prompt and dirty check by @dsyme in #17517
  • .NET: Add missing new .slnx solution file by @Saibamen in #17516
  • 🔧 Refactor update command and move audit to upgrade by @dsyme in #17519
  • Fix SC2086: quote $GITHUB_OUTPUT in compiler-generated shell scripts by @Copilot in #17500
  • Fix invalid needs.pre_activation.outputs.* references in activation job for workflows without pre_activation by @Copilot in #17499
  • Add title-prefix support to update-issue safe output by @Copilot in #17512
  • Add security architecture slide to slides/index.md by @Copilot in #17501
  • Remove unused checkExtensionUpdate to fix golangci-lint failure by @Copilot in #17526
  • 🔧 Fix fallback comment creation on PR when no activation comment by @dsyme in #17530
  • fix(parser): report all safe-output schema failures with per-field line/column locations by @Copilot in #17524
  • Fix actionlint matched_command undefined in pre_activation outputs by @Copilot in #17498
  • fix: update-pull-request honors footer: false by @Copilot in #17525

New Contributors

Full Changelog: v0.48.1...v0.48.2

v0.48.1

21 Feb 04:48
26b6572

Choose a tag to compare

🌟 Release Highlights

A focused polish release improving reliability and presentation quality across the board.

🐛 Bug Fixes & Improvements

  • More robust summary formatting — Summaries now use 6-backtick fences, preventing escaping breakage when nested code blocks appear in agent-generated output. (#17384)
  • Consistent step names — "Set up Go", "Install UV", and "Upload source" step names are now aligned across all workflows, making run logs easier to read and correlate. (#17386)

📚 Documentation

  • Multiple PR creation support documented — The docs now cover the ability to create multiple pull requests in a single workflow run, helping users take full advantage of this capability. (#17388)

🎨 Presentation

  • Improved slide contrast — Slide code blocks now use a light theme for better readability during projection. (#17385)

For complete details, see CHANGELOG.

Generated by Release


What's Changed

  • slides: use light code block theme for projection contrast by @Copilot in #17385
  • [docs] Update documentation for multiple PR creation support by @github-actions[bot] in #17388
  • fix(step-names): align Set up Go, Install UV, and Upload source inconsistencies by @Copilot in #17386
  • fix: use 6-backtick fences in summaries to prevent escaping breakage by @Copilot in #17384

Full Changelog: v0.48.0...v0.48.1

v0.48.0

21 Feb 03:45
8a0dfa2

Choose a tag to compare

🌟 Release Highlights

This release focuses on reliability and polish — fixing several long-standing bugs in multi-PR workflows and agent assignment, reducing log noise, and sharpening the developer experience.

🐛 Bug Fixes & Improvements

  • Multi-PR runs now work correctly — When an agent called create-pull-request or push-to-pull-request-branch multiple times in a single run, only the last patch survived due to a shared /tmp/gh-aw/aw.patch overwrite. Each invocation now gets its own isolated patch file. (#17284)
  • base-branch in assign-to-agent is now effective — The field was previously injected as a natural language hint rather than using the baseRef GraphQL field, meaning it had no real effect. It now uses the authoritative API mechanism. (#17347)
  • Better network inference for language-specific repos — Agentic authoring on repos using ecosystems like .NET previously defaulted to network: defaults, omitting package registries (e.g. NuGet) and causing dotnet restore failures. Network configuration is now inferred more accurately from the repo's ecosystem. (#17373)
  • Quieter logs for runtime-import workflows — Front matter in shared markdown files triggered a core.warning on every import despite being expected behavior. These are now debug-level logs only. (#17374)

✨ Developer Experience

  • Cleaner gh aw logs --help — Orchestrator-only guidance (YAML snippets, project board tracking) has been removed from the human-facing help text, making the flags and examples much easier to find. (#17376)
  • Report formatting standardized — Four workflows (pr-triage-agent, and others) now use consistent h3+ headers and <details> progressive disclosure, keeping reports readable and collapsible. (#17377)
  • Smoke test and daily report issues auto-labelled — Issues created by automation workflows now receive automation and testing labels at creation time, keeping the unlabelled issue backlog near zero. (#17375)

For complete details, see CHANGELOG.

Generated by Release


What's Changed

  • Support multiple create-pull-request and push-to-pull-request-branch in a single run by @Copilot in #17284
  • Lower front matter warning to debug log in runtime import by @Copilot in #17374
  • Normalize report formatting across four workflows (h3+ headers, progressive disclosure) by @Copilot in #17377
  • Trim orchestrator-only guidance from gh aw logs --help by @Copilot in #17376
  • Auto-apply labels on smoke test and daily report issue creation by @Copilot in #17375
  • fix: improve network ecosystem inference in agentic authoring by @Copilot in #17373
  • fix: use GraphQL baseRef field for base-branch in assign-to-agent by @Copilot in #17347

Full Changelog: v0.47.6...v0.48.0

v0.47.6

21 Feb 02:26
3b6ab54

Choose a tag to compare

🌟 Release Highlights

This release focuses on expression replacement reliability, ARM64 platform support, and improved model routing — making workflows more robust across a wider range of environments.

✨ What's New

  • ARM64 Support (#17331) — Copilot smoke tests now run on ubuntu-24.04-arm, validating workflow compatibility on ARM64 runners.
  • Native Model Routing (#17296) — Model selection is now routed to engines via native CLI environment variables, improving compatibility with engine-specific model configuration.
  • JavaScript Global Object Shim (#17353) — Core global object shim implemented for JavaScript files, enabling better runtime compatibility in sandboxed environments.
  • Improved Output Preview (#17315) — Replaced the Copilot --share flag with a JS log parser for output preview, providing more reliable workflow output visibility.

🐛 Bug Fixes & Improvements

  • Expression Replacement Robustness (#17330, #17332) — Fixed two critical bugs: expressions are now replaced in all occurrences (not just the first), and a double-substitution bug in runtime import expression replacement has been resolved.
  • Cache Memory Fix (#17349) — GH_AW_WORKFLOW_ID_SANITIZED is now correctly set in the update_cache_memory job environment, preventing cache key mismatches.
  • GFM HTML in Issue Updates (#17346) — Inline HTML tags (e.g., <details>, <summary>) are now preserved when updating issue bodies via safe-outputs.
  • Base Ref Handling (#17370) — Workflows now correctly use github.base_ref || github.ref_name for consistent branch targeting across push and pull_request events.
  • Maintenance Release Tag (#17316) — Fixed agentics-maintenance incorrectly ignoring --action-tag when running in release mode.
  • System Prompt Efficiency (#17314) — System prompts for /session and /md are now compressed and XML-wrapped, reducing token usage; multi-cache placeholder bug also resolved.
  • Safe Outputs Auto-Targeting (#17350) — Clarified behavior for add_comment, add_labels, and add_reviewer when no workflow context is available, preventing silent failures.

📚 Documentation

  • Developer documentation consolidated (v2.6) and network.md trimmed by 21% for clarity.
  • Slides updated from "Research Preview" to Technical Preview status.

For complete details, see CHANGELOG.

Generated by Release


What's Changed

  • Route model to engine via native CLI environment variables by @Copilot in #17296
  • Fix agentics-maintenance ignoring --action-tag in release mode by @Copilot in #17316
  • [instructions] Sync github-agentic-workflows.md with v0.40.1 by @github-actions[bot] in #17319
  • [docs] Consolidate developer documentation v2.6 (2026-02-20) by @github-actions[bot] in #17321
  • [docs] docs: remove bloat from network.md (21% line reduction) by @github-actions[bot] in #17327
  • Copilot/update smoke labels by @pelikhan in #17329
  • Compress and XML-wrap system prompts for /session and /md; fix multi-cache placeholder bug by @Copilot in #17314
  • feat: add Copilot ARM64 smoke test on ubuntu-24.04-arm by @Mossaka in #17331
  • Remove Copilot --share flag; use JS log parser for output preview by @Copilot in #17315
  • [safeoutputs] Clarify auto-targeting behavior for add_comment, add_labels, and add_reviewer when no workflow context exists by @Copilot in #17350
  • fix: add GH_AW_WORKFLOW_ID_SANITIZED to update_cache_memory job env by @Copilot in #17349
  • Allow GFM inline HTML tags in update-issue body sanitization by @Copilot in #17346
  • refactor: eliminate duplicate utilities and simplify engine domain API by @Copilot in #17348
  • [WIP] Implement core global object shim for JavaScript files by @Copilot in #17353
  • Apply documentation site CSS styles to slides by @Copilot in #17367
  • 🔧 Fix base ref to use github.base_ref || github.ref_name in all workflows by @dsyme in #17370
  • Update slides: Research Preview → Technical Preview by @Copilot in #17369
  • fix: improve slides contrast and font sizes by @Copilot in #17372
  • 🔧 Fix expression replacement to handle all occurrences by @dsyme in #17330

Full Changelog: v0.47.5...v0.47.6