π Release Highlights
This release focuses on security hardening, observability improvements, and setup performance β with a meaningful reduction in firewall install time and new token usage visibility for AI cost tracking.
β¨ What's New
-
Token Usage Visibility β The Agentic Workflow Firewall now logs per-model token consumption to
token-usage.jsonl.gh aw auditandgh aw logssurface a full breakdown (input, output, cache read/write tokens, cache hit %, avg request duration) per model. A new step summary step appends a markdown table to your workflow run's summary page. (#23943) -
140Γ Faster Firewall Install β AWF v0.25.10 ships a single
awf-bundle.jsfile (~357 KB). On GitHub-hosted runners with Node.js β₯ 20 (the default), setup now downloads 357 KB instead of ~50 MB β a 140Γ reduction. Self-hosted runners without Node.js β₯ 20 automatically fall back to the platform binary. (#23993) -
Richer Threat Detection Context β The detection job now performs a conditional repository checkout when a patch is present, giving the threat detection engine full codebase context to review code changes. Previously, the engine saw diffs in isolation without surrounding source files. (#23961)
-
GitHub Actions Expression Support β
timeout-minutes,engine.version,tools.timeout, andtools.startup-timeoutnow accept GitHub Actions expressions (e.g.,$\{\{ inputs.timeout }}), enabling reusableworkflow_callworkflows where callers can customize these values without forking the workflow. (docs)
π Bug Fixes & Improvements
-
Session Logs Now Collected β
events.jsonlfiles written by Copilot CLI inside session subdirectories were silently missed by the log-copy step (flat glob only matched the top level). Fixed with a recursivefind-based copy that preserves session IDs in filenames. (#23992) -
Security: Git Hook Injection Prevented β Cache-memory git repos now have
.git/hooks/cleared andcore.hooksPathset to/dev/nullon every setup. Previously, a compromised run could plant executable hooks that fired on the host runner before the AWF sandbox was active. (#23929) -
gh aw add-wizardNo Longer Loses Work on Push Failure β If the branch push failed after downloading workflow files, the command previously rolled back everything and left users with nothing. Files and the local commit are now preserved, with actionable recovery instructions printed to the console. (#23926) -
Label Pagination Fixed for Large Repos β
create_discussionandupdate_discussionsilently dropped any labels beyond the first 100 when resolving label names to IDs. The paginated fetch now loops until all labels are loaded. (#23915) -
CLI Help Text Fixes β Dynamic column width in root command usage (fixing truncated
hash-frontmatter), correctedlogs --timeoutflag description, and improvedmcp addhelp text. (#23912)
π Documentation
- Updated reference docs for expression support in
frontmatter.md,engines.md, andtools.mdβ including new "Tool Timeout Configuration" section. - Condensed verbose troubleshooting sections in
common-issues.md(β49 lines, β8%).
π Community Contributions
A huge thank you to the community members who reported issues that were resolved in this release!
@ajfeldman6
- Error: "Failed to add workflow" during Quick Start Guide for creating an agentic workflow (direct issue)
@yskopets
For complete details, see CHANGELOG.
Generated by Release
What's Changed
- Fix 4 CLI consistency issues: dynamic column width, flag description, mcp add docs, command group tests by @Copilot in #23912
- refactor: split checkout_manager.go into state management, step generation, and config parsing by @Copilot in #23911
- Split pkg/constants/constants.go into domain-grouped files by @Copilot in #23913
- fix: paginate label fetch in create_discussion and update_discussion by @Copilot in #23915
- refactor: split trial_command.go (1,007 lines) into focused files by @Copilot in #23917
- fix: preserve workflow files and guide user on manual push when branch push fails by @Copilot in #23926
- feat: Add conditional workspace checkout to detection job for patch context by @lpcox in #23961
- [docs] Update documentation for GitHub Actions expression support in frontmatter fields by @github-actions[bot] in #23947
- fix(security): clear .git/hooks/ and disable hooksPath in cache-memory git setup by @Copilot in #23929
- feat: bump firewall to v0.25.8 and surface token-usage.jsonl by @lpcox in #23943
- feat: bump AWF to v0.25.10 and use lightweight esbuild bundle by @Mossaka in #23993
- fix: events.jsonl not collected β copy step uses flat glob, misses session subdirectories by @lpcox in #23992
- [docs] condense verbose sections in common-issues.md by @github-actions[bot] in #24010
Full Changelog: v0.65.4...v0.65.5