I hit Grok Bot's usage wall two mornings in a row, so I moved the routine onto a self-hosted team

2026-11-16来源 dev.toEnglish
I hit Grok Bot's usage wall two mornings in a row, so I moved the routine onto a self-hosted team

Thursday 13 November, about ten in the morning in Munich. I sat down with coffee, expecting the daily marketing round to already be waiting: what moved on the repo, which listing pull requests were still open, whether anything was worth a reply. Instead I got a shrug.

no Grok Bot usage available

Friday the 14th, same time, same shrug. The work hadn't gone anywhere. The meter had.

I like Grok Bot. A team of bots you can message, plus routines that run while you sleep, is a nice way to work. Claude Duet and OpenAI Dots live in the same neighborhood. The trouble starts when a hosted usage limit runs out at the exact hour you wanted the routine to run. Two mornings in a row isn't a cute quirk. It's a wall.

So I moved the round onto a team that runs on my own machine.

Full disclosure, because hiding this would be a weird way to write the rest: I got annoyed enough at that wall that I built the thing I switched to. It's called kwant. It's open source under AGPL-3.0, one Rust binary, and it runs as a Mac app, on Linux, on a VPS, or as a Windows beta. I point it at local models (Ollama is fine) or at API keys and CLIs I already pay for. There's no quota that belongs to someone else's plan. If one account runs out, the turn can move to the next.

The part I didn't expect to care about this much is spaces. I keep a work space on company AI accounts, and a private one on local models for anything that shouldn't wander. They don't leak into each other. Switching is a click, or a shortcut, and the bots, routines and approval rules stay where I put them.

The marketing round lives in the work space. I didn't write a five-page runbook for it. I gave the team one line, on a daily schedule at 10:00 Europe/Berlin:

Run the morning marketing round for kwant. Check what changed since yesterday, draft anything I might want to post or open, and stop before anything leaves this machine.

That's the whole prompt. "The morning marketing round" is deliberately vague. The bots have to work out what I actually want.

You can even set the schedule that way. Ask in a sentence, and a bot will create the routine, show you the time and the channel, and leave an Undo on the card. Nothing is locked in until you're happy with it.

A kwant chat where someone asks, in one sentence, for a morning check, and the QA bot creates a weekday routine with an Undo button on the card.

A one-line request becoming a scheduled routine, with Undo, Edit and Pause on the card. This is kwant's product UI, in the Trailhead sample space from the docs, not a screenshot of my marketing run.

What the bots actually do with that one line

A typical run looks like this.

The scout treats "what changed" as a real question, not a vibe. It checks the GitHub repo: stars and forks, which listing pull requests are still waiting, whether anything merged overnight, whether a new list or a thread is worth a reply. Then it @mentions the writer with a short brief, instead of trying to draft everything itself.

That @mention is the whole handoff. The writer sees the brief in the same channel, does the drafting, and the work shows up as its own card. When the writer finishes, the bot that handed the work out reviews the result. A pass can verify the card. A fail sends it back with the reason. The teammate who did the work still can't approve its own card.

Designer answers a question about an empty state, then @mentions QA, and QA checks the layout on a 360 pixel screen.

Bots handing work to each other with an @mention, then checking it. Again, the Trailhead sample space from the docs, so you can see the shape of a handoff.

The writer comes back with draft replies, and, if there's a list worth joining, a draft pull request blurb. Nothing is posted. Nothing is opened. The last clause in the prompt does a lot of work here: stop before anything leaves this machine. In kwant, a risky action waits on an approval card anyway: the exact command or tool call, with Allow once, Always allow, or Deny. Only I can press those buttons. A bot can't approve its own move, and a bot calling the API can't either.

That's the adult in the room I wanted. The hosted routine failing was annoying. A bot opening a pull request because it felt helpful would have been worse.

"Done" is a check, not a vibe

Meanwhile the run shows up as a card on the Mission board. A task isn't done because a bot said "done." It becomes Verified only when its checks pass, and a bot can't verify its own work. For this routine I attached a boring, visible set:

  • a file check: the morning notes file exists and contains today's date
  • a URL check: the GitHub repo still answers
  • a review by a teammate who isn't the owner of the task, looking at the drafts

If the writer owns the task, another bot has to do the review. If I want the last word, I press Verify myself. Optional checks can sit on the card without holding it back, but the ones above all count.

A Mission board task with an evidence receipt: a file-contains check has passed, and the card is Verified.

What Verified looks like: a receipt with the check, the result, and the evidence. This one is a sample "file contains" check from the docs, the same kind I use for the morning notes.

When that's green, I get a short brief and a pile of drafts with my coffee. I still decide what goes out. The difference is I'm no longer the person who has to notice that the hosted routine never started.

If I need the bots to look at GitHub or a mailbox, I hook the account up in that space, or use the built-in Composio connector. The important part isn't the connector. It's that the routine still runs when a hosted plan would have shrugged, and that nothing noisy happens until I say so.

I still use hosted tools for plenty of things. I just don't want a daily routine to depend on a meter I can't refill at ten on a Thursday.

If you want to poke at it, the code is at github.com/alexsergivan/kwant. It's a little over 600 GitHub stars as of 15 November 2026, and a star helps other people find it. The site and docs are at kwant.si.

原文:https://www.a8q9.cn/en/article/i-hit-grok-bot-s-usage-wall-two-mornings-in-a-row-so-i-moved-the-routine-onto-a--b25762.html

相关文章