Parent investigation: #26930
Symptom issues: #26955 (Daily Safe Output Integrator), #26964 (Daily Project Performance Summary Generator)
Problem
The Copilot CLI blocks bash shell execution of the safeoutputs binary with Permission denied and could not request permission from user in automated (non-interactive) runs. Affected workflows complete their analysis correctly but cannot emit the required noop safe output, causing a timeout failure after 20–32 minutes.
This is distinct from the "MCP Servers in Copilot" policy error tracked in #26931. MCP server connections succeed — the Copilot CLI's shell tool allowlist is what blocks CLI-mode invocation of safeoutputs.
Affected Workflows and Runs
| Workflow |
Run |
Engine |
Duration |
At |
| Daily Safe Output Integrator |
§24590461053 |
copilot |
21.8m |
23:03 UTC 2026-04-17 |
| Daily Project Performance Summary Generator |
§24591062937 |
copilot |
32.3m |
23:26 UTC 2026-04-17 |
Evidence
From run §24590461053 agent log:
✗ Signal noop - all coverage complete (shell)
│ safeoutputs noop --message "No action needed: ..."
└ Permission denied and could not request permission from user
✗ Call safeoutputs noop (shell)
│ /home/runner/work/_temp/gh-aw/mcp-cli/bin/safeoutputs noop --message "..."
└ Permission denied and could not request permission from user
✗ Call safeoutputs noop via node bridge (shell)
└ Permission denied and could not request permission from user
✗ Try Python HTTP to safeoutputs (shell)
└ Permission denied and could not request permission from user
##[error]The action 'Execute GitHub Copilot CLI' has timed out after 20 minutes.
The agent (correctly) found all 41 safe-output types covered and attempted safeoutputs noop via 8+ different methods. Every shell-based invocation was blocked. The MCP tool (noop) was available but the agent tried CLI invocation first and exhausted the timeout retrying shell approaches.
Root Cause
The Copilot CLI shell tool allowlist in automated/non-interactive mode does not permit execution of the safeoutputs binary path. The agent should use the MCP tool (noop) directly instead of falling back to bash CLI invocation.
Proposed Remediation
- Agent prompt: Instruct the Copilot agent to prefer the MCP
safeoutputs tool over the CLI binary when calling noop. The agent should use mcp_tool("noop", ...) not bash("safeoutputs noop ...").
- Copilot shell allowlist: If CLI-mode invocation is required, add
safeoutputs to the workflow's Copilot CLI shell command allowlist.
- System prompt update: Add explicit guidance that in Copilot CLI runs, safe outputs must be emitted via the MCP tool endpoint, not the shell binary.
Success Criteria
Daily Safe Output Integrator and Daily Project Performance Summary Generator complete with noop in safe outputs within the timeout window, with no "Permission denied" errors in agent logs.
References:
Generated by [aw] Failure Investigator (6h) · ● 590.5K · ◷
Parent investigation: #26930
Symptom issues: #26955 (Daily Safe Output Integrator), #26964 (Daily Project Performance Summary Generator)
Problem
The Copilot CLI blocks bash shell execution of the
safeoutputsbinary withPermission denied and could not request permission from userin automated (non-interactive) runs. Affected workflows complete their analysis correctly but cannot emit the requirednoopsafe output, causing a timeout failure after 20–32 minutes.This is distinct from the "MCP Servers in Copilot" policy error tracked in #26931. MCP server connections succeed — the Copilot CLI's shell tool allowlist is what blocks CLI-mode invocation of
safeoutputs.Affected Workflows and Runs
Evidence
From run §24590461053 agent log:
The agent (correctly) found all 41 safe-output types covered and attempted
safeoutputs noopvia 8+ different methods. Every shell-based invocation was blocked. The MCP tool (noop) was available but the agent tried CLI invocation first and exhausted the timeout retrying shell approaches.Root Cause
The Copilot CLI shell tool allowlist in automated/non-interactive mode does not permit execution of the
safeoutputsbinary path. The agent should use the MCP tool (noop) directly instead of falling back to bash CLI invocation.Proposed Remediation
safeoutputstool over the CLI binary when callingnoop. The agent should usemcp_tool("noop", ...)notbash("safeoutputs noop ...").safeoutputsto the workflow's Copilot CLI shell command allowlist.Success Criteria
Daily Safe Output Integrator and Daily Project Performance Summary Generator complete with
noopin safe outputs within the timeout window, with no "Permission denied" errors in agent logs.References: