Build Log

How I Replaced My $15/Month AI Notetaker With Claude Code and Open Source

By Jake August 3, 2026 8 min read

TL;DR

I replaced my paid AI notetakers with Anarlog (an open-source, on-device notetaker), about 40 lines of bash, and an hourly Claude Code job that writes every meeting summary into my Obsidian vault with action items, decisions, and automatic contradiction flagging against everything else I know. Recordings and transcripts never leave my laptop, which matters more than the money: client pricing, deal terms, and employee issues do not belong on a vendor's server under a retention policy that can change. A free Apple Calendar bridge even replaces the $15/month Pro calendar integration. Total running cost: $0 a month on top of a Claude subscription I already had.

I’ll admit it up front: I’m thrifty. Not “skip the coffee” thrifty. “Why would I pay $15 a month for that when a free option takes an afternoon to set up” thrifty. Every subscription my businesses carry has to survive one question: could a free tool plus an hour of configuration do this better?

Lately the answer keeps coming up yes, and Claude Code is the reason. This is my favorite thing about it, and almost nobody talks about it: Claude Code is not just a coding tool. It is the world’s best installer, configurator, and glue layer for open-source software. Nearly every expensive SaaS incumbent has a scrappy open-source alternative with rough edges, and Claude Code sands the edges off in one session. You describe what you want, it reads the docs, installs the pieces, wires them together, and you keep the subscription money.

Here’s the latest example. I replaced my paid AI notetakers (I was running Fathom and Granola) with an open-source app, roughly 40 lines of bash, and a scheduled Claude Code job. Every meeting I take now ends up as a Claude-written summary in my Obsidian vault, with action items, key decisions, and a consistency check against everything else I know. I never touch it. Total running cost: $0 a month on top of a Claude subscription I already had.

The money was the trigger. The bigger reason was privacy.

The problem with paid AI notetakers

I was paying for AI notetakers and I didn’t trust their summaries. App-generated summaries are generic, miss context, and don’t know anything about my business. I wanted three things:

  • Raw transcripts I own: plain files on my machine, not someone’s cloud
  • Summaries written by an AI that knows my company: not a generic template
  • A memory that catches contradictions: if a client says one thing in March and another in July, I want to be flagged

No notetaker on the market does the second and third things, because no notetaker knows your business. A model with your company wiki as context does.

Why the data lives on my machine

Think about what is actually in a meeting recording. Client pricing. What a prospect said about their current vendor. An employee issue somebody raised at the end of a call. Health details, in the practices I work with. Deal terms. The stuff you would never paste into a random web form is exactly the stuff a notetaker captures by default, verbatim, on every call.

With a hosted notetaker, all of that lands on a company’s servers, indexed and retained under a policy that can change with a version bump of the terms. That company gets acquired, changes its retention window, adds a feature that trains on customer data, or has a breach, and my clients’ words are in it. I never agreed to that on their behalf, and honestly they never agreed to it either. They agreed to talk to me.

So the design rule was simple: the recording and the transcript never leave my laptop. Anarlog transcribes on device with local models, and the output is plain markdown in a folder I control, backed up how I choose, greppable with tools I already use. There is no vendor dashboard holding my archive hostage, no export flow to beg for if I leave, and no third party to notify if a client asks me to delete everything. Deleting a meeting is deleting a file.

Being straight about the exception, because pretending otherwise would be exactly the kind of vendor talk this post is complaining about: the summarization step sends transcript text to Anthropic when Claude writes each note. That is one known boundary I chose, with a company whose data policy I have actually read, instead of an accumulating pile of vendors I have not. If even that is too much for a particular meeting, the pipeline degrades gracefully: skip the summary step, keep the local transcript, and you still own everything. And when a fully local model is good enough at this job, the prompt file is the only thing that has to change.

The stack (total cost: $0/month)

  • Anarlog: an open-source (MIT) meeting notetaker, successor to Hyprnote. On-device transcription with local models. The free plan is $0 forever; you only pay if you want their cloud transcription and models.
  • Claude Code: runs headless (claude -p) to process transcripts
  • Obsidian: my company wiki vault, where the notes land
  • launchd: macOS’s native scheduler, runs the pipeline hourly

How the pipeline works

Every hour at :15, a launchd job runs a small bash script:

  1. Find new meetings. anarlog meetings list --json, diffed against a processed_ids.txt state file.
  2. Hand them to Claude. The script pipes new meeting IDs into claude -p with a prompt file.
  3. Claude does the real work for each meeting: it pulls the full raw transcript via the Anarlog CLI (paginated, 500 words at a time), explicitly ignores Anarlog’s own summaries and writes its own from the raw transcript, then writes a note to wiki/meetings/YYYY-MM-DD Title.md with YAML frontmatter, a 30-second summary, checkbox action items with owners, and key decisions. It adds wikilinks to people, clients, and concepts that already exist in the vault.
  4. Conflict detection. After writing each note, Claude cross-checks the meeting’s facts against the rest of the vault: pricing, dates, scope, ownership, reversed decisions. Contradictions get logged to Conflicts.md with quoted evidence from both sources, plus a macOS notification so I actually see it.
  5. Fail-safe. If the Claude run fails, IDs aren’t marked processed, so it retries next hour. Failures also fire a notification.

