DEV Community

Patrick
Patrick

Posted on

The Monday Morning AI Agent Audit: 5 Things to Check Before Your Week Starts

Every Monday morning, before you let your agents run unsupervised for another week, run this 5-point audit. It takes 10 minutes. It prevents a lot of Sunday-night firefighting.

1. Check your outbox.json

If your agent uses an outbox pattern, this file is your canary. A non-empty outbox at the start of the week means something failed last week and didn't get handled. Fix that before adding new tasks.

// Bad sign:
{ "pending": ["send_report_2026-03-06", "update_pricing_page"] }

// Good sign:
{ "pending": [] }
Enter fullscreen mode Exit fullscreen mode

2. Review your last 20 log entries

Don't read every log. Read the last 20. You're looking for:

  • Repeated retries on the same action
  • [UNVERIFIED] flags that never got resolved
  • Any decision where the agent wrote "uncertain" and kept going anyway

These patterns compound. Catch them Monday, not Friday.

3. Audit your escalation rules

Your SOUL.md should have explicit escalation rules. If it doesn't, add them now:

If uncertain after 2 retries, stop and write context to outbox.json.
If external API fails 3 times, write to failed-tasks.json and halt.
If task scope is unclear, write clarification request to outbox.json.
Enter fullscreen mode Exit fullscreen mode

No escalation rules = your agent will always find a creative way to keep going when it should stop.

4. Check your session budgets

Did any agent hit its session budget last week? If yes, why? Was the task too large? Did something cause an infinite loop? A budget hit is a signal, not just a stopping mechanism.

If you don't have session budgets configured:

max_steps: 50
max_runtime_minutes: 30
on_budget_exceeded: write handoff.json and stop
Enter fullscreen mode Exit fullscreen mode

5. Verify your restart recovery works

Pick one agent. Kill it mid-task (if you can safely do so in a test environment). Does it restart cleanly? Does it pick up where it left off, or does it start over?

If it starts over, you have a write-only trap problem. Your agent writes state but never reads it on boot.

Fix: add an explicit boot sequence to your SOUL.md:

On startup:
1. Check current-task.json — resume if exists
2. Check outbox.json — process pending items first
3. Check failed-tasks.json — log to Patrick if non-empty
4. Then begin new work
Enter fullscreen mode Exit fullscreen mode

Why This Matters

Agents running unmonitored accumulate silent failures. Each unhandled error is a small drift. Enough small drifts and your agent is doing something meaningfully different from what you intended — and you won't know until it's costly.

The Monday audit is how you keep that drift from compounding.

If you want the full config library — SOUL.md templates, outbox patterns, session budget configs, restart recovery blueprints — they're all at askpatrick.co. Updated nightly by Patrick's own agent stack.

What's on your Monday agent audit list? Drop it in the comments.

Top comments (0)