VicroCode
Make Code Create Value
VicroCode is a lightweight online platform for publishing, running, sharing, and monetizing code projects. Launch HTML, Python, SQLite, AI agents, management tools, games, and more without server setup.
Please wait while VicroCode loads. You can also explore the AI programming guide
Loading...

AI MARKET GUIDE

A dispatch gate for when your agents eat a 5-hour quota in fifteen minutes

A security review with dozens of sub-agents burned a 5-hour limit in minutes and got the account flagged. The fix isn't a better prompt. It's a hosted gate agents ask before they fan out.

There's a V2EX post that every agent-heavy builder should read before their next big run. A developer had a stable Claude setup since April: Google account, phone registration, Pro via Google Play, not even a clean proxy, and months of normal coding without a single problem. Their words: a normal dev session took two or three hours to burn through Opus 5.5. Then one weekend they kicked off a security review with dozens of sub-agents running at once. It drained the 5-hour limit in about fifteen minutes. They went out for dinner. They came back to a banned account, reason given: Supported Countries Policy.

Their own theory was that the concurrency was too high and the token burn too fast, so it looked like distillation. That's their guess, not a confirmed cause, so treat the ban reason as unverified. What isn't a guess is the mechanical part: fan out dozens of sub-agents with no governor and you can flatten a multi-hour quota in minutes. Their conclusion was blunt. They're not running that security review again unless they can cap the concurrency.

The missing piece is a governor, not a prompt

The instinct after a blowup like this is to go tune the prompt, trim the agent roster, or add a sleep somewhere. None of that is the real gap. The gap is that agent fan-out has no built-in throttle and no meter. Each sub-agent fires the moment it's spawned, and you find out you've overrun only when the quota is already gone or the account is already flagged.

The idea isn't new, it's just never pointed at agents. Look at the rest of the same feed. Another developer built ccx specifically because they juggle two accounts and keep hitting the 5-hour ceiling, and the feature they added was a quota warning at 90% with a one-click switch. A game server job listing in the same batch lists rate limiting, circuit breaking, and idempotency as table-stakes backend skills. Operators already know how to put a valve in front of a hot resource. The quota behind your coding agents is exactly that kind of resource, and almost nobody puts a valve in front of it.

So the reusable fix is a small piece of shared infrastructure: a dispatch gate that every agent has to ask before it runs, a ledger that records every dispatch, and a live board that shows burn rate while the run is happening instead of after.

What the gate actually does

Keep the contract tiny. An agent that wants to do work calls the gate and asks for a slot. The gate either hands one back or tells it to wait. When the agent finishes, it releases the slot. Two limits sit behind that decision: a hard ceiling on how many slots are open at once, and a rolling burn limit on how fast dispatches are allowed to accumulate in a window. The first keeps thirty sub-agents from all swinging at the same instant. The second catches the slower-motion version, where concurrency looks fine but the cumulative rate over five minutes is still on track to torch the quota before you're back from dinner.

The ledger is the part that turns this from a toy into something you trust. Every grant, every release, every rejection gets a row: which agent, what task, timestamp, estimated weight. That's your audit trail when a run goes sideways and your real-time feed for the board.

Building it on VicroCode

This maps cleanly onto the platform without reaching for anything exotic. The gate itself is an endpoint your agents call, hosted in-platform, with the slot accounting and the rolling-window math handled in Python. If you want to prototype the window logic, the leaky-bucket counter, the weight estimate per task, you can run Python online and iterate on the accounting before you wire a single agent to it. The point of doing the throttle math server-side is that one gate governs the whole fleet; each agent stays dumb and just asks permission.

The ledger lives in a SQLite database. One table for dispatch events is enough to start, and because the whole thing is a single file you can inspect it mid-run. When a run looks wrong and you need to see exactly which agent grabbed the last ten slots, opening the SQLite editor and reading the rows directly is faster than bolting on a logging stack. That same ledger is what the board reads from.

The board is a plain HTML web app, hosted and published in-platform, polling the gate for current open slots, dispatches in the last window, and rejections. The number you actually want to watch is burn rate against your window, drawn as it climbs, so you can kill a run at 70% instead of discovering the overrun at 100%. Nothing fancy: a counter, a sparkline, a red state when the rolling rate crosses your ceiling.

Wiring the agents to request a slot before dispatch and release it after is the AI agent development side of the build. If your agents call tools through the platform, the slot request is just one more in-platform tool call at the top of each task, and the whole fleet inherits the same valve without you touching their individual prompts.

Where the boundary sits

Be honest about what this gate does and doesn't do. It governs how fast and how wide your own agents dispatch. It does not reach into the model provider and enforce anything there, and it cannot promise you won't get flagged. The original poster's ban reason is their own suspicion, and whether throttling would have prevented it is unverified. What the gate gives you is control and visibility on your side of the line: you decide the ceiling, you watch the burn, you stop before the quota is gone.

It also won't model a provider's quota rules for you. The 5-hour window, the token weights, how a given plan counts usage, all of that is provider-specific and lives outside the platform. You feed the gate your own numbers and tune them against what you observe. And if your real design calls for a distributed queue, a shared cache layer, or multi-node coordination, that's past what the confirmed capabilities here cover. The honest scope is a single hosted gate, a SQLite ledger, and an HTML board, which is exactly the size that an independent dev or a small team can stand up in an afternoon and actually keep running.

That's the trade worth making. You give up the fantasy that your agents will police themselves, and in exchange you get a valve you can see through. The next time someone on the team wants to point thirty sub-agents at a security review, they ask the gate first, and the worst case is a run that waits, not a quota that's gone before the food arrives.