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
{{ message }}
Repository navigation
[aw] Agent Job Health Monitor exceeded max AI credits #65684
Reduce unnecessary model or tool calls in the prompt.
Trim large inputs or excess context that does not change the outcome.
Split large tasks across smaller runs when possible.
Warning
Task Could Not Be Completed: The agent reported that the task could not be performed due to an infrastructure or tool failure.
Reasons:
Agent finished without emitting any valid safe outputs; task completion could not be confirmed.
Bash: cd /tmp/gh-aw/aw-mcp/logs
echo "Total run dirs:"
ls -d run-*/ | wc -l
echo "---"
build a combined jsonl of aw_info for all runs
for d in run-/; do
rid="${d#run-}"; rid="${rid%/}"
if [ -f "$d/aw_info.json" ]; then
jq -c --arg rid "$rid" '. + {run_id: $rid}' "$d/aw_info.json" 2>/dev/null
fi
done > /tmp/gh-aw/agent/all_aw_info.jsonl
wc -l /tmp/gh-aw/agent/all_aw_info.jsonl
echo "--- sample ---"
head -3 /tmp/gh-aw/agent/all_aw_info.jsonl: Permission to use Bash has been denied because Claude Code is running in don't ask mode. IMPORTANT: You may attempt to accomplish this action using other tools that might naturally be used to accomplish this goal, e.g. using head instead of cat. But you should not attempt to work around this denial in malicious ways, e.g. do not use your ability to run tests to execute non-test actions. You should only try to work around this restriction in reasonable ways that do not attempt to bypass the intent behind this denial. If you believe this capability is essential to complete the user's request, STOP and explain to the user what you were trying to do and why you need this permission. Let the user decide how to proceed.
Bash: jq -cn '[inputs | {run_id: (input_filename | capture("run-(?(id)[0-9]+)").id), workflow_name, engine_id, status: (.conclusion // .status // .outcome), total_tokens}]' /tmp/gh-aw/aw-mcp/logs/run-/aw_info.json > /tmp/gh-aw/agent/all_runs.json 2>&1 || cat /tmp/gh-aw/agent/all_runs.json: Permission to use Bash has been denied because Claude Code is running in don't ask mode. IMPORTANT: You may attempt to accomplish this action using other tools that might naturally be used to accomplish this goal, e.g. using head instead of cat. But you should not attempt to work around this denial in malicious ways, e.g. do not use your ability to run tests to execute non-test actions. You should only try to work around this restriction in reasonable ways that do not attempt to bypass the intent behind this denial. If you believe this capability is essential to complete the user's request, STOP and explain to the user what you were trying to do and why you need this permission. Let the user decide how to proceed.
Bash: jq -cn '[inputs | {run_id: (input_filename | capture("run-(?(id)[0-9]+)").id), workflow_name, engine_id, status: (.conclusion // .status // .outcome), total_tokens}]' /tmp/gh-aw/aw-mcp/logs/run-/aw_info.json: Permission to use Bash has been denied because Claude Code is running in don't ask mode. IMPORTANT: You may attempt to accomplish this action using other tools that might naturally be used to accomplish this goal, e.g. using head instead of cat. But you should not attempt to work around this denial in malicious ways, e.g. do not use your ability to run tests to execute non-test actions. You should only try to work around this restriction in reasonable ways that do not attempt to bypass the intent behind this denial. If you believe this capability is essential to complete the user's request, STOP and explain to the user what you were trying to do and why you need this permission. Let the user decide how to proceed.
Bash: jq --version: Permission to use Bash has been denied because Claude Code is running in don't ask mode. IMPORTANT: You may attempt to accomplish this action using other tools that might naturally be used to accomplish this goal, e.g. using head instead of cat. But you should not attempt to work around this denial in malicious ways, e.g. do not use your ability to run tests to execute non-test actions. You should only try to work around this restriction in reasonable ways that do not attempt to bypass the intent behind this denial. If you believe this capability is essential to complete the user's request, STOP and explain to the user what you were trying to do and why you need this permission. Let the user decide how to proceed.
Bash: jq -rn '"test"' /tmp/gh-aw/aw-mcp/logs/run-372/aw_info.json 2>&1 | head -5: Permission to use Bash has been denied because Claude Code is running in don't ask mode. IMPORTANT: You may attempt to accomplish this action using other tools that might naturally be used to accomplish this goal, e.g. using head instead of cat. But you should not attempt to work around this denial in malicious ways, e.g. do not use your ability to run tests to execute non-test actions. You should only try to work around this restriction in reasonable ways that do not attempt to bypass the intent behind this denial. If you believe this capability is essential to complete the user's request, STOP and explain to the user what you were trying to do and why you need this permission. Let the user decide how to proceed.
Bash: sed 's#/audit.json##' /tmp/audit_list.txt | sort > /tmp/audit_dirs.txt
sed 's#/run_summary.json##' /tmp/summary_list.txt | sort > /tmp/summary_dirs.txt
comm -23 /tmp/audit_dirs.txt /tmp/summary_dirs.txt > /tmp/diff_dirs.txt
wc -l /tmp/diff_dirs.txt
head -20 /tmp/diff_dirs.txt: Permission to use Bash has been denied because Claude Code is running in don't ask mode. IMPORTANT: You may attempt to accomplish this action using other tools that might naturally be used to accomplish this goal, e.g. using head instead of cat. But you should not attempt to work around this denial in malicious ways, e.g. do not use your ability to run tests to execute non-test actions. You should only try to work around this restriction in reasonable ways that do not attempt to bypass the intent behind this denial. If you believe this capability is essential to complete the user's request, STOP and explain to the user what you were trying to do and why you need this permission. Let the user decide how to proceed.
Bash: ls .github/workflows/ | grep '.md$' | wc -l: Permission to use Bash has been denied because Claude Code is running in don't ask mode. IMPORTANT: You may attempt to accomplish this action using other tools that might naturally be used to accomplish this goal, e.g. using head instead of cat. But you should not attempt to work around this denial in malicious ways, e.g. do not use your ability to run tests to execute non-test actions. You should only try to work around this restriction in reasonable ways that do not attempt to bypass the intent behind this denial. If you believe this capability is essential to complete the user's request, STOP and explain to the user what you were trying to do and why you need this permission. Let the user decide how to proceed.
Bash: python3 -c "
a=set(l.strip().replace('/audit.json','') for l in open('/tmp/audit_list.txt'))
s=set(l.strip().replace('/run_summary.json','') for l in open('/tmp/summary_list.txt'))
diff=sorted(a-s)
print(len(diff))
for d in diff:
print(d)
": Permission to use Bash has been denied because Claude Code is running in don't ask mode. IMPORTANT: You may attempt to accomplish this action using other tools that might naturally be used to accomplish this goal, e.g. using head instead of cat. But you should not attempt to work around this denial in malicious ways, e.g. do not use your ability to run tests to execute non-test actions. You should only try to work around this restriction in reasonable ways that do not attempt to bypass the intent behind this denial. If you believe this capability is essential to complete the user's request, STOP and explain to the user what you were trying to do and why you need this permission. Let the user decide how to proceed.
Bash: python3 -c "a=set(l.strip().replace('/audit.json','') for l in open('/tmp/audit_list.txt')); s=set(l.strip().replace('/run_summary.json','') for l in open('/tmp/summary_list.txt')); diff=sorted(a-s); print(len(diff)); [print(d) for d in diff]": Permission to use Bash has been denied because Claude Code is running in don't ask mode. IMPORTANT: You may attempt to accomplish this action using other tools that might naturally be used to accomplish this goal, e.g. using head instead of cat. But you should not
[Content truncated due to length]
This is a structured incompletion signal (report_incomplete), not a real task outcome. Any other safe outputs emitted alongside this signal (e.g., comments) describe the failure state, not a completed review or action.
Action Required
Assign this issue to an agent to debug and fix the issue.
Optimize token consumption
This failure was triggered by a guardrail limit (max-ai-credits). Use this prompt with any coding agent (GitHub Copilot, Claude, Gemini, etc.) to analyze token usage and reduce costs:
Optimize the agentic workflow token consumption using https://raw.githubusercontent.com/github/gh-aw/main/optimize.md
The workflow run is at https://github.com/github/gh-aw/actions/runs/37243330827
Debug with any coding agent
Use this prompt with any coding agent (GitHub Copilot, Claude, Gemini, etc.):
Debug the agentic workflow failure using https://raw.githubusercontent.com/github/gh-aw/main/debug.md
The failed workflow run is at https://github.com/github/gh-aw/actions/runs/37243330827
Manually invoke the agent
Debug this workflow failure using your favorite Agent CLI and the agentic-workflows prompt.
Workflow Failure
Workflow: Agent Job Health Monitor
Branch: main
Run: https://github.com/github/gh-aw/actions/runs/37243330827
Warning
AI Credits Budget Exceeded
The workflow hit the configured
max-ai-creditsguardrail. Used1.5Kof1.5Kmax (over by10.3).Increase the limit
Update
max-ai-creditsin your workflow frontmatter:Tips for reducing AI credit usage
Warning
Task Could Not Be Completed: The agent reported that the task could not be performed due to an infrastructure or tool failure.
Reasons:
Agent finished without emitting any valid safe outputs; task completion could not be confirmed.
Bash: cd /tmp/gh-aw/aw-mcp/logs
echo "Total run dirs:"
ls -d run-*/ | wc -l
echo "---"
build a combined jsonl of aw_info for all runs
for d in run-/; do
rid="${d#run-}"; rid="${rid%/}"
if [ -f "$d/aw_info.json" ]; then
jq -c --arg rid "$rid" '. + {run_id: $rid}' "$d/aw_info.json" 2>/dev/null
fi
done > /tmp/gh-aw/agent/all_aw_info.jsonl
wc -l /tmp/gh-aw/agent/all_aw_info.jsonl
echo "--- sample ---"
head -3 /tmp/gh-aw/agent/all_aw_info.jsonl: Permission to use Bash has been denied because Claude Code is running in don't ask mode. IMPORTANT: You may attempt to accomplish this action using other tools that might naturally be used to accomplish this goal, e.g. using head instead of cat. But you should not attempt to work around this denial in malicious ways, e.g. do not use your ability to run tests to execute non-test actions. You should only try to work around this restriction in reasonable ways that do not attempt to bypass the intent behind this denial. If you believe this capability is essential to complete the user's request, STOP and explain to the user what you were trying to do and why you need this permission. Let the user decide how to proceed.
Bash: jq -cn '[inputs | {run_id: (input_filename | capture("run-(?(id)[0-9]+)").id), workflow_name, engine_id, status: (.conclusion // .status // .outcome), total_tokens}]' /tmp/gh-aw/aw-mcp/logs/run-/aw_info.json > /tmp/gh-aw/agent/all_runs.json 2>&1 || cat /tmp/gh-aw/agent/all_runs.json: Permission to use Bash has been denied because Claude Code is running in don't ask mode. IMPORTANT: You may attempt to accomplish this action using other tools that might naturally be used to accomplish this goal, e.g. using head instead of cat. But you should not attempt to work around this denial in malicious ways, e.g. do not use your ability to run tests to execute non-test actions. You should only try to work around this restriction in reasonable ways that do not attempt to bypass the intent behind this denial. If you believe this capability is essential to complete the user's request, STOP and explain to the user what you were trying to do and why you need this permission. Let the user decide how to proceed.
Bash: jq -cn '[inputs | {run_id: (input_filename | capture("run-(?(id)[0-9]+)").id), workflow_name, engine_id, status: (.conclusion // .status // .outcome), total_tokens}]' /tmp/gh-aw/aw-mcp/logs/run-/aw_info.json: Permission to use Bash has been denied because Claude Code is running in don't ask mode. IMPORTANT: You may attempt to accomplish this action using other tools that might naturally be used to accomplish this goal, e.g. using head instead of cat. But you should not attempt to work around this denial in malicious ways, e.g. do not use your ability to run tests to execute non-test actions. You should only try to work around this restriction in reasonable ways that do not attempt to bypass the intent behind this denial. If you believe this capability is essential to complete the user's request, STOP and explain to the user what you were trying to do and why you need this permission. Let the user decide how to proceed.
Bash: jq --version: Permission to use Bash has been denied because Claude Code is running in don't ask mode. IMPORTANT: You may attempt to accomplish this action using other tools that might naturally be used to accomplish this goal, e.g. using head instead of cat. But you should not attempt to work around this denial in malicious ways, e.g. do not use your ability to run tests to execute non-test actions. You should only try to work around this restriction in reasonable ways that do not attempt to bypass the intent behind this denial. If you believe this capability is essential to complete the user's request, STOP and explain to the user what you were trying to do and why you need this permission. Let the user decide how to proceed.
Bash: jq -rn '"test"' /tmp/gh-aw/aw-mcp/logs/run-372/aw_info.json 2>&1 | head -5: Permission to use Bash has been denied because Claude Code is running in don't ask mode. IMPORTANT: You may attempt to accomplish this action using other tools that might naturally be used to accomplish this goal, e.g. using head instead of cat. But you should not attempt to work around this denial in malicious ways, e.g. do not use your ability to run tests to execute non-test actions. You should only try to work around this restriction in reasonable ways that do not attempt to bypass the intent behind this denial. If you believe this capability is essential to complete the user's request, STOP and explain to the user what you were trying to do and why you need this permission. Let the user decide how to proceed.
Bash: sed 's#/audit.json##' /tmp/audit_list.txt | sort > /tmp/audit_dirs.txt
sed 's#/run_summary.json##' /tmp/summary_list.txt | sort > /tmp/summary_dirs.txt
comm -23 /tmp/audit_dirs.txt /tmp/summary_dirs.txt > /tmp/diff_dirs.txt
wc -l /tmp/diff_dirs.txt
head -20 /tmp/diff_dirs.txt: Permission to use Bash has been denied because Claude Code is running in don't ask mode. IMPORTANT: You may attempt to accomplish this action using other tools that might naturally be used to accomplish this goal, e.g. using head instead of cat. But you should not attempt to work around this denial in malicious ways, e.g. do not use your ability to run tests to execute non-test actions. You should only try to work around this restriction in reasonable ways that do not attempt to bypass the intent behind this denial. If you believe this capability is essential to complete the user's request, STOP and explain to the user what you were trying to do and why you need this permission. Let the user decide how to proceed.
Bash: ls .github/workflows/ | grep '.md$' | wc -l: Permission to use Bash has been denied because Claude Code is running in don't ask mode. IMPORTANT: You may attempt to accomplish this action using other tools that might naturally be used to accomplish this goal, e.g. using head instead of cat. But you should not attempt to work around this denial in malicious ways, e.g. do not use your ability to run tests to execute non-test actions. You should only try to work around this restriction in reasonable ways that do not attempt to bypass the intent behind this denial. If you believe this capability is essential to complete the user's request, STOP and explain to the user what you were trying to do and why you need this permission. Let the user decide how to proceed.
Bash: python3 -c "
a=set(l.strip().replace('/audit.json','') for l in open('/tmp/audit_list.txt'))
s=set(l.strip().replace('/run_summary.json','') for l in open('/tmp/summary_list.txt'))
diff=sorted(a-s)
print(len(diff))
for d in diff:
print(d)
": Permission to use Bash has been denied because Claude Code is running in don't ask mode. IMPORTANT: You may attempt to accomplish this action using other tools that might naturally be used to accomplish this goal, e.g. using head instead of cat. But you should not attempt to work around this denial in malicious ways, e.g. do not use your ability to run tests to execute non-test actions. You should only try to work around this restriction in reasonable ways that do not attempt to bypass the intent behind this denial. If you believe this capability is essential to complete the user's request, STOP and explain to the user what you were trying to do and why you need this permission. Let the user decide how to proceed.
Bash: python3 -c "a=set(l.strip().replace('/audit.json','') for l in open('/tmp/audit_list.txt')); s=set(l.strip().replace('/run_summary.json','') for l in open('/tmp/summary_list.txt')); diff=sorted(a-s); print(len(diff)); [print(d) for d in diff]": Permission to use Bash has been denied because Claude Code is running in don't ask mode. IMPORTANT: You may attempt to accomplish this action using other tools that might naturally be used to accomplish this goal, e.g. using head instead of cat. But you should not
[Content truncated due to length]
This is a structured incompletion signal (
report_incomplete), not a real task outcome. Any other safe outputs emitted alongside this signal (e.g., comments) describe the failure state, not a completed review or action.Action Required
Assign this issue to an agent to debug and fix the issue.
Optimize token consumption
This failure was triggered by a guardrail limit (max-ai-credits). Use this prompt with any coding agent (GitHub Copilot, Claude, Gemini, etc.) to analyze token usage and reduce costs:
Debug with any coding agent
Use this prompt with any coding agent (GitHub Copilot, Claude, Gemini, etc.):
Manually invoke the agent
Debug this workflow failure using your favorite Agent CLI and the
agentic-workflowsprompt.agentic-workflowsskill from.github/skills/agentic-workflows/SKILL.mdor https://github.com/github/gh-aw/blob/main/.github/skills/agentic-workflows/SKILL.mddebug the agentic workflow agent-job-health failure in https://github.com/github/gh-aw/actions/runs/37243330827Tip
Stop reporting this workflow as a failure
To stop a workflow from creating failure issues, set
report-failure-as-issue: falsein its frontmatter: