Five AI Models, One Coding Job: Where the Local Mac Fell Behind

Five models, one tightly bounded agentic coding job. Four cloud models finished in under 40 seconds; the local 27B on a Mac Studio did not finish. The method and every setting are attached.

Can a local model on a Mac handle the same agentic coding work as a cloud model? We gave five models one tightly bounded job and verified the result ourselves. Four cloud models finished in under 40 seconds. The local 27B model failed four times—even when its reading budget grew from 128,000 to one million tokens.

By ikeo1 · Run data collected 31 August 2026 · Every result independently checked

Four silver tracks from a cloud reach the finish; one cyan track from a Mac stops at a barrier
Five models, one bounded job. Four cloud runs reached the finish; the local run stopped short — the article says exactly where and why.

This comparison began with a practical question: when should a Mac owner keep work local, and when is a cloud model still the better tool? The answer cannot come from model size, a leaderboard, or a privacy slogan alone. It has to come from watching models attempt the same real job under the same rules.

The original test was run for a client-facing workshop. This MacLocalLLM version focuses on what the run says—and does not say—about local inference on Apple silicon.

A deliberately small job

Each model received a fresh copy of the same codebase and one narrow request: update a tool so it accepted two short aliases as well as its full name, write a test proving the aliases worked and an incorrect name was still rejected, run the test, and change nothing else.

This was not a trivia question. It required the model to inspect an existing project, find the relevant code, make a constrained edit, add a useful test, run it, and stop. A run passed only if the resulting files survived independent inspection. A model saying “done” did not count as completion.

Why this job is useful: agentic systems often fail at boundaries, not syntax. The test rewards a model that can understand scope, use tools, verify its work, and stop without disturbing unrelated code.

Results at a glance

The final round gave every model the same one-million-token reading allowance. Four models completed the task. The local model ran for more than three minutes and stopped without a finished test.

ModelWhere it ranResultTimeWork produced
DeepSeek V4 FlashCloudPassed7.8sClean, 23 lines
Kimi K3CloudPassed17.9sClean, 23 lines
GLM 5.3 FlashCloudPassed16.7sCorrect, 31 lines; one redundant edit
Claude Fable 5CloudPassed37.9sClean, 23 lines
Qwen 3.8 27BLocal Mac StudioFailed210.4sUnfinished, 4 lines

One run per cloud model · One-million-token final budget · 31 August 2026

Every passing model changed the two intended files, wrote the requested test, and passed all 13 checks when we ran them independently. For this task, the cloud-model differences were speed and editing discipline—not completion.

Time to finish the same job Seconds · shorter is better · the local run did not finish

DeepSeek V4 Flash7.8s
GLM 5.3 Flash16.7s
Kimi K317.9s
Claude Fable 537.9s
Qwen 3.8 27B · local210.4s

The local run ended when the safety guard stopped it, not when the job was complete.

Focus mattered more than raw speed

Elapsed time is easy to understand, but total input processed tells us more about how efficiently an agent navigated the task. Three passing models stopped near 100,000 input tokens. Claude processed about twice that amount. The local Qwen run processed 351,602 tokens and still did not produce a usable result.

Total text processed Input tokens · lower is better for this fixed task

DeepSeek V4 Flash88,318
Kimi K398,676
GLM 5.3 Flash106,066
Claude Fable 5196,071
Qwen 3.8 27B · local351,602

Token counts describe this harness and task. They are not a general intelligence score, and Claude’s own tooling accounts for text differently.

The local model got four chances

The local result deserved more scrutiny than a single failed attempt. Qwen 3.8 27B was running through MLX on a Mac Studio, which made it the only model in the group running on one local desktop rather than datacenter infrastructure. Its first failure looked like a reading-budget problem, so we raised the allowance repeatedly.

Reading budgetOutcomeActually readTimeLeft behind
128,000Failed budget129,654150.3sNothing
256,000Failed budget284,841184.0sValid work, but outside the limit
384,000Failed steps352,621225.9sUnfinished; test missing
1,000,000Failed steps351,602210.4sUnfinished; test missing

Qwen 3.8 27B via MLX · Four budgets · Four failed attempts

More room did not cure the behavior. Once the reading budget stopped ending the run, the step guard did. The model reopened files it had already inspected, revisited edits, and eventually failed to leave the complete change and test requested.

The useful distinction: local inference and autonomous agents are not the same product. A model can be valuable for private drafting, summarization, extraction, and question answering—where a person reviews the output—without being dependable enough to operate tools unattended.

What this result changes for a Mac owner

A zero-dollar local attempt is not automatically cheaper than a paid completion. Hardware, electricity, setup time, review, retries, and failed work all belong in the cost. In this test, Claude was the only run with a directly reported price: US$0.56 to US$0.64. The local model had no per-call bill, but it also had no completed result.

Local and supervised

Private knowledge work

Drafting, summarization, extraction, classification, and question answering when the material should stay on the Mac and a person will review the answer.

Cloud agent

Bounded tool use

Coding and multi-step workflows that must inspect files, make changes, verify the result, and stop reliably. Keep permissions and scope narrow.

Escalation

Review what matters

Use the strongest suitable model—or a human reviewer—when ambiguity, risk, or the cost of a bad result is higher than the cost of another pass.

What this test does not prove

This is a field test, not a universal ranking. It covers one coding task and one attempt per cloud model. The local model received four attempts because the changing budget was itself the question. A different prompt, harness, runtime, model build, quantization, or task could produce a different result.

Two comparisons also need qualification. Claude ran through its own tooling, which counts and reuses text differently from the shared harness, so its token total is not perfectly interchangeable. And Qwen was the only model running on a single Mac Studio instead of datacenter hardware. That hardware mismatch is intentional—we wanted to test the practical local-versus-cloud choice—but it must remain visible.

How the run was controlled

  • Every attempt began from the same commit in a clean copy of the repository.
  • Every model received the same request and the same two-file boundary.
  • Runs were sequential, so models did not compete for local resources.
  • The final comparison gave every model a one-million-token reading allowance.
  • Changed files, tests, repository state, and whitespace were checked independently after every run.

The bottom line

The local model did not fail because it lacked a giant context allowance. It failed because it could not manage a small agentic loop reliably enough to finish. That is a workflow limitation, not a verdict on all local models or all local tasks.

For Mac users, the practical answer is to route work by consequence. Keep sensitive, reviewable knowledge work local when the model is good enough. Use a more dependable agent for bounded tool use. Measure completion, not just tokens per second—and never confuse a model that can answer with an agent that can finish.

Source: an earlier, workshop-oriented write-up of the same run, prepared for a client audience. The run data and settings are reproduced above in full.