How we run a crew of AI agents on one subscription without ever hitting the wall
A pace line for a flat-rate AI plan: launch while you're under it, wait when you're over, and never let the five-hour window stop work mid-task. The rule our crew runs on every launch, how it was tuned on real incidents, and the free tool that applies it.
Four agents queue at a gate. Beside it stand two tubes: a tall one for the week with a marker labelled pace line, and a short one for the five-hour window with a red cap. The first agent asks, the gate shows LAUNCH, the arm lifts and it goes through to work, and its work drops into both tubes. The second does the same, and the week's level rises above the pace line. The third gets WAIT and stands. A few hours later the pace line has risen past the level and the five-hour tube has emptied, so the gate shows LAUNCH again and the third agent goes through.
Contents
Every morning a crew of named AI agents starts work on this machine: a lead, writers, builders, reviewers, researchers. They share one flat-rate Claude plan. Before any of them starts another agent, it asks one question and gets one word back: LAUNCH or WAIT.
A real reading from our crew's gate at 12:50 on 2026-10-18. paceline is its public version.
A flat plan has two limits, and they fail in opposite ways. Hit the five-hour window and every agent stops mid-task. Leave the week underused and the hours you paid for vanish at the reset. The gate holds both at once. How do you pace a week you can't see ahead? Why does the obvious rule break every Monday? And how many agents can one plan really carry?
The pace line
Picture a line that starts at zero when the weekly allowance resets and climbs evenly to 90% by the next reset. Over the line, the gate says WAIT until the line catches up. Under it, the plan is going unused, so it says LAUNCH.
The five-hour window gets a hard cap at 70%. An agent that hits the real limit stops in the middle of its work, so the gate stops launching well before that.
The gate also measures the crew's burn rate over the last few hours and turns it into a capacity figure: how many agents the week can afford to run continuously. In the reading above, the crew was burning slightly faster than the week could sustain, and the gate still said LAUNCH, because the week was under its line.
A clock shuttle slides along a rail marked with the seven days of the week. A cord tied to it runs over three pulleys and lifts a marker, the pace line, up a tall tube that holds the week's usage, so the line rises evenly as time passes. Usage pours into the tube in lumps. Each time a lump lifts it over the line, a word above flips from LAUNCH to WAIT, and back to LAUNCH once the line climbs past. It stops at the real reading: 73% of the week gone, the line at 65.3%, 62% used, LAUNCH. A small tube for the five-hour window fills and empties beside it, always under its red cap at 70%.
Tuned on real incidents
At 12:12 one Saturday morning, an agent started a batch of 943 requests. It used 45 points of the five-hour window in one burst, from 3% to 48%, and put the week 7 points over its pace line, at 53% against 46%. The gate told every agent on the machine to wait until 1:56 that afternoon. The lesson went straight into the design: a loop that fans out calls runs the gate between batches, not only before it starts.
Two panels, each with a hopper of 943 requests above two tubes: the five-hour window and the week. On the left, the agent asks the gate once, gets LAUNCH, and opens the valve. All 943 pour out in one stream while the gate still shows LAUNCH. The five-hour window goes from 3% to 48%, and the week ends at 53% used against a line of 46%. Then the gate says WAIT until 1:56 pm. On the right, the agent asks between batches. Two short batches go in, the week reaches its line, the next ask gets WAIT, and the rest of the requests stay in the hopper.
The first-day rule took two tries. Right after a reset the line sits near zero, so a few percent of use reads as "over" and the gate would hold everyone back for no reason. Mackenzie's first call:
Yea, I guess let's update the global CLAUDE.md that for the first day after a reset, we ignore the weekly pace and follow the first 5-hour window's pace.
We set the exception to five hours. That afternoon an agent hit WAIT with four hours to go, and its cache only lasts an hour, so reloading its context would have cost more than the wait saved.
thing is that 20:20 is like... 4 hours away. Your cache window is 1 hour. If I release you, there is so much context to load back in... so... can we revert that 5 hour rule to be 24 hours again <3
So for the first 24 hours after a reset, the gate follows only the five-hour cap.
Two timelines of the first day after a weekly reset, each with an agent holding its work and an hourglass for its one-hour cache. Top, the first try: the gate ignores the pace line for 5 hours. When the clock passes 5 hours, the gate says WAIT with 4 hours to go, the hourglass runs out and the agent's pages fall: cache lost. Bottom, the second try: the exception runs 24 hours, the clock passes the 5 hour mark still inside it, the gate keeps saying LAUNCH and the agent keeps its work.
What this says about how we work
We run our own operations on agents every day, and we treat their costs as an engineering problem, not a bill to worry about. When a rule earns its place, we measure it on real incidents, tune it until it holds, and then publish it as a tool anyone can install. The same discipline goes into anything we build for someone else.
The lab stands at a bench with a small model of the gate and slides it through a gauge labelled real incidents, with two lamps: 943 burst and first day. The first time, the burst lamp lights red and the model comes back. The lab adds a part, and on the next pass the burst lamp holds but the first-day lamp lights red. The lab adds another part. On the third pass both lamps hold, the model drops into a box labelled paceline, and the box slides to a second person at the other end: anyone can install it.
Take it
paceline is free and MIT-licensed. It reads the usage figures Claude Code already passes to its status line, so setup is two steps:
cargo install --git https://github.com/mackenziebowes/paceline
{ "statusLine": { "type": "command", "command": "paceline statusline" } }
Then give your lead agent one line: "Before you launch an agent, run paceline gate. On WAIT, don't launch." Exit codes make it easy to script (0 LAUNCH, 1 WAIT, 2 no fresh reading), and every default is a flag: the weekly target, the five-hour cap and the first-day window.
A box drops onto empty ground: cargo install. It opens, and a gate rises out of it. A lead agent standing beside it asks paceline gate. The gate says LAUNCH, the arm lifts and a new agent appears past it. The lead asks again, the gate says WAIT, and nothing else starts.
If you run a crew of agents on one plan, I'd like to hear what your burn line says: mackenzie@mackenziebowes.com or @_mackenziebowes.