You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Analyzed /tmp/gh-aw/agent/workflow-index.json (299 workflows: engines - copilot 87, codex 70, claude 20, pi 12, others 12, unspecified 95) plus targeted greps across .github/workflows/*.md frontmatter and prompt bodies. Cross-checked candidates against the 93 files already in .github/workflows/shared/ to avoid duplicating existing bundles (e.g. daily-issue-base.md, daily-pr-base.md, otlp.md, reporting.md, default-ai-credits-pricing.md).
Opportunities identified (by priority)
High priority
1. network: allowed: [defaults] boilerplate - 17 workflows repeat the identical 3-line block verbatim, and roughly 150 more workflows have a network: block with only minor variation. The simple form is copy-pasted with no parameterization need, so it is a safe, mechanical extraction.
Recommendation: extract shared/network-defaults.md.
2. max-daily-ai-credits: 10000 cap - 75 of 299 workflows (25%) set this exact literal value with no variation, almost always immediately followed by a permissions: block. This is the single most duplicated scalar frontmatter setting in the repo, more common than any shared import except otlp/reporting.
Recommendation: extract shared/max-daily-ai-credits-10000.md documenting the value as a named convention, after confirming how scalar frontmatter merges through imports:.
3. skip-if-match daily/scheduled dedup pattern - 17 daily/scheduled workflows (ab-testing-advisor, architecture-guardian, daily-agent-of-the-day-blog-writer, daily-go-test-parallelizer, daily-harness-experiment-proposer, daily-safe-output-optimizer, daily-trajectory-grader-implementer, daily-windows-defender-scan, daily-yamllint-fixer, deployment-incident-monitor, feature-grower, issue-monster, layout-spec-maintainer, purelock, spec-librarian, unbloat-docs, windows-grower) implement the same "skip run if a matching open issue/PR already exists" idiom with only the search query/label varying. This isn't bundled into daily-issue-base.md/daily-pr-base.md today, so each workflow re-derives its own query syntax and risks drift.
Recommendation: add a parameterized skip-if-match recipe or extend daily-issue-base.md/daily-pr-base.md with an optional dedup-query input.
Medium priority
4. Repeated inline "MUST call noop" instructions - 24 workflows hand-write their own noop/safe-output completion reminder text in the prompt body with varying wording, while only 2 workflows import the existing shared/noop-reminder.md. This duplicates an already-built shared component that simply isn't being adopted widely.
Not filed as a new issue - flagged for follow-up to promote shared/noop-reminder.md adoption instead of building a new component.
Impact summary
#
Recommendation
Workflows affected
Priority
1
shared/network-defaults.md
17 exact match, ~150 with a network block
High
2
shared/max-daily-ai-credits-10000.md convention
75
High
3
skip-if-match dedup recipe
17
High
4
noop-reminder adoption (existing component)
24 candidates, 2 adopted
Medium, no new issue
Issues created
Up to 3 issues filed for recommendations 1-3 above.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
Method
Analyzed
/tmp/gh-aw/agent/workflow-index.json(299 workflows: engines - copilot 87, codex 70, claude 20, pi 12, others 12, unspecified 95) plus targeted greps across.github/workflows/*.mdfrontmatter and prompt bodies. Cross-checked candidates against the 93 files already in.github/workflows/shared/to avoid duplicating existing bundles (e.g.daily-issue-base.md,daily-pr-base.md,otlp.md,reporting.md,default-ai-credits-pricing.md).Opportunities identified (by priority)
High priority
1.
network: allowed: [defaults]boilerplate - 17 workflows repeat the identical 3-line block verbatim, and roughly 150 more workflows have anetwork:block with only minor variation. The simple form is copy-pasted with no parameterization need, so it is a safe, mechanical extraction.Recommendation: extract
shared/network-defaults.md.2.
max-daily-ai-credits: 10000cap - 75 of 299 workflows (25%) set this exact literal value with no variation, almost always immediately followed by apermissions:block. This is the single most duplicated scalar frontmatter setting in the repo, more common than any shared import except otlp/reporting.Recommendation: extract
shared/max-daily-ai-credits-10000.mddocumenting the value as a named convention, after confirming how scalar frontmatter merges throughimports:.3.
skip-if-matchdaily/scheduled dedup pattern - 17 daily/scheduled workflows (ab-testing-advisor, architecture-guardian, daily-agent-of-the-day-blog-writer, daily-go-test-parallelizer, daily-harness-experiment-proposer, daily-safe-output-optimizer, daily-trajectory-grader-implementer, daily-windows-defender-scan, daily-yamllint-fixer, deployment-incident-monitor, feature-grower, issue-monster, layout-spec-maintainer, purelock, spec-librarian, unbloat-docs, windows-grower) implement the same "skip run if a matching open issue/PR already exists" idiom with only the search query/label varying. This isn't bundled intodaily-issue-base.md/daily-pr-base.mdtoday, so each workflow re-derives its own query syntax and risks drift.Recommendation: add a parameterized
skip-if-matchrecipe or extenddaily-issue-base.md/daily-pr-base.mdwith an optional dedup-query input.Medium priority
4. Repeated inline "MUST call noop" instructions - 24 workflows hand-write their own noop/safe-output completion reminder text in the prompt body with varying wording, while only 2 workflows import the existing
shared/noop-reminder.md. This duplicates an already-built shared component that simply isn't being adopted widely.Not filed as a new issue - flagged for follow-up to promote
shared/noop-reminder.mdadoption instead of building a new component.Impact summary
Issues created
Up to 3 issues filed for recommendations 1-3 above.
All reactions