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
Analysis Date: 2026-02-19 | Repository: github/gh-aw | Scope: 80 Copilot workflows out of 154 total (51.9%) | Copilot CLI Version: 0.0.411
📊 Executive Summary
Research Topic: Copilot CLI Optimization Opportunities in github/gh-aw Key Findings:
engine.env, plugins, and tools-timeout are available but completely unused (0%)
engine.agent (custom agent files) used in only 4 workflows (5%) despite 10 agent files existing in .github/agents/
AWF sandbox firewall adopted in only 15 workflows (18.8%) despite workflows actively fetching external web resources
safe-inputs at 6.3% while many workflows could safely delegate complex CLI operations
tools.agentic-workflows tool used in only 3 workflows despite significant meta-orchestration potential
The repository shows a mature, security-conscious architecture with strong adoption of safe-outputs (100%), github tool (93.8%), timeout-minutes (95%), and cache-memory (83.8%). The most impactful gaps are around AWF sandbox adoption, custom agent files, and the unused engine.env configuration.
🔴 Critical Findings
High Priority Issues
1. AWF Sandbox Underadoption
15 of 80 workflows (18.8%) use the AWF firewall sandbox, but ~13 workflows actively use web-fetch: or external network access without sandbox protection. Security exposure for workflows fetching external content.
2. engine.env Completely Unused
The engine.env field (0% adoption) allows injecting custom environment variables into the Copilot CLI process. Many workflows pass configuration through hardcoded values in prompts or bash steps when they could use typed env vars.
3. engine.agent Custom Files Not Connected
10 custom agent files exist in .github/agents/ (e.g., technical-doc-writer.agent.md, contribution-checker.agent.md, ci-cleaner.agent.md) but only 4 workflows actually reference them via engine.agent:. Most specialized workflows craft entire agent personas in their prompt body instead.
Medium Priority Opportunities
4. safe-inputs Underused
Only 5 workflows (6.3%) use safe-inputs for controlled command execution. Several workflows use bash: ["*"] (unrestricted wildcard) or run gh api calls directly when they could benefit from safe-inputs for auditable, scoped operations.
5. tools-timeout / startup-timeout Absent tools-timeout and startup-timeout are available for controlling MCP server behavior but used in 0 workflows. Workflows with complex MCP tool chains (serena + playwright + github) could benefit from explicit timeouts to prevent hangs.
1️⃣ Current State Analysis
View Copilot CLI Capabilities Inventory
Available CLI Features
Category
Feature
Status
Engine Config
engine.model
Available
Engine Config
engine.args
Available
Engine Config
engine.agent
Available (references .github/agents/*.agent.md)
Engine Config
engine.env
Available
Engine Config
engine.command
Available
Engine Config
engine.version
Available
Engine Config
engine.max-turns
Not yet supported (supportsMaxTurns: false)
Sandbox
sandbox.agent: awf
Available (AWF v0.15.0+ chroot mode)
Sandbox
sandbox.agent: srt
Available (alternative to AWF)
Sandbox
sandbox.mcp
Available (MCP gateway container)
Network
network.allowed
Available with protocol prefixes
Tools
tools.github
Available (with toolsets, granular permissions)
Tools
tools.playwright
Available
Tools
tools.web-fetch
Available (builtin)
Tools
tools.bash
Available (wildcard or specific commands)
Tools
tools.edit
Available
Tools
tools.serena
Available
Tools
tools.agentic-workflows
Available
Tools
tools.cache-memory
Available
Tools
tools-timeout
Available
Tools
tools.startup-timeout
Available
Safety
safe-outputs
Available (many types)
Safety
safe-inputs
Available
Plugins
plugins (experimental)
Available
Model
GH_AW_MODEL_AGENT_COPILOT org var
Available (org-level default)
CLI Flags
--share
Always enabled (auto-added)
CLI Flags
--disable-builtin-mcps
Always enabled (auto-added)
CLI Flags
--add-dir
Auto-added for configured paths
CLI Flags
--allow-all-paths
Auto-added when edit tool used
View Usage Statistics
Usage Statistics (80 Copilot Workflows)
Feature
Count
%
Trend
safe-outputs
80
100%
✅ Universal
timeout-minutes
76
95%
✅ Near-universal
github tool
75
93.8%
✅ Near-universal
network: config
71
88.8%
✅ Wide adoption
cache-memory
67
83.8%
✅ Wide adoption
serena tool
22
27.5%
📈 Growing
imports
35
43.75%
📈 Growing
sandbox: config
19
23.8%
⚠️ Moderate
engine.args
14
17.5%
⚠️ Occasional
web-fetch tool
13
16.3%
⚠️ Occasional
playwright tool
11
13.8%
⚠️ Occasional
engine.model
9
11.3%
⚠️ Rare
safe-inputs
5
6.3%
🔴 Rare
engine.max-turns
5
6.3%
🔴 Rare
engine.agent
4
5.0%
🔴 Very rare
engine.version
3
3.8%
🔴 Very rare
agentic-workflows
3
3.75%
🔴 Very rare
engine.env
0
0%
❌ Unused
plugins
0
0%
❌ Unused
tools-timeout
0
0%
❌ Unused
2️⃣ Feature Usage Matrix
Feature Category
Available Features
Used
Not Used
Engine Config
model, args, agent, env, command, version
model✅, args✅, agent⚠️
env❌, command❌, version⚠️
Sandbox
awf, srt, mcp-container
awf⚠️
srt❌
Tools - Core
github, bash, edit
github✅, bash✅, edit✅
—
Tools - Extended
playwright, web-fetch, serena
playwright⚠️, web-fetch⚠️, serena✅
—
Tools - Meta
agentic-workflows, cache-memory
cache-memory✅
agentic-workflows⚠️
Tools - Safety
safe-inputs, safe-outputs
safe-outputs✅
safe-inputs⚠️
Tools - Config
tools-timeout, startup-timeout
—
both❌
Plugins
experimental plugin API
—
plugins❌
3️⃣ Missed Opportunities
View High Priority Opportunities
🔴 High Priority
Opportunity 1: AWF Sandbox for Web-Fetching Workflows
What: The AWF network firewall sandbox (sandbox: agent: awf) isolates the Copilot CLI in a container with controlled network access
Why It Matters: Workflows using web-fetch: or accessing external domains run without sandboxing, creating potential for SSRF or unintended network access
Where: ~13 workflows with web-fetch: but no AWF sandbox (e.g., cli-consistency-checker.md, craft.md, daily-news.md already has it as a good example)
Opportunity 2: Connect Custom Agent Files to Specialized Workflows
What: The .github/agents/ directory has 10 custom agent files (technical-doc-writer.agent.md, contribution-checker.agent.md, ci-cleaner.agent.md, etc.) but only 4 workflows use engine.agent:
Why It Matters: Specialized personas (tone, behavior, domain knowledge) can be centrally maintained and reused across workflows instead of duplicating in each prompt
What: engine.env allows injecting environment variables into the Copilot CLI process
Why It Matters: Currently 0% adoption - workflows pass configuration as inline text in prompts or bash setup steps when typed env vars would be cleaner
Where: Workflows needing API endpoints, feature flags, or configuration that varies by environment
Opportunity 5: Use agentic-workflows Tool for Meta-Orchestration
What: The tools.agentic-workflows MCP server lets a workflow trigger and monitor other workflows
Why It Matters: Only 3 workflows use it despite significant potential for orchestration (e.g., triggering fix workflows after analysis)
Where: agent-performance-analyzer.md, workflow-health-manager.md, repository-quality-improver.md could trigger follow-up workflows
How to Implement:
tools:
agentic-workflows:
Opportunity 6: Add tools-timeout for MCP-Heavy Workflows
What: tools-timeout and startup-timeout control how long MCP tool calls can take
Why It Matters: 0% adoption. Workflows using multiple heavy MCP servers (serena + playwright + github) can hang indefinitely if a tool call stalls
Where: smoke-copilot.md, slide-deck-maintainer.md, jsweep.md use 5+ tools simultaneously
How to Implement:
tools:
github:
serena:
playwright:
timeout: 120# 2 min max per tool callstartup-timeout: 30# 30s for MCP server startup
Opportunity 7: Model Selection for Cost/Quality Optimization
What: engine.model allows specifying the AI model; org-level GH_AW_MODEL_AGENT_COPILOT variable sets the default
Why It Matters: Only 9 workflows (11.3%) pin a model. Smoke/daily-quick workflows could use cheaper models; complex analysis workflows could use stronger ones
# For lightweight/fast workflowsengine:
id: copilotmodel: gpt-5.1-codex-mini # Cost-effective for simple tasks# For complex analysisengine:
id: copilotmodel: claude-sonnet-4.6 # Higher quality for deep analysis
View Low Priority Opportunities
🟢 Low Priority
Opportunity 8: Explore Plugins for Specialized Tooling
What: plugins (experimental) allows installing Copilot CLI plugins from GitHub repos before execution
Why It Matters: 0% adoption. For workflows needing specialized domain tools or MCP servers bundled as plugins
Where: Future workflows needing domain-specific knowledge bases or specialized APIs
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.
-
Analysis Date: 2026-02-19 | Repository: github/gh-aw | Scope: 80 Copilot workflows out of 154 total (51.9%) | Copilot CLI Version: 0.0.411
📊 Executive Summary
Research Topic: Copilot CLI Optimization Opportunities in github/gh-aw
Key Findings:
engine.env,plugins, andtools-timeoutare available but completely unused (0%)engine.agent(custom agent files) used in only 4 workflows (5%) despite 10 agent files existing in.github/agents/safe-inputsat 6.3% while many workflows could safely delegate complex CLI operationstools.agentic-workflowstool used in only 3 workflows despite significant meta-orchestration potentialThe repository shows a mature, security-conscious architecture with strong adoption of
safe-outputs(100%),githubtool (93.8%),timeout-minutes(95%), andcache-memory(83.8%). The most impactful gaps are around AWF sandbox adoption, custom agent files, and the unusedengine.envconfiguration.🔴 Critical Findings
High Priority Issues
1. AWF Sandbox Underadoption
15 of 80 workflows (18.8%) use the AWF firewall sandbox, but ~13 workflows actively use
web-fetch:or external network access without sandbox protection. Security exposure for workflows fetching external content.2. engine.env Completely Unused
The
engine.envfield (0% adoption) allows injecting custom environment variables into the Copilot CLI process. Many workflows pass configuration through hardcoded values in prompts or bash steps when they could use typed env vars.3. engine.agent Custom Files Not Connected
10 custom agent files exist in
.github/agents/(e.g.,technical-doc-writer.agent.md,contribution-checker.agent.md,ci-cleaner.agent.md) but only 4 workflows actually reference them viaengine.agent:. Most specialized workflows craft entire agent personas in their prompt body instead.Medium Priority Opportunities
4. safe-inputs Underused
Only 5 workflows (6.3%) use
safe-inputsfor controlled command execution. Several workflows usebash: ["*"](unrestricted wildcard) or rungh apicalls directly when they could benefit fromsafe-inputsfor auditable, scoped operations.5. tools-timeout / startup-timeout Absent
tools-timeoutandstartup-timeoutare available for controlling MCP server behavior but used in 0 workflows. Workflows with complex MCP tool chains (serena + playwright + github) could benefit from explicit timeouts to prevent hangs.1️⃣ Current State Analysis
View Copilot CLI Capabilities Inventory
Available CLI Features
engine.modelengine.argsengine.agent.github/agents/*.agent.md)engine.envengine.commandengine.versionengine.max-turnssupportsMaxTurns: false)sandbox.agent: awfsandbox.agent: srtsandbox.mcpnetwork.allowedtools.githubtools.playwrighttools.web-fetchtools.bashtools.edittools.serenatools.agentic-workflowstools.cache-memorytools-timeouttools.startup-timeoutsafe-outputssafe-inputsplugins(experimental)GH_AW_MODEL_AGENT_COPILOTorg var--share--disable-builtin-mcps--add-dir--allow-all-pathsedittool usedView Usage Statistics
Usage Statistics (80 Copilot Workflows)
safe-outputstimeout-minutesgithubtoolnetwork:configcache-memoryserenatoolimportssandbox:configengine.argsweb-fetchtoolplaywrighttoolengine.modelsafe-inputsengine.max-turnsengine.agentengine.versionagentic-workflowsengine.envpluginstools-timeout2️⃣ Feature Usage Matrix
3️⃣ Missed Opportunities
View High Priority Opportunities
🔴 High Priority
Opportunity 1: AWF Sandbox for Web-Fetching Workflows
sandbox: agent: awf) isolates the Copilot CLI in a container with controlled network accessweb-fetch:or accessing external domains run without sandboxing, creating potential for SSRF or unintended network accessweb-fetch:but no AWF sandbox (e.g.,cli-consistency-checker.md,craft.md,daily-news.mdalready has it as a good example)Opportunity 2: Connect Custom Agent Files to Specialized Workflows
.github/agents/directory has 10 custom agent files (technical-doc-writer.agent.md,contribution-checker.agent.md,ci-cleaner.agent.md, etc.) but only 4 workflows useengine.agent:docs-noob-tester.md,layout-spec-maintainer.md), review workflows (grumpy-reviewer.md), CI workflows (ci-coach.md,ci-doctor.md)View Medium Priority Opportunities
🟡 Medium Priority
Opportunity 3: Use engine.env for Configuration
engine.envallows injecting environment variables into the Copilot CLI processOpportunity 4: Expand safe-inputs for Complex CLI Operations
safe-inputsprovides audited, controlled execution of CLI commands (e.g.,safeinputs-gh,safeinputs-go,safeinputs-make)bash: ["*"]wildcard which allows unrestricted command executiondaily-cli-performance.mdshows the pattern well; similar workflows (daily-compiler-quality.md,tidy.md,jsweep.md) could benefitOpportunity 5: Use agentic-workflows Tool for Meta-Orchestration
tools.agentic-workflowsMCP server lets a workflow trigger and monitor other workflowsagent-performance-analyzer.md,workflow-health-manager.md,repository-quality-improver.mdcould trigger follow-up workflowsOpportunity 6: Add tools-timeout for MCP-Heavy Workflows
tools-timeoutandstartup-timeoutcontrol how long MCP tool calls can takesmoke-copilot.md,slide-deck-maintainer.md,jsweep.mduse 5+ tools simultaneouslyOpportunity 7: Model Selection for Cost/Quality Optimization
engine.modelallows specifying the AI model; org-levelGH_AW_MODEL_AGENT_COPILOTvariable sets the defaultgpt-5.1-codex-mini; complex analysis → stronger modelsView Low Priority Opportunities
🟢 Low Priority
Opportunity 8: Explore Plugins for Specialized Tooling
plugins(experimental) allows installing Copilot CLI plugins from GitHub repos before executionOpportunity 9: Granular Bash Permissions vs Wildcard
bash: ["*"](unrestricted wildcard) when they could list specific commandsgit,grep,awk)Opportunity 10: Github Tool Toolsets Granularity
githubtool supportstoolsets:parameter for filtering which GitHub API operations are availablegithub:without specifying toolsets, granting full GitHub MCP accesstoolsets: [repos, issues]instead of full access4️⃣ Specific Workflow Recommendations
View Workflow-Specific Recommendations
ci-doctor.md- CI Failure Investigatorengine.model: gpt-5.1-codex-mini✅,network: defaults✅engine.agentfor consistent personasandbox.agent: awf, consideragent: ci-cleaner(already exists in.github/agents/)grumpy-reviewer.md- PR Review Agent.github/agents/grumpy-reviewer.agent.mdbut doesn't useengine.agent:to reference itengine: { id: copilot, agent: grumpy-reviewer }to leverage the centrally-maintained agent filedaily-news.md- News Digest (Best Practice Reference ⭐)smoke-copilot.md- Smoke Testtools-timeoutfor the many MCP servers in usetools: { timeout: 120, startup-timeout: 30 }to prevent indefinite hangsworkflow-generator.md/craft.md- Workflow Creationengine.agent: agentic-workflowscould provide workflow-creation expertise.github/agents/agentic-workflows.agent.mdorinteractive-agent-designer.agent.mdrepository-quality-improver.md- Quality Analysistools.agentic-workflowsto trigger fix workflows after analysistools: { agentic-workflows: }for automated remediation triggering5️⃣ Trends & Insights
View Historical Trends
This is the first comprehensive analysis. Future runs will track:
Architecture Observations
6️⃣ Best Practice Guidelines
Based on this research:
.github/agents/has a relevant agent file, useengine.agent:to reference it for consistent personasgpt-5.1-codex-minifor simple/detection tasks, stronger models for complex analysis7️⃣ Action Items
Immediate Actions (this week):
sandbox: agent: awfgrumpy-reviewer.mdto useengine.agent: grumpy-reviewerhourly-ci-cleaner.mdto useengine.agent: ci-cleaner(already done ✅)Short-term (this month):
tools-timeoutconfiguration tosmoke-copilot.mdand other multi-MCP workflowsengine.envfor workflows that pass config via bash setup stepssafe-inputsmigration frombash: ["*"]Long-term (this quarter):
plugins(experimental) for domain-specific tooling needstools.agentic-workflowsfor automated remediation pipelinesView Supporting Evidence & Methodology
Research Methodology
Data Collection:
.mdworkflow files in.github/workflows/copilot_engine.go,copilot_engine_execution.go,copilot_engine_tools.go,copilot_mcp.godocs/src/content/docs/reference/engines.mdandpkg/constants/constants.goAnalysis Tools:
grep,glob, Go constants inspection, YAML frontmatter parsingLimitations:
.lock.yml) analysis provides compiler output but.mdsource files are authoritativeengine.envmay be used in private workflows not visible hereReferences
pkg/workflow/copilot_engine*.godocs/src/content/docs/reference/engines.mdpkg/constants/constants.go.github/agents/*.agent.mdmemory/copilot-cli-researchbranchReferences:
Beta Was this translation helpful? Give feedback.
All reactions