GitHub Agentic Workflows | BlogWrite agentic workflows in natural language using markdown files and run them as GitHub Actions workflows.https://github.github.com/enWeekly Update – April 13, 2026https://github.github.com/gh-aw/blog/2026-04-13-weekly-update/https://github.github.com/gh-aw/blog/2026-04-13-weekly-update/Mon, 13 Apr 2026 00:00:00 GMT<p>It was a busy week in <a href="https://github.com/github/gh-aw">github/gh-aw</a> — five releases shipped between April 6 and April 10, addressing everything from a critical Copilot CLI reliability crisis to shiny new workflow composition features. Here’s the full rundown.</p> <div><h2 id="release-highlights">Release Highlights</h2></div> <div><h3 id="v0681--april-10"><a href="https://github.com/github/gh-aw/releases/tag/v0.68.1">v0.68.1</a> — April 10</h3></div> <p>The headline of this patch is a <strong>critical Copilot CLI reliability hotfix</strong>. Workflows using the Copilot engine were hanging indefinitely or producing zero-byte output due to an incompatibility introduced in v1.0.22 of the Copilot CLI. <a href="https://github.com/github/gh-aw/releases/tag/v0.68.1">v0.68.1</a> pins the CLI back to v1.0.21 — the last confirmed-working version — and gets everyone’s workflows running again (<a href="https://github.com/github/gh-aw/pull/25689">#25689</a>).</p> <p>Beyond the hotfix, this release also ships:</p> <ul> <li><strong><code dir="auto">engine.bare</code> frontmatter field</strong> (<a href="https://github.com/github/gh-aw/pull/25661">#25661</a>): Set <code dir="auto">bare: true</code> to suppress automatic context loading — <code dir="auto">AGENTS.md</code> and user instructions for Copilot, <code dir="auto">CLAUDE.md</code> memory files for Claude. Great when you want the AI to start from a clean slate.</li> <li><strong>Improved stale lock file diagnostics</strong> (<a href="https://github.com/github/gh-aw/pull/25571">#25571</a>): When the activation job detects a stale hash, it now emits step-by-step <code dir="auto">[hash-debug]</code> log lines and opens an actionable issue guiding you to fix it.</li> <li><strong><code dir="auto">actions/github-script</code> upgraded to v9</strong> (<a href="https://github.com/github/gh-aw/pull/25553">#25553</a>): Scripts now get <code dir="auto">getOctokit</code> as a built-in context parameter, removing the need for manual <code dir="auto">@actions/github</code> imports in safe-output handlers.</li> <li><strong>Squash-merge fallback in <code dir="auto">gh aw add</code></strong> (<a href="https://github.com/github/gh-aw/pull/25609">#25609</a>): If a repo disallows merge commits, the setup PR now automatically falls back to squash merge instead of failing.</li> <li><strong>Security: <code dir="auto">agent-stdio.log</code> permissions hardened</strong> — Log files are now pre-created with <code dir="auto">0600</code> permissions before <code dir="auto">tee</code> writes, preventing world-readable exposure of MCP gateway bearer tokens.</li> </ul> <div><h3 id="v0680--april-10"><a href="https://github.com/github/gh-aw/releases/tag/v0.68.0">v0.68.0</a> — April 10</h3></div> <p>This release brings <a href="https://github.com/github/gh-aw/releases/tag/v0.68.0">distributed tracing</a> improvements and a cleaner comment API:</p> <ul> <li><strong>OpenTelemetry cross-job trace hierarchy</strong> (<a href="https://github.com/github/gh-aw/pull/25540">#25540</a>): Parent span IDs now propagate through <code dir="auto">aw_context</code> across jobs, giving you end-to-end distributed trace visibility for multi-job workflows in backends like Tempo, Honeycomb, and Datadog.</li> <li><strong>Simplified discussion comment API</strong> (<a href="https://github.com/github/gh-aw/pull/25532">#25532</a>): The deprecated <code dir="auto">add-comment.discussion</code> boolean has been removed in favor of the clearer <code dir="auto">discussions: true/false</code> syntax. Run <code dir="auto">gh aw fix --write</code> to migrate existing workflows.</li> <li><strong>Security: heredoc content validation</strong> (<a href="https://github.com/github/gh-aw/pull/25510">#25510</a>): <code dir="auto">ValidateHeredocContent</code> checks now cover five user-controlled heredoc insertion sites, closing a class of potential injection vectors.</li> </ul> <div><h3 id="v0674--april-9"><a href="https://github.com/github/gh-aw/releases/tag/v0.67.4">v0.67.4</a> — April 9</h3></div> <p>This one led with <strong>five new agentic workflow templates</strong>: <a href="https://github.com/github/gh-aw/pull/25354">approach-validator</a>, <a href="https://github.com/github/gh-aw/pull/25353">test-quality-sentinel</a>, <a href="https://github.com/github/gh-aw/pull/25352">refactoring-cadence</a>, <a href="https://github.com/github/gh-aw/pull/25334">architecture-guardian</a>, and <a href="https://github.com/github/gh-aw/pull/25323">design-decision-gate</a>. These expand the built-in library for code quality, ADR enforcement, and architectural governance. The release also included Copilot driver retry logic and a <code dir="auto">--runner-guard</code> compilation flag.</p> <div><h3 id="v0673--april-8"><a href="https://github.com/github/gh-aw/releases/tag/v0.67.3">v0.67.3</a> — April 8</h3></div> <p>The star of this release is the new <strong><code dir="auto">pre-steps</code> frontmatter field</strong> — inject steps that run <em>before</em> checkout and the agent inside the same job. This is the recommended pattern for token-minting actions (e.g., <code dir="auto">actions/create-github-app-token</code>, <code dir="auto">octo-sts</code>) that need to check out external repos. Because the minted token stays in the same job, it never gets masked when crossing a job boundary. Also shipped: <code dir="auto">${{ github.aw.import-inputs.* }}</code> expression support in the <code dir="auto">imports:</code> section, and <code dir="auto">assignees</code> support on <code dir="auto">create-pull-request</code> fallback issues.</p> <div><h3 id="v0672--april-6"><a href="https://github.com/github/gh-aw/releases/tag/v0.67.2">v0.67.2</a> — April 6</h3></div> <p>Reliability-focused: cross-repo workflow hash checks, checkout tokens no longer silently dropped on newer runners, <code dir="auto">curl</code>/<code dir="auto">wget</code> flag-bearing invocations now allowed in <code dir="auto">network.allowed</code> workflows, and a <code dir="auto">timeout-minutes</code> schema cap at 360.</p> <div><h2 id="notable-merged-pull-requests">Notable Merged Pull Requests</h2></div> <p>Beyond the releases, the past week also delivered:</p> <ul> <li><strong><a href="https://github.com/github/gh-aw/pull/25923">#25923</a></strong>: Image artifacts can now be uploaded without zip archiving using <code dir="auto">skip-archive: true</code>, and the resulting artifact URLs are surfaced as outputs — enabling workflows to embed images directly in Markdown comments.</li> <li><strong><a href="https://github.com/github/gh-aw/pull/25908">#25908</a></strong>: A new scheduled <code dir="auto">cleanup-cache-memory</code> job was added to the agentics maintenance workflow to prune outdated cache-memory entries automatically (and can be triggered on demand).</li> <li><strong><a href="https://github.com/github/gh-aw/pull/25914">#25914</a> + <a href="https://github.com/github/gh-aw/pull/25972">#25972</a></strong>: OTel exception span events now emit <code dir="auto">exception.type</code> alongside <code dir="auto">exception.message</code> and individual error attributes are queryable — no more digging through pipe-delimited strings in Grafana.</li> <li><strong><a href="https://github.com/github/gh-aw/pull/25960">#25960</a></strong>: Fixed a sneaky bug where <code dir="auto">push_repo_memory</code> would run on every bot-triggered no-op because <code dir="auto">always()</code> bypassed skip propagation.</li> <li><strong><a href="https://github.com/github/gh-aw/pull/25971">#25971</a></strong>: Raw subprocess output from <code dir="auto">gh aw compile --validate</code> is now sanitized before being embedded into issue bodies, closing a Markdown injection vector.</li> </ul> <div><h2 id="-agent-of-the-week-auto-triage-issues"> Agent of the Week: auto-triage-issues</h2></div> <p>The quiet backbone of issue hygiene — reads every new issue and applies the right labels so the right people see it.</p> <p>This week <code dir="auto">auto-triage-issues</code> proved it’s doing its job almost too well. In the scheduled run on April 13, it scanned all open issues and found exactly <strong>zero</strong> unlabeled issues — reporting a 100% label coverage rate with zero action required. It had already handled the labeling in near-real-time as issues arrived, including one run on April 12 where it correctly tagged a freshly opened issue with <code dir="auto">enhancement</code>, <code dir="auto">mcp</code>, <code dir="auto">compiler</code>, and <code dir="auto">security</code> in a single pass. Four labels, zero hesitation.</p> <p>That “security” label is doing a lot of work — the workflow spotted MCP and compiler concerns that genuinely deserved the tag, not just keyword-matched on it. We’ll take it.</p> <p> <strong>Usage tip</strong>: Pair <code dir="auto">auto-triage-issues</code> with label-based notification rules so your team gets automatically paged for <code dir="auto">security</code> or <code dir="auto">critical</code> issues without anyone having to babysit the issue tracker.</p> <p>→ <a href="https://github.com/github/gh-aw/blob/main/.github/workflows/auto-triage-issues.md">View the workflow on GitHub</a></p> <div><h2 id="try-it-out">Try It Out</h2></div> <p>Update to <a href="https://github.com/github/gh-aw/releases/tag/v0.68.1">v0.68.1</a> today to get the Copilot CLI hotfix and the new <code dir="auto">engine.bare</code> control. As always, contributions and feedback are welcome in <a href="https://github.com/github/gh-aw">github/gh-aw</a>.</p>Weekly Update – April 6, 2026https://github.github.com/gh-aw/blog/2026-04-06-weekly-update/https://github.github.com/gh-aw/blog/2026-04-06-weekly-update/Mon, 06 Apr 2026 00:00:00 GMT<p>Ten releases landed in <a href="https://github.com/github/gh-aw">github/gh-aw</a> between March 31 and April 6 — a relentless pace that delivered production-ready distributed tracing, new safe output signals, and a sweeping security cleanup. Here’s what shipped.</p> <div><h2 id="release-highlights">Release Highlights</h2></div> <div><h3 id="v0671--opentelemetry-overhaul--security-hardening-april-6"><a href="https://github.com/github/gh-aw/releases/tag/v0.67.1">v0.67.1</a> — OpenTelemetry Overhaul &#x26; Security Hardening (April 6)</h3></div> <p>The headline release of the week polishes the OTLP tracing story introduced in v0.67.0 and adds a wave of security fixes.</p> <ul> <li><strong>Accurate span names and real job durations</strong> (<a href="https://github.com/github/gh-aw/pull/24823">#24823</a>): Job lifecycle spans now use the actual job name (e.g. <code dir="auto">gh-aw.agent.conclusion</code>) and record real execution time — previously spans always reported 2–5 ms due to a missing <code dir="auto">startMs</code>.</li> <li><strong>OTLP payload sanitization</strong>: Sensitive values (<code dir="auto">token</code>, <code dir="auto">secret</code>, <code dir="auto">key</code>, <code dir="auto">auth</code>, etc.) in span attributes are automatically redacted before sending to any OTLP collector.</li> <li><strong>OTLP headers masking</strong> (<a href="https://github.com/github/gh-aw/pull/24805">#24805</a>): <code dir="auto">OTEL_EXPORTER_OTLP_HEADERS</code> is masked with <code dir="auto">::add-mask::</code> in every job, preventing auth tokens from leaking into GitHub Actions debug logs.</li> <li><strong>MCP Gateway OpenTelemetry</strong> (<a href="https://github.com/github/gh-aw/pull/24697">#24697</a>): The MCP Gateway now receives OpenTelemetry config derived from <code dir="auto">observability.otlp</code> frontmatter and the <code dir="auto">actions/setup</code> trace IDs, correlating all MCP tool-call traces under the workflow root trace.</li> <li><strong><code dir="auto">report_incomplete</code> safe output</strong> (<a href="https://github.com/github/gh-aw/pull/24796">#24796</a>): A new first-class signal lets agents surface infrastructure or tool failures without being misclassified as successful runs. When an agent emits <code dir="auto">report_incomplete</code>, the safe-outputs handler activates failure handling regardless of agent exit code.</li> <li><strong><code dir="auto">checks</code> as a first-class MCP tool</strong> (<a href="https://github.com/github/gh-aw/pull/24818">#24818</a>): The <code dir="auto">checks</code> tool is now registered in the gh-aw MCP server, returning a normalized CI verdict (<code dir="auto">success</code>, <code dir="auto">failed</code>, <code dir="auto">pending</code>, <code dir="auto">no_checks</code>, <code dir="auto">policy_blocked</code>).</li> <li><strong>Token/secret injection prevention</strong>: 422 instances of <code dir="auto">${{ secrets.* }}</code> interpolated directly into <code dir="auto">run:</code> blocks were moved to <code dir="auto">env:</code> mappings across lock files.</li> <li><strong>Claude Code 1.0.0 compatibility</strong> (<a href="https://github.com/github/gh-aw/pull/24807">#24807</a>): Removed the <code dir="auto">--disable-slash-commands</code> flag that was dropped in Claude Code 1.0.0.</li> </ul> <div><h3 id="v0670--otlp-trace-export--github-api-rate-limit-analytics-april-5"><a href="https://github.com/github/gh-aw/releases/tag/v0.67.0">v0.67.0</a> — OTLP Trace Export &#x26; GitHub API Rate Limit Analytics (April 5)</h3></div> <p>The milestone release that first shipped distributed tracing support:</p> <ul> <li><strong><code dir="auto">observability.otlp</code> frontmatter</strong>: Workflows can now export structured OpenTelemetry spans to any OTLP-compatible backend (Honeycomb, Grafana Tempo, Sentry) with a single frontmatter block. Every job emits setup and conclusion spans; cross-job trace correlation is wired automatically with a single trace ID from the activation job.</li> <li><strong>GitHub API rate limit analytics</strong>: <code dir="auto">gh aw audit</code>, <code dir="auto">gh aw logs</code>, and <code dir="auto">gh aw audit diff</code> now show GitHub API quota consumed per run, per resource.</li> <li><strong>Environment Variable Reference</strong>: A new comprehensive reference section covers all CLI configuration variables.</li> </ul> <div><h3 id="v0661--richer-gh-aw-logs--breaking-change-april-4"><a href="https://github.com/github/gh-aw/releases/tag/v0.66.1">v0.66.1</a> — Richer <code dir="auto">gh aw logs</code> &#x26; Breaking Change (April 4)</h3></div> <p><strong>! Breaking change</strong>: <code dir="auto">gh aw audit report</code> has been removed. Cross-run security reports are now generated directly by <code dir="auto">gh aw logs --format</code>. The new <code dir="auto">--last</code> flag aliases <code dir="auto">--count</code> to ease migration.</p> <ul> <li><strong>Flat run classification</strong> in <code dir="auto">gh aw logs --json</code>: Each run now carries a top-level <code dir="auto">classification</code> string (<code dir="auto">"risky"</code>, <code dir="auto">"normal"</code>, <code dir="auto">"baseline"</code>, or <code dir="auto">"unclassified"</code>), eliminating null-guard gymnastics.</li> <li><strong>Per-tool-call metrics in logs</strong>: Granular token usage, failure counts, and latency per tool — perfect for identifying which tools consume the most resources.</li> </ul> <div><h3 id="v0660--token-usage-artifacts--threat-detection-extensibility-april-3"><a href="https://github.com/github/gh-aw/releases/tag/v0.66.0">v0.66.0</a> — Token Usage Artifacts &#x26; Threat Detection Extensibility (April 3)</h3></div> <ul> <li><strong>Token Usage Artifact</strong> (<a href="https://github.com/github/gh-aw/pull/24315">#24315</a>): Agent token usage is now uploaded as a workflow artifact, making it easy to track spend over time.</li> <li>Workflow reliability and threat detection extensibility improvements shipped alongside.</li> </ul> <div><h3 id="earlier-in-the-week">Earlier in the week</h3></div> <p><a href="https://github.com/github/gh-aw/releases/tag/v0.65.7">v0.65.7</a> through <a href="https://github.com/github/gh-aw/releases/tag/v0.65.2">v0.65.2</a> (March 31–April 3) focused on cross-repo workflow reliability, MCP gateway keepalive configuration, safe-outputs improvements, and token optimization tooling.</p> <hr> <div><h2 id="-agent-of-the-week-agentic-observability-kit"> Agent of the Week: agentic-observability-kit</h2></div> <p>The tireless watchdog that monitors your entire fleet of agentic workflows and escalates when things go sideways.</p> <p>Every day, <code dir="auto">agentic-observability-kit</code> pulls logs from all running workflows, classifies their behavior, and posts a structured observability report as a GitHub Discussion — then files issues when patterns of waste or failure cross defined thresholds. This past week it had a particularly eventful run: on April 6 it spotted that <code dir="auto">smoke-copilot</code> and <code dir="auto">smoke-claude</code> had each burned through 675K–1.7M tokens across multiple runs (flagged as <code dir="auto">resource_heavy_for_domain</code> with high severity), and it filed an issue titled <em>“Smoke Copilot and Smoke Claude repeatedly resource-heavy”</em> before anyone on the team had noticed. It also caught that the GitHub Remote MCP Authentication Test workflow had a 100% failure rate across two runs — one of which completed at zero tokens, suggesting a config or auth problem rather than an agent misbehaving.</p> <p>In a delightfully meta moment, the observability kit itself hit token-limit errors while trying to ingest its own log data — it made four attempts with progressively smaller <code dir="auto">count</code> and <code dir="auto">max_tokens</code> parameters before it could fit the output into context. It got there in the end.</p> <p> <strong>Usage tip</strong>: Pair <code dir="auto">agentic-observability-kit</code> with Slack or email notifications so escalation issues trigger an alert — otherwise the issues it files can sit unread while the token bill quietly grows.</p> <p>→ <a href="https://github.com/github/gh-aw/blob/main/.github/workflows/agentic-observability-kit.md">View the workflow on GitHub</a></p> <hr> <div><h2 id="try-it-out">Try It Out</h2></div> <p>Update to <a href="https://github.com/github/gh-aw/releases/tag/v0.67.1">v0.67.1</a> and start exporting traces from your workflows today — all it takes is an <code dir="auto">observability.otlp</code> block in your frontmatter. Feedback and contributions are always welcome in <a href="https://github.com/github/gh-aw">github/gh-aw</a>.</p>Weekly Update – March 30, 2026https://github.github.com/gh-aw/blog/2026-03-30-weekly-update/https://github.github.com/gh-aw/blog/2026-03-30-weekly-update/Mon, 30 Mar 2026 00:00:00 GMT<p>Six releases shipped in <a href="https://github.com/github/gh-aw">github/gh-aw</a> between March 24 and March 30 — that’s almost one a day. From expanded audit tooling to integrity-isolated cache storage and a wave of security fixes, this was a dense week. Here’s the rundown.</p> <div><h2 id="releases-this-week">Releases This Week</h2></div> <div><h3 id="v0644--march-30"><a href="https://github.com/github/gh-aw/releases/tag/v0.64.4">v0.64.4</a> — March 30</h3></div> <p>The freshest release ships with quality-of-life wins for workflow authors:</p> <ul> <li><strong><code dir="auto">runs-on-slim</code> for compile-stable jobs</strong> (<a href="https://github.com/github/gh-aw/pull/23490">#23490</a>): Override the runner for <code dir="auto">compile-stable</code> framework jobs with a new <code dir="auto">runs-on-slim</code> key, giving you fine-grained control over which machine handles compilation.</li> <li><strong>Sibling nested imports fixed</strong> (<a href="https://github.com/github/gh-aw/pull/23475">#23475</a>): <code dir="auto">./file.md</code> imports now resolve relative to the importing file’s directory, not the working directory. Modular workflows that import sibling files were silently broken before — now they’re not.</li> <li><strong>Custom tools in <code dir="auto">&#x3C;safe-output-tools></code> prompt</strong> (<a href="https://github.com/github/gh-aw/pull/23487">#23487</a>): Custom jobs, scripts, and actions are now listed in the agent’s <code dir="auto">&#x3C;safe-output-tools></code> prompt block so the AI actually knows they exist.</li> <li><strong>Compile-time validation of safe-output job ordering</strong> (<a href="https://github.com/github/gh-aw/pull/23486">#23486</a>): Misconfigured <code dir="auto">needs:</code> ordering on custom safe-output jobs is now caught at compile time.</li> <li><strong>MCP Gateway v0.2.9</strong> (<a href="https://github.com/github/gh-aw/pull/23513">#23513</a>) and <strong>firewall v0.25.4</strong> (<a href="https://github.com/github/gh-aw/pull/23514">#23514</a>) bumped for all compiled workflows.</li> </ul> <div><h3 id="v0643--march-29"><a href="https://github.com/github/gh-aw/releases/tag/v0.64.3">v0.64.3</a> — March 29</h3></div> <p>A security-heavy release with one major architectural upgrade:</p> <p><strong>Integrity-aware cache-memory</strong> is the headline. Cache storage now uses dedicated git branches — <code dir="auto">merged</code>, <code dir="auto">approved</code>, <code dir="auto">unapproved</code>, and <code dir="auto">none</code> — to enforce integrity isolation at the storage level. A run operating at <code dir="auto">unapproved</code> integrity can no longer read data written by a <code dir="auto">merged</code>-integrity run, and any change to your <code dir="auto">allow-only</code> guard policy automatically invalidates stale cache entries. If you upgrade and see a cache miss on your first run, that’s intentional — legacy data has no integrity provenance and must be regenerated.</p> <p><strong><code dir="auto">patch-format: bundle</code></strong> (<a href="https://github.com/github/gh-aw/pull/23338">#23338</a>) is the other highlight: code-push flows now support <code dir="auto">git bundle</code> as an alternative to <code dir="auto">git am</code>, preserving merge commits, authorship, and per-commit messages that were previously dropped.</p> <p>Security fixes:</p> <ul> <li><strong>Secret env var exclusion</strong> (<a href="https://github.com/github/gh-aw/pull/23360">#23360</a>): AWF now strips all secret-bearing env vars (tokens, API keys, MCP secrets) from the agent container’s visible environment, closing a potential prompt-injection exfiltration path in <code dir="auto">pull_request_target</code> workflows.</li> <li><strong>Argument injection fix</strong> (<a href="https://github.com/github/gh-aw/pull/23374">#23374</a>): Package and image names in <code dir="auto">gh aw compile --validate-packages</code> are validated before being passed to <code dir="auto">npm view</code>, <code dir="auto">pip index versions</code>, <code dir="auto">uv pip show</code>, and <code dir="auto">docker</code>.</li> </ul> <div><h3 id="v0642--march-26"><a href="https://github.com/github/gh-aw/releases/tag/v0.64.2">v0.64.2</a> — March 26</h3></div> <p>The <code dir="auto">gh aw logs</code> command gained cross-run report generation via the new <code dir="auto">--format</code> flag:</p> <p><strong><code dir="auto">gh aw logs --format</code></strong> aggregates firewall behavior across multiple workflow runs and produces an executive summary, domain inventory, and per-run breakdown:</p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>logs</span><span> </span><span>agent-task</span><span> </span><span>--format</span><span> </span><span>markdown</span><span> </span><span>--count</span><span> </span><span>10</span><span> </span><span># Markdown</span></div></div><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>logs</span><span> </span><span>--format</span><span> </span><span>markdown</span><span> </span><span>--json</span><span> </span><span># JSON for dashboards</span></div></div><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>logs</span><span> </span><span>--format</span><span> </span><span>pretty</span><span> </span><span># Console output</span></div></div></code></pre></figure></div> <p>This release also includes a <strong>YAML env injection security fix</strong> (<a href="https://github.com/github/gh-aw/pull/23055">#23055</a>): all <code dir="auto">env:</code> emission sites in the compiler now use <code dir="auto">%q</code>-escaped YAML scalars, preventing newlines or quote characters in frontmatter values from injecting sibling env variables into <code dir="auto">.lock.yml</code> files.</p> <div><h3 id="v0641--march-26"><a href="https://github.com/github/gh-aw/releases/tag/v0.64.1">v0.64.1</a> — March 26</h3></div> <p><strong><code dir="auto">gh aw audit diff</code></strong> (<a href="https://github.com/github/gh-aw/pull/22996">#22996</a>) lets you compare two workflow runs side-by-side — firewall behavior, MCP tool invocations, token usage, and duration — to spot regressions and behavioral drift before they become incidents:</p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>audit</span><span> </span><span>diff</span><span> </span><span>&#x3C;run1></span><span> </span><span>&#x3C;run2></span><span> </span><span>--format</span><span> </span><span>markdown</span></div></div></code></pre></figure></div> <p>Five new sections also landed in the standard <code dir="auto">gh aw audit</code> report: Engine Configuration, Prompt Analysis, Session &#x26; Agent Performance, Safe Output Summary, and MCP Server Health. One report now gives you the full picture.</p> <div><h3 id="v0640--march-25"><a href="https://github.com/github/gh-aw/releases/tag/v0.64.0">v0.64.0</a> — March 25</h3></div> <p><strong>Bot-actor concurrency isolation</strong>: Workflows combining <code dir="auto">safe-outputs.github-app</code> with <code dir="auto">issue_comment</code>-capable triggers now automatically get bot-isolated concurrency keys, preventing the workflow from cancelling itself mid-run when the bot posts a comment that re-triggers the same workflow.</p> <div><h3 id="v0631--march-24"><a href="https://github.com/github/gh-aw/releases/tag/v0.63.1">v0.63.1</a> — March 24</h3></div> <p>A focused patch adding the <strong><code dir="auto">skip-if-check-failing</code></strong> pre-activation gate — workflows can now bail out before the agent runs if a named CI check is currently failing, avoiding wasted inference on a broken codebase. Also ships an improved fuzzy schedule algorithm with weighted preferred windows and peak avoidance to reduce queue contention on shared runners.</p> <hr> <div><h2 id="-agent-of-the-week-auto-triage-issues"> Agent of the Week: auto-triage-issues</h2></div> <p>The self-appointed gatekeeper of the issue tracker — reads every new issue and assigns labels so the right people see it.</p> <p>This week, <code dir="auto">auto-triage-issues</code> handled three runs. Two of them were textbook efficiency: triggered the moment a new issue landed, ran the pre-activation check, decided there was nothing worth labeling, and wrapped up in under 42 seconds flat. No fuss, no drama. Then came the Monday scheduled sweep. That run went a different direction: 18 turns, 817,000 tokens, and after all that contemplation… a failure. Somewhere between turn one and turn eighteen, the triage workflow decided this batch of issues deserved its most thoughtful analysis yet, burned through a frontier model’s patience, and still couldn’t quite close the loop.</p> <p>It’s the classic overachiever problem — sometimes the issues that look the simplest turn out to be the ones that take all day.</p> <p> <strong>Usage tip</strong>: If your <code dir="auto">auto-triage-issues</code> scheduled runs are consistently expensive, the new <code dir="auto">agentic_fraction</code> metric in <code dir="auto">gh aw audit</code> can help you identify which turns are pure data-gathering and could be moved to deterministic shell steps.</p> <p>→ <a href="https://github.com/github/gh-aw/blob/main/.github/workflows/auto-triage-issues.md">View the workflow on GitHub</a></p> <hr> <div><h2 id="try-it-out">Try It Out</h2></div> <p>Update to <a href="https://github.com/github/gh-aw/releases/tag/v0.64.4">v0.64.4</a> today with <code dir="auto">gh extension upgrade aw</code>. The integrity-aware cache-memory migration will trigger a one-time cache miss on first run — expected and safe. As always, questions and contributions are welcome in <a href="https://github.com/github/gh-aw">github/gh-aw</a>.</p>Weekly Update – March 23, 2026https://github.github.com/gh-aw/blog/2026-03-23-weekly-update/https://github.github.com/gh-aw/blog/2026-03-23-weekly-update/Mon, 23 Mar 2026 00:00:00 GMT<p>Another week, another flurry of releases in <a href="https://github.com/github/gh-aw">github/gh-aw</a>. Eight versions shipped between March 18 and March 21, pushing security hardening, extensibility, and performance improvements across the board. Here’s what you need to know.</p> <div><h2 id="releases-this-week">Releases This Week</h2></div> <div><h3 id="v0625--march-21"><a href="https://github.com/github/gh-aw/releases/tag/v0.62.5">v0.62.5</a> — March 21</h3></div> <p>The latest release leads with two important security fixes:</p> <ul> <li><strong>Supply chain protection</strong>: The Trivy vulnerability scanner action was removed after a supply chain compromise was discovered (<a href="https://github.com/github/gh-aw/pull/22007">#22007</a>, <a href="https://github.com/github/gh-aw/pull/22065">#22065</a>). Scanning has been replaced with a safer alternative.</li> <li><strong>Public repo integrity hardening</strong> (<a href="https://github.com/github/gh-aw/pull/21969">#21969</a>): GitHub App authentication no longer exempts public repositories from the minimum-integrity guard policy, closing a gap where untrusted content could bypass integrity checks.</li> </ul> <p>On the feature side:</p> <ul> <li><strong>Timezone support for <code dir="auto">on.schedule</code></strong> (<a href="https://github.com/github/gh-aw/pull/22018">#22018</a>): Cron entries now accept an optional <code dir="auto">timezone</code> field — finally, no more mental UTC arithmetic when you want your workflow to run “at 9 AM Pacific”.</li> <li><strong>Boolean expression optimizer</strong> (<a href="https://github.com/github/gh-aw/pull/22025">#22025</a>): Condition trees are optimized at compile time, generating cleaner <code dir="auto">if:</code> expressions in compiled workflows.</li> <li><strong>Wildcard <code dir="auto">target-repo</code> in safe-output handlers</strong> (<a href="https://github.com/github/gh-aw/pull/21877">#21877</a>): Use <code dir="auto">target-repo: "*"</code> to write a single handler definition that works across any repository.</li> </ul> <div><h3 id="v0623--march-20"><a href="https://github.com/github/gh-aw/releases/tag/v0.62.3">v0.62.3</a> — March 20</h3></div> <p>This one is a standout for extensibility and speed:</p> <ul> <li><strong>Custom Actions as Safe Output Tools</strong> (<a href="https://github.com/github/gh-aw/pull/21752">#21752</a>): You can now expose any GitHub Action as an MCP tool via the new <code dir="auto">safe-outputs.actions</code> block. The compiler resolves <code dir="auto">action.yml</code> at compile time to derive the tool schema and inject it into the agent — no custom wiring needed. This opens the door to a whole ecosystem of reusable safe-output handlers built from standard Actions.</li> <li><strong>~20 seconds faster per workflow run</strong> (<a href="https://github.com/github/gh-aw/pull/21873">#21873</a>): A bump to <code dir="auto">DefaultFirewallVersion</code> v0.24.5 eliminates a 10-second shutdown delay for both the agent container and the threat detection container. That’s 20 free seconds on every single run.</li> <li><strong><code dir="auto">trustedBots</code> support in MCP Gateway</strong> (<a href="https://github.com/github/gh-aw/pull/21865">#21865</a>): Pass an allowlist of additional GitHub bot identities to the MCP Gateway, enabling safe cross-bot collaboration in guarded environments.</li> <li><strong><code dir="auto">gh-aw-metadata</code> v3</strong> (<a href="https://github.com/github/gh-aw/pull/21899">#21899</a>): Lock files now embed the configured agent ID/model in the <code dir="auto">gh-aw-metadata</code> comment, making audits much easier.</li> </ul> <div><h3 id="v0622--march-19"><a href="https://github.com/github/gh-aw/releases/tag/v0.62.2">v0.62.2</a> — March 19</h3></div> <p>! <strong>Breaking change alert</strong>: <code dir="auto">lockdown: true</code> is gone. It has been replaced by the more expressive <code dir="auto">min-integrity</code> field. If you have <code dir="auto">lockdown: false</code> in your frontmatter, remove it — it’s no longer recognized. The new integrity-level system gives you finer control over what content can trigger your workflows.</p> <p>This release also introduces <strong>integrity filtering for log analysis</strong> — the <code dir="auto">gh aw logs</code> command can now filter to only runs where DIFC integrity events were triggered, making security investigations much faster.</p> <div><h3 id="v0620--march-19"><a href="https://github.com/github/gh-aw/releases/tag/v0.62.0">v0.62.0</a> — March 19</h3></div> <p>The GitHub MCP guard policy graduates to <strong>general availability</strong>. The policy automatically configures appropriate access controls on the GitHub MCP server at runtime — no manual <code dir="auto">lockdown</code> configuration required. Also new: <strong>inline custom safe-output scripts</strong>, letting you define JavaScript handlers directly in your workflow frontmatter without a separate file.</p> <div><h3 id="v061x--march-18"><a href="https://github.com/github/gh-aw/releases/tag/v0.61.2">v0.61.x</a> — March 18</h3></div> <p>Three patch releases covered:</p> <ul> <li>Signed-commit support for protected branches (<a href="https://github.com/github/gh-aw/releases/tag/v0.61.1">v0.61.1</a>)</li> <li>Broader ecosystem domain coverage for language package registries (<a href="https://github.com/github/gh-aw/releases/tag/v0.61.2">v0.61.2</a>)</li> <li>Critical <code dir="auto">workflow_dispatch</code> expression evaluation fix (<a href="https://github.com/github/gh-aw/releases/tag/v0.61.2">v0.61.2</a>)</li> </ul> <div><h2 id="notable-pull-requests">Notable Pull Requests</h2></div> <p>Several important fixes landed today (March 23):</p> <ul> <li><strong><a href="https://github.com/github/gh-aw/pull/22371">Propagate <code dir="auto">assign_copilot</code> failures to agent failure comment</a></strong> (<a href="https://github.com/github/gh-aw/pull/22371">#22371</a>): When <code dir="auto">assign_copilot_to_created_issues</code> fails (e.g., bad credentials), the failure context is now surfaced in the agent failure issue so you can actually diagnose it.</li> <li><strong><a href="https://github.com/github/gh-aw/pull/22347">Post failure comment when agent assignment fails</a></strong> (<a href="https://github.com/github/gh-aw/pull/22347">#22347</a>): A follow-up to the above — the failure now also posts a comment directly on the target issue or PR for immediate visibility.</li> <li><strong><a href="https://github.com/github/gh-aw/pull/22359">Hot-path regexp and YAML parse elimination</a></strong> (<a href="https://github.com/github/gh-aw/pull/22359">#22359</a>): Redundant regexp compilations and YAML re-parses on the hot path have been eliminated, improving throughput for high-volume workflow execution.</li> <li><strong><a href="https://github.com/github/gh-aw/pull/22360"><code dir="auto">blocked-users</code> and <code dir="auto">approval-labels</code> in guard policy</a></strong> (<a href="https://github.com/github/gh-aw/pull/22360">#22360</a>): The <code dir="auto">tools.github</code> guard policy now supports <code dir="auto">blocked-users</code> and <code dir="auto">approval-labels</code> fields, giving you more granular control over who can trigger guarded workflows.</li> <li><strong><a href="https://github.com/github/gh-aw/pull/22335">Pull merged workflow files after GitHub confirms readiness</a></strong> (<a href="https://github.com/github/gh-aw/pull/22335">#22335</a>): A race condition where merged workflow files were pulled before GitHub reported the workflow as ready has been fixed.</li> </ul> <div><h2 id="-agent-of-the-week-contribution-check"> Agent of the Week: contribution-check</h2></div> <p>Your tireless four-hourly guardian of PR quality — reads every open pull request and evaluates it against <code dir="auto">CONTRIBUTING.md</code> for compliance and completeness.</p> <p><code dir="auto">contribution-check</code> ran five times this week (once every four hours, as scheduled) and processed a steady stream of incoming PRs, creating issues for contributors who needed guidance, adding labels, and leaving review comments. Four of five runs completed in under 5 minutes with 6–9 turns. The fifth run, however, apparently found the task of reviewing PRs during a particularly active Sunday evening so intellectually stimulating that it worked through 50 turns and consumed 1.55 million tokens — roughly 5× its usual appetite — before the safe_outputs step politely called it a night. It still managed to file issues, label PRs, and post comments on the way out. Overachiever.</p> <p>One earlier run also hit a minor hiccup: the pre-agent filter step forgot to write its output file, leaving the agent with nothing to evaluate. Rather than fabricating a list of PRs to review, it dutifully reported “missing data” and moved on. Sometimes the bravest thing is knowing when there’s nothing to do.</p> <p> <strong>Usage tip</strong>: The <code dir="auto">contribution-check</code> pattern works best when your <code dir="auto">CONTRIBUTING.md</code> is explicit and opinionated — the more specific your guidelines, the more actionable its feedback will be for contributors.</p> <p>→ <a href="https://github.com/github/gh-aw/blob/main/.github/workflows/contribution-check.md">View the workflow on GitHub</a></p> <div><h2 id="try-it-out">Try It Out</h2></div> <p>Update to <a href="https://github.com/github/gh-aw/releases/tag/v0.62.5">v0.62.5</a> to pick up the security fixes and timezone support. If you’ve been holding off on migrating from <code dir="auto">lockdown: true</code>, now’s the time — check the <a href="https://github.com/github/gh-aw/releases/tag/v0.62.2">v0.62.2 release notes</a> for the migration path. As always, contributions and feedback are welcome in <a href="https://github.com/github/gh-aw">github/gh-aw</a>.</p>Weekly Update – March 18, 2026https://github.github.com/gh-aw/blog/2026-03-18-weekly-update/https://github.github.com/gh-aw/blog/2026-03-18-weekly-update/Wed, 18 Mar 2026 00:00:00 GMT<p>It’s been a busy week in <a href="https://github.com/github/gh-aw">github/gh-aw</a> — seven releases shipped between March 13 and March 17, covering everything from a security model overhaul to a new label-based trigger and a long-overdue terminal resize fix. Let’s dig in.</p> <div><h2 id="releases-this-week">Releases This Week</h2></div> <div><h3 id="v0610--march-17"><a href="https://github.com/github/gh-aw/releases/tag/v0.61.0">v0.61.0</a> — March 17</h3></div> <p>The freshest release focuses on reliability and developer experience:</p> <ul> <li><strong>Automatic debug logging</strong> (<a href="https://github.com/github/gh-aw/pull/21406">#21406</a>): Set <code dir="auto">ACTIONS_RUNNER_DEBUG=true</code> on your runner and full debug logging activates automatically — no more manually adding <code dir="auto">DEBUG=*</code> to every troubleshooting run.</li> <li><strong>Cross-repo project item updates</strong> (<a href="https://github.com/github/gh-aw/pull/21404">#21404</a>): <code dir="auto">update_project</code> now accepts a <code dir="auto">target_repo</code> parameter, so org-level project boards can update fields on items from any repository.</li> <li><strong>GHE Cloud data residency support</strong> (<a href="https://github.com/github/gh-aw/pull/21408">#21408</a>): Compiled workflows now auto-inject a <code dir="auto">GH_HOST</code> step, fixing <code dir="auto">gh</code> CLI failures on <code dir="auto">*.ghe.com</code> instances.</li> <li><strong>CI build artifacts</strong> (<a href="https://github.com/github/gh-aw/pull/21440">#21440</a>): The <code dir="auto">build</code> CI job now uploads the compiled <code dir="auto">gh-aw</code> binary as a downloadable artifact — handy for testing PRs without a local build.</li> </ul> <div><h3 id="v0600--march-17"><a href="https://github.com/github/gh-aw/releases/tag/v0.60.0">v0.60.0</a> — March 17</h3></div> <p>This release rewires the security model. <strong>Breaking change</strong>: automatic <code dir="auto">lockdown=true</code> is gone. Instead, the runtime now auto-configures guard policies on the GitHub MCP server — <code dir="auto">min_integrity=approved</code> for public repos, <code dir="auto">min_integrity=none</code> for private/internal. Remove any explicit <code dir="auto">lockdown: false</code> from your frontmatter; it’s no longer needed.</p> <p>Other highlights:</p> <ul> <li><strong>GHES domain auto-allowlisting</strong> (<a href="https://github.com/github/gh-aw/pull/21301">#21301</a>): When <code dir="auto">engine.api-target</code> points to a GHES instance, the compiler automatically adds GHES API hostnames to the firewall. No more silent blocks after every recompile.</li> <li><strong><code dir="auto">github-app:</code> auth in APM dependencies</strong> (<a href="https://github.com/github/gh-aw/pull/21286">#21286</a>): APM <code dir="auto">dependencies:</code> can now use <code dir="auto">github-app:</code> auth for cross-org private package access.</li> </ul> <div><h3 id="v0590--march-16"><a href="https://github.com/github/gh-aw/releases/tag/v0.59.0">v0.59.0</a> — March 16</h3></div> <p>A feature-packed release with two breaking changes (field renames in <code dir="auto">safe-outputs.allowed-domains</code>) and several new capabilities:</p> <ul> <li><strong>Label Command Trigger</strong> (<a href="https://github.com/github/gh-aw/pull/21118">#21118</a>): Activate a workflow by adding a label to an issue, PR, or discussion. The label is automatically removed so it can be reapplied to re-trigger.</li> <li><strong><code dir="auto">gh aw domains</code> command</strong> (<a href="https://github.com/github/gh-aw/pull/21086">#21086</a>): Inspect the effective network domain configuration for all your workflows, with per-domain ecosystem annotations.</li> <li><strong>Pre-activation step injection</strong> — New <code dir="auto">on.steps</code> and <code dir="auto">on.permissions</code> frontmatter fields let you inject custom steps and permissions into the activation job for advanced scenarios.</li> </ul> <div><h3 id="earlier-in-the-week">Earlier in the Week</h3></div> <ul> <li><a href="https://github.com/github/gh-aw/releases/tag/v0.58.3">v0.58.3</a> (March 15): MCP write-sink guard policy for non-GitHub MCP servers, Copilot pre-flight diagnostic for GHES, and a richer run details step summary.</li> <li><a href="https://github.com/github/gh-aw/releases/tag/v0.58.2">v0.58.2</a> (March 14): GHES auto-detection in <code dir="auto">audit</code> and <code dir="auto">add-wizard</code>, <code dir="auto">excluded-files</code> support for <code dir="auto">create-pull-request</code>, and clearer <code dir="auto">run</code> command errors.</li> <li><a href="https://github.com/github/gh-aw/releases/tag/v0.58.1">v0.58.1</a> / <a href="https://github.com/github/gh-aw/releases/tag/v0.58.0">v0.58.0</a> (March 13): <code dir="auto">call-workflow</code> safe output for chaining workflows, <code dir="auto">checkout: false</code> for agent jobs, custom OpenAI/Anthropic API endpoints, and 92 merged PRs in v0.58.0 alone.</li> </ul> <div><h2 id="notable-pull-requests">Notable Pull Requests</h2></div> <ul> <li><strong><a href="https://github.com/github/gh-aw/pull/21510">Top-level <code dir="auto">github-app</code> fallback</a></strong> (<a href="https://github.com/github/gh-aw/pull/21510">#21510</a>): Define your GitHub App config once at the top level and let it propagate to safe-outputs, checkout, MCP, APM, and activation — instead of repeating it in every section.</li> <li><strong><a href="https://github.com/github/gh-aw/pull/21511">GitHub App-only permission scopes</a></strong> (<a href="https://github.com/github/gh-aw/pull/21511">#21511</a>): 31 new <code dir="auto">PermissionScope</code> constants cover repository, org, and user-level GitHub App permissions (e.g., <code dir="auto">administration</code>, <code dir="auto">members</code>, <code dir="auto">environments</code>).</li> <li><strong><a href="https://github.com/github/gh-aw/pull/21557">Custom Huh theme</a></strong> (<a href="https://github.com/github/gh-aw/pull/21557">#21557</a>): All 11 interactive CLI forms now use a Dracula-inspired theme consistent with the rest of the CLI’s visual identity.</li> <li><strong><a href="https://github.com/github/gh-aw/pull/21575">Weekly blog post writer workflow</a></strong> (<a href="https://github.com/github/gh-aw/pull/21575">#21575</a>): Yes, the workflow that wrote this post was itself merged this week. Meta!</li> <li><strong><a href="https://github.com/github/gh-aw/pull/21601">CI job timeout limits</a></strong> (<a href="https://github.com/github/gh-aw/pull/21601">#21601</a>): All 25 CI jobs that relied on GitHub’s 6-hour default now have explicit timeouts, preventing a stuck test from silently burning runner compute.</li> </ul> <div><h2 id="-agent-of-the-week-auto-triage-issues"> Agent of the Week: auto-triage-issues</h2></div> <p>The first-ever Agent of the Week goes to the workflow that handles the unglamorous but essential job of keeping the issue tracker from becoming a swamp.</p> <p><code dir="auto">auto-triage-issues</code> runs on a schedule and fires on every new issue, reading each one and deciding how to categorize it. This week it ran five times — three successful runs and two that were triggered by push events to a feature branch (which apparently fire the workflow but don’t give it much to work with). On its scheduled run this morning, it found zero open issues in the repository, so it created a tidy summary discussion to announce the clean state, as instructed. On an earlier issues-triggered run, it attempted to triage issue <a href="https://github.com/github/gh-aw/pull/21572">#21572</a> but hit empty results from GitHub MCP tools on all three read attempts — so it gracefully called <code dir="auto">missing_data</code> and moved on rather than hallucinating a label.</p> <p>Across its recent runs it made 131 <code dir="auto">search_repositories</code> calls. We’re not sure why it finds repository searches so compelling, but clearly it’s very thorough about knowing its neighborhood before making any decisions.</p> <p> <strong>Usage tip</strong>: Pair <code dir="auto">auto-triage-issues</code> with a notify workflow on specific labels (e.g., <code dir="auto">security</code> or <code dir="auto">needs-repro</code>) so the right people get pinged automatically without anyone having to watch the inbox.</p> <p>→ <a href="https://github.com/github/gh-aw/blob/main/.github/workflows/auto-triage-issues.md">View the workflow on GitHub</a></p> <div><h2 id="try-it-out">Try It Out</h2></div> <p>Update to <a href="https://github.com/github/gh-aw/releases/tag/v0.61.0">v0.61.0</a> to get all the improvements from this packed week. If you run workflows on GHES or in GHE Cloud, the new auto-detection and <code dir="auto">GH_HOST</code> injection features are especially worth trying. As always, contributions and feedback are welcome in <a href="https://github.com/github/gh-aw">github/gh-aw</a>.</p>Meet the Workflows: Project Coordinationhttps://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-campaigns/https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-campaigns/Tue, 13 Jan 2026 16:00:00 GMT<img src="https://github.github.com/gh-aw/peli.png" alt="Peli de Halleux" width="200"> <p>My dear friends, we’ve arrived at the <em>grand finale</em> - the most spectacular room of all in <a href="https://github.github.com/gh-aw/blog/2026-01-12-welcome-to-pelis-agent-factory/">Peli’s Agent Factory</a>!</p> <p>We’ve journeyed through 18 categories of workflows - from triage bots to code quality improvers, from security guards to creative poets, culminating in <a href="https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-advanced-analytics/">advanced analytics</a> that use machine learning to understand agent behavior patterns. Each workflow handles its individual task admirably.</p> <p>But here’s the ultimate challenge: how do you coordinate <em>multiple</em> agents working toward a shared goal? How do you break down a large initiative like “migrate all workflows to a new engine” into trackable sub-tasks that different agents can tackle? How do you monitor progress, alert on delays, and ensure the whole is greater than the sum of its parts? This final post explores planning, task-decomposition and project coordination workflows - the orchestration layer that proves AI agents can handle not just individual tasks, but entire structured projects requiring careful coordination and progress tracking.</p> <div><h2 id="planning--project-coordination-workflows">Planning &#x26; Project Coordination Workflows</h2></div> <p>These agents coordinate multi-agent plans and projects:</p> <ul> <li><strong><a href="https://github.com/github/gh-aw/tree/2c1f68a721ae7b3b67d0c2d93decf1fa5bcf7ee3/.github/workflows/plan.md?plain=1">Plan Command</a></strong> - Breaks down issues into actionable sub-tasks via <code dir="auto">/plan</code> command - <strong>514 merged PRs out of 761 proposed (67% merge rate)</strong></li> <li><strong><a href="https://github.com/github/gh-aw/tree/2c1f68a721ae7b3b67d0c2d93decf1fa5bcf7ee3/.github/workflows/discussion-task-miner.md?plain=1">Discussion Task Miner</a></strong> - Extracts actionable tasks from discussion threads - <strong>60 merged PRs out of 105 proposed (57% merge rate)</strong></li> </ul> <p>Plan Command has contributed <strong>514 merged PRs out of 761 proposed (67% merge rate)</strong>, providing on-demand task decomposition that breaks complex issues into actionable sub-tasks. This is the <strong>highest-volume workflow by attribution</strong> in the entire factory. Developers can comment <code dir="auto">/plan</code> on any issue to get an AI-generated breakdown into actionable sub-issues that agents can work on. A verified example causal chain: <a href="https://github.com/github/gh-aw/discussions/7631">Discussion #7631</a> → <a href="https://github.com/github/gh-aw/issues/8058">Issue #8058</a> → <a href="https://github.com/github/gh-aw/pull/8110">PR #8110</a>.</p> <p>Discussion Task Miner has contributed <strong>60 merged PRs out of 105 proposed (57% merge rate)</strong>, continuously scanning discussions to extract actionable tasks that might otherwise be lost. The workflow demonstrates perfect causal chain attribution: when it creates an issue from a discussion, and Copilot Coding Assistant later fixes that issue, the resulting PR is correctly attributed to Discussion Task Miner. A verified example: <a href="https://github.com/github/gh-aw/discussions/13934">Discussion #13934</a> → <a href="https://github.com/github/gh-aw/issues/14084">Issue #14084</a> → <a href="https://github.com/github/gh-aw/pull/14129">PR #14129</a>. Recent merged examples include <a href="https://github.com/github/gh-aw/pull/13920">fixing firewall SSL-bump field extraction</a> and <a href="https://github.com/github/gh-aw/pull/13918">adding security rationale to permissions documentation</a>.</p> <p>We learned that individual agents are great at focused tasks, but orchestrating multiple agents toward a shared goal requires careful architecture. Project coordination isn’t just about breaking down work - it’s about discovering work (Task Miner), planning work (Plan Command), and tracking work (Workflow Health Manager).</p> <p>These workflows implement patterns like epic issues, progress tracking, and deadline management. They prove that AI agents can handle not just individual tasks, but entire projects when given proper coordination infrastructure.</p> <div><h2 id="using-these-workflows">Using These Workflows</h2></div> <p>You can add these workflows to your own repository and remix them. Get going with our <a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a>, then run one of the following:</p> <p><strong>Plan Command:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/plan.md</span></div></div></code></pre></figure></div> <p><strong>Discussion Task Miner:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/discussion-task-miner.md</span></div></div></code></pre></figure></div> <p>Then edit and remix the workflow specifications to meet your needs, regenerate the lock file using <code dir="auto">gh aw compile</code>, and push to your repository. See our <a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a> for further installation and setup instructions.</p> <p>You can also <a href="https://github.github.com/gh-aw/setup/creating-workflows/">create your own workflows</a>.</p> <div><h2 id="learn-more">Learn More</h2></div> <ul> <li><strong><a href="https://github.github.com/gh-aw/">GitHub Agentic Workflows</a></strong> - The technology behind the workflows</li> <li><strong><a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a></strong> - How to write and compile workflows</li> </ul> <hr> <div><h2 id="what-weve-learned">What We’ve Learned</h2></div> <p>Throughout this 19-part journey, we’ve explored workflows spanning from simple triage bots to sophisticated multi-phase improvers, from security guards to creative poets, from individual task automation to organization-wide orchestration.</p> <p>The key insight? <strong>AI agents are most powerful when they’re specialized, well-coordinated, and designed for their specific context.</strong> No single agent does everything - instead, we have an ecosystem where each agent excels at its particular job, and they work together through careful orchestration.</p> <p>We’ve learned that observability is essential, that incremental progress beats heroic efforts, that security needs careful boundaries, and that even “fun” workflows can drive meaningful engagement. We’ve discovered that AI agents can maintain documentation, manage campaigns, analyze their own behavior, and continuously improve codebases - when given the right architecture and guardrails.</p> <p>As you build your own agentic workflows, remember: start small, measure everything, iterate based on real usage, and don’t be afraid to experiment. The workflows we’ve shown you evolved through experimentation and real-world use. Yours will too.</p> <p><em>This is part 19 (final) of a 19-part series exploring the workflows in Peli’s Agent Factory.</em></p>Meet the Workflows: Advanced Analytics & MLhttps://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-advanced-analytics/https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-advanced-analytics/Tue, 13 Jan 2026 15:00:00 GMT<img src="https://github.github.com/gh-aw/peli.png" alt="Peli de Halleux" width="200"> <p><em>Ooh!</em> Time to plunge into the <em>data wonderland</em> at <a href="https://github.github.com/gh-aw/blog/2026-01-12-welcome-to-pelis-agent-factory/">Peli’s Agent Factory</a>! Where numbers dance and patterns sing!</p> <p>In our <a href="https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-organization/">previous post</a>, we explored organization and cross-repo workflows that operate at enterprise scale - analyzing dozens of repositories together to find patterns and outliers that single-repo analysis would miss. We learned that perspective matters: what looks normal in isolation might signal drift at scale.</p> <p>Beyond tracking basic metrics (run time, cost, success rate), we wanted deeper insights into <em>how</em> our agents actually behave and <em>how</em> developers interact with them. What patterns emerge from thousands of agent prompts? What makes some PR conversations more effective than others? How do usage patterns reveal improvement opportunities? This is where we brought out the big guns: machine learning, natural language processing, sentiment analysis, and clustering algorithms. Advanced analytics workflows don’t just count things - they understand them, finding patterns and insights that direct observation would never reveal.</p> <div><h2 id="advanced-analytics--ml-workflows">Advanced Analytics &#x26; ML Workflows</h2></div> <p>These agents use sophisticated analysis techniques to extract insights:</p> <ul> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/copilot-session-insights.md?plain=1">Copilot Session Insights</a></strong> - Analyzes Copilot coding agent usage patterns and metrics - <strong>32 analysis discussions</strong></li> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/copilot-pr-nlp-analysis.md?plain=1">Copilot PR NLP Analysis</a></strong> - Natural language processing on PR conversations</li> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/prompt-clustering-analysis.md?plain=1">Prompt Clustering Analysis</a></strong> - Clusters and categorizes agent prompts using ML - <strong>27 analysis discussions</strong></li> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/copilot-agent-analysis.md?plain=1">Copilot Agent Analysis</a></strong> - Deep analysis of agent behavior patterns - <strong>48 daily analysis discussions</strong></li> </ul> <p>Prompt Clustering Analysis has created <strong>27 analysis discussions</strong> using ML to categorize thousands of agent prompts - for example, <a href="https://github.com/github/gh-aw/discussions/6918">#6918</a> clustering agent prompts to identify patterns and optimization opportunities. It revealed patterns we never noticed (“oh, 40% of our prompts are about error handling”).</p> <p>Copilot PR NLP Analysis applies natural language processing to PR conversations, performing sentiment analysis and identifying linguistic patterns across agent interactions. It found that PRs with questions in the title get faster review.</p> <p>Copilot Session Insights has created <strong>32 analysis discussions</strong> examining Copilot coding agent usage patterns and metrics across the workflow ecosystem. It identifies common patterns and failure modes.</p> <p>Copilot Coding Agent Analysis has created <strong>48 daily analysis discussions</strong> providing deep analysis of agent behavior patterns - for example, <a href="https://github.com/github/gh-aw/discussions/6913">#6913</a> with the daily Copilot coding agent analysis.</p> <p>What we learned: <strong>meta-analysis is powerful</strong> - using AI to analyze AI systems reveals insights that direct observation misses. These workflows helped us understand not just what our agents do, but <em>how</em> they behave and how users interact with them.</p> <div><h2 id="using-these-workflows">Using These Workflows</h2></div> <p>You can add these workflows to your own repository and remix it as follows:</p> <p><strong>Copilot Session Insights:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/copilot-agent-analysis.md</span></div></div></code></pre></figure></div> <p><strong>Copilot PR NLP Analysis:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/copilot-pr-nlp-analysis</span></div></div></code></pre></figure></div> <p><strong>Prompt Clustering Analysis:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/prompt-clustering-analysis.md</span></div></div></code></pre></figure></div> <p><strong>Copilot Agent Analysis:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/copilot-agent-analysis.md</span></div></div></code></pre></figure></div> <p>Then edit and remix the workflow specifications to meet your needs, regenerate the lock file using <code dir="auto">gh aw compile</code>, and push to your repository. See our <a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a> for further installation and setup instructions.</p> <p>You can also <a href="https://github.github.com/gh-aw/setup/creating-workflows/">create your own workflows</a>.</p> <div><h2 id="learn-more">Learn More</h2></div> <ul> <li><strong><a href="https://github.github.com/gh-aw/">GitHub Agentic Workflows</a></strong> - The technology behind the workflows</li> <li><strong><a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a></strong> - How to write and compile workflows</li> </ul> <div><h2 id="next-up-project-coordination-workflows">Next Up: Project Coordination Workflows</h2></div> <p>We’ve reached the final stop: coordinating multiple agents toward shared, complex goals across extended timelines.</p> <p>Continue reading: <a href="https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-campaigns/">Project Coordination Workflows →</a></p> <hr> <p><em>This is part 18 of a 19-part series exploring the workflows in Peli’s Agent Factory.</em></p>Meet the Workflows: Organization & Cross-Repohttps://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-organization/https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-organization/Tue, 13 Jan 2026 14:00:00 GMT<img src="https://github.github.com/gh-aw/peli.png" alt="Peli de Halleux" width="200"> <p>Let’s zoom out at <a href="https://github.github.com/gh-aw/blog/2026-01-12-welcome-to-pelis-agent-factory/">Peli’s Agent Factory</a>!</p> <p>In our <a href="https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-multi-phase/">previous post</a>, we explored multi-phase improver workflows - our most ambitious agents that tackle big projects over multiple days, maintaining state and making incremental progress. These workflows proved that AI agents can handle complex, long-running initiatives when given the right architecture.</p> <p>But all that sophisticated functionality has focused on a single repository. What happens when you zoom out to organization scale? What insights emerge when you analyze dozens or hundreds of repositories together? What looks perfectly normal in one repo might be a red flag across an organization. Organization and cross-repo workflows operate at enterprise scale, requiring careful permission management, thoughtful rate limiting, and different analytical lenses. Let’s explore workflows that see the forest, not just the trees.</p> <div><h2 id="organization--cross-repo-workflows">Organization &#x26; Cross-Repo Workflows</h2></div> <p>These agents work at organization scale, across multiple repositories:</p> <ul> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/org-health-report.md?plain=1">Org Health Report</a></strong> - Organization-wide repository health metrics - <strong>4 organization health discussions</strong> created</li> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/stale-repo-identifier.md?plain=1">Stale Repo Identifier</a></strong> - Identifies inactive repositories - <strong>2 issues</strong> flagging truly stale repos</li> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/ubuntu-image-analyzer.md?plain=1">Ubuntu Image Analyzer</a></strong> - Documents GitHub Actions runner environments - <strong>4 merged PRs out of 8 proposed (50% merge rate)</strong></li> </ul> <p>Scaling agents across an entire organization changes the game. Org Health Report has created <strong>4 organization health discussions</strong> analyzing dozens of repositories at scale - for example, <a href="https://github.com/github/gh-aw/discussions/6777">#6777</a> with the December 2025 organization health report. It identifies patterns and outliers (“these three repos have no tests, these five haven’t been updated in months”).</p> <p>Stale Repo Identifier has created <strong>2 issues</strong> flagging truly stale repositories for organizational hygiene - for example, <a href="https://github.com/github/gh-aw/issues/5384">#5384</a> identifying Skills-Based-Volunteering-Public as truly stale. It helps find abandoned projects that should be archived or transferred.</p> <p>We learned that <strong>cross-repo insights are different</strong> - what looks fine in one repository might be an outlier across the organization. These workflows require careful permission management (reading across repos needs organization-level tokens) and thoughtful rate limiting (you can hit API limits fast when analyzing 50+ repos).</p> <p>Ubuntu Image Analyzer has contributed <strong>4 merged PRs out of 8 proposed (50% merge rate)</strong>, documenting GitHub Actions runner environments to keep the team informed about available tools and versions. It’s wonderfully meta - it documents the very environment that runs our agents.</p> <div><h2 id="using-these-workflows">Using These Workflows</h2></div> <p>You can add these workflows to your own repository and remix them. Get going with our <a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a>, then run one of the following:</p> <p><strong>Org Health Report:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/org-health-report.md</span></div></div></code></pre></figure></div> <p><strong>Stale Repo Identifier:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/stale-repo-identifier.md</span></div></div></code></pre></figure></div> <p><strong>Ubuntu Image Analyzer:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/ubuntu-image-analyzer.md</span></div></div></code></pre></figure></div> <p>Then edit and remix the workflow specifications to meet your needs, regenerate the lock file using <code dir="auto">gh aw compile</code>, and push to your repository. See our <a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a> for further installation and setup instructions.</p> <p>You can also <a href="https://github.github.com/gh-aw/setup/creating-workflows/">create your own workflows</a>.</p> <div><h2 id="learn-more">Learn More</h2></div> <ul> <li><strong><a href="https://github.github.com/gh-aw/">GitHub Agentic Workflows</a></strong> - The technology behind the workflows</li> <li><strong><a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a></strong> - How to write and compile workflows</li> </ul> <div><h2 id="next-up-advanced-analytics--ml-workflows">Next Up: Advanced Analytics &#x26; ML Workflows</h2></div> <p>Cross-repo insights reveal patterns, but we wanted to go even deeper - using machine learning to understand agent behavior.</p> <p>Continue reading: <a href="https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-advanced-analytics/">Advanced Analytics &#x26; ML Workflows →</a></p> <hr> <p><em>This is part 17 of a 19-part series exploring the workflows in Peli’s Agent Factory.</em></p>Meet the Workflows: Multi-Phase Improvershttps://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-multi-phase/https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-multi-phase/Tue, 13 Jan 2026 13:00:00 GMT<img src="https://github.github.com/gh-aw/peli.png" alt="Peli de Halleux" width="200"> <p>Let’s continue our journey through <a href="https://github.github.com/gh-aw/blog/2026-01-12-welcome-to-pelis-agent-factory/">Peli’s Agent Factory</a>!</p> <p>In our <a href="https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-tool-infrastructure/">previous post</a>, we explored infrastructure workflows - the meta-monitoring layer that validates MCP servers, checks tool configurations, and ensures the platform itself stays healthy. These workflows watch the watchers, providing visibility into the invisible plumbing.</p> <p>Most workflows we’ve seen so far run once and complete: analyze this PR, triage that issue, test this deployment. They’re ephemeral - they execute, produce results, and disappear. But what about projects that are too big to tackle in a single run? What about initiatives that require research, setup, and incremental implementation? Traditional CI/CD is built for stateless execution, but we discovered something powerful: workflows that maintain state across days, working a little bit each day like a persistent team member who never takes breaks. Welcome to our most ambitious experiment - multi-phase improvers that prove AI agents can handle complex, long-running projects.</p> <div><h2 id="multi-phase-improver-workflows">Multi-Phase Improver Workflows</h2></div> <p>These are some of our most ambitious agents - they tackle big projects over multiple days:</p> <ul> <li><strong><a href="https://github.com/githubnext/agentics/blob/main/workflows/daily-backlog-burner.md?plain=1">Daily Backlog Burner</a></strong> - Systematically works through issues and PRs, one day at a time</li> <li><strong><a href="https://github.com/githubnext/agentics/blob/main/workflows/daily-perf-improver.md?plain=1">Daily Perf Improver</a></strong> - Three-phase performance optimization (research, setup, implement)</li> <li><strong><a href="https://github.com/githubnext/agentics/blob/main/workflows/daily-qa.md?plain=1">Daily QA</a></strong> - Continuous quality assurance that never sleeps</li> <li><strong><a href="https://github.com/githubnext/agentics/blob/main/workflows/daily-accessibility-review.md?plain=1">Daily Accessibility Review</a></strong> - WCAG compliance checking with Playwright</li> <li><strong><a href="https://github.com/githubnext/agentics/blob/main/workflows/pr-fix.md?plain=1">PR Fix</a></strong> - On-demand slash command to fix failing CI checks (super handy!)</li> </ul> <p>This is where we got experimental with agent persistence and multi-day workflows. Traditional CI runs are ephemeral, but these workflows maintain state across days using repo-memory. The Daily Perf Improver runs in three phases - research (find bottlenecks), setup (create profiling infrastructure), implement (optimize). It’s like having a performance engineer who works a little bit each day. The Daily Backlog Burner systematically tackles our issue backlog - one issue per day, methodically working through technical debt. We learned that <strong>incremental progress beats heroic sprints</strong> - these agents never get tired, never get distracted, and never need coffee breaks. The PR Fix workflow is our emergency responder - when CI fails, invoke <code dir="auto">/pr-fix</code> and it investigates and attempts repairs.</p> <p>These workflows prove that AI agents can handle complex, long-running projects when given the right architecture.</p> <div><h2 id="using-these-workflows">Using These Workflows</h2></div> <p>You can add these workflows to your own repository and remix them. Get going with our <a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a>, then run one of the following:</p> <p><strong>Daily Backlog Burner:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>githubnext/agentics/workflows/daily-backlog-burner.md</span></div></div></code></pre></figure></div> <p><strong>Daily Perf Improver:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>githubnext/agentics/workflows/daily-perf-improver.md</span></div></div></code></pre></figure></div> <p><strong>Daily QA:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>githubnext/agentics/workflows/daily-qa.md</span></div></div></code></pre></figure></div> <p><strong>Daily Accessibility Review:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>githubnext/agentics/workflows/daily-accessibility-review.md</span></div></div></code></pre></figure></div> <p><strong>PR Fix:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>githubnext/agentics/workflows/pr-fix.md</span></div></div></code></pre></figure></div> <p>Then edit and remix the workflow specifications to meet your needs, regenerate the lock file using <code dir="auto">gh aw compile</code>, and push to your repository. See our <a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a> for further installation and setup instructions.</p> <p>You can also <a href="https://github.github.com/gh-aw/setup/creating-workflows/">create your own workflows</a>.</p> <div><h2 id="learn-more">Learn More</h2></div> <ul> <li><strong><a href="https://github.github.com/gh-aw/">GitHub Agentic Workflows</a></strong> - The technology behind the workflows</li> <li><strong><a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a></strong> - How to write and compile workflows</li> </ul> <div><h2 id="next-up-organization--cross-repo-workflows">Next Up: Organization &#x26; Cross-Repo Workflows</h2></div> <p>Single-repository workflows are powerful, but what happens when you scale to an entire organization with dozens of repositories?</p> <p>Continue reading: <a href="https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-organization/">Organization &#x26; Cross-Repo Workflows →</a></p> <hr> <p><em>This is part 16 of a 19-part series exploring the workflows in Peli’s Agent Factory.</em></p>Meet the Workflows: Tool & Infrastructurehttps://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-tool-infrastructure/https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-tool-infrastructure/Tue, 13 Jan 2026 12:00:00 GMT<img src="https://github.github.com/gh-aw/peli.png" alt="Peli de Halleux" width="200"> <p><em>Delighted to have you back</em> on our journey through <a href="https://github.github.com/gh-aw/blog/2026-01-12-welcome-to-pelis-agent-factory/">Peli’s Agent Factory</a>! Now, prepare yourself for something <em>quite peculiar</em> - the room where we watch the watchers!</p> <p>In our <a href="https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-testing-validation/">previous post</a>, we explored testing and validation workflows that continuously verify our systems function correctly - running smoke tests, checking documentation across devices, and catching regressions before users notice them. We learned that trust must be verified.</p> <p>But here’s a question that kept us up at night: what if the <em>infrastructure itself</em> fails? What if MCP servers are misconfigured, tools become unavailable, or agents can’t access the capabilities they need? Testing the <em>application</em> is one thing; monitoring the <em>platform</em> that runs AI agents is another beast entirely. Tool and infrastructure workflows provide meta-monitoring - they watch the watchers, validate configurations, and ensure the invisible plumbing stays functional. Welcome to the layer where we monitor agents monitoring agents monitoring code. Yes, it gets very meta.</p> <div><h2 id="tool--infrastructure-workflows">Tool &#x26; Infrastructure Workflows</h2></div> <p>These agents monitor and analyze the agentic infrastructure itself:</p> <ul> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/mcp-inspector.md?plain=1">MCP Inspector</a></strong> - Validates Model Context Protocol configurations - ensures agents can access tools</li> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/github-mcp-tools-report.md?plain=1">GitHub MCP Tools Report</a></strong> - Analyzes available MCP tools - <strong>5 merged PRs out of 6 proposed (83% merge rate)</strong></li> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/agent-performance-analyzer.md?plain=1">Agent Performance Analyzer</a></strong> - Meta-orchestrator for agent quality - <strong>29 issues created, 14 leading to PRs (8 merged)</strong></li> </ul> <p>Infrastructure for AI agents is different from traditional infrastructure - you need to validate that tools are available, properly configured, and actually working. The MCP Inspector continuously validates Model Context Protocol server configurations because a misconfigured MCP server means an agent can’t access the tools it needs.</p> <p>GitHub MCP Tools Report Generator has contributed <strong>5 merged PRs out of 6 proposed (83% merge rate)</strong>, analyzing MCP tool availability and keeping tool configurations up to date. For example, <a href="https://github.com/github/gh-aw/pull/13169">PR #13169</a> updates MCP server tool configurations.</p> <p>Agent Performance Analyzer has created <strong>29 issues</strong> identifying performance problems across the agent ecosystem, and <strong>14 of those issues led to PRs</strong> (8 merged) by downstream agents - for example, it detected that draft PRs accounted for 9.6% of open PRs, created issue #12168, which led to <a href="https://github.com/github/gh-aw/pull/12174">#12174</a> implementing automated draft cleanup.</p> <p>We learned that <strong>layered observability</strong> is crucial: you need monitoring at the infrastructure level (are servers up?), the tool level (can agents access what they need?), and the agent level (are they performing well?).</p> <p>These workflows provide visibility into the invisible.</p> <div><h2 id="using-these-workflows">Using These Workflows</h2></div> <p>You can add these workflows to your own repository and remix them. Get going with our <a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a>, then run one of the following:</p> <p><strong>MCP Inspector:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/mcp-inspector.md</span></div></div></code></pre></figure></div> <p><strong>GitHub MCP Tools Report:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/github-mcp-tools-report.md</span></div></div></code></pre></figure></div> <p><strong>Agent Performance Analyzer:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/agent-performance-analyzer.md</span></div></div></code></pre></figure></div> <p>Then edit and remix the workflow specifications to meet your needs, regenerate the lock file using <code dir="auto">gh aw compile</code>, and push to your repository. See our <a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a> for further installation and setup instructions.</p> <p>You can also <a href="https://github.github.com/gh-aw/setup/creating-workflows/">create your own workflows</a>.</p> <div><h2 id="learn-more">Learn More</h2></div> <ul> <li><strong><a href="https://github.github.com/gh-aw/">GitHub Agentic Workflows</a></strong> - The technology behind the workflows</li> <li><strong><a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a></strong> - How to write and compile workflows</li> </ul> <div><h2 id="next-up-multi-phase-improver-workflows">Next Up: Multi-Phase Improver Workflows</h2></div> <p>Most workflows we’ve seen are stateless - they run, complete, and disappear. But what if agents could maintain memory across days?</p> <p>Continue reading: <a href="https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-multi-phase/">Multi-Phase Improver Workflows →</a></p> <hr> <p><em>This is part 15 of a 19-part series exploring the workflows in Peli’s Agent Factory.</em></p>Meet the Workflows: Testing & Validationhttps://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-testing-validation/https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-testing-validation/Tue, 13 Jan 2026 11:00:00 GMT<img src="https://github.github.com/gh-aw/peli.png" alt="Peli de Halleux" width="200"> <p><em>Right this way!</em> Let’s continue our grand tour of <a href="https://github.github.com/gh-aw/blog/2026-01-12-welcome-to-pelis-agent-factory/">Peli’s Agent Factory</a>! Into the <em>verification chamber</em> where nothing escapes scrutiny!</p> <p>In our <a href="https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-interactive-chatops/">previous post</a>, we explored ChatOps workflows - agents that respond to slash commands and GitHub reactions, providing on-demand assistance with full context.</p> <p>But making code <em>better</em> is only half the battle. We also need to ensure it keeps <em>working</em>. As we refactor, optimize, and evolve our codebase, how do we know we haven’t broken something? How do we catch regressions before users do? That’s where testing and validation workflows come in - the skeptical guardians that continuously verify our systems still function as expected. We learned that AI infrastructure needs constant health checks, because what worked yesterday might silently fail today. These workflows embody <strong>trust but verify</strong>.</p> <div><h2 id="testing--validation-workflows">Testing &#x26; Validation Workflows</h2></div> <p>These agents keep everything running smoothly through continuous testing:</p> <div><h3 id="code-quality--test-validation">Code Quality &#x26; Test Validation</h3></div> <ul> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/daily-testify-uber-super-expert.md?plain=1">Daily Testify Uber Super Expert</a></strong> - Analyzes test files daily and suggests testify-based improvements - <strong>19 issues created</strong>, <strong>13 led to merged PRs (100% causal chain merge rate)</strong></li> <li><strong><a href="https://github.com/githubnext/agentics/blob/main/workflows/daily-test-improver.md?plain=1">Daily Test Improver</a></strong> - Identifies coverage gaps and implements new tests incrementally</li> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/daily-compiler-quality.md?plain=1">Daily Compiler Quality Check</a></strong> - Analyzes compiler code to ensure it meets quality standards</li> </ul> <div><h3 id="user-experience--integration-testing">User Experience &#x26; Integration Testing</h3></div> <ul> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/daily-multi-device-docs-tester.md?plain=1">Daily Multi-Device Docs Tester</a></strong> - Tests documentation across devices with Playwright - <strong>2 merged PRs out of 2 proposed (100% merge rate)</strong></li> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/cli-consistency-checker.md?plain=1">CLI Consistency Checker</a></strong> - Inspects the CLI for inconsistencies, typos, and documentation gaps - <strong>80 merged PRs out of 102 proposed (78% merge rate)</strong></li> </ul> <div><h3 id="cicd-optimization">CI/CD Optimization</h3></div> <ul> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/ci-coach.md?plain=1">CI Coach</a></strong> - Analyzes CI pipelines and suggests optimizations - <strong>9 merged PRs out of 9 proposed (100% merge rate)</strong></li> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/workflow-health-manager.md?plain=1">Workflow Health Manager</a></strong> - Meta-orchestrator monitoring health of all agentic workflows - <strong>40 issues created</strong>, <strong>5 direct PRs + 14 causal chain PRs merged</strong></li> </ul> <p>The Daily Testify Expert has created <strong>19 issues</strong> analyzing test quality, and <strong>13 of those issues led to merged PRs</strong> by downstream agents - a perfect 100% causal chain merge rate. For example, <a href="https://github.com/github/gh-aw/issues/13701">issue #13701</a> led to <a href="https://github.com/github/gh-aw/pull/13722">#13722</a> modernizing console render tests with testify assertions. The Daily Test Improver works alongside it to identify coverage gaps and implement new tests.</p> <p>The Multi-Device Docs Tester uses Playwright to test our documentation on different screen sizes - it has created <strong>2 PRs (both merged)</strong>, including <a href="https://github.com/github/gh-aw/pull/7158">adding —network host to Playwright Docker containers</a>. It found mobile rendering issues we never would have caught manually. The CLI Consistency Checker has contributed <strong>80 merged PRs out of 102 proposed (78% merge rate)</strong>, maintaining consistency in CLI interface and documentation. Recent examples include <a href="https://github.com/github/gh-aw/pull/12762">removing undocumented CLI commands</a> and <a href="https://github.com/github/gh-aw/pull/11559">fixing upgrade command documentation</a>.</p> <p>CI Optimization Coach has contributed <strong>9 merged PRs out of 9 proposed (100% merge rate)</strong>, optimizing CI pipelines for speed and efficiency with perfect execution. Examples include <a href="https://github.com/github/gh-aw/pull/13925">removing unnecessary test dependencies</a> and <a href="https://github.com/github/gh-aw/pull/8176">fixing duplicate test execution</a>.</p> <p>The Workflow Health Manager has created <strong>40 issues</strong> monitoring the health of all other workflows, with <strong>25 of those issues leading to 34 PRs</strong> (14 merged) by downstream agents - plus <strong>5 direct PRs merged</strong>. For example, <a href="https://github.com/github/gh-aw/issues/14105">issue #14105</a> about a missing runtime file led to <a href="https://github.com/github/gh-aw/pull/14127">#14127</a> fixing the workflow configuration.</p> <p>These workflows embody the principle: <strong>trust but verify</strong>. Just because it worked yesterday doesn’t mean it works today.</p> <div><h2 id="using-these-workflows">Using These Workflows</h2></div> <p>You can add these workflows to your own repository and remix them. Get going with our <a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a>, then run one of the following:</p> <p><strong>Daily Testify Uber Super Expert:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/daily-testify-uber-super-expert.md</span></div></div></code></pre></figure></div> <p><strong>Daily Test Improver:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>githubnext/agentics/daily-test-improver</span></div></div></code></pre></figure></div> <p><strong>Daily Compiler Quality Check:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/daily-compiler-quality.md</span></div></div></code></pre></figure></div> <p><strong>Daily Multi-Device Docs Tester:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/daily-multi-device-docs-tester.md</span></div></div></code></pre></figure></div> <p><strong>CLI Consistency Checker:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/cli-consistency-checker.md</span></div></div></code></pre></figure></div> <p><strong>CI Coach:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/ci-coach.md</span></div></div></code></pre></figure></div> <p><strong>Workflow Health Manager:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/workflow-health-manager.md</span></div></div></code></pre></figure></div> <p>Then edit and remix the workflow specifications to meet your needs, regenerate the lock file using <code dir="auto">gh aw compile</code>, and push to your repository. See our <a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a> for further installation and setup instructions.</p> <p>You can also <a href="https://github.github.com/gh-aw/setup/creating-workflows/">create your own workflows</a>.</p> <div><h2 id="learn-more">Learn More</h2></div> <ul> <li><strong><a href="https://github.github.com/gh-aw/">GitHub Agentic Workflows</a></strong> - The technology behind the workflows</li> <li><strong><a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a></strong> - How to write and compile workflows</li> </ul> <div><h2 id="next-up-monitoring-the-monitors">Next Up: Monitoring the Monitors</h2></div> <p>But what about the infrastructure itself? Who watches the watchers? Time to go meta.</p> <p>Continue reading: <a href="https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-tool-infrastructure/">Tool &#x26; Infrastructure Workflows →</a></p> <hr> <p><em>This is part 14 of a 19-part series exploring the workflows in Peli’s Agent Factory.</em></p>Meet the Workflows: Interactive & ChatOpshttps://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-interactive-chatops/https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-interactive-chatops/Tue, 13 Jan 2026 10:00:00 GMT<img src="https://github.github.com/gh-aw/peli.png" alt="Peli de Halleux" width="200"> <p><em>Onwards, onwards!</em> Let’s keep exploring the wonders of <a href="https://github.github.com/gh-aw/blog/2026-01-12-welcome-to-pelis-agent-factory/">Peli’s Agent Factory</a>! To the <em>command center</em> where instant magic happens!</p> <p>In our <a href="https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-creative-culture/">previous post</a>, we explored creative and culture workflows - agents that bring joy, build team culture, and create moments of delight. We discovered that AI agents don’t have to be all business; they can have personality while making work more enjoyable.</p> <p>But sometimes you need help <em>right now</em>, at the exact moment you’re stuck on a problem. You don’t want to wait for a scheduled run - you want to summon an expert agent with a command. That’s where interactive workflows and ChatOps come in. These agents respond to slash commands and GitHub reactions, providing on-demand assistance with full context of the current situation.</p> <p>We learned that the right agent at the right moment with the right information is a valuable addition to an agent portfolio.</p> <div><h2 id="interactive--chatops-workflows">Interactive &#x26; ChatOps Workflows</h2></div> <p>These agents respond to commands, providing on-demand assistance whenever you need it:</p> <ul> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/q.md?plain=1">Q</a></strong> - Workflow optimizer that investigates performance and creates PRs - <strong>69 merged PRs out of 88 proposed (78% merge rate)</strong></li> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/grumpy-reviewer.md?plain=1">Grumpy Reviewer</a></strong> - Performs critical code reviews with personality - creates issues for downstream agents</li> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/workflow-generator.md?plain=1">Workflow Generator</a></strong> - Creates new workflows from issue requests - scaffolds workflow files</li> </ul> <p>Interactive workflows changed how we think about agent invocation. Instead of everything running on a schedule, these respond to slash commands and reactions - <code dir="auto">/q</code> summons the workflow optimizer, a reaction triggers analysis. Q (yes, named after the James Bond quartermaster) became our go-to troubleshooter - it has contributed <strong>69 merged PRs out of 88 proposed (78% merge rate)</strong>, responding to commands and investigating workflow issues on demand. Recent examples include <a href="https://github.com/github/gh-aw/pull/14127">fixing the daily-fact workflow action-tag</a> and <a href="https://github.com/github/gh-aw/pull/13903">configuring PR triage reports with 1-day expiration</a>.</p> <p>The Grumpy Reviewer performs opinionated code reviews, creating issues that flag security risks and code quality concerns (e.g., <a href="https://github.com/github/gh-aw/issues/13990">#13990</a> about risky event triggers) for downstream agents to fix. It gave us surprisingly valuable feedback with a side of sass (“This function is so nested it has its own ZIP code”).</p> <p>Workflow Generator creates new agentic workflows from issue requests, scaffolding the markdown workflow files that other agents then refine (e.g., <a href="https://github.com/github/gh-aw/issues/13379">#13379</a> requesting AWF mode changes).</p> <p>We learned that <strong>context is king</strong> - these agents work because they’re invoked at the right moment with the right context, not because they run on a schedule.</p> <div><h2 id="using-these-workflows">Using These Workflows</h2></div> <p>You can add these workflows to your own repository and remix them. Get going with our <a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a>, then run one of the following:</p> <p><strong>Q:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/q.md</span></div></div></code></pre></figure></div> <p><strong>Grumpy Reviewer:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/grumpy-reviewer.md</span></div></div></code></pre></figure></div> <p><strong>Workflow Generator:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/workflow-generator.md</span></div></div></code></pre></figure></div> <p>Then edit and remix the workflow specifications to meet your needs, regenerate the lock file using <code dir="auto">gh aw compile</code>, and push to your repository. See our <a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a> for further installation and setup instructions.</p> <p>You can also <a href="https://github.github.com/gh-aw/setup/creating-workflows/">create your own workflows</a>.</p> <div><h2 id="learn-more">Learn More</h2></div> <ul> <li><strong><a href="https://github.github.com/gh-aw/">GitHub Agentic Workflows</a></strong> - The technology behind the workflows</li> <li><strong><a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a></strong> - How to write and compile workflows</li> </ul> <div><h2 id="next-up-testing--validation-workflows">Next Up: Testing &#x26; Validation Workflows</h2></div> <p>While ChatOps agents respond to commands, we also need workflows that continuously verify our systems still function as expected.</p> <p>Continue reading: <a href="https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-testing-validation/">Testing &#x26; Validation Workflows →</a></p> <hr> <p><em>This is part 13 of a 19-part series exploring the workflows in Peli’s Agent Factory.</em></p>Meet the Workflows: Teamwork & Culturehttps://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-creative-culture/https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-creative-culture/Tue, 13 Jan 2026 09:00:00 GMT<img src="https://github.github.com/gh-aw/peli.png" alt="Peli de Halleux" width="200"> <p><em>Oh, my dear friends!</em> Let’s explore the <em>playful workshop</em> - the most fun corner of <a href="https://github.github.com/gh-aw/blog/2026-01-12-welcome-to-pelis-agent-factory/">Peli’s Agent Factory</a>!</p> <p>In our <a href="https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-security-compliance/">previous post</a>, we explored security and compliance workflows - the essential guardrails that manage vulnerability campaigns, validate network security, and prevent credential exposure. These workflows let us sleep soundly knowing our agents operate within safe boundaries.</p> <p>But here’s the thing: work doesn’t have to be all business. While we’ve built serious, production-critical workflows for quality, releases, and security, we also discovered something unexpected - AI agents can bring joy, build team culture, and create moments of delight. Not every workflow needs to solve a critical problem; some can simply make your day better. Let’s explore the playful side of our agent factory, where we learned that personality and fun drive engagement just as powerfully as utility.</p> <div><h2 id="teamwork--culture-workflows">Teamwork &#x26; Culture Workflows</h2></div> <p>These agents facilitate team communication and remind us that work can be fun:</p> <ul> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/daily-team-status.md?plain=1">Daily Team Status</a></strong> - Shares team mood and status updates - <strong>22 issues</strong>, <strong>17 discussions</strong> (plus 2 causal chain PRs!)</li> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/daily-news.md?plain=1">Daily News</a></strong> - Curates relevant news for the team - <strong>45 news digest discussions</strong></li> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/poem-bot.md?plain=1">Poem Bot</a></strong> - Responds to <code dir="auto">/poem-bot</code> commands with creative verses (yes, really)</li> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/weekly-issue-summary.md?plain=1">Weekly Issue Summary</a></strong> - Creates digestible summaries complete with charts and trends - <strong>5 weekly analysis discussions</strong></li> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/daily-repo-chronicle.md?plain=1">Daily Repo Chronicle</a></strong> - Narrates the day’s activity like a storyteller - <strong>6 chronicle discussions</strong></li> </ul> <p>The Poem Bot started as a whimsy in our Copilot for PRs project in 2022. Someone said “wouldn’t it be funny if we had an agent that writes poems about our code?” and then we built it. Poem Bot responds to <code dir="auto">/poem-bot</code> commands with creative verses about code, adding a touch of whimsy to the development workflow. We learned that AI agents don’t have to be all business - they can build culture and create moments of joy.</p> <p>Daily News has created <strong>45 news digest discussions</strong> curating relevant developments for the team - for example, <a href="https://github.com/github/gh-aw/discussions/6932">#6932</a> with the daily status roundup. It shares links, adds commentary and connects them to our work.</p> <p>Daily Team Status has created <strong>22 issues</strong> and <strong>17 discussions</strong> sharing daily team status updates - for example, <a href="https://github.com/github/gh-aw/discussions/6930">#6930</a> with the daily team status report. Two of its issues even led to merged PRs by downstream agents, showing that even “soft” workflows can drive concrete improvements.</p> <p>Weekly Issue Summary has created <strong>5 weekly analysis discussions</strong> with digestible summaries, charts, and trends - for example, <a href="https://github.com/github/gh-aw/discussions/5844">#5844</a> analyzing the week of December 1-8, 2025.</p> <p>Daily Repo Chronicle has created <strong>6 chronicle discussions</strong> narrating the repository’s activity like a storyteller - for example, <a href="https://github.com/github/gh-aw/discussions/6750">#6750</a> chronicling a development surge with 42 active PRs.</p> <p>A theme here is the <strong>reduction of cognitive load</strong>. Having agents summarize and narrate daily activity means we don’t have to mentally parse long lists of issues or PRs. Instead, we get digestible stories that highlight what’s important. This frees up mental bandwidth for actual work.</p> <p>Another theme is that <strong>tone</strong> can help make things more enjoyable. The Daily Repo Chronicle started writing summaries in a narrative, almost journalistic style. The outputs from AI agents don’t have to be robotic - they can have personality while still being informative.</p> <p>These communication workflows help build team cohesion and remind us that work can be delightful.</p> <div><h2 id="using-these-workflows">Using These Workflows</h2></div> <p>You can add these workflows to your own repository and remix them. Get going with our <a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a>, then run one of the following:</p> <p><strong>Daily Team Status:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/daily-team-status.md</span></div></div></code></pre></figure></div> <p><strong>Daily News:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/daily-news.md</span></div></div></code></pre></figure></div> <p><strong>Poem Bot:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/poem-bot.md</span></div></div></code></pre></figure></div> <p><strong>Weekly Issue Summary:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/weekly-issue-summary.md</span></div></div></code></pre></figure></div> <p><strong>Daily Repo Chronicle:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/daily-repo-chronicle.md</span></div></div></code></pre></figure></div> <p>Then edit and remix the workflow specifications to meet your needs, regenerate the lock file using <code dir="auto">gh aw compile</code>, and push to your repository. See our <a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a> for further installation and setup instructions.</p> <p>You can also <a href="https://github.github.com/gh-aw/setup/creating-workflows/">create your own workflows</a>.</p> <div><h2 id="learn-more">Learn More</h2></div> <ul> <li><strong><a href="https://github.github.com/gh-aw/">GitHub Agentic Workflows</a></strong> - The technology behind the workflows</li> <li><strong><a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a></strong> - How to write and compile workflows</li> </ul> <div><h2 id="next-up-summon-an-agent-on-demand">Next Up: Summon an Agent on Demand</h2></div> <p>Scheduled workflows are great, but sometimes you need help <em>right now</em>. Enter ChatOps and interactive workflows.</p> <p>Continue reading: <a href="https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-interactive-chatops/">Interactive &#x26; ChatOps Workflows →</a></p> <hr> <p><em>This is part 12 of a 19-part series exploring the workflows in Peli’s Agent Factory.</em></p>Meet the Workflows: Security-relatedhttps://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-security-compliance/https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-security-compliance/Tue, 13 Jan 2026 08:00:00 GMT<img src="https://github.github.com/gh-aw/peli.png" alt="Peli de Halleux" width="200"> <p><em>Splendid!</em> How great to have you back at <a href="https://github.github.com/gh-aw/blog/2026-01-12-welcome-to-pelis-agent-factory/">Peli’s Agent Factory</a>! Now, let me show you the <em>guardian chamber</em> - where the watchful protectors stand vigil!</p> <p>In our <a href="https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-operations-release/">previous post</a>, we explored operations and release workflows that handle the critical process of shipping software - building, testing, generating release notes, and publishing. These workflows need to be rock-solid reliable because they represent the moment when our work reaches users.</p> <p>But reliability alone isn’t enough - we also need <em>security</em>. When AI agents can access APIs, modify code, and interact with external services, security becomes paramount. How do we ensure agents only access authorized resources? How do we track vulnerabilities and enforce compliance deadlines? How do we prevent credential exposure? That’s where security and compliance workflows become our essential guardrails - the watchful guardians that let us sleep soundly at night.</p> <div><h2 id="security-related-workflows">Security-related Workflows</h2></div> <p>These agents are our security guards, keeping watch and enforcing the rules:</p> <ul> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/security-compliance.md?plain=1">Security Compliance</a></strong> - Runs vulnerability campaigns with deadline tracking</li> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/firewall.md?plain=1">Firewall</a></strong> - Tests network security and validates rules - <strong>59 daily firewall report discussions</strong>, <strong>5 smoke test issues</strong></li> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/daily-secrets-analysis.md?plain=1">Daily Secrets Analysis</a></strong> - Scans for exposed credentials (yes, it happens)</li> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/daily-malicious-code-scan.md?plain=1">Daily Malicious Code Scan</a></strong> - Reviews recent code changes for suspicious patterns</li> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/static-analysis-report.md?plain=1">Static Analysis Report</a></strong> - Daily security scans using zizmor, poutine, and actionlint - <strong>57 analysis discussions</strong> plus <strong>12 Zizmor security reports</strong></li> </ul> <p>Security Compliance manages vulnerability remediation campaigns with deadline tracking, ensuring security issues are addressed within defined SLAs - perfect for those “audit in 3 weeks” panic moments.</p> <p>The Firewall workflow has created <strong>59 daily firewall report discussions</strong> and <strong>5 smoke test issues</strong>, validating that our agents can’t access unauthorized resources - for example, <a href="https://github.com/github/gh-aw/discussions/6943">#6943</a> with the daily firewall analysis. It’s the bouncer that enforces network rules.</p> <p>Daily Secrets Analysis scans for exposed credentials in commits and discussions, providing an automated security net against accidental secret exposure - catching those “oops, I committed my API key” moments before they become incidents.</p> <p>Daily Malicious Code Scan reviews recent code changes for suspicious patterns, adding an automated defense layer against supply chain attacks.</p> <p>Static Analysis Report has created <strong>57 analysis discussions</strong> plus <strong>12 Zizmor security reports</strong>, running comprehensive daily security audits using industry-standard tools - for example, <a href="https://github.com/github/gh-aw/discussions/6973">#6973</a> with the latest static analysis findings and <a href="https://github.com/github/gh-aw/discussions/3033">#3033</a> with a Zizmor security analysis. This shows how traditional security tools can be integrated into an AI agent workflow.</p> <div><h2 id="using-these-workflows">Using These Workflows</h2></div> <p>You can add these workflows to your own repository and remix them. Get going with our <a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a>, then run one of the following:</p> <p><strong>Security Compliance:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/security-compliance.md</span></div></div></code></pre></figure></div> <p><strong>Firewall:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/firewall.md</span></div></div></code></pre></figure></div> <p><strong>Daily Secrets Analysis:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/daily-secrets-analysis.md</span></div></div></code></pre></figure></div> <p><strong>Daily Malicious Code Scan:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/daily-malicious-code-scan.md</span></div></div></code></pre></figure></div> <p><strong>Static Analysis Report:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/static-analysis-report.md</span></div></div></code></pre></figure></div> <p>Then edit and remix the workflow specifications to meet your needs, regenerate the lock file using <code dir="auto">gh aw compile</code>, and push to your repository. See our <a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a> for further installation and setup instructions.</p> <p>You can also <a href="https://github.github.com/gh-aw/setup/creating-workflows/">create your own workflows</a>.</p> <div><h2 id="learn-more">Learn More</h2></div> <ul> <li><strong><a href="https://github.github.com/gh-aw/">GitHub Agentic Workflows</a></strong> - The technology behind the workflows</li> <li><strong><a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a></strong> - How to write and compile workflows</li> </ul> <div><h2 id="next-up-teamwork--culture-workflows">Next Up: Teamwork &#x26; Culture Workflows</h2></div> <p>After all this serious talk, let’s explore the fun side: agents that bring joy and build team culture.</p> <p>Continue reading: <a href="https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-creative-culture/">Teamwork &#x26; Culture Workflows →</a></p> <hr> <p><em>This is part 11 of a 19-part series exploring the workflows in Peli’s Agent Factory.</em></p>Meet the Workflows: Operations & Releasehttps://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-operations-release/https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-operations-release/Tue, 13 Jan 2026 07:00:00 GMT<img src="https://github.github.com/gh-aw/peli.png" alt="Peli de Halleux" width="200"> <p>Ah! Right this way to our next chamber in <a href="https://github.github.com/gh-aw/blog/2026-01-12-welcome-to-pelis-agent-factory/">Peli’s Agent Factory</a>! The chamber where our AI agents enhance the magical moment of <em>shipping software</em>.</p> <p>In our <a href="https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-metrics-analytics/">previous post</a>, we explored metrics and analytics workflows - the agents that monitor other agents, turning raw activity data into actionable insights.</p> <div><h2 id="operations--release-workflows">Operations &#x26; Release Workflows</h2></div> <p>The agents that help us actually ship software:</p> <ul> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/changeset.md?plain=1">Changeset</a></strong> - Manages version bumps and changelog entries for releases - <strong>22 merged PRs out of 28 proposed (78% merge rate)</strong></li> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/daily-workflow-updater.md?plain=1">Daily Workflow Updater</a></strong> - Keeps GitHub Actions and dependencies current</li> </ul> <p>Shipping software is stressful enough without worrying about whether you formatted your release notes correctly.</p> <p>Changeset Generator has contributed <strong>22 merged PRs out of 28 proposed (78% merge rate)</strong>, automating version bumps and changelog generation for every release. It analyzes commits since the last release, determines the appropriate version bump (major, minor, patch), and updates the changelog accordingly.</p> <p>Daily Workflow Updater keeps GitHub Actions and dependencies current, ensuring workflows don’t fall behind on security patches or new features.</p> <div><h2 id="using-these-workflows">Using These Workflows</h2></div> <p>You can add these workflows to your own repository and remix them. Get going with our <a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a>, then run one of the following:</p> <p><strong>Changeset:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/changeset.md</span></div></div></code></pre></figure></div> <p>Then edit and remix the workflow specifications to meet your needs, regenerate the lock file using <code dir="auto">gh aw compile</code>, and push to your repository. See our <a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a> for further installation and setup instructions.</p> <p>You can also <a href="https://github.github.com/gh-aw/setup/creating-workflows/">create your own workflows</a>.</p> <div><h2 id="learn-more">Learn More</h2></div> <ul> <li><strong><a href="https://github.github.com/gh-aw/">GitHub Agentic Workflows</a></strong> - The technology behind the workflows</li> <li><strong><a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a></strong> - How to write and compile workflows</li> </ul> <div><h2 id="next-up-security-related-workflows">Next Up: Security-related Workflows</h2></div> <p>After all this focus on shipping, we need to talk about the guardrails: how do we ensure these powerful agents operate safely?</p> <p>Continue reading: <a href="https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-security-compliance/">Security-related Workflows →</a></p> <hr> <p><em>This is part 10 of a 19-part series exploring the workflows in Peli’s Agent Factory.</em></p>Meet the Workflows: Metrics & Analyticshttps://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-metrics-analytics/https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-metrics-analytics/Tue, 13 Jan 2026 06:00:00 GMT<img src="https://github.github.com/gh-aw/peli.png" alt="Peli de Halleux" width="200"> <p>Excellent journey! Now it’s time to plunge into the <em>observatory</em> - the nerve center of <a href="https://github.github.com/gh-aw/blog/2026-01-12-welcome-to-pelis-agent-factory/">Peli’s Agent Factory</a>!</p> <p>In our <a href="https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-quality-hygiene/">previous post</a>, we explored quality and hygiene workflows - the vigilant caretakers that investigate failed CI runs, detect schema drift, and catch breaking changes before users do. These workflows maintain codebase health by spotting problems before they escalate.</p> <p>When you’re running dozens of AI agents, how do you know if they’re actually working well? How do you spot performance issues, cost problems, or quality degradation? That’s where metrics and analytics workflows come in - they’re the agents that monitor other agents. The aim is to turn raw activity data into actionable insights.</p> <div><h2 id="metrics--analytics-workflows">Metrics &#x26; Analytics Workflows</h2></div> <p>Let’s take a look at these three workflows:</p> <ul> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/metrics-collector.md?plain=1">Metrics Collector</a></strong> - Tracks daily performance across the entire agent ecosystem</li> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/portfolio-analyst.md?plain=1">Portfolio Analyst</a></strong> - Identifies cost reduction opportunities</li> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/audit-workflows.md?plain=1">Audit Workflows</a></strong> - A meta-agent that audits all the other agents’ runs</li> </ul> <p>The Metrics Collector has created <strong>41 daily metrics discussions</strong> tracking performance across the agent ecosystem - for example, <a href="https://github.com/github/gh-aw/discussions/6986">#6986</a> with the daily code metrics report. It became our central nervous system, gathering performance data that feeds into higher-level orchestrators.</p> <p>Portfolio Analyst has created <strong>7 portfolio analysis discussions</strong> identifying cost reduction opportunities and token optimization patterns - for example, <a href="https://github.com/github/gh-aw/discussions/6499">#6499</a> with a weekly portfolio analysis. The workflow has identified workflows that were costing us money unnecessarily (turns out some agents were way too chatty with their LLM calls).</p> <p>Audit Workflows is our most prolific discussion-creating agent with <strong>93 audit report discussions</strong> and <strong>9 issues</strong>, acting as a meta-agent that analyzes logs, costs, errors, and success patterns across all other workflow runs. Four of its issues led to PRs by downstream agents.</p> <p>Observability isn’t optional when you’re running dozens of AI agents - it’s the difference between a well-oiled machine and an expensive black box.</p> <div><h2 id="using-these-workflows">Using These Workflows</h2></div> <p>You can add these workflows to your own repository and remix them. Get going with our <a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a>, then run one of the following:</p> <p><strong>Metrics Collector:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/metrics-collector.md</span></div></div></code></pre></figure></div> <p><strong>Portfolio Analyst:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/portfolio-analyst.md</span></div></div></code></pre></figure></div> <p><strong>Audit Workflows:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/audit-workflows.md</span></div></div></code></pre></figure></div> <p>Then edit and remix the workflow specifications to meet your needs, regenerate the lock file using <code dir="auto">gh aw compile</code>, and push to your repository. See our <a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a> for further installation and setup instructions.</p> <p>You can also <a href="https://github.github.com/gh-aw/setup/creating-workflows/">create your own workflows</a>.</p> <div><h2 id="learn-more">Learn More</h2></div> <ul> <li><strong><a href="https://github.github.com/gh-aw/">GitHub Agentic Workflows</a></strong> - The technology behind the workflows</li> <li><strong><a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a></strong> - How to write and compile workflows</li> </ul> <div><h2 id="next-up-operations--release-workflows">Next Up: Operations &#x26; Release Workflows</h2></div> <p>Now that we can measure and optimize our agent ecosystem, let’s talk about the moment of truth: actually shipping software to users.</p> <p>Continue reading: <a href="https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-operations-release/">Operations &#x26; Release Workflows →</a></p> <hr> <p><em>This is part 9 of a 19-part series exploring the workflows in Peli’s Agent Factory.</em></p>Meet the Workflows: Fault Investigationhttps://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-quality-hygiene/https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-quality-hygiene/Tue, 13 Jan 2026 05:00:00 GMT<img src="https://github.github.com/gh-aw/peli.png" alt="Peli de Halleux" width="200"> <p><em>Ah, splendid!</em> Welcome back to <a href="https://github.github.com/gh-aw/blog/2026-01-12-welcome-to-pelis-agent-factory/">Peli’s Agent Factory</a>! Come, let me show you the chamber where vigilant caretakers investigate faults before they escalate!</p> <p>In our <a href="https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-issue-management/">previous post</a>, we explored issue and PR management workflows.</p> <p>Now let’s shift from collaboration ceremony to fault investigation.</p> <p>While issue workflows help us handle what comes in, fault investigation workflows act as vigilant caretakers - spotting problems before they escalate and keeping our codebase healthy. These are the agents that investigate failed CI runs, detect schema drift, and catch breaking changes before users do.</p> <div><h2 id="fault-investigation-workflows">Fault Investigation Workflows</h2></div> <p>These are our diligent caretakers - the agents that spot problems before they become bigger problems:</p> <ul> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/ci-doctor.md?plain=1">CI Doctor</a></strong> - Investigates failed workflows and opens diagnostic issues - <strong>9 merged PRs out of 13 proposed (69% merge rate)</strong></li> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/schema-consistency-checker.md?plain=1">Schema Consistency Checker</a></strong> - Detects when schemas, code, and docs drift apart - <strong>55 analysis discussions</strong> created</li> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/breaking-change-checker.md?plain=1">Breaking Change Checker</a></strong> - Watches for changes that might break things for users - creates alert issues</li> </ul> <p>The CI Doctor (also known as “CI Failure Doctor”) was one of our most important workflows. Instead of drowning in CI failure notifications, we now get <em>timely</em>, <em>investigated</em> failures with actual diagnostic insights. The agent doesn’t just tell us something broke - it analyzes logs, identifies patterns, searches for similar past issues, and even suggests fixes - even before the human has read the failure notification. CI Failure Doctor has contributed <strong>9 merged PRs out of 13 proposed (69% merge rate)</strong>, including fixes like <a href="https://github.com/github/gh-aw/pull/13740">adding Go module download pre-flight checks</a> and <a href="https://github.com/github/gh-aw/pull/13155">adding retry logic to prevent proxy 403 failures</a>. We learned that agents excel at the tedious investigation work that humans find draining.</p> <p>The Schema Consistency Checker has created <strong>55 analysis discussions</strong> examining schema drift between JSON schemas, Go structs, and documentation - for example, <a href="https://github.com/github/gh-aw/discussions/7020">#7020</a> analyzing conditional logic consistency across the codebase. It caught drift that would have taken us days to notice manually.</p> <p>Breaking Change Checker is a newer workflow that monitors for backward-incompatible changes and creates alert issues (e.g., <a href="https://github.com/github/gh-aw/issues/14113">#14113</a> flagging CLI version updates) before they reach production.</p> <p>These “hygiene” workflows became our first line of defense, catching issues before they reached users.</p> <p>The CI Doctor has inspired a growing range of similar workflows inside GitHub, where agents proactively do depth investigations of site incidents and failures. This is the future of operational excellence: AI agents kicking in immediately to do depth investigation, for faster organizational response.</p> <div><h2 id="using-these-workflows">Using These Workflows</h2></div> <p>You can add these workflows to your own repository and remix them. Get going with our <a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a>, then run one of the following:</p> <p><strong>CI Doctor:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/ci-doctor.md</span></div></div></code></pre></figure></div> <p><strong>Schema Consistency Checker:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/schema-consistency-checker.md</span></div></div></code></pre></figure></div> <p><strong>Breaking Change Checker:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/breaking-change-checker.md</span></div></div></code></pre></figure></div> <p>Then edit and remix the workflow specifications to meet your needs, regenerate the lock file using <code dir="auto">gh aw compile</code>, and push to your repository. See our <a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a> for further installation and setup instructions.</p> <p>You can also <a href="https://github.github.com/gh-aw/setup/creating-workflows/">create your own workflows</a>.</p> <div><h2 id="learn-more">Learn More</h2></div> <ul> <li><strong><a href="https://github.github.com/gh-aw/">GitHub Agentic Workflows</a></strong> - The technology behind the workflows</li> <li><strong><a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a></strong> - How to write and compile workflows</li> </ul> <div><h2 id="next-up-metrics--analytics-workflows">Next Up: Metrics &#x26; Analytics Workflows</h2></div> <p>Next up, we look at workflows which help us understand if the agent collection as a whole is working well That’s where metrics and analytics workflows come in.</p> <p>Continue reading: <a href="https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-metrics-analytics/">Metrics &#x26; Analytics Workflows →</a></p> <hr> <p><em>This is part 8 of a 19-part series exploring the workflows in Peli’s Agent Factory.</em></p>Meet the Workflows: Issue & PR Managementhttps://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-issue-management/https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-issue-management/Tue, 13 Jan 2026 04:00:00 GMT<img src="https://github.github.com/gh-aw/peli.png" alt="Peli de Halleux" width="200"> <p><em>Ah!</em> Let’s discuss the art of managing issues and pull requests at <a href="https://github.github.com/gh-aw/blog/2026-01-12-welcome-to-pelis-agent-factory/">Peli’s Agent Factory</a>! A most delicious topic indeed!</p> <p>In our <a href="https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-documentation/">previous post</a>, we explored documentation and content workflows - agents that maintain glossaries, technical docs, slide decks, and blog content. We learned how we took a heterogeneous approach to documentation agents - some workflows generate content, others maintain it, and still others validate it.</p> <p>Now let’s talk about the daily rituals of software development: managing issues and pull requests. GitHub provides excellent primitives for collaboration, but there’s ceremony involved - linking related issues, merging main into PR branches, assigning work, closing completed sub-issues, optimizing templates. These are small papercuts individually, but they can add up to significant friction.</p> <div><h2 id="issue--pr-management-workflows">Issue &#x26; PR Management Workflows</h2></div> <p>These agents enhance issue and pull request workflows:</p> <ul> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/issue-arborist.md?plain=1">Issue Arborist</a></strong> - Links related issues as sub-issues - <strong>77 discussion reports</strong> and <strong>18 parent issues</strong> created</li> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/issue-monster.md?plain=1">Issue Monster</a></strong> - Assigns issues to the asynchronous <a href="https://docs.github.com/en/copilot/concepts/agents/coding-agent/about-coding-agent">GitHub Copilot coding agent</a> one at a time - <strong>task dispatcher</strong> for the whole system</li> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/mergefest.md?plain=1">Mergefest</a></strong> - Automatically merges main branch into PR branches - <strong>orchestrator workflow</strong></li> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/sub-issue-closer.md?plain=1">Sub Issue Closer</a></strong> - Closes completed sub-issues automatically - <strong>orchestrator workflow</strong></li> </ul> <p>The Issue Arborist is an <strong>organizational workflow</strong> that has created <strong>77 discussion reports</strong> (titled “[Issue Arborist] Issue Arborist Report”) and <strong>18 parent issues</strong> to group related sub-issues. It keeps the issue tracker organized by automatically linking related issues, building a dependency tree we’d never maintain manually. For example, <a href="https://github.com/github/gh-aw/issues/12037">#12037</a> grouped engine documentation updates.</p> <p>The Issue Monster is the <strong>task dispatcher</strong> - it assigns issues to the GitHub platform’s asynchronous <a href="https://docs.github.com/en/copilot/concepts/agents/coding-agent/about-coding-agent">Copilot coding agent</a> one at a time. It doesn’t create PRs itself, but enables every other agent’s work by feeding them tasks. This prevents the chaos of parallel work on the same codebase.</p> <p>Mergefest is an <strong>orchestrator workflow</strong> that automatically merges main into PR branches, keeping long-lived PRs up to date without manual intervention. It eliminates the “please merge main” dance.</p> <p>Sub Issue Closer automatically closes completed sub-issues when their parent issue is resolved, keeping the issue tracker clean.</p> <p>Issue and PR management workflows don’t replace GitHub’s features; they enhance them, removing ceremony and making collaboration feel smoother.</p> <div><h2 id="using-these-workflows">Using These Workflows</h2></div> <p>You can add these workflows to your own repository and remix them. Get going with our <a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a>, then run one of the following:</p> <p><strong>Issue Arborist:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/issue-arborist.md</span></div></div></code></pre></figure></div> <p><strong>Issue Monster:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/issue-monster.md</span></div></div></code></pre></figure></div> <p><strong>Mergefest:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/mergefest.md</span></div></div></code></pre></figure></div> <p><strong>Sub Issue Closer:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/sub-issue-closer.md</span></div></div></code></pre></figure></div> <p>Then edit and remix the workflow specifications to meet your needs, regenerate the lock file using <code dir="auto">gh aw compile</code>, and push to your repository. See our <a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a> for further installation and setup instructions.</p> <p>You can also <a href="https://github.github.com/gh-aw/setup/creating-workflows/">create your own workflows</a>.</p> <div><h2 id="learn-more">Learn More</h2></div> <ul> <li><strong><a href="https://github.github.com/gh-aw/">GitHub Agentic Workflows</a></strong> - The technology behind the workflows</li> <li><strong><a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a></strong> - How to write and compile workflows</li> </ul> <div><h2 id="next-up-fault-investigation-workflows">Next Up: Fault Investigation Workflows</h2></div> <p>Next up we look at agents that maintain codebase health - spotting problems before they escalate.</p> <p>Continue reading: <a href="https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-quality-hygiene/">Fault Investigation Workflows →</a></p> <hr> <p><em>This is part 7 of a 19-part series exploring the workflows in Peli’s Agent Factory.</em></p>Meet the Workflows: Continuous Documentationhttps://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-documentation/https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-documentation/Tue, 13 Jan 2026 03:00:00 GMT<img src="https://github.github.com/gh-aw/peli.png" alt="Peli de Halleux" width="200"> <p>Step right up, step right up, and enter the <em>documentation chamber</em> of <a href="https://github.github.com/gh-aw/blog/2026-01-12-welcome-to-pelis-agent-factory/">Peli’s Agent Factory</a>! Pure imagination meets technical accuracy in this most delightful corner of our establishment!</p> <p>In our <a href="https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-continuous-simplicity/">previous posts</a>, we explored autonomous cleanup agents - workflows that continuously improve code quality by simplifying complexity, refactoring structure, polishing style, and maintaining overall repository health. These agents never take a day off, quietly working to make our codebase better.</p> <p>Now let’s address one of software development’s eternal challenges: keeping documentation accurate and up-to-date. Code evolves rapidly; docs… not so much. Terminology drifts, API examples become outdated, slide decks grow stale, and blog posts reference deprecated features. The question isn’t “can AI agents write good documentation?” but rather “can they maintain it as code changes?” Documentation and content workflows challenge conventional wisdom about AI-generated technical content. Spoiler: the answer involves human review, but it’s way better than the alternative (no docs at all).</p> <div><h2 id="continuous-documentation-workflows">Continuous Documentation Workflows</h2></div> <p>These agents maintain high-quality documentation and content:</p> <ul> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/daily-doc-updater.md?plain=1">Daily Documentation Updater</a></strong> - Reviews and updates documentation to ensure accuracy and completeness - <strong>57 merged PRs out of 59 proposed (96% merge rate)</strong></li> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/glossary-maintainer.md?plain=1">Glossary Maintainer</a></strong> - Keeps glossary synchronized with codebase - <strong>10 merged PRs out of 10 proposed (100% merge rate)</strong></li> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/unbloat-docs.md?plain=1">Documentation Unbloat</a></strong> - Reviews and simplifies documentation by reducing verbosity - <strong>88 merged PRs out of 103 proposed (85% merge rate)</strong></li> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/docs-noob-tester.md?plain=1">Documentation Noob Tester</a></strong> - Tests documentation as a new user would, identifying confusing steps - <strong>9 merged PRs (43% merge rate)</strong> via causal chain</li> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/slide-deck-maintainer.md?plain=1">Slide Deck Maintainer</a></strong> - Maintains presentation slide decks - <strong>2 merged PRs out of 5 proposed (40% merge rate)</strong></li> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/daily-multi-device-docs-tester.md?plain=1">Multi-device Docs Tester</a></strong> - Tests documentation site across mobile, tablet, and desktop devices - <strong>2 merged PRs out of 2 proposed (100% merge rate)</strong></li> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/blog-auditor.md?plain=1">Blog Auditor</a></strong> - Verifies blog posts are accessible and contain expected content - <strong>6 audits completed</strong> (5 passed, 1 flagged issues)</li> </ul> <p>Documentation is where we challenged conventional wisdom. Can AI agents write <em>good</em> documentation?</p> <p>The <strong>Technical Doc Writer</strong> generates API docs from code, but more importantly, it <em>maintains</em> them - updating docs when code changes. The Glossary Maintainer caught terminology drift (“we’re using three different terms for the same concept”).</p> <p>The <strong>Slide Deck Maintainer</strong> keeps our presentation materials current without manual updates.</p> <p>The <strong>Multi-device Docs Tester</strong> uses Playwright to verify our documentation site works across phones, tablets, and desktops - testing responsive layouts, accessibility, and interactive elements. It catches visual regressions and layout issues that only appear on specific screen sizes.</p> <p>The <strong>Blog Auditor</strong> ensures our blog posts stay accurate as the codebase evolves - it flags outdated code examples and broken links. Blog Auditor is a <strong>validation-only workflow</strong> that creates audit reports rather than code changes. It has run <strong>6 audits</strong> (5 passed, <a href="https://github.com/github/gh-aw/issues/2162">1 flagged out-of-date content</a>), confirming blog accuracy.</p> <p>Documentation Noob Tester deserves special mention for its exploratory nature. It has produced <strong>9 merged PRs out of 21 proposed (43% merge rate)</strong> through a causal chain: 62 discussions analyzed → 21 issues created → 21 PRs. The lower merge rate reflects this workflow’s exploratory nature - it identifies many potential improvements, some of which are too ambitious for immediate implementation. For example, <a href="https://github.com/github/gh-aw/discussions/8477">Discussion #8477</a> led to <a href="https://github.com/github/gh-aw/issues/8486">Issue #8486</a> which spawned PRs <a href="https://github.com/github/gh-aw/pull/8716">#8716</a> and <a href="https://github.com/github/gh-aw/pull/8717">#8717</a>, both merged.</p> <p>AI-generated docs need human/agent review, but they’re dramatically better than <em>no</em> docs (which is often the alternative). Validation can be automated to a large extent, freeing writers to focus on content shaping, topic, clarity, tone, and accuracy.</p> <p>In this collection of agents, we took a heterogeneous approach - some workflows generate content, others maintain it, and still others validate it. Other approaches are possible - all tasks can be rolled into a single agent. We found that it’s easier to explore the space by using multiple agents, to separate concerns, and that encouraged us to use agents for other communication outputs such as blogs and slides.</p> <div><h2 id="using-these-workflows">Using These Workflows</h2></div> <p>You can add these workflows to your own repository and remix them. Get going with our <a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a>, then run one of the following:</p> <p><strong>Daily Documentation Updater:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/daily-doc-updater.md</span></div></div></code></pre></figure></div> <p><strong>Glossary Maintainer:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/glossary-maintainer.md</span></div></div></code></pre></figure></div> <p><strong>Documentation Unbloat:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/unbloat-docs.md</span></div></div></code></pre></figure></div> <p><strong>Documentation Noob Tester:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/docs-noob-tester.md</span></div></div></code></pre></figure></div> <p><strong>Slide Deck Maintainer:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/slide-deck-maintainer.md</span></div></div></code></pre></figure></div> <p><strong>Multi-device Docs Tester:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/daily-multi-device-docs-tester.md</span></div></div></code></pre></figure></div> <p><strong>Blog Auditor:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/blog-auditor.md</span></div></div></code></pre></figure></div> <p>Then edit and remix the workflow specifications to meet your needs, regenerate the lock file using <code dir="auto">gh aw compile</code>, and push to your repository. See our <a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a> for further installation and setup instructions.</p> <p>You can also <a href="https://github.github.com/gh-aw/setup/creating-workflows/">create your own workflows</a>.</p> <div><h2 id="learn-more">Learn More</h2></div> <ul> <li><strong><a href="https://github.github.com/gh-aw/">GitHub Agentic Workflows</a></strong> - The technology behind the workflows</li> <li><strong><a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a></strong> - How to write and compile workflows</li> </ul> <div><h2 id="next-up-issue--pr-management-workflows">Next Up: Issue &#x26; PR Management Workflows</h2></div> <p>Beyond writing code and docs, we need to manage the flow of issues and pull requests. How do we keep collaboration smooth and efficient?</p> <p>Continue reading: <a href="https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-issue-management/">Issue &#x26; PR Management Workflows →</a></p> <hr> <p><em>This is part 6 of a 19-part series exploring the workflows in Peli’s Agent Factory.</em></p>Meet the Workflows: Continuous Improvementhttps://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-continuous-improvement/https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-continuous-improvement/Tue, 13 Jan 2026 02:45:00 GMT<img src="https://github.github.com/gh-aw/peli.png" alt="Peli de Halleux" width="200"> <p>Welcome back to <a href="https://github.github.com/gh-aw/blog/2026-01-12-welcome-to-pelis-agent-factory/">Peli’s Agent Factory</a>!</p> <p>In our <a href="https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-continuous-simplicity/">previous posts</a>, we’ve explored autonomous cleanup agents. Now we complete the picture with agents that analyze dependencies, type safety, and overall repository quality.</p> <div><h2 id="continuous-improvement-workflows">Continuous Improvement Workflows</h2></div> <ul> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/go-fan.md?plain=1">Go Module Usage Expert (aka Go Fan)</a></strong> - Daily Go module usage reviewer</li> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/typist.md?plain=1">Typist</a></strong> - Analyzes type usage patterns for improved safety</li> <li><strong><a href="https://github.com/github/gh-aw/blob/main/.github/workflows/functional-programming-enhancer.md?plain=1">Functional Pragmatist</a></strong> - Applies functional techniques pragmatically</li> <li><strong><a href="https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/repository-quality-improver.md?plain=1">Repository Quality Improver</a></strong> - Holistic code quality analysis</li> </ul> <div><h3 id="go-module-usage-expert-the-dependency-enthusiast-">Go Module Usage Expert: The Dependency Enthusiast </h3></div> <p>The <strong>Go Module Usage Expert</strong> is perhaps the most uniquely characterized workflow in the factory - an “enthusiastic Go module expert” who performs daily deep-dive reviews of the project’s Go dependencies. This isn’t just dependency scanning - it’s thoughtful analysis of <strong>how well we’re using the tools we’ve chosen</strong>.</p> <p>Most dependency tools focus on vulnerabilities or outdated versions. Go Module Usage Expert asks deeper and more positive questions: Are we using this module’s best features? Have recent updates introduced better patterns we should adopt? Could we use a more appropriate module for this use case? Are we following the module’s recommended practices?</p> <p>Go Module Usage Expert uses an intelligent selection algorithm. It extracts direct dependencies from <code dir="auto">go.mod</code>, fetches GitHub metadata for each dependency including last update time, sorts by recency to prioritize recently updated modules, uses round-robin selection to cycle through modules ensuring comprehensive coverage, and maintains persistent memory through cache-memory to track which modules were recently reviewed.</p> <p>This ensures recently updated modules get reviewed first since new features might be relevant, all modules eventually get reviewed so nothing is forgotten, and reviews don’t repeat unnecessarily thanks to cache tracking.</p> <p>For each module, Go Module Usage Expert researches the repository (releases, docs, best practices), analyzes actual usage patterns using Serena, and generates actionable recommendations. It saves summaries under <code dir="auto">scratchpad/mods/</code> and opens GitHub Discussions.</p> <p>The output of Go Module Usage Expert is a discussion, which is then often “task mined” for actionable tasks using the <a href="https://github.github.com/gh-aw/patterns/task-ops/">TaskOps</a> design pattern.</p> <p>Let’s take a look at an example of how this works:</p> <ol> <li>Go Module Usage Expert created the <a href="https://github.com/github/gh-aw/discussions/7472">Go Module Review: actionlint</a> discussion after noticing the <code dir="auto">actionlint</code> module was updated.</li> <li>Peli <a href="https://github.com/github/gh-aw/discussions/7472#discussioncomment-15342254">requested the Plan agent</a> mine for actionable tasks.</li> <li>This created <a href="https://github.com/github/gh-aw/issues/7648">a parent issue</a> and 5 sub-tasks.</li> <li>The subtasks were then solved by further workflow runs. An example PR is <a href="https://github.com/github/gh-aw/issues/7649">Implement parallel multi-file actionlint execution</a>.</li> </ol> <p>Through this multi-agent causal chain pattern, Go Module Usage Expert has generated <strong>58 merged PRs out of 74 proposed (78% merge rate)</strong> across 67 module reviews. Notable chains include: spinner improvements (4 PRs from <a href="https://github.com/github/gh-aw/discussions/5094">briandowns/spinner review</a>), MCP SDK v1.2.0 upgrade (5 PRs from <a href="https://github.com/github/gh-aw/discussions/7710">go-sdk review</a>), and terminal styling overhaul (3 PRs from <a href="https://github.com/github/gh-aw/discussions/5158">lipgloss review</a>).</p> <div><h3 id="typist-the-type-safety-advocate">Typist: The Type Safety Advocate</h3></div> <p>The <strong>Typist</strong> analyzes Go type usage patterns with a singular focus: improving type safety. It hunts for untyped code that should be strongly typed, and identifies duplicated type definitions that create confusion.</p> <p>Typist looks for untyped usages: <code dir="auto">interface{}</code> or <code dir="auto">any</code> where specific types would be better, untyped constants that should have explicit types, and type assertions that could be eliminated with better design. It also hunts for duplicated type definitions - the same types defined in multiple packages, similar types with different names, and type aliases that could be unified.</p> <p>Using grep patterns and Serena’s semantic analysis, it discovers type definitions, identifies semantic duplicates, analyzes untyped usage patterns, and generates refactoring recommendations.</p> <p>Typist also uses the <a href="https://github.github.com/gh-aw/patterns/task-ops/">TaskOps</a> pattern. This means the job of Typist is not to fix code, but to analyze code and recommend possible improvements.</p> <p>Let’s take a look at an example of this in practice:</p> <ul> <li>Typist created the <a href="https://github.com/github/gh-aw/discussions/4082">Typist - Go Type Consistency Analysis Report</a>. This used grep and other tools to perform acomprehensive analysis examining 208 non-test Go files.</li> <li>The report found 477 instances of <code dir="auto">map[string]any</code> usage, 36 untyped constants and 30+ uses <code dir="auto">any</code> in function signatures.</li> <li><a href="https://github.com/github/gh-aw/discussions/4082#discussioncomment-14983559">Peli requested <code dir="auto">/plan</code> on that issue</a>, causing the Plan agent to do further research and create 5 issues for work to be done such as <a href="https://github.com/github/gh-aw/issues/4155">Create unified ToolsConfig struct in tools_types.go</a>.</li> <li>4/5 of these issues were then solved by Copilot. For example <a href="https://github.com/github/gh-aw/pull/4158">Add unified ToolsConfig struct to replace map[string]any pattern</a>.</li> </ul> <p>Through this multi-agent causal chain, Typist has produced <strong>19 merged PRs out of 25 proposed (76% merge rate)</strong> from 57 discussions → 22 issues → 25 PRs. The blog example (Discussion #4082 → Issue #4155 → PR #4158) is a verified causal chain.</p> <p>The static v. dynamic typing debate has raged for decades. Today’s hybrid languages like Go, C#, TypeScript and F# support both strong and dynamic typing. Continuous typing improvement offers <strong>a new and refreshing perspective on this old debate</strong>: rather than enforcing strict typing upfront, we can develop quickly with flexibility, then let autonomous agents like Typist trail behind, strengthening type safety over time. This allows us to get the best of both worlds: rapid development without getting bogged down in type design, while still achieving strong typing and safety as the codebase matures.</p> <div><h3 id="functional-pragmatist-the-pragmatic-purist-">Functional Pragmatist: The Pragmatic Purist </h3></div> <p><strong>Functional Pragmatist</strong> applies moderate functional programming techniques to improve code clarity and safety, balancing pragmatism with functional principles.</p> <p>The workflow focuses on seven patterns: immutability, functional initialization, transformative operations (map/filter/reduce), functional options pattern, avoiding shared mutable state, pure functions, and reusable logic wrappers.</p> <p>It searches for opportunities (mutable variables, imperative loops, initialization anti-patterns, global state), scores by safety/clarity/testability improvements, uses Serena for deep analysis, and implements changes like converting to composite literals, using functional options, eliminating globals, extracting pure functions, and creating reusable wrappers (Retry, WithTiming, Memoize).</p> <p>The workflow is pragmatic: Go’s simple style is respected, for-loops stay when clearer, and abstraction is added only where it genuinely improves code. It runs Tuesday and Thursday mornings, systematically improving patterns over time.</p> <p>An example PR from our own use of this workflow is <a href="https://github.com/github/gh-aw/pull/12921">Apply functional programming and immutability improvements</a>.</p> <p>Functional Pragmatist (originally named “Functional Enhancer”) is a recent addition - so far it has created <strong>2 PRs (both merged, 100% merge rate)</strong>, demonstrating that its pragmatic approach to functional patterns is well-received.</p> <div><h3 id="repository-quality-improver-the-holistic-analyst">Repository Quality Improver: The Holistic Analyst</h3></div> <p><strong>Repository Quality Improver</strong> takes the widest view, selecting a different <em>focus area</em> each day to analyze the repository from that perspective.</p> <p>It uses cache memory to ensure diverse coverage: 60% custom areas (repository-specific concerns), 30% standard categories (code quality, documentation, testing, security, performance), and 10% revisits for consistency.</p> <p>Standard categories cover fundamentals. Custom areas are repository-specific: error message consistency, CLI flag naming conventions, workflow YAML generation patterns, console output formatting, configuration validation.</p> <p>The workflow loads recent history, selects the next area, spends 20 minutes on deep analysis, generates discussions with recommendations, and saves state. It looks for cross-cutting concerns that don’t fit neatly into other categories but impact overall quality.</p> <p>Example reports from our own use of this workflow are:</p> <ul> <li><a href="https://github.com/github/gh-aw/discussions/6863">Repository Quality Improvement - CI/CD Optimization</a></li> <li><a href="https://github.com/github/gh-aw/discussions/13280">Repository Quality Improvement Report - Performance</a>.</li> </ul> <p>Through its multi-agent causal chain (59 discussions → 30 issues → 40 PRs), Repository Quality Improver has produced <strong>25 merged PRs out of 40 proposed (62% merge rate)</strong>, taking a holistic view of quality from multiple angles.</p> <div><h2 id="the-power-of-continuous-improvement">The Power of Continuous Improvement</h2></div> <p>These workflows complete the autonomous improvement picture: Go Module Usage Expert keeps dependencies fresh, Typist strengthens type safety, Functional Pragmatist applies functional techniques, and Repository Quality Improver maintains coherence.</p> <p>Combined with earlier workflows, we have agents improving code at every level: line-level output (Terminal Stylist), function-level complexity (Code Simplifier), file-level organization (Semantic Function Refactor), pattern-level consistency (Go Pattern Detector), functional clarity (Functional Pragmatist), type safety (Typist), module dependencies (Go Module Usage Expert), and repository coherence (Repository Quality Improver).</p> <p>This is the future of code quality: not periodic cleanup sprints, but continuous autonomous improvement across every dimension simultaneously.</p> <div><h2 id="using-these-workflows">Using These Workflows</h2></div> <p>You can add these workflows to your own repository and remix them. Get going with our <a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a>, then run one of the following:</p> <p><strong>Go Module Usage Expert:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/go-fan.md</span></div></div></code></pre></figure></div> <p><strong>Typist:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/typist.md</span></div></div></code></pre></figure></div> <p><strong>Functional Pragmatist:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/main/.github/workflows/functional-programming-enhancer.md</span></div></div></code></pre></figure></div> <p><strong>Repository Quality Improver:</strong></p> <div><figure><figcaption><span></span></figcaption><pre><code><div><div><span>gh</span><span> </span><span>aw</span><span> </span><span>add-wizard</span><span> </span><span>https://github.com/github/gh-aw/blob/v0.45.5/.github/workflows/repository-quality-improver.md</span></div></div></code></pre></figure></div> <p>Then edit and remix the workflow specifications to meet your needs, regenerate the lock file using <code dir="auto">gh aw compile</code>, and push to your repository. See our <a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a> for further installation and setup instructions.</p> <p>You can also <a href="https://github.github.com/gh-aw/setup/creating-workflows/">create your own workflows</a>.</p> <div><h2 id="next-up-continuous-documentation">Next Up: Continuous Documentation</h2></div> <p>Beyond code quality, we need to keep documentation accurate and up-to-date as code evolves. How do we maintain docs that stay current?</p> <p>Continue reading: <a href="https://github.github.com/gh-aw/blog/2026-01-13-meet-the-workflows-documentation/">Continuous Documentation Workflows →</a></p> <div><h2 id="learn-more">Learn More</h2></div> <ul> <li><strong><a href="https://github.github.com/gh-aw/">GitHub Agentic Workflows</a></strong> - The technology behind the workflows</li> <li><strong><a href="https://github.github.com/gh-aw/setup/quick-start/">Quick Start</a></strong> - How to write and compile workflows</li> </ul> <hr> <p><em>This is part 5 of a 19-part series exploring the workflows in Peli’s Agent Factory.</em></p>