Skip to content
← Back to Insights

I Fired Anthropic From My Daily Brief

I moved the judgment and writing work in my daily report from cloud models to a local Qwen model. It costs less and keeps more of my data at home.

John Sambrook, TOC Jonah Certified ·

TL;DR

I moved the AI judgment and writing work in my Daily Brief from Anthropic to a local Qwen3.8-27B model running on an RTX 3090. The local run takes about 50 minutes instead of finishing quickly in the cloud, but the quality is every bit as good. My API costs are lower, and less of my working data goes to a cloud model.


A local workstation with an orange-lit AI server replacing a distant cloud connection

At 4 AM, a job starts on my Mac. By the time I am awake, it has assembled a morning report from my inbox, calendar, finances, website analytics, Search Console, projects, and a few other sources. It is called the Daily Brief, and it has become one of the most useful pieces of automation I run.

Until this morning, several parts of that report still depended on Anthropic. The data collection was mostly deterministic. The judgment work was not. An agent had to decide which email needed a reply, which receipt belonged in which filing inbox, what a set of website metrics meant, and which possible actions were worth showing me. Those jobs often resulted in calls to an expensive cloud model such as Sonnet or Opus.

That was the part I changed.

The local setup

The model now runs on Moksha, a local Ubuntu 26.04 LTS workstation with an NVIDIA RTX 3090 and 24 GB of VRAM. The model is Qwen3.8-27B-Q4_K_M, served by llama.cpp over my local network.

Codex is the harness in front of it. That matters. A model server can answer a prompt, but the Daily Brief needs an agent that can read files, call the tools that gather the source data, follow a prompt, and return a result to the report builder. Codex provides that layer. The model profile is called llama-moksha.

I also loaded the matching vision projector for llama.cpp. The language model and the vision encoder are separate files. With the projector running, the same local setup can read images when a report section needs that capability. The language model file is about 16 GB. The projector adds another 885 MB.

The machine has 32 GB of system RAM today. It is enough for this configuration, although I am considering an upgrade because the workstation is also useful for other local workloads.

What the Daily Brief asks it to do

The report is a collection of small jobs rather than one giant prompt. It grooms the inbox and produces a short briefing about replies and the next few days of the calendar. It looks for upcoming spending and high-confidence receipts, then places documents in the appropriate review inbox. It checks financial records, reviews website and Search Console data, collects a few facts about projects and options, and produces ideas that might be worth considering.

Some of those sections are ordinary programs. They fetch data, run audits, and render HTML. Others need judgment. They are the reason I was paying for cloud model calls in the first place.

The local model now handles that judgment work. It reads the same prompts and receives the same source material. Codex still controls the workflow. The difference is where the model processes the material.

The tradeoff is time

The local report takes about 50 minutes to run. Cloud models finish faster. That is a real difference, and I am not going to pretend otherwise.

The Daily Brief runs while I sleep. Its runtime is therefore a weak constraint. The useful question is whether the report is ready and trustworthy when I need it in the morning. So far, the answer is yes. The quality is every bit as good as the previous version for the work I have asked it to do.

This is a good example of a constraint changing when you look at the whole system. The model is slower, but the delay does not block my morning. The lower API cost and the reduction in data sent to a cloud model matter more to me than shaving minutes from an unattended overnight job.

Less data to the cloud

The privacy claim needs to be stated carefully. My data does not become magically local because I run a local language model. Gmail, Google Analytics, and Search Console are still cloud services. The Daily Brief still has to collect information from those systems.

What changed is the next step. The material no longer has to leave those source systems, pass through my Mac, and then go to Anthropic for summarization or classification. The model that performs that work is on a machine in my house.

That is a meaningful reduction in exposure. It is also easier to reason about. I know where the model is running. I know which machine holds the prompts and intermediate files. I can inspect the code that sends data to it. The path is not perfect privacy, but it is a smaller and more understandable trust boundary.

The cost question

I am leaving the savings qualitative for now. I have reduced the number of expensive Anthropic calls in this workflow, so my API costs will be lower. I have not yet built the accounting that would turn that change into a defensible dollar figure.

The local machine was not free. It uses electricity, occupies space, and took time to set up. The model is slower than a frontier cloud service. Those costs belong in the calculation.

The calculation still looks good for this workload. The machine runs other local models and tools. The Daily Brief runs unattended. The model quality is sufficient. Every report that runs locally is one less metered inference call and one less batch of report data sent to a cloud model.

One less SaaS dependency

This is part of a larger project. I am looking at the services I pay for and asking what each one actually does for me.

Today I also canceled the retired publisher. I had already built my own tooling for posting to LinkedIn and X. Once that tooling worked, keeping a separate SaaS layer in the middle made less sense. The same pattern applies here. A service can be useful for a while, then become a dependency I no longer need.

I am not trying to eliminate every cloud service. That would be a strange goal for someone who runs websites, uses email, and depends on Google APIs. I am trying to remove the dependencies that no longer earn their place.

Local AI crossed that line for this job today. It is good enough to run a real morning report. It costs less at the margin. It keeps more of the report-processing work inside my own network. And it gives me another system I can understand and change myself.

If you are considering a similar move and want technical details or implementation help, contact me at john@common-sense.com. I am happy to compare notes.