← Back to portfolio

overnight-agent

Hand an agent a job at night, wake to a verified result.

A dispatch, watchdog and report pipeline for unattended AI coding runs, built around five named failure modes, with an independent verify gate that never trusts the worker's own word.

Unattended AI runs fail in specific, predictable ways, so the pipeline is built around five of them. A dispatcher launches the worker inside a throwaway git worktree on its own branch, so it physically cannot touch main or the wider workspace. A watchdog kills it if it passes a wall-clock cap or goes silent, and that kill is proven to reach the process across the WSL to Windows boundary. Every job must state its acceptance criteria and a verify command, or it is refused at dispatch.

The core idea is the verify gate: the report step re-runs the job's own verify command itself and never trusts the worker's claim of success, then sends a Telegram summary with the pass or fail, how the worker ended, the watchdog verdict, and anything skipped. Writes are branch-only. It has been proven over live, verify-gated runs.

  • agent orchestration
  • independent verification
  • worktree isolation
  • watchdog + timeouts
  • Bash + WSL
  • Telegram Bot API

multi-week build

What it actually took. The whole thing exists because I did not trust an agent's own report, and I was right not to. The interesting engineering was not making it run overnight, it was making the failure modes explicit and building a specific defence for each one. An agent you can leave alone is an agent whose claims you can check without it.