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
This is the first comprehensive analysis of GitHub Copilot CLI feature utilization in this repository. Out of 179 total agentic workflow files, 88 (49%) use the Copilot engine. The repository shows strong adoption of GitHub's MCP tooling, safe-outputs, and the shared imports system — but several powerful Copilot-specific features remain largely untapped.
Top 3 findings:
🔴 ~30 workflows use bash: ["*"] (allow-all-tools) without AWF firewall sandbox — a significant security posture gap.
🟡 Autopilot mode (max-continuations) is used in only 1 workflow despite being Copilot-exclusive and well-suited for complex multi-step tasks.
🟡 Custom agent files are used in only 3 workflows despite 10+ workflows having prompts over 500 lines that would benefit from dedicated agent identities.
🔴 Critical Findings
1. Bash Wildcard Without Sandbox (30 Workflows)
Approximately 30 workflows use bash: ["*"] (which triggers --allow-all-tools in the Copilot CLI) withoutsandbox: agent: awf. This means the AI has unrestricted shell access on the unprotected runner.
Example vulnerable pattern:
engine: copilottools:
bash:
- "*"# No sandbox: section
Affected workflows include:daily-regulatory.md, daily-firewall-report.md, org-health-report.md, cli-consistency-checker.md, cli-version-checker.md, terminal-stylist.md, stale-repo-identifier.md, daily-integrity-analysis.md, deep-report.md, functional-pragmatist.md, daily-architecture-diagram.md, and ~19 more.
Only 1 workflow uses network.blocked: to deny specific domains, despite this feature being available for all engines. This feature can harden workflows against exfiltration to known bad domains or scope-creep to unexpected services.
Recommended usage:
network:
allowed:
- defaultsblocked:
- "~*"# Block all non-allowlisted domains
Only smoke-copilot.md uses max-continuations: 2. This Copilot-exclusive feature enables the --autopilot --max-autopilot-continues N flags, allowing complex tasks to span multiple consecutive runs automatically.
Best candidates for autopilot:
repository-quality-improver.md (565 lines of instructions)
engine:
id: copilotmax-continuations: 3# Agent can run up to 3 consecutive autopilot sessions
4. Custom Agent Files Underutilized
Only 3 custom agent files exist (.github/agents/):
technical-doc-writer.agent.md — used by 2 workflows
ci-cleaner.agent.md — used by 1 workflow
agentic-workflows.agent.md — available but rarely referenced
Yet 10+ workflows exceed 500 lines of prompt text. Custom agent files provide a stable identity, shared system prompts, and can be reused across workflows without duplication.
Top candidates for custom agent files:
Workflow
Lines
Suggested Agent
functional-pragmatist.md
1,475
fp-analyst.agent.md
bot-detection.md
925
bot-detection.agent.md
daily-security-red-team.md
835
security-red-team.agent.md
repo-audit-analyzer.md
779
repo-auditor.agent.md
daily-safe-output-integrator.md
739
(already complex enough)
agent-performance-analyzer.md
582
performance-analyst.agent.md
Example:
engine:
id: copilotagent: security-red-team
5. Model Selection Not Used Strategically
Only 6 workflows override the default model. Many simple, high-frequency workflows (daily reports, summaries, triage) run on the default flagship model when a lighter, faster model like gpt-5.1-codex-mini would suffice — reducing cost and latency.
Only 3 workflows use web-search: vs 17 that use web-fetch:. The Copilot engine supports web search through MCP. Research-oriented workflows (deep-report.md, research.md, prompt-clustering-analysis.md) that rely on pre-fetched data could benefit from real-time web search.
Example:
tools:
web-search: # Enable web search via MCPweb-fetch: # Also keep direct URL fetching
🟢 Low Priority / Nice-to-Haves
7. tracker-id Coverage (65/179 = 36%)
tracker-id: enables run lineage tracking via the episode graph. Only 36% of workflows have it. Adding it to all workflows would improve the observability kit's analysis quality and enable better trend detection.
8. mcp-scripts in Main Workflows
mcp-scripts: are used in 5 shared files (shared/go-make.md, shared/gh.md, etc.) but rarely defined in main workflows. This powerful feature allows typed, schema-validated tool definitions that give agents structured access to CLI tools instead of raw bash.
Example use case: Instead of bash: ["go", "make"], define:
mcp-scripts:
run-tests:
description: "Run the test suite with optional filter"inputs:
pattern:
type: stringdescription: "Test pattern to run (e.g. TestCompile)"run: | go test -v -run "$INPUT_PATTERN" ./...
9. GitHub MCP Toolsets Not Optimized
Many workflows use broad toolsets like toolsets: [default] (47 workflows) or even toolsets: [all] (3 workflows) when they only need 1-2 specific APIs. Over-broad toolsets mean more potential for unintended tool use.
Toolset usage breakdown:
Toolset Config
Count
[default]
47
[default, discussions]
10
[default, actions]
5
[repos, pull_requests]
3
[all]
3 ← overly broad
📈 Feature Usage Matrix
Feature
Available
Workflows Using
Usage Rate
Notes
sandbox: agent: awf
✅
12
14% of copilot
Security gap
engine.agent (custom file)
✅
4
5%
Very underused
engine.model
✅
6
7%
Underused for cost savings
engine.max-continuations
✅
1
1%
Barely used
engine.args
✅
9
10%
Reasonable
engine.api-target
✅
0
0%
Enterprise-only feature
engine.env
✅
20
23%
Good adoption
network.blocked
✅
1
1%
Essentially unused
safe-outputs
✅
153
85%
🌟 Great adoption
cache-memory
✅
65
36%
Good adoption
mcp-scripts
✅
5
6%
Via shared files
tools.web-fetch
✅
17
19%
Moderate
tools.web-search
✅
3
3%
Very low
tools.playwright
✅
12
14%
Good for browser tasks
bash: ["*"] (allow-all)
✅
34
39%
30 without sandbox ⚠️
features.copilot-requests
✅
41
47%
Good adoption
imports
✅
175
98%
🌟 Excellent adoption
tracker-id
✅
57
32%
Could be higher
Copilot CLI Capabilities Inventory (Full)
Available CLI Flags (compiler-generated)
--add-dir — Grant file access to directories (auto-configured)
--agent — Use a custom agent file (via engine.agent:)
--allow-all-paths — Allow write to all paths (when tools.edit: enabled)
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.
-
🔍 Copilot CLI usage analysis across 88 Copilot workflows (out of 179 total).
Analysis Date: 2026-04-02 · Triggered by:
@pelikhan· Run: §23921862570📊 Executive Summary
This is the first comprehensive analysis of GitHub Copilot CLI feature utilization in this repository. Out of 179 total agentic workflow files, 88 (49%) use the Copilot engine. The repository shows strong adoption of GitHub's MCP tooling, safe-outputs, and the shared imports system — but several powerful Copilot-specific features remain largely untapped.
Top 3 findings:
bash: ["*"](allow-all-tools) without AWF firewall sandbox — a significant security posture gap.max-continuations) is used in only 1 workflow despite being Copilot-exclusive and well-suited for complex multi-step tasks.🔴 Critical Findings
1. Bash Wildcard Without Sandbox (30 Workflows)
Approximately 30 workflows use
bash: ["*"](which triggers--allow-all-toolsin the Copilot CLI) withoutsandbox: agent: awf. This means the AI has unrestricted shell access on the unprotected runner.Example vulnerable pattern:
Affected workflows include:
daily-regulatory.md,daily-firewall-report.md,org-health-report.md,cli-consistency-checker.md,cli-version-checker.md,terminal-stylist.md,stale-repo-identifier.md,daily-integrity-analysis.md,deep-report.md,functional-pragmatist.md,daily-architecture-diagram.md, and ~19 more.Recommended fix:
2. network.blocked Domain Feature Essentially Unused
Only 1 workflow uses
network.blocked:to deny specific domains, despite this feature being available for all engines. This feature can harden workflows against exfiltration to known bad domains or scope-creep to unexpected services.Recommended usage:
🟡 Medium Priority Opportunities
3. Autopilot Mode (max-continuations) Severely Underutilized
Only smoke-copilot.md uses
max-continuations: 2. This Copilot-exclusive feature enables the--autopilot --max-autopilot-continues Nflags, allowing complex tasks to span multiple consecutive runs automatically.Best candidates for autopilot:
repository-quality-improver.md(565 lines of instructions)daily-safe-output-integrator.md(739 lines, complex multi-phase task)release.md(657 lines, multi-step release process)Example:
4. Custom Agent Files Underutilized
Only 3 custom agent files exist (
.github/agents/):technical-doc-writer.agent.md— used by 2 workflowsci-cleaner.agent.md— used by 1 workflowagentic-workflows.agent.md— available but rarely referencedYet 10+ workflows exceed 500 lines of prompt text. Custom agent files provide a stable identity, shared system prompts, and can be reused across workflows without duplication.
Top candidates for custom agent files:
functional-pragmatist.mdfp-analyst.agent.mdbot-detection.mdbot-detection.agent.mddaily-security-red-team.mdsecurity-red-team.agent.mdrepo-audit-analyzer.mdrepo-auditor.agent.mddaily-safe-output-integrator.mdagent-performance-analyzer.mdperformance-analyst.agent.mdExample:
5. Model Selection Not Used Strategically
Only 6 workflows override the default model. Many simple, high-frequency workflows (daily reports, summaries, triage) run on the default flagship model when a lighter, faster model like
gpt-5.1-codex-miniwould suffice — reducing cost and latency.Simple workflows that could use lighter models:
poem-bot.md✅ (already usesgpt-5)daily-fact.md✅ (already usesgpt-5.1-codex-mini)ai-moderator.md,blog-auditor.md,sub-issue-closer.md,step-name-alignment.mdExample:
6. web-search Severely Underutilized (3 Workflows)
Only 3 workflows use
web-search:vs 17 that useweb-fetch:. The Copilot engine supports web search through MCP. Research-oriented workflows (deep-report.md,research.md,prompt-clustering-analysis.md) that rely on pre-fetched data could benefit from real-time web search.Example:
🟢 Low Priority / Nice-to-Haves
7. tracker-id Coverage (65/179 = 36%)
tracker-id:enables run lineage tracking via the episode graph. Only 36% of workflows have it. Adding it to all workflows would improve the observability kit's analysis quality and enable better trend detection.8. mcp-scripts in Main Workflows
mcp-scripts:are used in 5 shared files (shared/go-make.md,shared/gh.md, etc.) but rarely defined in main workflows. This powerful feature allows typed, schema-validated tool definitions that give agents structured access to CLI tools instead of raw bash.Example use case: Instead of
bash: ["go", "make"], define:9. GitHub MCP Toolsets Not Optimized
Many workflows use broad toolsets like
toolsets: [default](47 workflows) or eventoolsets: [all](3 workflows) when they only need 1-2 specific APIs. Over-broad toolsets mean more potential for unintended tool use.Toolset usage breakdown:
[default][default, discussions][default, actions][repos, pull_requests][all]📈 Feature Usage Matrix
sandbox: agent: awfengine.agent(custom file)engine.modelengine.max-continuationsengine.argsengine.api-targetengine.envnetwork.blockedsafe-outputscache-memorymcp-scriptstools.web-fetchtools.web-searchtools.playwrightbash: ["*"](allow-all)features.copilot-requestsimportstracker-idCopilot CLI Capabilities Inventory (Full)
Available CLI Flags (compiler-generated)
--add-dir— Grant file access to directories (auto-configured)--agent— Use a custom agent file (viaengine.agent:)--allow-all-paths— Allow write to all paths (whentools.edit:enabled)--allow-all-tools— Bypass tool allowlist (whenbash: ["*"])--allow-tool— Granular tool permission (auto-configured per tool)--autopilot— Enable autopilot mode (viaengine.max-continuations:)--disable-builtin-mcps— Disable built-in MCP servers (always set)--log-dir— Log output directory (auto-configured)--log-level— Log verbosity (alwaysall)--max-autopilot-continues— Max autopilot sessions (viamax-continuations)--prompt— Workflow prompt (auto-configured)Engine Config Options
id— Engine identifier (copilot)version— CLI version pinning (default:latest)model— Override LLM model (e.g.,gpt-5.1-codex-mini)max-continuations— Autopilot mode continuation countargs— Custom extra CLI argumentsagent— Custom agent file reference (.github/agents/)api-target— Enterprise/GHES API endpoint overrideenv— Custom environment variablescommand— Custom binary path (skip installation)concurrency— Job-level concurrencyFeature Flags (via
features:)copilot-requests— Enable S2S token modemcp-gateway— Enable MCP gateway proxydisable-xpia-prompt— Disable XPIA injection protection promptAvailable Custom Agent Files (
.github/agents/)technical-doc-writer.agent.mdci-cleaner.agent.mdagentic-workflows.agent.mdcontribution-checker.agent.mdcreate-safe-output-type.agent.mdcustom-engine-implementation.agent.mdgrumpy-reviewer.agent.mdinteractive-agent-designer.agent.mdw3c-specification-writer.agent.mdWorkflow-Specific Recommendations
functional-pragmatist.md(1,475 lines)fp-analyst.agent.md, keep workflow-specific context in the .md filebot-detection.md(925 lines)sandbox: agent: awf+ createbot-detection.agent.mddaily-news.mdsmoke-copilot.mdagentic-observability-kit.mdtracker-idto more workflows it monitors to improve data qualitydaily-cli-tools-tester.mdbash: ["*"]+agentic-workflowstool without sandboxsandbox: agent: awfResearch workflows (
deep-report.md,research.md)tools: web-search:for real-time search capability instead of relying only on pre-fetched data🎯 Action Items
Immediate (Security):
bash: ["*"]and no sandbox — addsandbox: agent: awfwhere appropriatenetwork.blocked: ["~*"]as a deny-by-default posture for high-sensitivity workflowsShort-term (Developer Experience):
max-continuations: 2-3for complex multi-step workflows (repository-quality-improver.md,release.md)tracker-id:to the ~120 workflows that lack itMedium-term (Optimization):
toolsets: [default]and narrow to specific toolsets where possiblegpt-5.1-codex-minimodel for high-frequency simple workflows (daily facts, poem-bot, simple summarizers)web-search:to research-oriented workflows that currently only useweb-fetch:🔬 Research Methodology
pkg/workflow/copilot_engine*.go,pkg/workflow/copilot_mcp.go,pkg/constants/for available features.mdworkflow files in.github/workflows/grep -rto count feature adoption across all workflowsbash: ["*"]usage againstsandbox:presencewc -lon all workflow files to identify candidates for custom agentsReferences:
Beta Was this translation helpful? Give feedback.
All reactions