Releases: github/gh-aw
v0.51.8
π Release Highlights
This release delivers a notable breaking change with a smooth migration path, a quality-of-life CLI improvement, and enhanced traceability in generated workflow outputs.
β οΈ Breaking Changes
app:frontmatter key renamed togithub-app:β The GitHub App token configuration key has been renamed for clarity. A codemod is included to migrate your existing workflows automatically. Rungh aw updateto apply the migration. (#19295)
β¨ What's New
--no-compileflag forupdateandupgradeβ Skip the recompilation step when updating or upgrading workflows, giving you faster iteration when you want to defer compilation. (#19325)- History links in generated footers β Issues, pull requests, and discussions created by agentic workflows now include a
β·history link in their footer. Clicking it opens a pre-filtered GitHub search showing all items generated by that workflow, making it easy to audit workflow output at a glance. (#19321)
π Documentation
- Added a cache-memory filename safety warning to the workflow authoring guide β filenames with colons (e.g. ISO 8601 timestamps) break artifact uploads on Windows runners. (#19326)
- Added an explicit GitHub MCP requirement warning for all engine types in the workflow creation guide β clarifies that the Copilot coding agent cannot access
api.github.comdirectly and must use the GitHub MCP server. (#19327) - General documentation refresh covering features released on 2026-03-03. (#19330)
For complete details, see CHANGELOG.
Generated by Release
What's Changed
- Rename
app:togithub-app:with codemod by @Copilot in #19295 - Add cache-memory filename safety warning to create-agentic-workflow.md by @Copilot in #19326
- Add explicit GitHub MCP requirement warning for all engines in create-agentic-workflow.md by @Copilot in #19327
- Add --no-compile flag to update and upgrade commands by @Copilot in #19325
- [docs] Update documentation for features from 2026-03-03 by @github-actions[bot] in #19330
- Add history link to generated footers for issues, PRs, and discussions by @Copilot in #19321
- Delete zombie test files from pkg/workflow/ (batch 1 of 2) by @Copilot in #19334
- chore: delete zombie test files from pkg/workflow/ (batch 2 of 2) by @Copilot in #19335
Full Changelog: v0.51.7...v0.51.8
v0.51.7
π Release Highlights
This release strengthens cross-repository workflow capabilities with flexible checkout fetch options and improved authentication, while delivering meaningful reliability fixes across safe-inputs, safe-outputs, and the gh aw status command.
β¨ What's New
-
Flexible checkout fetch refs β The
checkout:config now accepts afetch:option to retrieve additional Git refs afteractions/checkout. Usefetch: ["*"]for all branches,fetch: ["refs/pulls/open/*"]for all open PR branches, or specify exact patterns. Agents are also given clearer context about available branches and fetch depth. This is especially useful for scheduled workflows that need to work on open pull-request branches. -
Enhanced checkout authentication β
checkout:now supportsgithub-token:(replacing the deprecatedtoken:) and a newapp:object for GitHub App-based authentication (mutually exclusive withgithub-token). This makes it easier to authenticate against third-party repositories with App credentials. -
app:renamed togithub-app:β The workflow frontmatter fieldapp:has been renamed togithub-app:for clarity. A codemod is available viagh aw fix --write(add-comment-github-app-rename) to migrate existing workflows automatically. The oldapp:field remains backward-compatible. -
Agent timeout detection β When a GitHub Actions job times out (
timed_outconclusion), the failure handler now detects this case and reports it in the failure issue/comment with a frontmatter hint, rather than silently skipping the event.
π Bug Fixes & Improvements
- Cross-repo
create_pull_requestfix β Theconfig.jsonconsumed by the MCP server was missingtarget-repoand other cross-repo fields, causing cross-repository PR creation to fail. Now resolved. - Safe-inputs MCP error diagnostics β JSON-RPC error codes are now correct and stdout/stderr are included in safe-inputs MCP handler error responses, making failures much easier to debug.
gh aw statusreliability β The compiled-status check now uses hash comparison instead of file modification times, preventing false "needs recompile" reports aftergit checkout.- Serena tools now load correctly β
hasMCPConfig()now recognizes Serena'slanguages:config key, so Serena tools are available in both Claude and Copilot engine workflows. - Cross-repo attribution URL fix β Attribution URLs in safe-outputs handlers for cross-repo operations now point to the correct repository.
- Sentry MCP config β
SENTRY_HOSTnow has a fallback default so the MCP Inspector Agent no longer fails to start when the env var is absent.
π Community Contributions
A huge thank you to the community members who reported issues that were resolved in this release:
@dsymefor Cross-repo push-to-pull-request-branch doesn't have access to correct repo contents (#19219)
For complete details, see CHANGELOG.
Generated by Release
What's Changed
- fix: remove unused
buildCanonicalFrontmatterfunction by @Copilot in #19244 - chore: remove dead functions (phase 8) β parser import system by @dsyme in #19246
- [dead-code] chore: remove dead functions β 6 functions removed by @github-actions[bot] in #19257
- [code-simplifier] refactor: simplify frontmatter_hash.go after dead-code removal (#19244) by @github-actions[bot] in #19261
- Add
fetchoption tocheckout:for cross-repo branch access by @Copilot in #19220 - [instructions] Sync github-agentic-workflows.md with v0.40.1 by @github-actions[bot] in #19278
- chore: remove dead functions (phase 9) β output job builders by @dsyme in #19287
- [docs] docs: remove repetitive bullet lists from custom-agent-for-aw by @github-actions[bot] in #19289
- π Add
fetchoption andgithub-token/appauth to checkout config by @dsyme in #19281 - Fix missing
target-repoinconfig.jsonfor cross-repocreate_pull_requestby @Copilot in #19284 - fix: Serena tools not loaded β add serena to agent tool permission lists by @Copilot in #19238
- fix: keep SENTRY_HOST with fallback default in sentry MCP config by @Copilot in #19285
- Fix status command: replace mtime-based compiled detection with hash comparison by @Copilot in #19280
- docs: update DEADCODE.md β document completion of dead code removal by @dsyme in #19290
- Remove unused
issueReportingJobParamsstruct to fix lint-go CI failure by @Copilot in #19296 - Fix cross-repo attribution URL and improve update diagnostics in safe-outputs handlers by @Copilot in #19282
- fix: correct JSON-RPC error codes and include stdout/stderr in safe-inputs MCP handler errors by @Copilot in #19300
- feat: detect agent timeout and report it with frontmatter hint in failure issue/comment by @Copilot in #19307
- Replace inline runUrl constructions with buildWorkflowRunUrl helper by @Copilot in #19302
- Remove zombie skipped test functions from pkg/cli/ test files by @Copilot in #19312
- Improve test quality: migrate action_reference_test.go to testify by @Copilot in #19310
- Resolve FIXME-skipped tests in compiler_expression_size_test.go by @Copilot in #19311
- refactor: eliminate cross-package duplicate functions via shared utilities by @Copilot in #19309
- Remove copilot-requests feature flag from smoke-copilot workflow by @Copilot in #19316
- [jsweep] Clean substitute_placeholders.cjs by @github-actions[bot] in #19315
Full Changelog: v0.51.6...v0.51.7
v0.51.6
π Release Highlights
This release sharpens CI inspection capabilities, fixes a critical workflow isolation bug in close-older-issues, and continues an ongoing codebase cleanup pass to reduce complexity and improve maintainability.
β¨ What's New
required_statefield ingh aw checks --jsonβ The JSON output fromgh aw checksnow includes arequired_statefield that reflects only required CI checks, filtering out optional third-party deployment statuses. This resolves a long-standing issue where non-required statuses could cause auto-merge gating to block unnecessarily. (#19161)
π Bug Fixes & Improvements
close-older-issuesno longer crosses workflow boundaries β Fixed a bug whereclose-older-issuescould inadvertently close issues opened by a different calling workflow. Each workflow now correctly scopes its issue closure to its own context. (#19200)gh aw auditreturns absolute log paths β Thelogs_pathfield in audit responses now always returns an absolute path, preventing failures when the working directory differs from the log location. (#19163)- CLI help text consistency β Improved help text accuracy for
codemods list,--repeatsemantics,disablebehavior, andproject newformatting to reduce confusion. (#19230) - Report formatting normalized β
ci-coachandauto-triage-issuesworkflows now produce consistently formatted reports. (#19228)
π Documentation
- Documentation updated to reflect features introduced through 2026-03-02, including glossary improvements. (#19165, #19192)
π Community Contributions
A huge thank you to the community members who reported issues that were resolved in this release:
@strawgatefor close-older-issues closes issues from different calling workflows (#19172)@samuelkahessayforgh aw checks --jsoncollapses optional third-party failures into top-level state (#19158)@samuelkahessayfor Auto-merge gating has no way to ignore non-required third-party deployment statuses (#19020)
For complete details, see CHANGELOG.
Generated by Release
What's Changed
- Detect
triggers:keyword misuse in compile with actionable error by @Copilot in #19142 - [docs] Update documentation for features from 2026-03-02 by @github-actions[bot] in #19165
- [specs] Update layout specification - 2026-03-02 by @github-actions[bot] in #19174
- Fix daily-performance-summary: switch engine from codex to copilot and sanitize xpia.md by @Copilot in #19164
- fix(audit): return absolute path for logs_path in audit response by @Copilot in #19163
- Add
required_statetogh aw checks --jsonto isolate CI verdict from optional third-party commit statuses by @Copilot in #19161 - [docs] Update glossary - weekly full scan by @github-actions[bot] in #19192
- fix: remove unused git helper functions causing lint-go CI failure by @Copilot in #19189
- chore: update github.com/modelcontextprotocol/go-sdk v1.3.1 β v1.4.0 by @Copilot in #19203
- feat: update architecture diagram workflow to maintain scratchpad/architecture.md by @Copilot in #19212
- ci: skip go mod download on cache hit for test and integration jobs by @Copilot in #19226
- chore: update github.com/securego/gosec/v2 from v2.23.0 to v2.24.7 by @Copilot in #19217
- fix: normalize report formatting in ci-coach and auto-triage-issues workflows by @Copilot in #19228
- chore: remove dead functions (phase 5) β CLI git helpers by @dsyme in #19231
- Fix CLI help text consistency: codemods list, --repeat semantics, disable behavior, project new formatting by @Copilot in #19230
- chore: remove dead functions (phase 6) β parser frontmatter by @dsyme in #19232
- [file-diet] Refactor
compiler_activation_jobs.go(1052 lines) into focused modules by @Copilot in #19229 - fix: prevent close-older-issues from closing issues across different calling workflows by @Copilot in #19200
- chore: remove dead functions (phase 7) β parser URL & schema by @dsyme in #19233
- rename: "ci: trigger CI checks" β "ci: trigger checks" by @Copilot in #19236
Full Changelog: v0.51.5...v0.51.6
v0.51.5
π Release Highlights
This release focuses on security hardening, improved developer experience, and better error messaging β making workflows safer by default and easier to author correctly.
β¨ What's New
-
GitHub MCP server is now read-only by default β The
dangerous-permissions-writefeature flag has been removed; GitHub MCP access is permanently enforced as read-only. This removes an entire class of accidental write-permission exposure. Workflows usingread-only: falsewill now receive a clear validation error. (#19092) -
github.event_nameis now an allowed expression β You can now safely reference$\{\{ github.event_name }}in workflow prompts, consistent with othergithub.*context properties. (#19121) -
gh aw addandgh aw add-wizardare now separate commands β Theaddcommand is always non-interactive;--create-pull-requestrequires an interactive terminal with confirmation. A new dedicatedadd-wizardcommand handles the interactive workflow with its own--pushflag. This gives cleaner, non-overlapping flag interfaces for both use cases. (#19117) -
safe-output-projectsrenamed tosafe-output-custom-tokensβ The setup input now accurately reflects its broader scope: any per-handlergithub-token, not just project handlers. Update your workflow configurations accordingly. (#19156) -
Better compile errors for
triggers:misuse β Usingtriggers:instead ofon:in workflow frontmatter now produces a clear, actionable error at compile time rather than silently treating the workflow as a shared import. (#19142)
π Bug Fixes & Improvements
- Clean
/tmp/gh-aw/on each setup run β The setup script now removes and recreates the temporary directory before each run, preventing stale state from affecting subsequent workflow executions. (#19122)
π Documentation
- New FAQ entry: disabling GitHub references to prevent backlinks
- New FAQ entry: using workflows as repository rulesets
π Community Contributions
A huge thank you to the community members who reported issues that were resolved in this release:
@dsymefor github.event_name should be an allowed expression (#19120)
For complete details, see CHANGELOG.
Generated by Release
What's Changed
- Add
github.event_nameto AllowedExpressions by @Copilot in #19121 - [WIP] Remove entire /tmp/gh-aw/ folder before setup by @Copilot in #19122
- [WIP] add command: remove --push flag, require interactive confirmation for --create-pull-request, split add/add-wizard by @Copilot in #19117
- [q] save architecture diagram to scratchpad/architecture.md by @github-actions[bot] in #19132
- docs: add FAQ entry on disabling GitHub references to prevent backlinks by @Copilot in #19135
- docs: add FAQ entry for workflows used as repository rulesets by @Copilot in #19131
- [docs] docs: remove bullet-list bloat from ephemerals guide by @github-actions[bot] in #19141
- [docs] Consolidate architecture diagram and guard policies into dev.md (v3.4) by @github-actions[bot] in #19138
- [instructions] Sync github-agentic-workflows.md with v0.40.1 by @github-actions[bot] in #19137
- Enforce readonly access to GitHub MCP server; remove dangerous-permissions-write feature flag by @Copilot in #19092
- [WIP] Add smoke tests for cross-repo PR creation and updates by @dsyme in #19127
- π Rename safe-output-projects to safe-output-custom-tokens by @dsyme in #19156
Full Changelog: v0.51.4...v0.51.5
v0.51.4
π Release Highlights
This release focuses on security hardening, codebase health, and early multi-repository PR support β driven largely by automated agentic workflows improving themselves.
π Security Fix
- Serena local mode removed due to supply chain risk β
start_serena_server.shfetched and executed unversioned code from the tip of an external repository at runtime. The unpinned execution path has been removed; only Docker container mode is supported for Serena going forward. (#19072)
β¨ What's New
- Multi-repository PR support (preview) β Initial groundwork for cross-repo PR operations, including improved slug validation and updated allowed-repos error handling. (#18599)
- Daily dead code removal workflow β A new agentic workflow runs
deadcodeanalysis daily, selects batches of unreachable Go functions, and opens PRs to remove them β keeping the codebase lean automatically. (#19111) - GitHub MCP toolsets updated to v2.1 β The GitHub MCP toolsets mapping is now in sync with the latest upstream source, ensuring workflows have access to the most current GitHub tools. (#19058)
π Bug Fixes & Improvements
- Removed duplicate JS dead code β
safe_output_unified_handler_manager.cjsduplicatedHANDLER_MAPfromsafe_output_handler_manager.cjsand was never used in production. Removing it eliminates potential confusion and reduces maintenance surface. (#19068) - Consolidated reporting guidelines β Inline reporting guidelines duplicated across 33+ workflows have been replaced with references to the shared
reporting.md, making future updates a single-file change. (#19079)
π Documentation
- Self-healing documentation workflow corrected outdated MCP registry URL (
v0βv0.1) and other stale references. (#19101)
π Community Contributions
A huge thank you to the community members who reported issues that were resolved in this release:
@dsymefor Duplicate HANDLER_MAP in JS code - safe_output_unified_handler_manager.cjs is dead code (#19067)
For complete details, see CHANGELOG.
Generated by Release
What's Changed
- Remove inline reporting guidelines from 33 workflows duplicating shared/reporting.md by @Copilot in #19079
- Remove
start_serena_server.shand Serena local mode (supply chain risk) by @Copilot in #19072 - [mcp-tools] Update GitHub MCP toolsets mapping with latest tools from source (v2.1) by @github-actions[bot] in #19058
- Remove dead code: safe_output_unified_handler_manager.cjs by @Copilot in #19068
- Beginnings of multi repo PR support by @dsyme in #18599
- [docs] Self-healing documentation fixes from issue analysis - 2026-03-01 by @github-actions[bot] in #19101
- Add daily dead code removal workflow by @Copilot in #19111
- [code-simplifier] refactor: fix orphaned comments in schema_validation.go by @github-actions[bot] in #19100
- [log] Add debug logging to parser, workflow, and cli packages by @github-actions[bot] in #19110
Full Changelog: v0.51.3...v0.51.4
v0.51.3
π Release Highlights
This release delivers a new safe-output capability, two community-reported bug fixes, and a round of reliability improvements across the workflow runtime.
β¨ What's New
set-issue-typesafe output β Workflows can now programmatically set the issue type on GitHub issues via safe outputs, expanding the toolkit for issue-management automation. (#18989)
π Bug Fixes & Improvements
-
Mixed-trigger concurrency groups fixed β Workflows with both event-based and
workflow_dispatchtriggers were collapsing all manual runs into a single degenerate concurrency group, causing queuing and cancellation issues. A universal|| github.run_idfallback now ensures each run gets a unique group. (#19036) -
Malformed
#aw_*references now warn instead of silently passing through β Temporary-ID references with typos or invalid formats were previously ignored; the handler now emits acore.warning()so problems surface at runtime rather than producing unexpected output. (#19035) -
/tmp/gh-awdirectory guaranteed before activation scripts run β Activation job scripts could crash withENOENTwhen/tmp/gh-aw/had not yet been created; setup now ensures the directory exists before any workflow scripts execute. (#19040) -
CLI version bumps β Claude Code β 2.1.63, Copilot CLI β 0.0.420, Gemini CLI β 0.31.0. (#19033)
-
GitHub Actions pinned versions updated (2026-03-01 pass). (#19034)
π Community Contributions
A huge thank you to the community members who reported issues resolved in this release:
@samuelkahessayfor Mixed-trigger workflows collapse workflow_dispatch runs into degenerate concurrency group (#19023)@samuelkahessayfor Malformed #aw_* references in body text pass through without validation (#19024)
For complete details, see CHANGELOG.
Generated by Release
What's Changed
- [docs] Update documentation for safe-outputs concurrency-group by @github-actions[bot] in #19014
- Fix SC2086: quote stderr redirect in prompt-clustering-analysis workflow by @Copilot in #19010
- Add
set-issue-typesafe output type by @Copilot in #18989 - fix: ensure /tmp/gh-aw exists before activation job scripts run by @Copilot in #19040
- chore: bump CLI versions β Claude Code 2.1.63, Copilot CLI 0.0.420, Gemini CLI 0.31.0 by @Copilot in #19033
- Fix SC2295 shellcheck: quote inner pattern expansion in ci-doctor by @Copilot in #19041
- [actions] Update GitHub Actions versions - 2026-03-01 by @Copilot in #19034
- fix: align step name to
Precompute (target)pattern in campaign workflow by @Copilot in #19055 - Fix degenerate concurrency group for mixed-trigger workflows by @Copilot in #19036
- Warn on malformed
#aw_*references in body text by @Copilot in #19035
Full Changelog: v0.51.2...v0.51.3
v0.51.2
π Release Highlights
This release improves workflow reliability with better runtime-import path handling, clearer error reporting for git push failures, and a new concurrency-group option for safe-outputs.
β¨ What's New
- Safe-outputs concurrency control β The
safe-outputsjob now supports aconcurrency-groupfield, giving you precise control over job concurrency and cancellation behavior. Learn more
π Bug Fixes & Improvements
runtime-importfixed for nested workflow paths β Workflows in subdirectories like.github/workflows/shared/*.mdnow resolve correctly via explicit sparse-checkout cone mode. (#18973)- Clearer git push error messages β Push failures are no longer misattributed as "Failed to apply patch", making debugging significantly easier. (#18987)
- Playwright screenshot directory pre-created β Eliminates
ENOENTerrors when Playwright workflows capture screenshots. (#18969) - Permission hygiene β The agent job no longer automatically injects
contents: readpermissions, so compiled workflows respect exactly the permissions you declare. (#18976) - Lockdown validation moved to activation job β Requirements are validated earlier in the pipeline, providing faster feedback on misconfigured workflows. (#18971)
- Fallback issues now labeled
agentic-workflowsβ Issues created whencreate_pull_requestfails are correctly labeled, ensuring they appear in the parent issue aggregation logic. (#18986)
π Documentation
- Added reference docs for the new
safe-outputs.concurrency-groupfield.
π 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
- [jsweep] Clean check_rate_limit.cjs by @github-actions[bot] in #18970
- Fix: Pre-create Playwright screenshot directory to prevent ENOENT errors by @Copilot in #18969
- Move validateLockdownRequirements into generate_aw_info step (activation job) by @Copilot in #18971
- [file-diet] Refactor
pkg/parser/import_processor.gointo focused modules by @Copilot in #18974 - [docs] Update documentation for features from 2026-03-01 by @github-actions[bot] in #18982
- Remove automatic
contents: readfrom agent job permissions by @Copilot in #18976 - fix: explicit sparse-checkout cone mode for .github/.agents to fix runtime-import on nested paths by @Copilot in #18973
- Add
agentic-workflowslabel to fallback issues increate_pull_request.cjsby @Copilot in #18986 - Fix git push failures misattributed as "Failed to apply patch" by @Copilot in #18987
- Add concurrency-group support to safe_outputs job by @Copilot in #18993
- [docs] Update dictation skill instructions by @github-actions[bot] in #18999
Full Changelog: v0.51.1...v0.51.2
v0.51.1
π Release Highlights
This release focuses on reliability and correctness β squashing several impactful bugs in the safe-outputs and safe-inputs systems, improving audit tooling, and cleaning up dead code.
β¨ What's New
footer: falsesupport foradd-commentβ Workflows can now suppress the "Generated by..." footer on comments posted via theadd-commentsafe output handler, giving you cleaner, more controlled output (#18942)
π Bug Fixes & Improvements
- MCP gateway API key quoting fixed β The
/closeteardown step was sending a shell-quoted API key (e.g.,'abc123') instead of the raw value, causingAuthentication failed: invalid API keyerrors. Gateway teardown now works reliably (#18943) safeoutputsMCP server crash oncreate_pull_requestfixed β Acontext is not definederror caused by a missingGITHUB_REPOSITORYfallback has been resolved, restoring reliable PR creation from workflows (#18939)- Multi-line
safe-inputsblock scalar descriptions fixed β YAML|block scalar descriptions insafe-inputstool definitions were only applying the comment prefix to the first line, breaking generated Python, Shell, and Go scripts at runtime (#18941) staged: truenow propagated for safe output handlers β Per-handlerstaged: trueconfig was silently ignored, causing handlers to always perform live GitHub/git operations even in dry-run mode (#18961)- Audit MCP tool error reporting improved β
failure_analysisalways returned "No specific errors identified"; it has been removed in favor of surfacing real stderr output for actionable diagnostics (#18955) - PR review buffer
APPROVE/REQUEST_CHANGESfixed β Aread:userscope check was causing own-PR review attempts to silently fail. The check is now replaced with an API error retry strategy (#18953) - Azure Storage Account Key false positives eliminated β The secret redaction pattern was matching any 88-char base64 string ending in
==, flooding logs with false positives from normal agent output (#18932)
π Documentation
- CLI setup docs condensed and deduplicated for easier onboarding (#18950)
π Community Contributions
A huge thank you to the community members who reported issues that were resolved in this release:
@srgibbs99for Bug Report:safeoutputsMCP server crashes withcontext is not definedoncreate_pull_request@srgibbs99for Bug: | block scalar description in safe-inputs breaks generated Python script@aaronspindlerfor MCP gateway /close teardown fails with invalid API key (gateway-api-key output quoted)
For complete details, see CHANGELOG.
Generated by Release
What's Changed
- Merge validate context variable step into generate action info step by @Copilot in #18925
- Fix Azure Storage Account Key false positives in secret redaction by @Copilot in #18932
- Fix: multi-line block scalar descriptions in safe-inputs script generators by @Copilot in #18941
- fix: remove shell quoting (@q) from gateway-api-key step output by @Copilot in #18943
- feat: add
footer: falsesupport toadd-commentsafe output by @Copilot in #18942 - [instructions] Sync github-agentic-workflows.md with v0.40.1: add safe-inputs go: field by @github-actions[bot] in #18947
- [docs] Consolidate developer specifications - 2026-02-28 maintenance review by @github-actions[bot] in #18949
- [docs] docs: unbloat cli.md β remove redundant sections and condense prose by @github-actions[bot] in #18950
- dead16: remove dead functions from pkg/cli by @dsyme in #18944
- Fix
context is not definedcrash in safeoutputs MCP server oncreate_pull_requestby @Copilot in #18939 - fix(pr_review_buffer): replace broken getAuthenticated check with API error retry by @Copilot in #18953
- dead17: remove 13 dead functions from pkg/cli (round 2) by @dsyme in #18966
- fix(audit): remove failure_analysis, surface stderr in MCP error messages by @Copilot in #18955
- fix: propagate per-handler
staged: trueto JS safe output handlers by @Copilot in #18961
Full Changelog: v0.51.0...v0.51.1
v0.51.0
π Release Highlights
This release focuses on expanding safe-output capabilities, improving the activation job pipeline, and significant internal housekeeping β delivering a leaner, more reliable runtime.
β¨ What's New
- Safe-output results as
workflow_calloutputs β Workflows usingworkflow_callcan now expose safe-output results as reusable outputs, enabling richer composition of agentic workflows (#18914) - Enhanced
resolve-pull-request-review-threadβ Now supportstarget,target-repo, andallowed-reposconfiguration, giving you precise control over cross-repo PR review thread resolution (#18891) - Agent failure issues auto-labeled β Issues created on agent failure are automatically tagged with the
agentic-workflowslabel for easier triage and discoverability (#18842) - Guard policies support β Introduced guard policy configuration with schema validation (#18589, #18916)
- MCP Gateway payload path prefix configuration β Added
payloadPathPrefixandpayloadSizeThresholdsettings for fine-grained MCP gateway control (#18617)
π Bug Fixes & Improvements
- Checkout
tokenfield corrected β Fixed thecheckout.github-tokenβcheckout.tokenrename soactions/checkoutreceives the right parameter (#18878) - Activation job directory initialization β The
/tmp/gh-awdirectory is now reliably created before writingaw_info.json, preventing intermittent activation failures (#18876) - Emoji ZWJ sequences allowed β Emoji sequences like π¨π» no longer trigger false positives in the unicode-abuse security scanner (#18793)
- MCP gateway config validation fixed β Removed the undeclared
payloadSizeThresholdfield that was causing validation failures (#18791) - Safe output schema completeness β Missing
cross-repoandauthproperties restored to safe output schemas (#18754) - Activation job permissions corrected β Fixed missing
contents: readpermission on the activation job (#18737) - Report template headers normalized β Report headers now consistently use
h3+levels for proper rendering (#18840)
π Documentation
- Trigger shorthands documented β The reference now covers shorthand syntax for workflow triggers (#18764)
- Unsafe expression example replaced β A post-processing pattern example using an unsafe expression has been updated with a safe implementation (#18792)
- Automated self-healing documentation fixes applied on 2026-02-27 and 2026-02-28
π§ Internal
This release includes an extensive dead-code removal campaign across 15+ PRs (batches 1β14 by @dsyme), removing deprecated bundler subsystems, unused helpers, dead CLI/console/validation functions, and orphaned constants. This significantly reduces binary size and maintenance surface without changing user-facing behavior.
π Community Contributions
A huge thank you to the community members who reported issues resolved in this release:
@strawgatefor feat: add target config to resolve-pull-request-review-thread (#18744)@harrisoncramerfor Your Docs Provide an Unsafe Expression (#18763)@Corb3nikfor Fix checkout frontmatter: emit token (not github-token) for actions/checkout (#18825)
For complete details, see CHANGELOG.
Generated by Release
What's Changed
- π§ Fix activation job contents read permission check by @dsyme in #18737
- Add MCP Gateway payload path prefix and size threshold configuration by @claude in #18617
- feat: add guard policies support by @lpcox in #18589
- [docs] Self-healing documentation fixes from issue analysis - 2026-02-27 by @github-actions[bot] in #18743
- docs: document trigger shorthands by @eaftan in #18764
- π§Ή Remove dead CLI, console, and utility code (batch 1) by @dsyme in #18784
- π§Ή Remove dead code: bundler, CLI, and unused utilities by @dsyme in #18785
- π§Ή Remove dead code: bundler subsystem, utilities, and tests by @dsyme in #18787
- docs: replace unsafe step implementation in post-processing pattern example by @Copilot in #18792
- fix: allow emoji ZWJ sequences in unicode-abuse security scanner by @Copilot in #18793
- Remove
SupportsFirewallfrom agentic engine interface by @Copilot in #18796 - π§Ή Remove dead code functions across multiple packages by @dsyme in #18812
- chore: remove dead validation/map helper functions (batch 5) by @dsyme in #18813
- chore: remove dead engine helper functions (batch 6) by @dsyme in #18814
- chore: remove dead domain helper functions (batch 7) by @dsyme in #18815
- chore: remove dead expression and known_needs functions (batch 8) by @dsyme in #18816
- chore: remove dead String/IsValid methods from constants (batch 9) by @dsyme in #18818
- chore: remove dead console functions (batch 10) by @dsyme in #18820
- chore: remove dead cli functions (batch 11) by @dsyme in #18822
- dead12: remove dead utility functions from 7 packages by @dsyme in #18826
- dead13: remove dead functions from parser and workflow packages by @dsyme in #18830
- dead14: remove dead functions from parser package by @dsyme in #18832
- Fix MCP gateway config validation failure caused by undeclared
payloadSizeThresholdfield by @Copilot in #18791 - fix(delight): normalize report template headers to h3+ by @Copilot in #18840
- feat: label agent failure issues with agentic-workflows tag by @Copilot in #18842
- Fix golden fixtures and remove unused helpers after MCP gateway payloadSizeThreshold removal by @Copilot in #18844
- Rename
supportsLLMGatewaybool tollmGatewayPortint and removeSupportsLLMGateway()from interface by @Copilot in #18838 - π§Ή Remove dead script stubs and utility functions across packages by @dsyme in #18846
- Update checkout front matter for current repository by @Copilot in #18713
- Move "Generate agentic run info" to activation job; merge workflow overview into it; rename activation artifact by @Copilot in #18843
- refactor: remove deprecated wrappers, dead code, and orphaned symbols by @Copilot in #18873
- Align title-prefix tool description constraints across all safe output handlers by @Copilot in #18834
- fix(USE-001): use ERR_SYSTEM constant in generate_git_patch.cjs by @Copilot in #18877
- ci: parallelize fuzz tests into 4 matrix groups (~3 min savings) by @Copilot in #18879
- Fix: Create /tmp/gh-aw directory before writing aw_info.json in activation job by @Copilot in #18876
- Fix checkout frontmatter: rename
checkout.github-tokentocheckout.tokenfor actions/checkout by @Copilot in #18878 - Fix missing cross-repo and auth properties in safe output schemas by @Copilot in #18754
- [code-simplifier] refactor: apply project conventions to generate_aw_info.cjs (#18876 follow-up) by @github-actions[bot] in #18890
- fix: correct test assertions in TestAgentVersionInAwInfo to use GH_AW_INFO_ env var names by @Copilot in #18892
- [docs] Self-healing documentation fixes from issue analysis - 2026-02-28 by @github-actions[bot] in #18898
- Mark tools.github.repos and tools.github.min-integrity as experimental by @Copilot in #18904
- feat: add target, target-repo, and allowed-repos to resolve-pull-request-review-thread by @Copilot in #18891
- [log] Add debug logging to 5 pkg/ files by @github-actions[bot] in #18906
- fix: correct test assertions in TestGenerateCreateAwInfoWithStaged by @Copilot in #18905
- fix(ci): skip fuzz go mod download on cache hit, add GOPROXY direct fallback by @Copilot in #18908
- Fix guard policy schema validation and sync step summary test assertions to shared CJS helper by @Copilot in #18916
- fix(test): Update TestGenerateCreateAwInfoWithStaged to assert on GH_AW_INFO_STAGED env var by @Copilot in #18913
- Fix TestAwInfoStepsFirewall: update assertions to match env var-based aw_info generation by @Copilot in #18923
- feat: expose safe-output results as workflo...
v0.50.7
π Release Highlights
This release focuses on smarter workflow updates, better enterprise/OIDC integration, and improved developer experience with clearer error messages and actionable guidance when things go wrong.
β¨ What's New
-
gh aw updatenow updates all third-party actions β Previously, force-updating to the latest major version only applied toactions/*core actions. Now all actions across every org are upgraded automatically (#18707, #18692). Use--disable-release-bumpto opt out and restore the previous behavior. -
Automatic OIDC/vault permission detection β Workflows using OIDC-based secret managers (AWS Secrets Manager, Azure Key Vault, HashiCorp Vault, etc.) in
safe-outputs.stepsnow automatically receiveid-token: writepermission β no manual configuration required (#18701). -
Firewall block guidance with fix snippets β When the AWF firewall blocks a domain during execution, the footer now includes an actionable code snippet and a documentation link so you can resolve it immediately, rather than just listing the blocked domains (#18676).
π Bug Fixes & Improvements
-
Codex policy violation errors now surface in step summaries β When Codex hits a
cyber_policy_violationor similar API error, the failure is now clearly reported in the step summary instead of silently producing an empty log (#18699). -
Fixed
noopmissing from safe-output tools prompt βnoopwas registered in the MCP server but never listed in the(safe-output-tools)prompt, causing safe-output workflow failures. This is now fixed for all workflows (#18647). -
Fixed
context is not definedin safeoutputs MCP backend β Thecreate_pull_requestandclose_pull_requesthandlers could fail at runtime due to an unresolvedcontextreference. This regression is now resolved (#18646). -
Fixed Codex tool calls missing from log entries β New-format Codex logs had tool calls detected but never added to
logEntries, causing the common renderer to fall back to a blank output. Rendering is now correct (#18678).
π Documentation
- Simplified fine-grained PAT setup β PAT creation links now pre-fill the name, description, and permissions, reducing setup friction for new users (#18662, #18682).
π§ Tool Version Bumps
- Claude Code
2.1.62, GitHub Copilot CLI0.0.419, Codex0.106.0, MCP Gatewayv0.1.6(#18669) - All
actions/checkoutreferences upgraded tov6(#18685)
For complete details, see CHANGELOG.
Generated by Release
What's Changed
- Fix smoke-trigger.yml startup_failure and missing secrets for workflow_call by @Copilot in #18629
- docs: add pre-filled URL parameters to fine-grained PAT creation links by @Copilot in #18662
- fix: include
noopin safe-output tools prompt for all workflows by @Copilot in #18647 - Fix
context is not definederror in safeoutputs MCP backend by @Copilot in #18646 - Enhance firewall blocked domains footer with fix snippet and docs link by @Copilot in #18676
- refactor(workflow): deduplicate logic, extract cross-engine helpers, fix interface bypass by @Copilot in #18671
- Fix Codex new-format tool calls missing from logEntries for common renderer by @Copilot in #18678
- docs: update fine-grained PAT repository access instructions for Copi⦠by @mnkiefer in #18682
- Upgrade actions/checkout to v6 across the repo by @Copilot in #18685
- chore: bump CLI tool versions β Claude Code 2.1.62, Copilot 0.0.419, Codex 0.106.0, MCP Gateway v0.1.6 by @Copilot in #18669
- fix: surface Codex model access blocked errors in step summary by @Copilot in #18699
- feat: update command always updates core actions (actions/*) to latest major version by @Copilot in #18692
- Auto-detect OIDC/vault actions in safe-outputs steps and add id-token:write permission by @Copilot in #18701
- feat: force update all actions to latest major version, add --disable-release-bump flag by @Copilot in #18707
Full Changelog: v0.50.6...v0.50.7