CI builds and AI code review on one Lucebox: paid back in about 5 months
One Lucebox now reviews every pull request on our main repository and runs the Linux jobs we move to it, and the code never leaves the office. Our CI bots cost us about $1,340 a month on hosted models. The box costs $8,199 once and about $1 a day, and pays for itself in about 5 months.
In short
- One box does both. A Lucebox Zero 495 with 192 GB runs DeepSeek V4.1 Flash for the reviews, and its 16 cores can take our Linux jobs.
- It is a few clicks in Lucebox Manage. Connect GitHub, pick the repository, turn on code review, and move the jobs you want to the box.
- It pays for itself in about 5 months against what our CI pays today, and in 10 to 26 months against the same model hosted. Written off over three years it is $256 a month, electricity included.
- Builds got faster. Our engine build took 7.6 minutes on the box, against 24.1 on GitHub's runners.
Set it up
- Connect GitHub. The CI tab creates a GitHub App for the box. It sees only the repositories you pick.
- Start the runner. GitHub jobs run in a virtual machine on the box, apart from the model and the dashboard.
- Turn on code review. Every new pull request gets a review from DeepSeek V4.1 Flash on the box. A bug is posted only with the command and the output that show it.
- Move jobs. The job picker lists the jobs the box can run and moves the ones you pick with a pull request.
What it costs
Our four CI bots cost us about $1,340 a month on hosted models today, mostly Kimi K3 and GLM 5.3. GitHub's list price for our Linux minutes adds about $215. One Lucebox does that work for $8,199 once and about $28 a month of electricity, so it pays for itself in about 5 months.
In a budget the box is a purchase, written off over the years it serves: $256 a month over three years, or $165 over five, electricity included. Hosted services are a bill every month, and it grows with every pull request. The table assumes all our Linux jobs move to the box; so far we have moved two.
| What it replaces | A month | Pays back in |
|---|---|---|
| What our CI pays today: the hosted models of our four CI bots, plus GitHub's Linux minutes | $1,560 | ~5 months |
| The same model hosted, DeepSeek V4.1 Flash at list price, reviewing every new commit (about 2,400 a month in our two repositories), plus Linux minutes | $870 | ~10 months |
| The same model hosted, one review per pull request (about 480 a month), plus Linux minutes | $345 | ~26 months |
These numbers count only our CI. The box is idle most of the day: our reviews need about 7 hours of model time and our Linux jobs about a tenth of its cores. Whatever else a team runs on it, like coding agents or chat, comes on top for the same $1 a day.
Against the hosted models we use today, the 5 months assume the box serves all four of our CI bots and reviews as well as those models do. We are measuring the review part now.
What we measured
| What | Result |
|---|---|
| Our engine build | 7.6 minutes, against 24.1 on GitHub's runners (average of 92 runs) |
| The same build while the box writes a review | 8.3 minutes; while a build runs, the model writes about 9% slower |
| A pull request with two planted bugs | Both found, each shown with a command, in about two and a half minutes |
| Real reviews | 3 to 16 minutes each |
| Four reviews or chats at once | 7.4 tok/s each, up to 64K tokens of context each |
What we learned
- A reviewer needs context. Our first reviews on the box had 16K tokens each. Most gave no answer, and on the same 20 commits the box found none of the 7 issues hosted reviewers found. An engine fix now gives each of four reviews 64K at the same speed, and we are running that comparison again.
- A long review can make a chat wait. While the box reads a 33K-token review prompt, about two and a half minutes, a new chat waits for its first word.
- Moving jobs finds what hosted runners hide. Two of our dashboard's tests failed on the box the day after we moved them, because of a folder GitHub's runners do not have. The fix was a few lines.
What comes next
- The review comparison at 64K: the box against the hosted reviewers, on the same 20 commits.
- A week of all our Linux jobs on the box.
- All four CI bots on the box, priced from their own logs.
How we worked it out
Our two repositories over 30 days, from GitHub: 482 pull requests, 2,380 commits pushed to them, and 480 reviews from our review bot, about one a pull request.
In 12 days of its logs the review bot ran 220 times, read about 167 million tokens and wrote about 8 million: about 760,000 read and 36,000 written a review. At DeepSeek V4.1 Flash's list price on a hosted API, $0.30 per million tokens read and $1.20 written, that is about $0.27 a review.
Our four CI bots spent about $530 on hosted models in those 12 days, mostly Kimi K3 and GLM 5.3: about $1,340 a month.
GitHub's list prices for the minutes the box takes: 35,860 Linux minutes a month on 2-core runners at $0.006, about $215. Our Windows, ARM64 and GPU-test minutes stay where they run: the box has no Windows, no ARM64 cores, and its GPU holds the model.
Electricity at $0.30 per kWh: about 2.8 kWh a day for 7 hours of reviews and 0.3 kWh for the Linux jobs, about $28 a month. The payback is the box's price over what it saves a month.