The calendar trick (how to skip the $15/month)

This is the part that makes the thrifty version work. Anarlog’s direct Google Calendar integration is Pro-only. But its Apple Calendar integration is free, and Apple Calendar can carry any account your Mac knows about. So:

  1. System Settings → Internet Accounts → add your Google account → enable Calendars
  2. In Anarlog, connect Apple Calendar (one local permission prompt)

Google Calendar events now flow through macOS into Anarlog: meeting titles, times, participants, and join links, without touching the Pro tier. I verified it against Anarlog’s local SQLite database. All my Google calendars synced, work meetings with links included. Same data, $0.

The design decisions that matter

Local capture, deliberate boundaries. Transcription happens on device, the archive lives in a folder I control, and exactly one step reaches the internet by design rather than by default. That is the whole privacy posture, and it is worth more to me than the $15 a month.

Claude writes the summaries, not the notetaker. The transcription app is just a capture device. The intelligence layer is a model with my entire company wiki as context. It knows who my clients are, what we’ve quoted them, and what we decided last month.

The vault is the memory. Because notes land in the same vault Claude reads from, every meeting makes the next summary smarter. Contradiction checking falls out of this almost for free. This is the same thesis behind Brain, our company knowledge base product: an AI is only as useful as the business context it can reach. My Obsidian vault is the solo-founder version; Brain is the version for a whole team, with permissions and a query API.

Flag, don’t fix. Claude never edits existing notes to resolve a conflict. It only logs the contradiction with evidence and pings me. Humans decide which version of reality is true.

Idempotent and boring. State file, daily logs, exit quietly if anything’s missing. It ran silently for a day while a dependency was missing, then just started working when the dependency appeared. No babysitting.

The pieces

~/.meeting-pipeline/
├── run.sh              # ~40 lines of bash: list, diff, hand off to claude -p
├── prompt.md           # the instructions Claude follows for each meeting
├── processed_ids.txt   # state
└── logs/               # one file per day

The launchd plist just calls run.sh hourly. The prompt file is where all the behavior lives: changing how notes are written is editing markdown, not code.

Steal this pattern

The pattern generalizes to almost anything: capture tool → CLI → claude -p with a prompt file → your notes system, on a scheduler, with a state file. The whole thing is about 40 lines of bash and a prompt.

And the meta-pattern generalizes further. Before you renew any SaaS subscription, ask two questions: whether an open-source alternative exists that Claude Code can set up for you, and where your data ends up in each version. The answer to the first is yes more often than the incumbents would like, and the answer to the second is usually the better reason to switch.

If you’d rather have someone build this class of automation for your business (meeting pipelines, workflow automation, or a full company brain), that’s literally what we do. Get in touch and bring the subscription you resent most.

Frequently Asked Questions

Is there a free alternative to Fathom or Granola for AI meeting notes?
Yes. Anarlog is an open-source (MIT) meeting notetaker with on-device transcription and a free plan that stays free; you only pay for optional cloud models. Pair it with a scheduled Claude Code job that writes the summaries and you get meeting notes that know your business, for $0 a month beyond a Claude subscription.
Why write summaries with Claude instead of using the notetaker's built-in AI summary?
Built-in summaries are generic templates with no knowledge of your company. A Claude Code job with your notes vault as context knows your clients, your quotes, and your past decisions, so it writes summaries in your terms and can flag when a meeting contradicts something already on record.
Are AI meeting notetakers a privacy risk?
They can be, because of what they capture: client pricing, deal terms, vendor complaints, employee issues, and in some industries health details, recorded verbatim on every call. With a hosted notetaker all of that sits on a vendor's servers under a retention policy that can change, and your clients never agreed to it. A local-first setup keeps recordings and transcripts on your own machine, so deleting a meeting is deleting a file.
Does any of my meeting data leave my computer in this setup?
The recording and the transcription stay local, because Anarlog transcribes on device with local models and writes plain files you control. The one deliberate exception is the summarization step, which sends transcript text to Anthropic when Claude writes each note. That is a single known boundary rather than an accumulating set of vendors, and the pipeline still works without it: skip the summary step and you keep the local transcript.
Do I need to be a programmer to build this pipeline?
Not really. The whole build is about 40 lines of bash, a prompt file, and a scheduler entry, and Claude Code can write and wire all of it for you in one session. Changing how notes are written afterward is editing a markdown prompt file, not code.
How does the free Google Calendar integration trick work?
Anarlog charges for direct Google Calendar sync but its Apple Calendar integration is free. Add your Google account to macOS under Internet Accounts with Calendars enabled, then connect Apple Calendar in Anarlog. Google events flow through macOS into the notetaker with titles, times, participants, and join links, at no cost.
Can Tiger Tail build a meeting-notes pipeline like this for my company?
Yes. This pattern (capture tool, CLI, scheduled Claude job, your notes system) is a small example of the workflow automation we build for clients, and the team-scale version of the "vault as memory" idea is our Brain product: one permission-aware knowledge base your people and AI agents share. Get in touch and we'll scope it on your stack.

Related Posts

📅 Usually books out 2 weeks